2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.415107011795044s
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:09.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1431365;-24.25666;50.108598;89.993114;50.08601;90.12017;12.1629;2460996.79177587;9.00258306;1.3;_
2025-11-17T09:00:09.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.1431365;-24.25666;50.108598;89.993114;50.08601;90.12017;12.1629;2460996.79177587;9.00258306;1.3;_
2025-11-17T09:00:09.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:00:09.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:00:09.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:00:09.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:09.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:09.437 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.1431365, teldec = -24.25666
2025-11-17T09:00:09.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.1431365 -24.25666
2025-11-17T09:00:09.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.1431365 -24.25666
2025-11-17T09:00:09.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1431365 -24.25666
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1431365;-24.25666;50.108598;89.993114;50.08601;90.12017;12.1629;2460996.7917759;9.00258306;1.3;_15.1182287521099 -24.1576705021733
2025-11-17T09:00:09.438 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.1182287521099     dec_j2k = -24.1576705021733
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104277132450157;171.162351965909;_
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104277132450157;171.162351965909;_
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:09.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:09.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:09.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:09.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:09.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:09.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:09.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:09.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49719)
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:09.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:09.451 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:09.452 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:09.452 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:00:09.452 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:00:09.452 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79177587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104277132450157, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108598, telescope_az=89.993114, telescope_ra=15.1431365, telescope_dec=-24.25666, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.1629, lcu_permission=False, lcu_permission_timestamp='2025-11-17T08:59:13.351673', telescope_ra_j2k=15.1182287521099, telescope_dec_j2k=-24.1576705021733, observability=1)
2025-11-17T09:00:09.452 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.491076707839966 seconds ago
2025-11-17T09:00:13.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:13.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:13.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:13.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:13.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:13.496 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:13.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:13.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:13.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:13.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:13.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:13.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:13.497 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:13.498 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:00:13.499 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:00:13.499 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:00:13.499 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:14.499 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:14.500 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:14.500 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:14.500 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:14.500 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:14.500 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:00:14.501 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:14.502 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:14.503 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:14.503 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:14.503 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:14.503 [DEBUG] [ThreadPoolExecutor-2578_0] [payload.py] [to_registers()] [0]
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54797)
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:14.506 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:14.513 [DEBUG] [ThreadPoolExecutor-2578_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.289650201797485s
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:14.741 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:14.742 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1446136;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16438;2460996.7918373;9.00405611;1.3;_
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.1446136;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16438;2460996.7918373;9.00405611;1.3;_
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:00:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:00:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:00:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:14.745 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.1446136, teldec = -24.25666
2025-11-17T09:00:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1446136 -24.25666
2025-11-17T09:00:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1446136 -24.25666
2025-11-17T09:00:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1446136 -24.25666
2025-11-17T09:00:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1446136;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16438;2460996.79183734;9.00405611;1.3;_15.1197047132494 -24.1577098273522
2025-11-17T09:00:14.746 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.1197047132494     dec_j2k = -24.1577098273522
2025-11-17T09:00:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:00:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:00:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104277212674042;171.162357330327;_
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104277212674042;171.162357330327;_
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39921)
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:00:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:00:14.763 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7918373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104277212674042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108598, telescope_az=89.993114, telescope_ra=15.1446136, telescope_dec=-24.25666, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.16438, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:00:13.494618', telescope_ra_j2k=15.1197047132494, telescope_dec_j2k=-24.1577098273522, observability=1)
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Status age = 8.309066534042358s
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:23.072 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 17;15.1469572;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16672;2460996.79193372;9.00639333;1.3;_
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response 17;15.1469572;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16672;2460996.79193372;9.00639333;1.3;_
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:00:23.073 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:00:23.074 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:23.074 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:23.074 [INFO] [Thread-66785 (handle)] [driver.py] [get_status()] Telra = 15.1469572, teldec = -24.25666
2025-11-17T09:00:23.074 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1469572 -24.25666
2025-11-17T09:00:23.074 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1469572 -24.25666
2025-11-17T09:00:23.074 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1469572 -24.25666
2025-11-17T09:00:23.075 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 17;15.1469572;-24.25666;50.108598;89.993114;50.08601;90.12017;12.16672;2460996.79193374;9.00639333;1.3;_15.1220465071329 -24.1577722522762
2025-11-17T09:00:23.075 [INFO] [Thread-66785 (handle)] [driver.py] [get_status()] ra_j2k = 15.1220465071329     dec_j2k = -24.1577722522762
2025-11-17T09:00:23.075 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 140;0.104277814353184;171.162351965909;_
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response 140;0.104277814353184;171.162351965909;_
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:23.076 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:23.077 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:23.078 [DEBUG] [Thread-66785 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:23.078 [DEBUG] [Thread-66785 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:23.078 [DEBUG] [Thread-66785 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55669)
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:23.079 [DEBUG] [Thread-66785 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:23.086 [DEBUG] [Thread-66785 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:23.086 [DEBUG] [Thread-66785 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:23.086 [DEBUG] [Thread-66785 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:00:23.087 [DEBUG] [Thread-66785 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:00:23.087 [INFO] [Thread-66785 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79193372, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104277814353184, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108598, telescope_az=89.993114, telescope_ra=15.1469572, telescope_dec=-24.25666, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.16672, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:00:13.494618', telescope_ra_j2k=15.1220465071329, telescope_dec_j2k=-24.1577722522762, observability=1)
2025-11-17T09:00:23.351 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:23.351 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.2641277313232422s
2025-11-17T09:00:23.351 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2641277313232422
2025-11-17T09:00:24.042 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:00:24
2025-11-17T09:00:24.042 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:24.042 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.9554533958435059s
2025-11-17T09:00:24.042 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9554533958435059
2025-11-17T09:00:39.513 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:39.514 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:39.514 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:39.514 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:39.514 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:39.514 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:39.515 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:00:39.516 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:00:39.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Status age = 18.098925352096558s
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:41.186 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:00:41.187 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:00:41.188 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 17;15.1519991;-24.25666;50.108597;89.993114;50.08601;90.12017;12.17177;2460996.79214338;9.01142139;1.3;_
2025-11-17T09:00:41.188 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response 17;15.1519991;-24.25666;50.108597;89.993114;50.08601;90.12017;12.17177;2460996.79214338;9.01142139;1.3;_
2025-11-17T09:00:41.188 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:00:41.188 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:00:41.188 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:00:41.189 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:41.189 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:41.189 [INFO] [Thread-66786 (handle)] [driver.py] [get_status()] Telra = 15.1519991, teldec = -24.25666
2025-11-17T09:00:41.189 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1519991 -24.25666
2025-11-17T09:00:41.189 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1519991 -24.25666
2025-11-17T09:00:41.189 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1519991 -24.25666
2025-11-17T09:00:41.190 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 17;15.1519991;-24.25666;50.108597;89.993114;50.08601;90.12017;12.17177;2460996.7921434;9.01142139;1.3;_15.127084524982 -24.1579066776558
2025-11-17T09:00:41.190 [INFO] [Thread-66786 (handle)] [driver.py] [get_status()] ra_j2k = 15.127084524982     dec_j2k = -24.1579066776558
2025-11-17T09:00:41.190 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:00:41.190 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:00:41.190 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 140;0.104277533569585;171.162351965909;_
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response 140;0.104277533569585;171.162351965909;_
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:41.191 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:41.192 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:41.193 [DEBUG] [Thread-66786 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:41.193 [DEBUG] [Thread-66786 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:41.193 [DEBUG] [Thread-66786 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48085)
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:41.194 [DEBUG] [Thread-66786 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:41.201 [DEBUG] [Thread-66786 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:41.202 [DEBUG] [Thread-66786 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:00:41.202 [DEBUG] [Thread-66786 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:00:41.202 [INFO] [Thread-66786 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79214338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104277533569585, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1519991, telescope_dec=-24.25666, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.17177, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:00:13.494618', telescope_ra_j2k=15.127084524982, telescope_dec_j2k=-24.1579066776558, observability=1)
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Status age = 17.719478607177734s
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:00:58.921 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:00:58.922 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:00:58.923 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 17;15.1569289;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1767;2460996.79234865;9.01633778;1.3;_
2025-11-17T09:00:58.923 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response 17;15.1569289;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1767;2460996.79234865;9.01633778;1.3;_
2025-11-17T09:00:58.923 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:00:58.923 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:00:58.923 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:00:58.924 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:58.924 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:00:58.924 [INFO] [Thread-66787 (handle)] [driver.py] [get_status()] Telra = 15.1569289, teldec = -24.256659
2025-11-17T09:00:58.924 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1569289 -24.256659
2025-11-17T09:00:58.924 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1569289 -24.256659
2025-11-17T09:00:58.924 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1569289 -24.256659
2025-11-17T09:00:58.925 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 17;15.1569289;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1767;2460996.79234867;9.01633778;1.3;_15.1320105338279 -24.1580372825565
2025-11-17T09:00:58.925 [INFO] [Thread-66787 (handle)] [driver.py] [get_status()] ra_j2k = 15.1320105338279     dec_j2k = -24.1580372825565
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 140;0.104277493457642;171.162351965909;_
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response 140;0.104277493457642;171.162351965909;_
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:58.926 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:58.927 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:58.927 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:00:58.927 [DEBUG] [Thread-66787 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:00:58.927 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:00:58.927 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:00:58.928 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:00:58.928 [DEBUG] [Thread-66787 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:58.928 [DEBUG] [Thread-66787 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:00:58.928 [DEBUG] [Thread-66787 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35137)
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:00:58.935 [DEBUG] [Thread-66787 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:00:58.942 [DEBUG] [Thread-66787 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:00:58.942 [DEBUG] [Thread-66787 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:00:58.943 [DEBUG] [Thread-66787 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:00:58.943 [INFO] [Thread-66787 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79234865, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104277493457642, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1569289, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.1767, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:00:13.494618', telescope_ra_j2k=15.1320105338279, telescope_dec_j2k=-24.1580372825565, observability=1)
2025-11-17T09:00:59.244 [DEBUG] [Thread-66788 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:00:59.244 [DEBUG] [Thread-66788 (handle)] [server.py] [get_status()] Status age = 0.3010406494140625s
2025-11-17T09:00:59.244 [DEBUG] [Thread-66788 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3010406494140625
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.569165706634521s
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:09.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:09.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1598806;-24.256659;50.108597;89.993114;50.08601;90.12017;12.17965;2460996.79247123;9.01928139;1.3;_
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.1598806;-24.256659;50.108597;89.993114;50.08601;90.12017;12.17965;2460996.79247123;9.01928139;1.3;_
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:09.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:09.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:09.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:09.515 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.1598806, teldec = -24.256659
2025-11-17T09:01:09.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.1598806 -24.256659
2025-11-17T09:01:09.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.1598806 -24.256659
2025-11-17T09:01:09.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1598806 -24.256659
2025-11-17T09:01:09.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1598806;-24.256659;50.108597;89.993114;50.08601;90.12017;12.17965;2460996.79247125;9.01928139;1.3;_15.1349599659537 -24.1581161600737
2025-11-17T09:01:09.517 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.1349599659537     dec_j2k = -24.1581161600737
2025-11-17T09:01:09.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:09.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:09.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:09.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104278014912898;171.162357330327;_
2025-11-17T09:01:09.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104278014912898;171.162357330327;_
2025-11-17T09:01:09.518 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:09.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:09.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:09.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:09.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:09.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:09.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:09.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58007)
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:09.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:09.531 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:01:09.532 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79247123, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278014912898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1598806, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.17965, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:00:13.494618', telescope_ra_j2k=15.1349599659537, telescope_dec_j2k=-24.1581161600737, observability=1)
2025-11-17T09:01:09.532 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.489450216293335 seconds ago
2025-11-17T09:01:13.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:13.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:13.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:13.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:13.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:13.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:13.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:13.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:13.639 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:01:13.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:13.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:13.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:13.640 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:01:13.641 [INFO] [ThreadPoolExecutor-2579_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:01:13.641 [INFO] [ThreadPoolExecutor-2579_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:01:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.213178634643555s
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1613279;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1811;2460996.79253179;9.02072472;1.3;_
2025-11-17T09:01:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.1613279;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1811;2460996.79253179;9.02072472;1.3;_
2025-11-17T09:01:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:14.748 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.1613279, teldec = -24.256659
2025-11-17T09:01:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1613279 -24.256659
2025-11-17T09:01:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1613279 -24.256659
2025-11-17T09:01:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1613279 -24.256659
2025-11-17T09:01:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1613279;-24.256659;50.108597;89.993114;50.08601;90.12017;12.1811;2460996.79253182;9.02072472;1.3;_15.1364061545415 -24.1581548576516
2025-11-17T09:01:14.749 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.1364061545415     dec_j2k = -24.1581548576516
2025-11-17T09:01:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104278135248727;171.162357330327;_
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104278135248727;171.162357330327;_
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45479)
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:14.767 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:14.767 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79253179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278135248727, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1613279, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.1811, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1364061545415, telescope_dec_j2k=-24.1581548576516, observability=1)
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Status age = 2.54818058013916s
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:17.315 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:17.316 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:17.317 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 17;15.1620566;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18182;2460996.79256154;9.02145139;1.3;_
2025-11-17T09:01:17.317 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response 17;15.1620566;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18182;2460996.79256154;9.02145139;1.3;_
2025-11-17T09:01:17.317 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:17.317 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:17.317 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:17.318 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:17.318 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:17.318 [INFO] [Thread-66789 (handle)] [driver.py] [get_status()] Telra = 15.1620566, teldec = -24.256659
2025-11-17T09:01:17.318 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1620566 -24.256659
2025-11-17T09:01:17.318 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1620566 -24.256659
2025-11-17T09:01:17.318 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1620566 -24.256659
2025-11-17T09:01:17.319 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 17;15.1620566;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18182;2460996.79256156;9.02145139;1.3;_15.1371342951042 -24.1581743468816
2025-11-17T09:01:17.319 [INFO] [Thread-66789 (handle)] [driver.py] [get_status()] ra_j2k = 15.1371342951042     dec_j2k = -24.1581743468816
2025-11-17T09:01:17.319 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:17.319 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:17.319 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 140;0.104278335808441;171.162351965909;_
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response 140;0.104278335808441;171.162351965909;_
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:17.320 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:17.321 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:17.322 [DEBUG] [Thread-66789 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:17.322 [DEBUG] [Thread-66789 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:17.322 [DEBUG] [Thread-66789 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:01:17.325 [DEBUG] [Thread-66789 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32973)
2025-11-17T09:01:17.325 [DEBUG] [Thread-66789 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:17.325 [DEBUG] [Thread-66789 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:17.326 [DEBUG] [Thread-66789 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:17.326 [DEBUG] [Thread-66789 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:17.326 [DEBUG] [Thread-66789 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:17.333 [DEBUG] [Thread-66789 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:17.333 [INFO] [Thread-66789 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79256154, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278335808441, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1620566, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.18182, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1371342951042, telescope_dec_j2k=-24.1581743468816, observability=1)
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.110006332397461s
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:22.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:22.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:22.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.1634757;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18324;2460996.79262088;9.02286667;1.3;_
2025-11-17T09:01:22.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.1634757;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18324;2460996.79262088;9.02286667;1.3;_
2025-11-17T09:01:22.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:22.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:22.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:22.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:22.446 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:22.446 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.1634757, teldec = -24.256659
2025-11-17T09:01:22.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1634757 -24.256659
2025-11-17T09:01:22.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1634757 -24.256659
2025-11-17T09:01:22.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1634757 -24.256659
2025-11-17T09:01:22.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.1634757;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18324;2460996.79262091;9.02286667;1.3;_15.1385523059157 -24.1582123114065
2025-11-17T09:01:22.447 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.1385523059157     dec_j2k = -24.1582123114065
2025-11-17T09:01:22.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:22.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:22.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104278215472612;171.162357330327;_
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104278215472612;171.162357330327;_
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:22.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:22.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55221)
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:22.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:22.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:22.451 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:22.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:22.458 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:22.458 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79262088, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278215472612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.1634757, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.18324, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1385523059157, telescope_dec_j2k=-24.1582123114065, observability=1)
2025-11-17T09:01:24.103 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:01:24
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.6448535919189453s
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:24.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:24.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:24.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.163952;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18372;2460996.7926401;9.02334167;1.3;_
2025-11-17T09:01:24.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.163952;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18372;2460996.7926401;9.02334167;1.3;_
2025-11-17T09:01:24.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:24.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:24.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:24.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:24.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:24.106 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.163952, teldec = -24.256659
2025-11-17T09:01:24.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.163952 -24.256659
2025-11-17T09:01:24.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.163952 -24.256659
2025-11-17T09:01:24.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.163952 -24.256659
2025-11-17T09:01:24.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.163952;-24.256659;50.108597;89.993114;50.08601;90.12017;12.18372;2460996.79264013;9.02334167;1.3;_15.1390282404292 -24.1582250567212
2025-11-17T09:01:24.108 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.1390282404292     dec_j2k = -24.1582250567212
2025-11-17T09:01:24.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:24.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:24.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:24.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104278375920384;171.162362694745;_
2025-11-17T09:01:24.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104278375920384;171.162362694745;_
2025-11-17T09:01:24.109 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:24.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:24.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:24.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:24.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:24.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:24.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:24.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58277)
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:24.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:24.125 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:24.125 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7926401, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278375920384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108597, telescope_az=89.993114, telescope_ra=15.163952, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.18372, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1390282404292, telescope_dec_j2k=-24.1582250567212, observability=1)
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.517 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:01:34.518 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:34.519 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:34.520 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:01:34.521 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:34.522 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Park
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:01:34.523 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 29;15.1668486;-24.256659;50.108596;89.993115;50.08601;90.12017;12.18662;2460996.79276068;9.02623028;1.3;_Park Command Successful
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Status age = 11.302695512771606s
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:35.428 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:35.429 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:35.430 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 17;15.1671009;-24.256659;50.108596;89.993115;50.08601;90.12017;12.18687;2460996.79277118;9.02648194;1.3;_
2025-11-17T09:01:35.430 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response 17;15.1671009;-24.256659;50.108596;89.993115;50.08601;90.12017;12.18687;2460996.79277118;9.02648194;1.3;_
2025-11-17T09:01:35.431 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:35.431 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:35.431 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:35.432 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:35.432 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:35.432 [INFO] [Thread-66790 (handle)] [driver.py] [get_status()] Telra = 15.1671009, teldec = -24.256659
2025-11-17T09:01:35.432 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1671009 -24.256659
2025-11-17T09:01:35.432 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1671009 -24.256659
2025-11-17T09:01:35.432 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1671009 -24.256659
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 17;15.1671009;-24.256659;50.108596;89.993115;50.08601;90.12017;12.18687;2460996.79277122;9.02648194;1.3;_15.1421747251944 -24.1583093571033
2025-11-17T09:01:35.433 [INFO] [Thread-66790 (handle)] [driver.py] [get_status()] ra_j2k = 15.1421747251944     dec_j2k = -24.1583093571033
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 140;0.104278375920384;171.162357330327;_
2025-11-17T09:01:35.433 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response 140;0.104278375920384;171.162357330327;_
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:35.434 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:35.435 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:35.436 [DEBUG] [Thread-66790 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:35.436 [DEBUG] [Thread-66790 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:35.436 [DEBUG] [Thread-66790 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47395)
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:35.437 [DEBUG] [Thread-66790 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:35.444 [DEBUG] [Thread-66790 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:35.444 [INFO] [Thread-66790 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79277118, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278375920384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.1671009, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.18687, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1421747251944, telescope_dec_j2k=-24.1583093571033, observability=1)
2025-11-17T09:01:35.524 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:01:35.524 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:01:35.524 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:01:35.525 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:01:35.525 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:01:36.525 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:01:36.525 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:01:36.525 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:01:36.526 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:01:36.526 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:01:37.526 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:01:37.526 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:01:37.526 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:01:37.527 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:01:37.527 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:01:38.527 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:01:38.527 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:01:38.527 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:38.528 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:01:38.529 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:01:38.530 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:39.530 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:39.530 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:39.530 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:39.531 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:39.531 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:39.531 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:39.531 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:39.531 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:01:39.532 [DEBUG] [ThreadPoolExecutor-2578_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:39.532 [INFO] [ThreadPoolExecutor-2578_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Status age = 18.047736167907715s
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:53.492 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:53.493 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:53.494 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 17;15.1721425;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19191;2460996.79298025;9.03150972;1.3;_
2025-11-17T09:01:53.494 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response 17;15.1721425;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19191;2460996.79298025;9.03150972;1.3;_
2025-11-17T09:01:53.494 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:53.494 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:53.494 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:53.495 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:53.495 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:53.495 [INFO] [Thread-66791 (handle)] [driver.py] [get_status()] Telra = 15.1721425, teldec = -24.256659
2025-11-17T09:01:53.495 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1721425 -24.256659
2025-11-17T09:01:53.495 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1721425 -24.256659
2025-11-17T09:01:53.495 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1721425 -24.256659
2025-11-17T09:01:53.496 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 17;15.1721425;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19191;2460996.79298028;9.03150972;1.3;_15.147212462072 -24.1584444684412
2025-11-17T09:01:53.496 [INFO] [Thread-66791 (handle)] [driver.py] [get_status()] ra_j2k = 15.147212462072     dec_j2k = -24.1584444684412
2025-11-17T09:01:53.496 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:53.496 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:53.497 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:53.497 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 140;0.104278696815926;171.162357330327;_
2025-11-17T09:01:53.497 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response 140;0.104278696815926;171.162357330327;_
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:53.498 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:53.499 [DEBUG] [Thread-66791 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:53.499 [DEBUG] [Thread-66791 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:53.499 [DEBUG] [Thread-66791 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41549)
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:53.504 [DEBUG] [Thread-66791 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:53.511 [DEBUG] [Thread-66791 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:53.511 [DEBUG] [Thread-66791 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:53.511 [DEBUG] [Thread-66791 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:53.511 [DEBUG] [Thread-66791 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:53.512 [DEBUG] [Thread-66791 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:53.512 [DEBUG] [Thread-66791 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:53.512 [DEBUG] [Thread-66791 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:53.512 [DEBUG] [Thread-66791 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:53.512 [DEBUG] [Thread-66791 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:53.512 [INFO] [Thread-66791 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79298025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278696815926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.1721425, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.19191, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.147212462072, telescope_dec_j2k=-24.1584444684412, observability=1)
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Status age = 5.476971387863159s
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:01:58.989 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:01:58.990 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:01:58.991 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 17;15.1736472;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19341;2460996.79304388;9.03301028;1.3;_
2025-11-17T09:01:58.991 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response 17;15.1736472;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19341;2460996.79304388;9.03301028;1.3;_
2025-11-17T09:01:58.991 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:01:58.991 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:01:58.991 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:01:58.992 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:58.992 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:01:58.992 [INFO] [Thread-66792 (handle)] [driver.py] [get_status()] Telra = 15.1736472, teldec = -24.256659
2025-11-17T09:01:58.992 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1736472 -24.256659
2025-11-17T09:01:58.992 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1736472 -24.256659
2025-11-17T09:01:58.993 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1736472 -24.256659
2025-11-17T09:01:58.993 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 17;15.1736472;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19341;2460996.7930439;9.03301028;1.3;_15.1487160100113 -24.1584848268958
2025-11-17T09:01:58.993 [INFO] [Thread-66792 (handle)] [driver.py] [get_status()] ra_j2k = 15.1487160100113     dec_j2k = -24.1584848268958
2025-11-17T09:01:58.994 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:01:58.994 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:01:58.994 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 140;0.104278937487583;171.162357330327;_
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response 140;0.104278937487583;171.162357330327;_
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:01:58.995 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:01:58.996 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:01:58.997 [DEBUG] [Thread-66792 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:58.997 [DEBUG] [Thread-66792 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:01:58.997 [DEBUG] [Thread-66792 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55059)
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:01:58.999 [DEBUG] [Thread-66792 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:01:59.006 [DEBUG] [Thread-66792 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:01:59.006 [DEBUG] [Thread-66792 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:01:59.007 [DEBUG] [Thread-66792 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:01:59.007 [INFO] [Thread-66792 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79304388, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278937487583, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.1736472, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.19341, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1487160100113, telescope_dec_j2k=-24.1584848268958, observability=1)
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.58491063117981s
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:09.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:09.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:09.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1766281;-24.256659;50.108596;89.993115;50.08601;90.12017;12.1964;2460996.7931666;9.03598306;1.3;_
2025-11-17T09:02:09.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.1766281;-24.256659;50.108596;89.993115;50.08601;90.12017;12.1964;2460996.7931666;9.03598306;1.3;_
2025-11-17T09:02:09.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:09.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:09.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:09.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:09.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:09.595 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.1766281, teldec = -24.256659
2025-11-17T09:02:09.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.1766281 -24.256659
2025-11-17T09:02:09.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.1766281 -24.256659
2025-11-17T09:02:09.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1766281 -24.256659
2025-11-17T09:02:09.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1766281;-24.256659;50.108596;89.993115;50.08601;90.12017;12.1964;2460996.79316662;9.03598306;1.3;_15.1516946289532 -24.158564824895
2025-11-17T09:02:09.596 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.1516946289532     dec_j2k = -24.158564824895
2025-11-17T09:02:09.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:09.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104278335808441;171.162351965909;_
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104278335808441;171.162351965909;_
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:09.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:09.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:09.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:09.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:09.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38033)
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:09.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:09.611 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:02:09.611 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.7931666, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278335808441, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.1766281, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.1964, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.1516946289532, telescope_dec_j2k=-24.158564824895, observability=1)
2025-11-17T09:02:09.611 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.508543491363525 seconds ago
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Status age = 1.9405186176300049s
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:11.552 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:11.553 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:11.554 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 17;15.1771604;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19693;2460996.79318928;9.03651389;1.3;_
2025-11-17T09:02:11.555 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response 17;15.1771604;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19693;2460996.79318928;9.03651389;1.3;_
2025-11-17T09:02:11.555 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:11.555 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:11.555 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:11.556 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:11.556 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:11.556 [INFO] [Thread-66793 (handle)] [driver.py] [get_status()] Telra = 15.1771604, teldec = -24.256659
2025-11-17T09:02:11.556 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1771604 -24.256659
2025-11-17T09:02:11.556 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1771604 -24.256659
2025-11-17T09:02:11.556 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1771604 -24.256659
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 17;15.1771604;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19693;2460996.79318932;9.03651389;1.3;_15.152226521798 -24.1585791165177
2025-11-17T09:02:11.557 [INFO] [Thread-66793 (handle)] [driver.py] [get_status()] ra_j2k = 15.152226521798     dec_j2k = -24.1585791165177
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 140;0.104279378718954;171.162357330327;_
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response 140;0.104279378718954;171.162357330327;_
2025-11-17T09:02:11.557 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:11.558 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:11.558 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:11.558 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:11.558 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:11.559 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:11.559 [DEBUG] [Thread-66793 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:11.559 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:11.559 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:11.559 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:11.560 [DEBUG] [Thread-66793 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:11.560 [DEBUG] [Thread-66793 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:11.560 [DEBUG] [Thread-66793 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57555)
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:11.564 [DEBUG] [Thread-66793 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:11.571 [DEBUG] [Thread-66793 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:11.571 [DEBUG] [Thread-66793 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:11.572 [DEBUG] [Thread-66793 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:11.572 [INFO] [Thread-66793 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79318928, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104279378718954, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.1771604, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.19693, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:01:13.637953', telescope_ra_j2k=15.152226521798, telescope_dec_j2k=-24.1585791165177, observability=1)
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:13.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:13.780 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:02:13.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:13.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:13.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:13.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:13.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:13.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:13.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:13.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:13.782 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:02:13.782 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:13.782 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:13.782 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:13.782 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:13.782 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:02:13.783 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:02:13.784 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.180279493331909s
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.178047;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19781;2460996.79322632;9.03739806;1.3;_
2025-11-17T09:02:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.178047;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19781;2460996.79322632;9.03739806;1.3;_
2025-11-17T09:02:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:14.756 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.178047, teldec = -24.256659
2025-11-17T09:02:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.178047 -24.256659
2025-11-17T09:02:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.178047 -24.256659
2025-11-17T09:02:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.178047 -24.256659
2025-11-17T09:02:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.178047;-24.256659;50.108596;89.993115;50.08601;90.12017;12.19781;2460996.79322635;9.03739806;1.3;_15.1531124437565 -24.1586029249522
2025-11-17T09:02:14.757 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.1531124437565     dec_j2k = -24.1586029249522
2025-11-17T09:02:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104278857263697;171.162357330327;_
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104278857263697;171.162357330327;_
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48083)
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:14.773 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79322632, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278857263697, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108596, telescope_az=89.993115, telescope_ra=15.178047, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.19781, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1531124437565, telescope_dec_j2k=-24.1586029249522, observability=1)
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:14.784 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:02:14.785 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:14.786 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:14.787 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:14.787 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:14.787 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:14.787 [DEBUG] [ThreadPoolExecutor-2580_0] [payload.py] [to_registers()] [0]
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39567)
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:14.792 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:14.799 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:14.800 [DEBUG] [ThreadPoolExecutor-2580_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.773353338241577s
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:21.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:21.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:21.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.179943;-24.256659;50.108595;89.993115;50.08601;90.12017;12.19971;2460996.79330495;9.03928889;1.3;_
2025-11-17T09:02:21.548 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.179943;-24.256659;50.108595;89.993115;50.08601;90.12017;12.19971;2460996.79330495;9.03928889;1.3;_
2025-11-17T09:02:21.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:21.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:21.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:21.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:21.549 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:21.549 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.179943, teldec = -24.256659
2025-11-17T09:02:21.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.179943 -24.256659
2025-11-17T09:02:21.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.179943 -24.256659
2025-11-17T09:02:21.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.179943 -24.256659
2025-11-17T09:02:21.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.179943;-24.256659;50.108595;89.993115;50.08601;90.12017;12.19971;2460996.79330498;9.03928889;1.3;_15.155006994251 -24.1586538573823
2025-11-17T09:02:21.550 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.155006994251     dec_j2k = -24.1586538573823
2025-11-17T09:02:21.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:21.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:21.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10427889737564;171.162357330327;_
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10427889737564;171.162357330327;_
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:21.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:21.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:21.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:21.553 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:21.553 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46273)
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:21.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:21.566 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:21.567 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79330495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10427889737564, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.179943, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.19971, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.155006994251, telescope_dec_j2k=-24.1586538573823, observability=1)
2025-11-17T09:02:24.186 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:02:24
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.6195385456085205s
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:24.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:24.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:24.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.1806716;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20044;2460996.79333551;9.04001556;1.3;_
2025-11-17T09:02:24.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.1806716;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20044;2460996.79333551;9.04001556;1.3;_
2025-11-17T09:02:24.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:24.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:24.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:24.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:24.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:24.189 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.1806716, teldec = -24.256659
2025-11-17T09:02:24.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1806716 -24.256659
2025-11-17T09:02:24.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1806716 -24.256659
2025-11-17T09:02:24.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1806716 -24.256659
2025-11-17T09:02:24.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.1806716;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20044;2460996.79333553;9.04001556;1.3;_15.1557350374091 -24.1586734363326
2025-11-17T09:02:24.190 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.1557350374091     dec_j2k = -24.1586734363326
2025-11-17T09:02:24.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:24.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:24.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104278937487583;171.162351965909;_
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104278937487583;171.162351965909;_
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:24.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:24.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:24.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:24.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:24.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42477)
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:24.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:24.202 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:24.203 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79333551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278937487583, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1806716, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.20044, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1557350374091, telescope_dec_j2k=-24.1586734363326, observability=1)
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Status age = 5.485278606414795s
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:29.688 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:29.689 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:29.690 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 17;15.1822025;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20197;2460996.79339919;9.04154222;1.3;_
2025-11-17T09:02:29.690 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response 17;15.1822025;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20197;2460996.79339919;9.04154222;1.3;_
2025-11-17T09:02:29.690 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:29.690 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:29.690 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:29.691 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:29.691 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:29.691 [INFO] [Thread-66794 (handle)] [driver.py] [get_status()] Telra = 15.1822025, teldec = -24.256659
2025-11-17T09:02:29.691 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1822025 -24.256659
2025-11-17T09:02:29.691 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1822025 -24.256659
2025-11-17T09:02:29.691 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1822025 -24.256659
2025-11-17T09:02:29.692 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 17;15.1822025;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20197;2460996.79339921;9.04154222;1.3;_15.1572647677212 -24.1587145864513
2025-11-17T09:02:29.692 [INFO] [Thread-66794 (handle)] [driver.py] [get_status()] ra_j2k = 15.1572647677212     dec_j2k = -24.1587145864513
2025-11-17T09:02:29.692 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:29.692 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:29.692 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 140;0.104278857263697;171.162351965909;_
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response 140;0.104278857263697;171.162351965909;_
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:29.693 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:29.694 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:29.695 [DEBUG] [Thread-66794 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:29.695 [DEBUG] [Thread-66794 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:29.695 [DEBUG] [Thread-66794 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58759)
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:29.699 [DEBUG] [Thread-66794 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:29.706 [DEBUG] [Thread-66794 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:29.707 [INFO] [Thread-66794 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79339919, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104278857263697, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1822025, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.20197, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1572647677212, telescope_dec_j2k=-24.1587145864513, observability=1)
2025-11-17T09:02:39.800 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:39.800 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:39.800 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:39.800 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:39.800 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:39.801 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:02:39.802 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:02:39.803 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Status age = 18.051766395568848s
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:47.758 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:47.759 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:47.760 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:47.761 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 17;15.1872424;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20701;2460996.79360834;9.04656833;1.3;_
2025-11-17T09:02:47.761 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response 17;15.1872424;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20701;2460996.79360834;9.04656833;1.3;_
2025-11-17T09:02:47.761 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:47.761 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:47.761 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:47.762 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:47.762 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:47.762 [INFO] [Thread-66795 (handle)] [driver.py] [get_status()] Telra = 15.1872424, teldec = -24.256659
2025-11-17T09:02:47.762 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1872424 -24.256659
2025-11-17T09:02:47.762 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1872424 -24.256659
2025-11-17T09:02:47.762 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1872424 -24.256659
2025-11-17T09:02:47.763 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 17;15.1872424;-24.256659;50.108595;89.993115;50.08601;90.12017;12.20701;2460996.79360837;9.04656833;1.3;_15.1623008200589 -24.1588501698278
2025-11-17T09:02:47.763 [INFO] [Thread-66795 (handle)] [driver.py] [get_status()] ra_j2k = 15.1623008200589     dec_j2k = -24.1588501698278
2025-11-17T09:02:47.763 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:47.763 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 140;0.104279097935354;171.162357330327;_
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response 140;0.104279097935354;171.162357330327;_
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:47.764 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:47.765 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:47.766 [DEBUG] [Thread-66795 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:47.766 [DEBUG] [Thread-66795 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:47.766 [DEBUG] [Thread-66795 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58745)
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:47.769 [DEBUG] [Thread-66795 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:47.776 [DEBUG] [Thread-66795 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:47.776 [DEBUG] [Thread-66795 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:47.777 [DEBUG] [Thread-66795 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:47.777 [INFO] [Thread-66795 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79360834, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104279097935354, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1872424, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.20701, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1623008200589, telescope_dec_j2k=-24.1588501698278, observability=1)
2025-11-17T09:02:59.052 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Status age = 11.275586605072021s
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:02:59.053 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:02:59.054 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:02:59.055 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 17;15.190398;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21016;2460996.79373906;9.04971528;1.3;_
2025-11-17T09:02:59.055 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response 17;15.190398;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21016;2460996.79373906;9.04971528;1.3;_
2025-11-17T09:02:59.055 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:02:59.055 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:02:59.055 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:02:59.056 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:59.056 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:02:59.056 [INFO] [Thread-66796 (handle)] [driver.py] [get_status()] Telra = 15.190398, teldec = -24.256659
2025-11-17T09:02:59.056 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] UnCookCoordinates 15.190398 -24.256659
2025-11-17T09:02:59.056 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.190398 -24.256659
2025-11-17T09:02:59.056 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.190398 -24.256659
2025-11-17T09:02:59.057 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 17;15.190398;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21016;2460996.79373909;9.04971528;1.3;_15.1654540133588 -24.1589351494888
2025-11-17T09:02:59.057 [INFO] [Thread-66796 (handle)] [driver.py] [get_status()] ra_j2k = 15.1654540133588     dec_j2k = -24.1589351494888
2025-11-17T09:02:59.057 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:02:59.057 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:02:59.057 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 140;0.104279298495068;171.162368059163;_
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response 140;0.104279298495068;171.162368059163;_
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:59.058 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:02:59.059 [DEBUG] [Thread-66796 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39637)
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:02:59.063 [DEBUG] [Thread-66796 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:02:59.070 [DEBUG] [Thread-66796 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:02:59.070 [DEBUG] [Thread-66796 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:59.070 [DEBUG] [Thread-66796 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:02:59.071 [DEBUG] [Thread-66796 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:02:59.071 [INFO] [Thread-66796 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79373906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104279298495068, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.190398, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.21016, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1654540133588, telescope_dec_j2k=-24.1589351494888, observability=1)
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Status age = 6.813380002975464s
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:05.884 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 17;15.1922934;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21206;2460996.79381812;9.05160556;1.3;_
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response 17;15.1922934;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21206;2460996.79381812;9.05160556;1.3;_
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:05.886 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:05.887 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:05.887 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:05.887 [INFO] [Thread-66797 (handle)] [driver.py] [get_status()] Telra = 15.1922934, teldec = -24.256659
2025-11-17T09:03:05.887 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1922934 -24.256659
2025-11-17T09:03:05.887 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1922934 -24.256659
2025-11-17T09:03:05.887 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1922934 -24.256659
2025-11-17T09:03:05.888 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 17;15.1922934;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21206;2460996.79381815;9.05160556;1.3;_15.1673479686765 -24.1589862246647
2025-11-17T09:03:05.888 [INFO] [Thread-66797 (handle)] [driver.py] [get_status()] ra_j2k = 15.1673479686765     dec_j2k = -24.1589862246647
2025-11-17T09:03:05.888 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:05.888 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:05.888 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 140;0.10427917815924;171.162351965909;_
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response 140;0.10427917815924;171.162351965909;_
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:05.890 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:05.891 [DEBUG] [Thread-66797 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:05.891 [DEBUG] [Thread-66797 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:05.891 [DEBUG] [Thread-66797 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:03:05.898 [DEBUG] [Thread-66797 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47309)
2025-11-17T09:03:05.899 [DEBUG] [Thread-66797 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:05.899 [DEBUG] [Thread-66797 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:05.899 [DEBUG] [Thread-66797 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:05.899 [DEBUG] [Thread-66797 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:05.899 [DEBUG] [Thread-66797 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:05.906 [DEBUG] [Thread-66797 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:05.906 [INFO] [Thread-66797 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79381812, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10427917815924, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1922934, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.21206, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1673479686765, telescope_dec_j2k=-24.1589862246647, observability=1)
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.7645561695098877s
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:09.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:09.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:09.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:09.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1933491;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21312;2460996.79386196;9.05265833;1.3;_
2025-11-17T09:03:09.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.1933491;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21312;2460996.79386196;9.05265833;1.3;_
2025-11-17T09:03:09.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:09.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:09.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:09.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:09.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:09.675 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.1933491, teldec = -24.256659
2025-11-17T09:03:09.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.1933491 -24.256659
2025-11-17T09:03:09.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.1933491 -24.256659
2025-11-17T09:03:09.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1933491 -24.256659
2025-11-17T09:03:09.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.1933491;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21312;2460996.79386199;9.05265833;1.3;_15.1684028643083 -24.1590146830707
2025-11-17T09:03:09.676 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.1684028643083     dec_j2k = -24.1590146830707
2025-11-17T09:03:09.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:09.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:09.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104280020510039;171.162357330327;_
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104280020510039;171.162357330327;_
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:09.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:09.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:09.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:09.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:09.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:09.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:09.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54379)
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:09.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:09.689 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:03:09.689 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79386196, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280020510039, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1933491, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.21312, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:02:13.779644', telescope_ra_j2k=15.1684028643083, telescope_dec_j2k=-24.1590146830707, observability=1)
2025-11-17T09:03:09.689 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.50313949584961 seconds ago
2025-11-17T09:03:13.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:13.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:13.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:13.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:13.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:13.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:13.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:13.928 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:13.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:13.928 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:03:13.928 [INFO] [ThreadPoolExecutor-2581_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:03:13.928 [INFO] [ThreadPoolExecutor-2581_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.071821212768555s
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1947694;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21454;2460996.79392087;9.05407472;1.3;_
2025-11-17T09:03:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.1947694;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21454;2460996.79392087;9.05407472;1.3;_
2025-11-17T09:03:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:14.764 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.1947694, teldec = -24.256659
2025-11-17T09:03:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1947694 -24.256659
2025-11-17T09:03:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1947694 -24.256659
2025-11-17T09:03:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1947694 -24.256659
2025-11-17T09:03:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.1947694;-24.256659;50.108595;89.993115;50.08601;90.12017;12.21454;2460996.79392089;9.05407472;1.3;_15.1698220824694 -24.1590529818704
2025-11-17T09:03:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.1698220824694     dec_j2k = -24.1590529818704
2025-11-17T09:03:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104279860062267;171.162351965909;_
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104279860062267;171.162351965909;_
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49551)
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:14.776 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79392087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104279860062267, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108595, telescope_az=89.993115, telescope_ra=15.1947694, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.21454, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.1698220824694, telescope_dec_j2k=-24.1590529818704, observability=1)
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.877217531204224s
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:20.654 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:20.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.1964175;-24.256659;50.108594;89.993115;50.08601;90.12017;12.21618;2460996.79398906;9.05571833;1.3;_
2025-11-17T09:03:20.656 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.1964175;-24.256659;50.108594;89.993115;50.08601;90.12017;12.21618;2460996.79398906;9.05571833;1.3;_
2025-11-17T09:03:20.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:20.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:20.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:20.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:20.657 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:20.657 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.1964175, teldec = -24.256659
2025-11-17T09:03:20.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1964175 -24.256659
2025-11-17T09:03:20.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1964175 -24.256659
2025-11-17T09:03:20.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1964175 -24.256659
2025-11-17T09:03:20.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.1964175;-24.256659;50.108594;89.993115;50.08601;90.12017;12.21618;2460996.7939891;9.05571833;1.3;_15.1714689275885 -24.1590974404771
2025-11-17T09:03:20.658 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.1714689275885     dec_j2k = -24.1590974404771
2025-11-17T09:03:20.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:20.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:20.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104279418830897;171.162357330327;_
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104279418830897;171.162357330327;_
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:20.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:20.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:20.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:20.661 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:20.661 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59819)
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:20.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:20.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:20.672 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:20.672 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79398906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104279418830897, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108594, telescope_az=89.993115, telescope_ra=15.1964175, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.21618, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.1714689275885, telescope_dec_j2k=-24.1590974404771, observability=1)
2025-11-17T09:03:23.942 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:23.942 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Status age = 3.2704527378082275s
2025-11-17T09:03:23.942 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:23.942 [DEBUG] [Thread-66798 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:23.942 [DEBUG] [Thread-66798 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:23.943 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:23.943 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:23.943 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:23.944 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:23.945 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 17;15.1973344;-24.256659;50.108594;89.993115;50.08601;90.12017;12.2171;2460996.79402714;9.05663278;1.3;_
2025-11-17T09:03:23.945 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response 17;15.1973344;-24.256659;50.108594;89.993115;50.08601;90.12017;12.2171;2460996.79402714;9.05663278;1.3;_
2025-11-17T09:03:23.945 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:23.945 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:23.945 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:23.946 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:23.946 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:23.946 [INFO] [Thread-66798 (handle)] [driver.py] [get_status()] Telra = 15.1973344, teldec = -24.256659
2025-11-17T09:03:23.946 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] UnCookCoordinates 15.1973344 -24.256659
2025-11-17T09:03:23.946 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.1973344 -24.256659
2025-11-17T09:03:23.946 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.1973344 -24.256659
2025-11-17T09:03:23.947 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 17;15.1973344;-24.256659;50.108594;89.993115;50.08601;90.12017;12.2171;2460996.79402716;9.05663278;1.3;_15.172385129671 -24.159122182428
2025-11-17T09:03:23.947 [INFO] [Thread-66798 (handle)] [driver.py] [get_status()] ra_j2k = 15.172385129671     dec_j2k = -24.159122182428
2025-11-17T09:03:23.947 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:23.947 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:23.947 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 140;0.104280221069753;171.162351965909;_
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response 140;0.104280221069753;171.162351965909;_
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:23.948 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:23.949 [DEBUG] [Thread-66798 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:23.949 [DEBUG] [Thread-66798 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:23.949 [DEBUG] [Thread-66798 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:23.954 [DEBUG] [Thread-66798 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50467)
2025-11-17T09:03:23.954 [DEBUG] [Thread-66798 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:23.954 [DEBUG] [Thread-66798 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:23.955 [DEBUG] [Thread-66798 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:23.955 [DEBUG] [Thread-66798 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:23.955 [DEBUG] [Thread-66798 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:23.962 [DEBUG] [Thread-66798 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:23.963 [DEBUG] [Thread-66798 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:23.963 [DEBUG] [Thread-66798 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:23.963 [DEBUG] [Thread-66798 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:23.963 [INFO] [Thread-66798 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79402714, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280221069753, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108594, telescope_az=89.993115, telescope_ra=15.1973344, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2171, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.172385129671, telescope_dec_j2k=-24.159122182428, observability=1)
2025-11-17T09:03:24.263 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:03:24
2025-11-17T09:03:24.263 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:24.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.30084991455078125s
2025-11-17T09:03:24.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.30084991455078125
2025-11-17T09:03:34.803 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.804 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.804 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:34.804 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:34.804 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:03:34.805 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:34.806 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:34.807 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:03:34.808 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:34.809 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Park
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:03:34.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 29;15.2003457;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22011;2460996.79415289;9.05963583;1.3;_Park Command Successful
2025-11-17T09:03:35.810 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:03:35.811 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:03:35.811 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:03:35.811 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:03:35.811 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:03:36.812 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:03:36.812 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:03:36.812 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:03:36.813 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:03:36.813 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:03:37.813 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:03:37.813 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:03:37.813 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:03:37.814 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:03:37.814 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:38.815 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:03:38.816 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:03:39.817 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:03:39.818 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:03:39.818 [DEBUG] [ThreadPoolExecutor-2580_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:39.818 [INFO] [ThreadPoolExecutor-2580_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Status age = 18.053176641464233s
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:42.016 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:42.017 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:42.017 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:42.017 [DEBUG] [Thread-66799 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:42.017 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 17;15.2023473;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22211;2460996.79423632;9.06163194;1.3;_
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response 17;15.2023473;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22211;2460996.79423632;9.06163194;1.3;_
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:42.018 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:42.019 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:42.019 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:42.019 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:42.020 [INFO] [Thread-66799 (handle)] [driver.py] [get_status()] Telra = 15.2023473, teldec = -24.256659
2025-11-17T09:03:42.020 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2023473 -24.256659
2025-11-17T09:03:42.020 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2023473 -24.256659
2025-11-17T09:03:42.020 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2023473 -24.256659
2025-11-17T09:03:42.021 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 17;15.2023473;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22211;2460996.79423635;9.06163194;1.3;_15.1773942167796 -24.1592575527705
2025-11-17T09:03:42.021 [INFO] [Thread-66799 (handle)] [driver.py] [get_status()] ra_j2k = 15.1773942167796     dec_j2k = -24.1592575527705
2025-11-17T09:03:42.021 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:42.021 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:42.021 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 140;0.104280742525009;171.162357330327;_
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response 140;0.104280742525009;171.162357330327;_
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:42.022 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:42.023 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:42.024 [DEBUG] [Thread-66799 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:42.024 [DEBUG] [Thread-66799 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:03:42.024 [DEBUG] [Thread-66799 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:03:42.029 [DEBUG] [Thread-66799 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56567)
2025-11-17T09:03:42.030 [DEBUG] [Thread-66799 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:42.030 [DEBUG] [Thread-66799 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:42.030 [DEBUG] [Thread-66799 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:42.030 [DEBUG] [Thread-66799 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:42.030 [DEBUG] [Thread-66799 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:42.037 [DEBUG] [Thread-66799 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:42.037 [INFO] [Thread-66799 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79423632, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280742525009, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108594, telescope_az=89.993115, telescope_ra=15.2023473, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.22211, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.1773942167796, telescope_dec_j2k=-24.1592575527705, observability=1)
2025-11-17T09:03:59.103 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:03:59.103 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Status age = 17.066059827804565s
2025-11-17T09:03:59.103 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:03:59.103 [DEBUG] [Thread-66800 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:03:59.103 [DEBUG] [Thread-66800 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:03:59.104 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:03:59.104 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:03:59.104 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 17;15.2071162;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22688;2460996.79443409;9.06638778;1.3;_
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response 17;15.2071162;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22688;2460996.79443409;9.06638778;1.3;_
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:03:59.105 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:03:59.106 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:59.106 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:03:59.106 [INFO] [Thread-66800 (handle)] [driver.py] [get_status()] Telra = 15.2071162, teldec = -24.256659
2025-11-17T09:03:59.107 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2071162 -24.256659
2025-11-17T09:03:59.107 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2071162 -24.256659
2025-11-17T09:03:59.107 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2071162 -24.256659
2025-11-17T09:03:59.107 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 17;15.2071162;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22688;2460996.79443411;9.06638778;1.3;_15.1821594938479 -24.1593864915898
2025-11-17T09:03:59.108 [INFO] [Thread-66800 (handle)] [driver.py] [get_status()] ra_j2k = 15.1821594938479     dec_j2k = -24.1593864915898
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 140;0.104280622189181;171.162362694745;_
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response 140;0.104280622189181;171.162362694745;_
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:59.108 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:03:59.109 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:03:59.110 [DEBUG] [Thread-66800 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:59.110 [DEBUG] [Thread-66800 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:03:59.110 [DEBUG] [Thread-66800 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:03:59.116 [DEBUG] [Thread-66800 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33893)
2025-11-17T09:03:59.116 [DEBUG] [Thread-66800 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:03:59.116 [DEBUG] [Thread-66800 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:03:59.116 [DEBUG] [Thread-66800 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:03:59.117 [DEBUG] [Thread-66800 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:03:59.117 [DEBUG] [Thread-66800 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:03:59.123 [DEBUG] [Thread-66800 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:03:59.124 [DEBUG] [Thread-66800 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:03:59.124 [INFO] [Thread-66800 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79443409, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280622189181, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108594, telescope_az=89.993115, telescope_ra=15.2071162, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.22688, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.1821594938479, telescope_dec_j2k=-24.1593864915898, observability=1)
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Status age = 1.004124641418457s
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:00.128 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:00.129 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:00.130 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 17;15.2073964;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22716;2460996.79444595;9.06666722;1.3;_
2025-11-17T09:04:00.130 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response 17;15.2073964;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22716;2460996.79444595;9.06666722;1.3;_
2025-11-17T09:04:00.130 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:00.130 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:00.130 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:00.131 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:00.131 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:00.131 [INFO] [Thread-66801 (handle)] [driver.py] [get_status()] Telra = 15.2073964, teldec = -24.256659
2025-11-17T09:04:00.131 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2073964 -24.256659
2025-11-17T09:04:00.132 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2073964 -24.256659
2025-11-17T09:04:00.132 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2073964 -24.256659
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 17;15.2073964;-24.256659;50.108594;89.993115;50.08601;90.12017;12.22716;2460996.79444597;9.06666722;1.3;_15.1824394811127 -24.1593940722526
2025-11-17T09:04:00.133 [INFO] [Thread-66801 (handle)] [driver.py] [get_status()] ra_j2k = 15.1824394811127     dec_j2k = -24.1593940722526
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 140;0.104280702413066;171.162351965909;_
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response 140;0.104280702413066;171.162351965909;_
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:00.133 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:00.134 [DEBUG] [Thread-66801 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:00.134 [DEBUG] [Thread-66801 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:00.134 [DEBUG] [Thread-66801 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:00.140 [DEBUG] [Thread-66801 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37833)
2025-11-17T09:04:00.140 [DEBUG] [Thread-66801 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:00.140 [DEBUG] [Thread-66801 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:00.140 [DEBUG] [Thread-66801 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:00.141 [DEBUG] [Thread-66801 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:00.141 [DEBUG] [Thread-66801 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:00.147 [DEBUG] [Thread-66801 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:00.148 [DEBUG] [Thread-66801 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:00.148 [INFO] [Thread-66801 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79444595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280702413066, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108594, telescope_az=89.993115, telescope_ra=15.2073964, telescope_dec=-24.256659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.22716, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.1824394811127, telescope_dec_j2k=-24.1593940722526, observability=1)
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.601270198822021s
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:09.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:09.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:09.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2100985;-24.256658;50.108593;89.993115;50.08601;90.12017;12.22987;2460996.7945573;9.06936194;1.3;_
2025-11-17T09:04:09.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2100985;-24.256658;50.108593;89.993115;50.08601;90.12017;12.22987;2460996.7945573;9.06936194;1.3;_
2025-11-17T09:04:09.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:09.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:09.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:09.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:09.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:09.752 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2100985, teldec = -24.256658
2025-11-17T09:04:09.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2100985 -24.256658
2025-11-17T09:04:09.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2100985 -24.256658
2025-11-17T09:04:09.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2100985 -24.256658
2025-11-17T09:04:09.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2100985;-24.256658;50.108593;89.993115;50.08601;90.12017;12.22987;2460996.79455733;9.06936194;1.3;_15.185139530508 -24.1594662033078
2025-11-17T09:04:09.753 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.185139530508     dec_j2k = -24.1594662033078
2025-11-17T09:04:09.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:09.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:09.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:09.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104280341405581;171.162346601491;_
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104280341405581;171.162346601491;_
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:09.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:09.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:09.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:09.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55845)
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:09.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:09.767 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:04:09.768 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.7945573, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280341405581, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2100985, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.22987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:03:13.925929', telescope_ra_j2k=15.185139530508, telescope_dec_j2k=-24.1594662033078, observability=1)
2025-11-17T09:04:09.768 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.50428080558777 seconds ago
2025-11-17T09:04:14.069 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:14.070 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:14.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:14.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:14.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:14.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:14.071 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:04:14.071 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:14.071 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:14.071 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:04:14.072 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:04:14.073 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.97513222694397s
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2114636;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23123;2460996.7946151;9.07072333;1.3;_
2025-11-17T09:04:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2114636;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23123;2460996.7946151;9.07072333;1.3;_
2025-11-17T09:04:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:14.746 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2114636, teldec = -24.256658
2025-11-17T09:04:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2114636 -24.256658
2025-11-17T09:04:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2114636 -24.256658
2025-11-17T09:04:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2114636 -24.256658
2025-11-17T09:04:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2114636;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23123;2460996.79461513;9.07072333;1.3;_15.1865035949914 -24.1595031678076
2025-11-17T09:04:14.747 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.1865035949914     dec_j2k = -24.1595031678076
2025-11-17T09:04:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104280261181695;171.162357330327;_
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104280261181695;171.162357330327;_
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42949)
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:14.752 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:14.759 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:14.760 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:14.760 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7946151, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280261181695, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2114636, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.23123, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1865035949914, telescope_dec_j2k=-24.1595031678076, observability=1)
2025-11-17T09:04:15.073 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:15.074 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:15.074 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:15.074 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:15.074 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:04:15.075 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:15.076 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:15.077 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:15.077 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:15.077 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:15.077 [DEBUG] [ThreadPoolExecutor-2582_0] [payload.py] [to_registers()] [0]
2025-11-17T09:04:15.082 [DEBUG] [ThreadPoolExecutor-2582_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56219)
2025-11-17T09:04:15.082 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:15.083 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:15.083 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:04:15.083 [DEBUG] [ThreadPoolExecutor-2582_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:15.083 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:15.090 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:15.090 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:04:15.090 [DEBUG] [ThreadPoolExecutor-2582_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:04:15.091 [DEBUG] [ThreadPoolExecutor-2582_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:04:15.091 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:15.091 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:15.091 [DEBUG] [ThreadPoolExecutor-2582_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Status age = 3.435908794403076s
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:18.196 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 17;15.2124379;-24.256665;50.108593;89.993126;50.08601;90.12018;12.2322;2460996.79465506;9.07169472;1.3;_
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response 17;15.2124379;-24.256665;50.108593;89.993126;50.08601;90.12018;12.2322;2460996.79465506;9.07169472;1.3;_
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:18.197 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:18.198 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:18.198 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:18.198 [INFO] [Thread-66802 (handle)] [driver.py] [get_status()] Telra = 15.2124379, teldec = -24.256665
2025-11-17T09:04:18.198 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2124379 -24.256665
2025-11-17T09:04:18.198 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2124379 -24.256665
2025-11-17T09:04:18.198 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2124379 -24.256665
2025-11-17T09:04:18.199 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 17;15.2124379;-24.256665;50.108593;89.993126;50.08601;90.12018;12.2322;2460996.79465508;9.07169472;1.3;_15.1874771551227 -24.1595365578371
2025-11-17T09:04:18.199 [INFO] [Thread-66802 (handle)] [driver.py] [get_status()] ra_j2k = 15.1874771551227     dec_j2k = -24.1595365578371
2025-11-17T09:04:18.199 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:18.199 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:18.199 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 140;0.104280622189181;171.162357330327;_
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response 140;0.104280622189181;171.162357330327;_
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:18.200 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:04:18.201 [DEBUG] [Thread-66802 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36985)
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:18.209 [DEBUG] [Thread-66802 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:18.217 [DEBUG] [Thread-66802 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:18.218 [INFO] [Thread-66802 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79465506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280622189181, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993126, telescope_ra=15.2124379, telescope_dec=-24.256665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2322, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1874771551227, telescope_dec_j2k=-24.1595365578371, observability=1)
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.5436222553253174s
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:19.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:19.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:19.762 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:19.763 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:19.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:19.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:19.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:19.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:19.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2128764;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23264;2460996.79467318;9.07213222;1.3;_
2025-11-17T09:04:19.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.2128764;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23264;2460996.79467318;9.07213222;1.3;_
2025-11-17T09:04:19.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:19.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:19.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:19.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:19.765 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:19.765 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.2128764, teldec = -24.256658
2025-11-17T09:04:19.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2128764 -24.256658
2025-11-17T09:04:19.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2128764 -24.256658
2025-11-17T09:04:19.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2128764 -24.256658
2025-11-17T09:04:19.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2128764;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23264;2460996.79467322;9.07213222;1.3;_15.1879153236597 -24.1595414371608
2025-11-17T09:04:19.766 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.1879153236597     dec_j2k = -24.1595414371608
2025-11-17T09:04:19.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:19.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:19.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104280702413066;171.162351965909;_
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104280702413066;171.162351965909;_
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:19.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:19.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:19.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:19.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:19.769 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:19.772 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56917)
2025-11-17T09:04:19.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:19.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:19.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:19.773 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:19.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:19.780 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:19.780 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79467318, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280702413066, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2128764, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.23264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1879153236597, telescope_dec_j2k=-24.1595414371608, observability=1)
2025-11-17T09:04:24.324 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:04:24
2025-11-17T09:04:24.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:24.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.544327020645142s
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:24.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:24.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:24.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2141373;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2339;2460996.79472601;9.07338972;1.3;_
2025-11-17T09:04:24.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.2141373;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2339;2460996.79472601;9.07338972;1.3;_
2025-11-17T09:04:24.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:24.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:24.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:24.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:24.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:24.328 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.2141373, teldec = -24.256658
2025-11-17T09:04:24.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2141373 -24.256658
2025-11-17T09:04:24.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2141373 -24.256658
2025-11-17T09:04:24.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2141373 -24.256658
2025-11-17T09:04:24.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2141373;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2339;2460996.79472603;9.07338972;1.3;_15.1891752678311 -24.1595756032616
2025-11-17T09:04:24.329 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.1891752678311     dec_j2k = -24.1595756032616
2025-11-17T09:04:24.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:24.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:24.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104280702413066;171.162373423581;_
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104280702413066;171.162373423581;_
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:24.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:24.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:24.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:24.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:24.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:24.333 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53165)
2025-11-17T09:04:24.333 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:24.333 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:24.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:24.334 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:24.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:24.341 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:24.341 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79472601, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280702413066, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2141373, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2339, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1891752678311, telescope_dec_j2k=-24.1595756032616, observability=1)
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Status age = 11.918931722640991s
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:36.260 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:36.261 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:36.262 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 17;15.217479;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23725;2460996.79486414;9.07672222;1.3;_
2025-11-17T09:04:36.262 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response 17;15.217479;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23725;2460996.79486414;9.07672222;1.3;_
2025-11-17T09:04:36.262 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:36.262 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:36.262 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:36.263 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:36.263 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:36.263 [INFO] [Thread-66803 (handle)] [driver.py] [get_status()] Telra = 15.217479, teldec = -24.256658
2025-11-17T09:04:36.263 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] UnCookCoordinates 15.217479 -24.256658
2025-11-17T09:04:36.263 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.217479 -24.256658
2025-11-17T09:04:36.263 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.217479 -24.256658
2025-11-17T09:04:36.264 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 17;15.217479;-24.256658;50.108593;89.993115;50.08601;90.12017;12.23725;2460996.79486417;9.07672222;1.3;_15.1925144360923 -24.1596662037311
2025-11-17T09:04:36.264 [INFO] [Thread-66803 (handle)] [driver.py] [get_status()] ra_j2k = 15.1925144360923     dec_j2k = -24.1596662037311
2025-11-17T09:04:36.264 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:36.264 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:36.264 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 140;0.104280943084723;171.162346601491;_
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response 140;0.104280943084723;171.162346601491;_
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:36.265 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:36.266 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:36.267 [DEBUG] [Thread-66803 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:36.267 [DEBUG] [Thread-66803 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:36.268 [DEBUG] [Thread-66803 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40587)
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:36.274 [DEBUG] [Thread-66803 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:36.281 [DEBUG] [Thread-66803 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:36.282 [INFO] [Thread-66803 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79486414, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280943084723, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.217479, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.23725, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1925144360923, telescope_dec_j2k=-24.1596662037311, observability=1)
2025-11-17T09:04:40.091 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:40.091 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:40.091 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:40.091 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:40.091 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:40.092 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:04:40.093 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:04:40.094 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:54.379 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:54.379 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Status age = 18.097843408584595s
2025-11-17T09:04:54.379 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:54.380 [DEBUG] [Thread-66804 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:54.380 [DEBUG] [Thread-66804 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:54.380 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:54.380 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:54.380 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:54.381 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:54.382 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 17;15.2225256;-24.256658;50.108593;89.993115;50.08601;90.12017;12.24229;2460996.79507387;9.081755;1.3;_
2025-11-17T09:04:54.382 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response 17;15.2225256;-24.256658;50.108593;89.993115;50.08601;90.12017;12.24229;2460996.79507387;9.081755;1.3;_
2025-11-17T09:04:54.382 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:54.382 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:54.382 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:54.383 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:54.383 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:54.383 [INFO] [Thread-66804 (handle)] [driver.py] [get_status()] Telra = 15.2225256, teldec = -24.256658
2025-11-17T09:04:54.383 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2225256 -24.256658
2025-11-17T09:04:54.383 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2225256 -24.256658
2025-11-17T09:04:54.383 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2225256 -24.256658
2025-11-17T09:04:54.384 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 17;15.2225256;-24.256658;50.108593;89.993115;50.08601;90.12017;12.24229;2460996.79507389;9.081755;1.3;_15.1975572166696 -24.1598031699564
2025-11-17T09:04:54.384 [INFO] [Thread-66804 (handle)] [driver.py] [get_status()] ra_j2k = 15.1975572166696     dec_j2k = -24.1598031699564
2025-11-17T09:04:54.384 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:54.384 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:54.384 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 140;0.104280983196666;171.162362694745;_
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response 140;0.104280983196666;171.162362694745;_
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:54.385 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:54.386 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:54.387 [DEBUG] [Thread-66804 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:54.387 [DEBUG] [Thread-66804 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:54.387 [DEBUG] [Thread-66804 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50893)
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:54.389 [DEBUG] [Thread-66804 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:54.396 [DEBUG] [Thread-66804 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:54.396 [DEBUG] [Thread-66804 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:54.397 [DEBUG] [Thread-66804 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:54.397 [INFO] [Thread-66804 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79507387, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104280983196666, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2225256, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.24229, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1975572166696, telescope_dec_j2k=-24.1598031699564, observability=1)
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Status age = 4.760998964309692s
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:04:59.158 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:04:59.159 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:04:59.160 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 17;15.2238339;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2436;2460996.79512917;9.08305972;1.3;_
2025-11-17T09:04:59.160 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response 17;15.2238339;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2436;2460996.79512917;9.08305972;1.3;_
2025-11-17T09:04:59.160 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:04:59.160 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:04:59.160 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:04:59.161 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:59.161 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:04:59.161 [INFO] [Thread-66805 (handle)] [driver.py] [get_status()] Telra = 15.2238339, teldec = -24.256658
2025-11-17T09:04:59.161 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2238339 -24.256658
2025-11-17T09:04:59.161 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2238339 -24.256658
2025-11-17T09:04:59.161 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2238339 -24.256658
2025-11-17T09:04:59.162 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 17;15.2238339;-24.256658;50.108593;89.993115;50.08601;90.12017;12.2436;2460996.79512919;9.08305972;1.3;_15.1988645272907 -24.1598387055412
2025-11-17T09:04:59.162 [INFO] [Thread-66805 (handle)] [driver.py] [get_status()] ra_j2k = 15.1988645272907     dec_j2k = -24.1598387055412
2025-11-17T09:04:59.162 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:04:59.162 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:04:59.162 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 140;0.104281023308609;171.162351965909;_
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response 140;0.104281023308609;171.162351965909;_
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:59.163 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:59.164 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:59.164 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:59.164 [DEBUG] [Thread-66805 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:59.164 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:04:59.164 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:04:59.165 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:04:59.165 [DEBUG] [Thread-66805 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:59.165 [DEBUG] [Thread-66805 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:04:59.165 [DEBUG] [Thread-66805 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60123)
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:04:59.170 [DEBUG] [Thread-66805 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:04:59.177 [DEBUG] [Thread-66805 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:04:59.177 [DEBUG] [Thread-66805 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:04:59.178 [DEBUG] [Thread-66805 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:04:59.178 [INFO] [Thread-66805 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79512917, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281023308609, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108593, telescope_az=89.993115, telescope_ra=15.2238339, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2436, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.1988645272907, telescope_dec_j2k=-24.1598387055412, observability=1)
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.649849653244019s
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:09.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:09.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:09.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2268151;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24658;2460996.79525266;9.08603278;1.3;_
2025-11-17T09:05:09.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2268151;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24658;2460996.79525266;9.08603278;1.3;_
2025-11-17T09:05:09.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:09.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:09.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:09.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:09.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:09.832 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2268151, teldec = -24.256658
2025-11-17T09:05:09.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2268151 -24.256658
2025-11-17T09:05:09.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2268151 -24.256658
2025-11-17T09:05:09.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2268151 -24.256658
2025-11-17T09:05:09.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2268151;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24658;2460996.7952527;9.08603278;1.3;_15.2018434740156 -24.1599197227753
2025-11-17T09:05:09.833 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2018434740156     dec_j2k = -24.1599197227753
2025-11-17T09:05:09.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:09.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:09.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10428146453998;171.162362694745;_
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10428146453998;171.162362694745;_
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:09.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:09.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:09.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:09.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:09.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:09.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:09.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:05:09.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:05:09.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57885)
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:09.842 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:09.849 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:09.849 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:09.849 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:09.849 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:09.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:09.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:09.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:09.850 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:09.850 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:05:09.850 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79525266, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10428146453998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2268151, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.24658, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.2018434740156, telescope_dec_j2k=-24.1599197227753, observability=1)
2025-11-17T09:05:09.850 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.525561809539795 seconds ago
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Status age = 2.605524778366089s
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:12.455 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:12.456 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:12.457 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 17;15.2275616;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24733;2460996.79528307;9.08677722;1.3;_
2025-11-17T09:05:12.457 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response 17;15.2275616;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24733;2460996.79528307;9.08677722;1.3;_
2025-11-17T09:05:12.457 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:12.457 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:12.457 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:12.458 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:12.458 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:12.458 [INFO] [Thread-66806 (handle)] [driver.py] [get_status()] Telra = 15.2275616, teldec = -24.256658
2025-11-17T09:05:12.458 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2275616 -24.256658
2025-11-17T09:05:12.458 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2275616 -24.256658
2025-11-17T09:05:12.458 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2275616 -24.256658
2025-11-17T09:05:12.459 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 17;15.2275616;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24733;2460996.79528309;9.08677722;1.3;_15.2025894100522 -24.159940019032
2025-11-17T09:05:12.459 [INFO] [Thread-66806 (handle)] [driver.py] [get_status()] ra_j2k = 15.2025894100522     dec_j2k = -24.159940019032
2025-11-17T09:05:12.459 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:12.459 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:12.459 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 140;0.104281063420552;171.162357330327;_
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response 140;0.104281063420552;171.162357330327;_
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:12.460 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:12.461 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:12.462 [DEBUG] [Thread-66806 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:12.462 [DEBUG] [Thread-66806 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:12.462 [DEBUG] [Thread-66806 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46125)
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:12.468 [DEBUG] [Thread-66806 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:12.475 [DEBUG] [Thread-66806 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:12.476 [INFO] [Thread-66806 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79528307, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281063420552, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2275616, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.24733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:04:14.069331', telescope_ra_j2k=15.2025894100522, telescope_dec_j2k=-24.159940019032, observability=1)
2025-11-17T09:05:14.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:14.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:14.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:14.211 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:14.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:14.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:14.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:14.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:14.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:14.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:14.213 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:05:14.213 [INFO] [ThreadPoolExecutor-2583_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:05:14.213 [INFO] [ThreadPoolExecutor-2583_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:05:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.269939422607422s
2025-11-17T09:05:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2281785;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24795;2460996.79530958;9.0873925;1.3;_
2025-11-17T09:05:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2281785;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24795;2460996.79530958;9.0873925;1.3;_
2025-11-17T09:05:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:14.749 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2281785, teldec = -24.256658
2025-11-17T09:05:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2281785 -24.256658
2025-11-17T09:05:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2281785 -24.256658
2025-11-17T09:05:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2281785 -24.256658
2025-11-17T09:05:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2281785;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24795;2460996.79530961;9.0873925;1.3;_15.2032058440779 -24.1599567944729
2025-11-17T09:05:14.750 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.2032058440779     dec_j2k = -24.1599567944729
2025-11-17T09:05:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104281304092208;171.162357330327;_
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104281304092208;171.162357330327;_
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43675)
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:14.762 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:14.762 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79530958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281304092208, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2281785, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.24795, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2032058440779, telescope_dec_j2k=-24.1599567944729, observability=1)
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.10949969291687s
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:18.871 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:18.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:18.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:18.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.229347;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24911;2460996.79535733;9.08855778;1.3;_
2025-11-17T09:05:18.873 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.229347;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24911;2460996.79535733;9.08855778;1.3;_
2025-11-17T09:05:18.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:18.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:18.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:18.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:18.875 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:18.875 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.229347, teldec = -24.256658
2025-11-17T09:05:18.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.229347 -24.256658
2025-11-17T09:05:18.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.229347 -24.256658
2025-11-17T09:05:18.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.229347 -24.256658
2025-11-17T09:05:18.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.229347;-24.256658;50.108592;89.993115;50.08601;90.12017;12.24911;2460996.79535736;9.08855778;1.3;_15.2043734616504 -24.159988576639
2025-11-17T09:05:18.876 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.2043734616504     dec_j2k = -24.159988576639
2025-11-17T09:05:18.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:18.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:18.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104281304092208;171.162351965909;_
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104281304092208;171.162351965909;_
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:18.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:18.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:18.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:18.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:18.879 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52265)
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:18.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:18.887 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:18.887 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:18.888 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:18.888 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79535733, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281304092208, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.229347, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.24911, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2043734616504, telescope_dec_j2k=-24.159988576639, observability=1)
2025-11-17T09:05:24.402 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:05:24
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.514215707778931s
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:24.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:24.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:24.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2308806;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25065;2460996.79542134;9.09008722;1.3;_
2025-11-17T09:05:24.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.2308806;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25065;2460996.79542134;9.09008722;1.3;_
2025-11-17T09:05:24.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:24.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:24.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:24.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:24.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:24.405 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.2308806, teldec = -24.256658
2025-11-17T09:05:24.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2308806 -24.256658
2025-11-17T09:05:24.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2308806 -24.256658
2025-11-17T09:05:24.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2308806 -24.256658
2025-11-17T09:05:24.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2308806;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25065;2460996.79542137;9.09008722;1.3;_15.2059059038979 -24.1600303030933
2025-11-17T09:05:24.406 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2059059038979     dec_j2k = -24.1600303030933
2025-11-17T09:05:24.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:24.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:24.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104282306890779;171.162351965909;_
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104282306890779;171.162351965909;_
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:24.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:24.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:24.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:24.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:24.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43087)
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:24.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:24.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:24.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:24.422 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:24.422 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79542134, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282306890779, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2308806, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.25065, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2059059038979, telescope_dec_j2k=-24.1600303030933, observability=1)
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Status age = 6.102160692214966s
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:30.524 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:30.525 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 17;15.2325831;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25235;2460996.7954922;9.091785;1.3;_
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response 17;15.2325831;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25235;2460996.7954922;9.091785;1.3;_
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:30.526 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:30.527 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:30.527 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:30.528 [INFO] [Thread-66807 (handle)] [driver.py] [get_status()] Telra = 15.2325831, teldec = -24.256658
2025-11-17T09:05:30.528 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2325831 -24.256658
2025-11-17T09:05:30.528 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2325831 -24.256658
2025-11-17T09:05:30.528 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2325831 -24.256658
2025-11-17T09:05:30.529 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 17;15.2325831;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25235;2460996.79549223;9.091785;1.3;_15.2076071191588 -24.1600766434691
2025-11-17T09:05:30.529 [INFO] [Thread-66807 (handle)] [driver.py] [get_status()] ra_j2k = 15.2076071191588     dec_j2k = -24.1600766434691
2025-11-17T09:05:30.529 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:30.529 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:30.529 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 140;0.104281304092208;171.162368059163;_
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response 140;0.104281304092208;171.162368059163;_
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:30.530 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:30.531 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:30.532 [DEBUG] [Thread-66807 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:30.532 [DEBUG] [Thread-66807 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:30.532 [DEBUG] [Thread-66807 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44239)
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:30.536 [DEBUG] [Thread-66807 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:30.537 [DEBUG] [Thread-66807 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:30.538 [INFO] [Thread-66807 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7954922, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281304092208, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2325831, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.25235, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2076071191588, telescope_dec_j2k=-24.1600766434691, observability=1)
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:35.094 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:05:35.095 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.096 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.096 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.096 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:35.096 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:35.096 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:35.097 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:05:35.098 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:35.099 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Park
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:05:35.100 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:05:35.101 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 29;15.2338644;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25363;2460996.79554515;9.09306278;1.3;_Park Command Successful
2025-11-17T09:05:36.101 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:05:36.101 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:05:36.101 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:05:36.102 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:05:36.102 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:05:37.103 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:05:37.103 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:05:37.103 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:05:37.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:05:37.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:05:38.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:05:38.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:05:38.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:05:38.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:05:38.104 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:39.105 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:05:39.106 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:05:39.107 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:05:39.107 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:40.107 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:05:40.108 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:05:40.109 [DEBUG] [ThreadPoolExecutor-2582_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:40.109 [INFO] [ThreadPoolExecutor-2582_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:05:48.628 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Status age = 18.091052770614624s
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:48.629 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 17;15.2376244;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25739;2460996.79570174;9.0968125;1.3;_
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response 17;15.2376244;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25739;2460996.79570174;9.0968125;1.3;_
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:48.630 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:48.631 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:48.631 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:48.631 [INFO] [Thread-66808 (handle)] [driver.py] [get_status()] Telra = 15.2376244, teldec = -24.256658
2025-11-17T09:05:48.631 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2376244 -24.256658
2025-11-17T09:05:48.631 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2376244 -24.256658
2025-11-17T09:05:48.632 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2376244 -24.256658
2025-11-17T09:05:48.632 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 17;15.2376244;-24.256658;50.108592;89.993115;50.08601;90.12017;12.25739;2460996.79570176;9.0968125;1.3;_15.2126446181095 -24.1602139765294
2025-11-17T09:05:48.632 [INFO] [Thread-66808 (handle)] [driver.py] [get_status()] ra_j2k = 15.2126446181095     dec_j2k = -24.1602139765294
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 140;0.104281945883293;171.162357330327;_
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response 140;0.104281945883293;171.162357330327;_
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:48.633 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:48.634 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:48.635 [DEBUG] [Thread-66808 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:05:48.635 [DEBUG] [Thread-66808 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:05:48.635 [DEBUG] [Thread-66808 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37667)
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:48.638 [DEBUG] [Thread-66808 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:48.645 [DEBUG] [Thread-66808 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:48.645 [INFO] [Thread-66808 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79570174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281945883293, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108592, telescope_az=89.993115, telescope_ra=15.2376244, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.25739, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2126446181095, telescope_dec_j2k=-24.1602139765294, observability=1)
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Status age = 10.565813302993774s
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:05:59.211 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:05:59.212 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:05:59.212 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:05:59.212 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:05:59.213 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 17;15.2405788;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26035;2460996.79582422;9.09975889;1.3;_
2025-11-17T09:05:59.214 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response 17;15.2405788;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26035;2460996.79582422;9.09975889;1.3;_
2025-11-17T09:05:59.214 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:05:59.214 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:05:59.214 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:05:59.215 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:59.215 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:05:59.215 [INFO] [Thread-66809 (handle)] [driver.py] [get_status()] Telra = 15.2405788, teldec = -24.256658
2025-11-17T09:05:59.215 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2405788 -24.256658
2025-11-17T09:05:59.215 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2405788 -24.256658
2025-11-17T09:05:59.215 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2405788 -24.256658
2025-11-17T09:05:59.216 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 17;15.2405788;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26035;2460996.79582426;9.09975889;1.3;_15.2155967927791 -24.1602945381245
2025-11-17T09:05:59.216 [INFO] [Thread-66809 (handle)] [driver.py] [get_status()] ra_j2k = 15.2155967927791     dec_j2k = -24.1602945381245
2025-11-17T09:05:59.216 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:05:59.216 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:05:59.216 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 140;0.104282106331064;171.162351965909;_
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response 140;0.104282106331064;171.162351965909;_
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:59.217 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:05:59.218 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:05:59.219 [DEBUG] [Thread-66809 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:59.219 [DEBUG] [Thread-66809 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:05:59.219 [DEBUG] [Thread-66809 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49551)
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:05:59.225 [DEBUG] [Thread-66809 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:05:59.233 [DEBUG] [Thread-66809 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:05:59.233 [DEBUG] [Thread-66809 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:59.233 [DEBUG] [Thread-66809 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:05:59.233 [DEBUG] [Thread-66809 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:05:59.233 [DEBUG] [Thread-66809 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:05:59.234 [DEBUG] [Thread-66809 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:05:59.234 [DEBUG] [Thread-66809 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:05:59.234 [DEBUG] [Thread-66809 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:05:59.234 [DEBUG] [Thread-66809 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:05:59.234 [INFO] [Thread-66809 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79582422, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282106331064, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2405788, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26035, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2155967927791, telescope_dec_j2k=-24.1602945381245, observability=1)
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Status age = 7.462005138397217s
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:06.696 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:06.697 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:06.698 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 17;15.242664;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26243;2460996.79591086;9.10183833;1.3;_
2025-11-17T09:06:06.698 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response 17;15.242664;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26243;2460996.79591086;9.10183833;1.3;_
2025-11-17T09:06:06.698 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:06.698 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:06.698 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:06.699 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:06.699 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:06.699 [INFO] [Thread-66810 (handle)] [driver.py] [get_status()] Telra = 15.242664, teldec = -24.256658
2025-11-17T09:06:06.699 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] UnCookCoordinates 15.242664 -24.256658
2025-11-17T09:06:06.699 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.242664 -24.256658
2025-11-17T09:06:06.700 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.242664 -24.256658
2025-11-17T09:06:06.700 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 17;15.242664;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26243;2460996.79591088;9.10183833;1.3;_15.2176804231473 -24.1603514331957
2025-11-17T09:06:06.700 [INFO] [Thread-66810 (handle)] [driver.py] [get_status()] ra_j2k = 15.2176804231473     dec_j2k = -24.1603514331957
2025-11-17T09:06:06.700 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 140;0.104282026107179;171.162357330327;_
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response 140;0.104282026107179;171.162357330327;_
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:06.701 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:06.702 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:06.702 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:06.702 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:06.702 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:06.703 [DEBUG] [Thread-66810 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:06.704 [DEBUG] [Thread-66810 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:06.709 [DEBUG] [Thread-66810 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50453)
2025-11-17T09:06:06.709 [DEBUG] [Thread-66810 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:06.709 [DEBUG] [Thread-66810 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:06.710 [DEBUG] [Thread-66810 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:06.710 [DEBUG] [Thread-66810 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:06.710 [DEBUG] [Thread-66810 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:06.717 [DEBUG] [Thread-66810 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:06.717 [INFO] [Thread-66810 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79591086, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282026107179, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.242664, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2176804231473, telescope_dec_j2k=-24.1603514331957, observability=1)
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.193121910095215s
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:09.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:09.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:09.912 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2435623;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26333;2460996.79594806;9.10273417;1.3;_
2025-11-17T09:06:09.912 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2435623;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26333;2460996.79594806;9.10273417;1.3;_
2025-11-17T09:06:09.912 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:09.912 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:09.912 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:09.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:09.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:09.913 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2435623, teldec = -24.256658
2025-11-17T09:06:09.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2435623 -24.256658
2025-11-17T09:06:09.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2435623 -24.256658
2025-11-17T09:06:09.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2435623 -24.256658
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2435623;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26333;2460996.79594808;9.10273417;1.3;_15.2185780472069 -24.1603759524311
2025-11-17T09:06:09.915 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2185780472069     dec_j2k = -24.1603759524311
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104282387114664;171.162357330327;_
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104282387114664;171.162357330327;_
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:09.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:09.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:09.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:09.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:09.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40395)
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:09.918 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:09.925 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:09.926 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:09.926 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:06:09.926 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79594806, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282387114664, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2435623, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:05:14.210416', telescope_ra_j2k=15.2185780472069, telescope_dec_j2k=-24.1603759524311, observability=1)
2025-11-17T09:06:09.926 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.523924350738525 seconds ago
2025-11-17T09:06:14.354 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:14.354 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:14.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:14.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:14.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:14.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:14.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:14.356 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:14.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:14.357 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:14.357 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:14.357 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:06:14.357 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:14.357 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:14.357 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:14.357 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:14.357 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:06:14.358 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:06:14.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.82805061340332s
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2448993;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26467;2460996.79600411;9.1040675;1.3;_
2025-11-17T09:06:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2448993;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26467;2460996.79600411;9.1040675;1.3;_
2025-11-17T09:06:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:14.757 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2448993, teldec = -24.256658
2025-11-17T09:06:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2448993 -24.256658
2025-11-17T09:06:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2448993 -24.256658
2025-11-17T09:06:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2448993 -24.256658
2025-11-17T09:06:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2448993;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26467;2460996.79600414;9.1040675;1.3;_15.2199140414427 -24.1604124560283
2025-11-17T09:06:14.758 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.2199140414427     dec_j2k = -24.1604124560283
2025-11-17T09:06:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104281785435522;171.162362694745;_
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104281785435522;171.162362694745;_
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:14.761 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46009)
2025-11-17T09:06:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:14.761 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:14.770 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79600411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104281785435522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2448993, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26467, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2199140414427, telescope_dec_j2k=-24.1604124560283, observability=1)
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:15.359 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:15.360 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:15.360 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:15.360 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:06:15.360 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:06:15.360 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:06:15.361 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:15.362 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:15.363 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:15.363 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:15.363 [DEBUG] [ThreadPoolExecutor-2584_0] [payload.py] [to_registers()] [0]
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56167)
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:15.368 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:15.369 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:15.369 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:06:15.369 [DEBUG] [ThreadPoolExecutor-2584_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:06:15.370 [DEBUG] [ThreadPoolExecutor-2584_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:06:15.370 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:15.370 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:15.370 [DEBUG] [ThreadPoolExecutor-2584_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:17.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:17.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.205003261566162s
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:17.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:17.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:17.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2457884;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26556;2460996.7960414;9.10495417;1.3;_
2025-11-17T09:06:17.977 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.2457884;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26556;2460996.7960414;9.10495417;1.3;_
2025-11-17T09:06:17.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:17.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:17.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:17.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:17.978 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:17.978 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.2457884, teldec = -24.256658
2025-11-17T09:06:17.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2457884 -24.256658
2025-11-17T09:06:17.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2457884 -24.256658
2025-11-17T09:06:17.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2457884 -24.256658
2025-11-17T09:06:17.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2457884;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26556;2460996.79604142;9.10495417;1.3;_15.2208024728008 -24.1604367373905
2025-11-17T09:06:17.979 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.2208024728008     dec_j2k = -24.1604367373905
2025-11-17T09:06:17.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:17.980 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:17.980 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:17.980 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104282266778836;171.162351965909;_
2025-11-17T09:06:17.980 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104282266778836;171.162351965909;_
2025-11-17T09:06:17.980 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:17.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:17.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:17.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:17.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:17.981 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:17.982 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56133)
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:17.987 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:17.994 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:17.994 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7960414, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282266778836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2457884, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26556, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2208024728008, telescope_dec_j2k=-24.1604367373905, observability=1)
2025-11-17T09:06:24.483 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:06:24
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.488651752471924s
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2476033;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26737;2460996.79611672;9.10676417;1.3;_
2025-11-17T09:06:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.2476033;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26737;2460996.79611672;9.10676417;1.3;_
2025-11-17T09:06:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:24.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:24.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:24.486 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.2476033, teldec = -24.256658
2025-11-17T09:06:24.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2476033 -24.256658
2025-11-17T09:06:24.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2476033 -24.256658
2025-11-17T09:06:24.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2476033 -24.256658
2025-11-17T09:06:24.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2476033;-24.256658;50.108591;89.993115;50.08601;90.12017;12.26737;2460996.79611675;9.10676417;1.3;_15.2226160083823 -24.1604863187682
2025-11-17T09:06:24.487 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2226160083823     dec_j2k = -24.1604863187682
2025-11-17T09:06:24.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104282146443007;171.162368059163;_
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104282146443007;171.162368059163;_
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:24.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:24.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:24.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:24.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:24.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49269)
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:24.498 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:24.506 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:24.506 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79611672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282146443007, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2476033, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.26737, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2226160083823, telescope_dec_j2k=-24.1604863187682, observability=1)
2025-11-17T09:06:24.758 [DEBUG] [Thread-66811 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:24.758 [DEBUG] [Thread-66811 (handle)] [server.py] [get_status()] Status age = 0.25209522247314453s
2025-11-17T09:06:24.758 [DEBUG] [Thread-66811 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.25209522247314453
2025-11-17T09:06:40.370 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:40.370 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:40.370 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:40.370 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:40.370 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:40.371 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:06:40.372 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:06:40.373 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:42.882 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Status age = 18.376509189605713s
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:42.883 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:42.884 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:42.885 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 17;15.2527307;-24.256658;50.108591;89.993115;50.08601;90.12017;12.2725;2460996.79632969;9.1118775;1.3;_
2025-11-17T09:06:42.885 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response 17;15.2527307;-24.256658;50.108591;89.993115;50.08601;90.12017;12.2725;2460996.79632969;9.1118775;1.3;_
2025-11-17T09:06:42.885 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:42.885 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:42.885 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:42.886 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:42.886 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:42.886 [INFO] [Thread-66812 (handle)] [driver.py] [get_status()] Telra = 15.2527307, teldec = -24.256658
2025-11-17T09:06:42.886 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2527307 -24.256658
2025-11-17T09:06:42.886 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2527307 -24.256658
2025-11-17T09:06:42.886 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2527307 -24.256658
2025-11-17T09:06:42.887 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 17;15.2527307;-24.256658;50.108591;89.993115;50.08601;90.12017;12.2725;2460996.79632971;9.1118775;1.3;_15.227739557046 -24.1606265132461
2025-11-17T09:06:42.887 [INFO] [Thread-66812 (handle)] [driver.py] [get_status()] ra_j2k = 15.227739557046     dec_j2k = -24.1606265132461
2025-11-17T09:06:42.887 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:42.887 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 140;0.104282587674378;171.162351965909;_
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response 140;0.104282587674378;171.162351965909;_
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:42.888 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:42.889 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:42.889 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:42.890 [DEBUG] [Thread-66812 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:42.891 [DEBUG] [Thread-66812 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38209)
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:42.894 [DEBUG] [Thread-66812 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:42.901 [DEBUG] [Thread-66812 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:42.901 [DEBUG] [Thread-66812 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:42.901 [DEBUG] [Thread-66812 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:42.902 [DEBUG] [Thread-66812 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:42.902 [INFO] [Thread-66812 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79632969, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282587674378, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108591, telescope_az=89.993115, telescope_ra=15.2527307, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2725, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.227739557046, telescope_dec_j2k=-24.1606265132461, observability=1)
2025-11-17T09:06:59.266 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Status age = 16.3647141456604s
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:06:59.267 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:06:59.268 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 17;15.2572923;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27706;2460996.79651931;9.11642667;1.3;_
2025-11-17T09:06:59.268 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response 17;15.2572923;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27706;2460996.79651931;9.11642667;1.3;_
2025-11-17T09:06:59.268 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:06:59.268 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:06:59.268 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:06:59.269 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:59.269 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:06:59.269 [INFO] [Thread-66813 (handle)] [driver.py] [get_status()] Telra = 15.2572923, teldec = -24.256658
2025-11-17T09:06:59.269 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2572923 -24.256658
2025-11-17T09:06:59.269 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2572923 -24.256658
2025-11-17T09:06:59.270 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2572923 -24.256658
2025-11-17T09:06:59.270 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 17;15.2572923;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27706;2460996.79651933;9.11642667;1.3;_15.2322977348957 -24.1607513847041
2025-11-17T09:06:59.271 [INFO] [Thread-66813 (handle)] [driver.py] [get_status()] ra_j2k = 15.2322977348957     dec_j2k = -24.1607513847041
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 140;0.104282988793806;171.162351965909;_
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response 140;0.104282988793806;171.162351965909;_
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:59.271 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:59.272 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:59.272 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:06:59.272 [DEBUG] [Thread-66813 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:06:59.272 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:06:59.272 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:06:59.273 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:06:59.273 [DEBUG] [Thread-66813 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:06:59.273 [DEBUG] [Thread-66813 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:06:59.274 [DEBUG] [Thread-66813 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:06:59.278 [DEBUG] [Thread-66813 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46691)
2025-11-17T09:06:59.278 [DEBUG] [Thread-66813 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:06:59.279 [DEBUG] [Thread-66813 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:06:59.279 [DEBUG] [Thread-66813 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:06:59.279 [DEBUG] [Thread-66813 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:06:59.279 [DEBUG] [Thread-66813 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:06:59.286 [DEBUG] [Thread-66813 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:06:59.286 [INFO] [Thread-66813 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79651931, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282988793806, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993115, telescope_ra=15.2572923, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.27706, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2322977348957, telescope_dec_j2k=-24.1607513847041, observability=1)
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Status age = 1.6602907180786133s
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:00.947 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:00.949 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 17;15.2577692;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27754;2460996.79653876;9.11690222;1.3;_
2025-11-17T09:07:00.949 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response 17;15.2577692;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27754;2460996.79653876;9.11690222;1.3;_
2025-11-17T09:07:00.949 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:00.949 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:00.949 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:00.950 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:00.950 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:00.950 [INFO] [Thread-66814 (handle)] [driver.py] [get_status()] Telra = 15.2577692, teldec = -24.256658
2025-11-17T09:07:00.950 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2577692 -24.256658
2025-11-17T09:07:00.950 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2577692 -24.256658
2025-11-17T09:07:00.950 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2577692 -24.256658
2025-11-17T09:07:00.951 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 17;15.2577692;-24.256658;50.10859;89.993115;50.08601;90.12017;12.27754;2460996.79653878;9.11690222;1.3;_15.2327742773497 -24.1607644475922
2025-11-17T09:07:00.951 [INFO] [Thread-66814 (handle)] [driver.py] [get_status()] ra_j2k = 15.2327742773497     dec_j2k = -24.1607644475922
2025-11-17T09:07:00.951 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:00.951 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:00.951 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 140;0.104283149241577;171.162357330327;_
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response 140;0.104283149241577;171.162357330327;_
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:00.952 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:00.955 [DEBUG] [Thread-66814 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39899)
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:00.959 [DEBUG] [Thread-66814 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:00.966 [DEBUG] [Thread-66814 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:00.966 [DEBUG] [Thread-66814 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:00.966 [DEBUG] [Thread-66814 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:00.967 [DEBUG] [Thread-66814 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:00.967 [INFO] [Thread-66814 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79653876, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283149241577, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993115, telescope_ra=15.2577692, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.27754, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2327742773497, telescope_dec_j2k=-24.1607644475922, observability=1)
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.01926326751709s
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:09.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:09.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:09.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2602805;-24.256658;50.10859;89.993116;50.08601;90.12017;12.28005;2460996.79664338;9.11940667;1.3;_
2025-11-17T09:07:09.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2602805;-24.256658;50.10859;89.993116;50.08601;90.12017;12.28005;2460996.79664338;9.11940667;1.3;_
2025-11-17T09:07:09.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:09.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:09.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:09.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:09.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:09.989 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2602805, teldec = -24.256658
2025-11-17T09:07:09.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2602805 -24.256658
2025-11-17T09:07:09.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2602805 -24.256658
2025-11-17T09:07:09.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2602805 -24.256658
2025-11-17T09:07:09.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2602805;-24.256658;50.10859;89.993116;50.08601;90.12017;12.28005;2460996.7966434;9.11940667;1.3;_15.2352836952682 -24.1608332601961
2025-11-17T09:07:09.990 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2352836952682     dec_j2k = -24.1608332601961
2025-11-17T09:07:09.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:09.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:09.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104283229465463;171.162351965909;_
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104283229465463;171.162351965909;_
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:09.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:09.992 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:09.993 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:09.993 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:09.993 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52837)
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:09.997 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:10.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:10.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:10.004 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:10.004 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:10.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:10.005 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:10.005 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:10.005 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:10.005 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:07:10.005 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79664338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283229465463, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.2602805, telescope_dec=-24.256658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:06:14.354212', telescope_ra_j2k=15.2352836952682, telescope_dec_j2k=-24.1608332601961, observability=1)
2025-11-17T09:07:10.005 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.52188563346863 seconds ago
2025-11-17T09:07:14.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:14.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:14.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:14.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:14.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:14.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:14.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:14.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:14.498 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:07:14.498 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:14.498 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:14.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:14.499 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:07:14.500 [INFO] [ThreadPoolExecutor-2585_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:07:14.500 [INFO] [ThreadPoolExecutor-2585_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.757901191711426s
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2616183;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28138;2460996.79669866;9.12074083;1.3;_
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2616183;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28138;2460996.79669866;9.12074083;1.3;_
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2616183, teldec = -24.256657
2025-11-17T09:07:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2616183 -24.256657
2025-11-17T09:07:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2616183 -24.256657
2025-11-17T09:07:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2616183 -24.256657
2025-11-17T09:07:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2616183;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28138;2460996.79669868;9.12074083;1.3;_15.236620493297 -24.1608689346183
2025-11-17T09:07:14.766 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.236620493297     dec_j2k = -24.1608689346183
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104283069017692;171.162362694745;_
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104283069017692;171.162362694745;_
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45601)
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:14.782 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79669866, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283069017692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.2616183, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.236620493297, telescope_dec_j2k=-24.1608689346183, observability=1)
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.348681688308716s
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:17.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:17.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:17.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.262281;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28205;2460996.79672608;9.12140167;1.3;_
2025-11-17T09:07:17.133 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.262281;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28205;2460996.79672608;9.12140167;1.3;_
2025-11-17T09:07:17.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:17.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:17.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:17.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:17.134 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:17.134 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.262281, teldec = -24.256657
2025-11-17T09:07:17.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.262281 -24.256657
2025-11-17T09:07:17.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.262281 -24.256657
2025-11-17T09:07:17.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.262281 -24.256657
2025-11-17T09:07:17.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.262281;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28205;2460996.7967261;9.12140167;1.3;_15.2372826970087 -24.1608871062686
2025-11-17T09:07:17.135 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.2372826970087     dec_j2k = -24.1608871062686
2025-11-17T09:07:17.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:17.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:17.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104282908569921;171.162351965909;_
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104282908569921;171.162351965909;_
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:17.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:17.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:17.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:17.138 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:17.138 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58539)
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:17.142 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:17.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:17.150 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:17.150 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:17.150 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79672608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282908569921, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.262281, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28205, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2372826970087, telescope_dec_j2k=-24.1608871062686, observability=1)
2025-11-17T09:07:19.018 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:19.018 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Status age = 1.8687937259674072s
2025-11-17T09:07:19.018 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:19.019 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:19.020 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 17;15.2628135;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28258;2460996.79674792;9.12193278;1.3;_
2025-11-17T09:07:19.020 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response 17;15.2628135;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28258;2460996.79674792;9.12193278;1.3;_
2025-11-17T09:07:19.020 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:19.020 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:19.020 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:19.021 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:19.021 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:19.021 [INFO] [Thread-66815 (handle)] [driver.py] [get_status()] Telra = 15.2628135, teldec = -24.256657
2025-11-17T09:07:19.021 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2628135 -24.256657
2025-11-17T09:07:19.021 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2628135 -24.256657
2025-11-17T09:07:19.021 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2628135 -24.256657
2025-11-17T09:07:19.022 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 17;15.2628135;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28258;2460996.79674794;9.12193278;1.3;_15.2378147982862 -24.1609017098671
2025-11-17T09:07:19.022 [INFO] [Thread-66815 (handle)] [driver.py] [get_status()] ra_j2k = 15.2378147982862     dec_j2k = -24.1609017098671
2025-11-17T09:07:19.022 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:19.022 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 140;0.104282587674378;171.162357330327;_
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response 140;0.104282587674378;171.162357330327;_
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:19.023 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:19.024 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:07:19.024 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:07:19.025 [DEBUG] [Thread-66815 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41465)
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:19.027 [DEBUG] [Thread-66815 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:19.035 [DEBUG] [Thread-66815 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:19.035 [INFO] [Thread-66815 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79674792, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282587674378, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.2628135, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28258, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2378147982862, telescope_dec_j2k=-24.1609017098671, observability=1)
2025-11-17T09:07:24.567 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:07:24
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.53200101852417s
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:24.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:24.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:24.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:24.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:24.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2643458;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28411;2460996.79681214;9.12346083;1.3;_
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.2643458;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28411;2460996.79681214;9.12346083;1.3;_
2025-11-17T09:07:24.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:24.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:24.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:24.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:24.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:24.571 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.2643458, teldec = -24.256657
2025-11-17T09:07:24.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2643458 -24.256657
2025-11-17T09:07:24.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2643458 -24.256657
2025-11-17T09:07:24.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2643458 -24.256657
2025-11-17T09:07:24.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2643458;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28411;2460996.79681218;9.12346083;1.3;_15.2393459512403 -24.160943743085
2025-11-17T09:07:24.572 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2393459512403     dec_j2k = -24.160943743085
2025-11-17T09:07:24.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:24.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:24.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104282708010207;171.162357330327;_
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104282708010207;171.162357330327;_
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:24.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:24.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:24.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:24.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:24.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39105)
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:24.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:24.585 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:24.585 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79681214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282708010207, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.2643458, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28411, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2393459512403, telescope_dec_j2k=-24.160943743085, observability=1)
2025-11-17T09:07:35.373 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.373 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.373 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:35.373 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:35.373 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:07:35.374 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:35.375 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:35.376 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:07:35.377 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:35.378 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Park
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:07:35.379 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 29;15.2673529;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28712;2460996.79693726;9.12645972;1.3;_Park Command Successful
2025-11-17T09:07:36.380 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:07:36.380 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:07:36.380 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:07:36.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:07:36.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:07:37.148 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Status age = 12.563593864440918s
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:37.149 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:37.150 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 17;15.2678576;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28762;2460996.79695775;9.12696306;1.3;_
2025-11-17T09:07:37.150 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response 17;15.2678576;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28762;2460996.79695775;9.12696306;1.3;_
2025-11-17T09:07:37.150 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:37.150 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:37.150 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:37.151 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:37.151 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:37.151 [INFO] [Thread-66816 (handle)] [driver.py] [get_status()] Telra = 15.2678576, teldec = -24.256657
2025-11-17T09:07:37.151 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2678576 -24.256657
2025-11-17T09:07:37.151 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2678576 -24.256657
2025-11-17T09:07:37.151 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2678576 -24.256657
2025-11-17T09:07:37.152 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 17;15.2678576;-24.256657;50.10859;89.993116;50.08601;90.12017;12.28762;2460996.79695778;9.12696306;1.3;_15.2428551240725 -24.1610401356594
2025-11-17T09:07:37.152 [INFO] [Thread-66816 (handle)] [driver.py] [get_status()] ra_j2k = 15.2428551240725     dec_j2k = -24.1610401356594
2025-11-17T09:07:37.152 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 140;0.104282667898264;171.162362694745;_
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response 140;0.104282667898264;171.162362694745;_
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:37.153 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:37.154 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:37.154 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:37.154 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:37.154 [DEBUG] [Thread-66816 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:37.154 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:37.155 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:37.155 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:37.155 [DEBUG] [Thread-66816 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:37.155 [DEBUG] [Thread-66816 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39817)
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:37.156 [DEBUG] [Thread-66816 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:37.157 [DEBUG] [Thread-66816 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:37.164 [DEBUG] [Thread-66816 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:37.164 [INFO] [Thread-66816 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79695775, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104282667898264, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10859, telescope_az=89.993116, telescope_ra=15.2678576, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.28762, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2428551240725, telescope_dec_j2k=-24.1610401356594, observability=1)
2025-11-17T09:07:37.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:07:37.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:07:37.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:07:37.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:07:37.381 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:07:38.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:07:38.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:07:38.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:07:38.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:07:38.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:07:39.382 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:07:39.383 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:07:39.383 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:39.384 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:07:39.385 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:07:39.386 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:40.386 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:40.386 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:40.386 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:40.386 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:40.386 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:40.387 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:40.387 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:40.387 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:40.387 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:40.387 [DEBUG] [ThreadPoolExecutor-2584_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:40.388 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:07:40.388 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:07:40.388 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:07:40.388 [DEBUG] [ThreadPoolExecutor-2584_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:40.389 [INFO] [ThreadPoolExecutor-2584_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Status age = 18.042155981063843s
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:55.206 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:55.207 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:55.207 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:55.207 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:55.207 [DEBUG] [Thread-66817 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 17;15.2728747;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29264;2460996.79716676;9.13196639;1.3;_
2025-11-17T09:07:55.208 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response 17;15.2728747;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29264;2460996.79716676;9.13196639;1.3;_
2025-11-17T09:07:55.209 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:55.209 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:55.209 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:55.210 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:55.210 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:55.210 [INFO] [Thread-66817 (handle)] [driver.py] [get_status()] Telra = 15.2728747, teldec = -24.256657
2025-11-17T09:07:55.210 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2728747 -24.256657
2025-11-17T09:07:55.210 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2728747 -24.256657
2025-11-17T09:07:55.210 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2728747 -24.256657
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 17;15.2728747;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29264;2460996.79716679;9.13196639;1.3;_15.2478684748752 -24.1611779878883
2025-11-17T09:07:55.211 [INFO] [Thread-66817 (handle)] [driver.py] [get_status()] ra_j2k = 15.2478684748752     dec_j2k = -24.1611779878883
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 140;0.104283510249063;171.162351965909;_
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response 140;0.104283510249063;171.162351965909;_
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:55.211 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:55.212 [DEBUG] [Thread-66817 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59841)
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:55.216 [DEBUG] [Thread-66817 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:55.224 [DEBUG] [Thread-66817 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:55.224 [INFO] [Thread-66817 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79716676, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283510249063, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2728747, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.29264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2478684748752, telescope_dec_j2k=-24.1611779878883, observability=1)
2025-11-17T09:07:59.314 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:07:59.314 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Status age = 4.090053081512451s
2025-11-17T09:07:59.314 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:07:59.314 [DEBUG] [Thread-66818 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:07:59.314 [DEBUG] [Thread-66818 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:07:59.315 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:07:59.317 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 17;15.2740167;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29378;2460996.79721432;9.13310528;1.3;_
2025-11-17T09:07:59.317 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response 17;15.2740167;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29378;2460996.79721432;9.13310528;1.3;_
2025-11-17T09:07:59.317 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:07:59.317 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:07:59.317 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:07:59.318 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:59.318 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:07:59.318 [INFO] [Thread-66818 (handle)] [driver.py] [get_status()] Telra = 15.2740167, teldec = -24.256657
2025-11-17T09:07:59.318 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2740167 -24.256657
2025-11-17T09:07:59.318 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2740167 -24.256657
2025-11-17T09:07:59.318 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2740167 -24.256657
2025-11-17T09:07:59.319 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 17;15.2740167;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29378;2460996.79721434;9.13310528;1.3;_15.2490096221486 -24.1612093893253
2025-11-17T09:07:59.319 [INFO] [Thread-66818 (handle)] [driver.py] [get_status()] ra_j2k = 15.2490096221486     dec_j2k = -24.1612093893253
2025-11-17T09:07:59.319 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:07:59.319 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:07:59.319 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 140;0.104284031704319;171.162362694745;_
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response 140;0.104284031704319;171.162362694745;_
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:59.320 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:07:59.321 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:07:59.322 [DEBUG] [Thread-66818 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:59.322 [DEBUG] [Thread-66818 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:07:59.322 [DEBUG] [Thread-66818 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:07:59.323 [DEBUG] [Thread-66818 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37991)
2025-11-17T09:07:59.323 [DEBUG] [Thread-66818 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:07:59.323 [DEBUG] [Thread-66818 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:07:59.324 [DEBUG] [Thread-66818 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:07:59.324 [DEBUG] [Thread-66818 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:07:59.324 [DEBUG] [Thread-66818 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:07:59.331 [DEBUG] [Thread-66818 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:07:59.331 [DEBUG] [Thread-66818 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:59.331 [DEBUG] [Thread-66818 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:07:59.331 [DEBUG] [Thread-66818 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:07:59.332 [DEBUG] [Thread-66818 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:07:59.332 [DEBUG] [Thread-66818 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:07:59.332 [DEBUG] [Thread-66818 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:07:59.332 [DEBUG] [Thread-66818 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:07:59.332 [DEBUG] [Thread-66818 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:07:59.332 [INFO] [Thread-66818 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79721432, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284031704319, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2740167, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.29378, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2490096221486, telescope_dec_j2k=-24.1612093893253, observability=1)
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.733218908309937s
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:10.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:10.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:10.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2770263;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29679;2460996.79733874;9.13610667;1.3;_
2025-11-17T09:08:10.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2770263;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29679;2460996.79733874;9.13610667;1.3;_
2025-11-17T09:08:10.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:10.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:10.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:10.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:10.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:10.068 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2770263, teldec = -24.256657
2025-11-17T09:08:10.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2770263 -24.256657
2025-11-17T09:08:10.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2770263 -24.256657
2025-11-17T09:08:10.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2770263 -24.256657
2025-11-17T09:08:10.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2770263;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29679;2460996.79733876;9.13610667;1.3;_15.2520169760866 -24.1612921852919
2025-11-17T09:08:10.069 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2520169760866     dec_j2k = -24.1612921852919
2025-11-17T09:08:10.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:10.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:10.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104283550361005;171.162357330327;_
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104283550361005;171.162357330327;_
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:10.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:10.071 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:10.072 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:10.072 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:10.072 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58965)
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:10.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:10.081 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:08:10.082 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79733874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283550361005, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2770263, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.29679, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2520169760866, telescope_dec_j2k=-24.1612921852919, observability=1)
2025-11-17T09:08:10.082 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51478862762451 seconds ago
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Status age = 3.2592432498931885s
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:13.341 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 17;15.277943;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29771;2460996.79737664;9.13702083;1.3;_
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response 17;15.277943;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29771;2460996.79737664;9.13702083;1.3;_
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:13.342 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:13.343 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:13.343 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:13.343 [INFO] [Thread-66819 (handle)] [driver.py] [get_status()] Telra = 15.277943, teldec = -24.256657
2025-11-17T09:08:13.343 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] UnCookCoordinates 15.277943 -24.256657
2025-11-17T09:08:13.343 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.277943 -24.256657
2025-11-17T09:08:13.343 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.277943 -24.256657
2025-11-17T09:08:13.344 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 17;15.277943;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29771;2460996.79737667;9.13702083;1.3;_15.2529329922982 -24.1613174161862
2025-11-17T09:08:13.344 [INFO] [Thread-66819 (handle)] [driver.py] [get_status()] ra_j2k = 15.2529329922982     dec_j2k = -24.1613174161862
2025-11-17T09:08:13.344 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:13.344 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 140;0.104283630584891;171.162368059163;_
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response 140;0.104283630584891;171.162368059163;_
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:13.345 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:13.346 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:13.347 [DEBUG] [Thread-66819 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:13.347 [DEBUG] [Thread-66819 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:13.347 [DEBUG] [Thread-66819 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57905)
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:13.350 [DEBUG] [Thread-66819 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:13.357 [DEBUG] [Thread-66819 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:13.357 [DEBUG] [Thread-66819 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:13.357 [DEBUG] [Thread-66819 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:13.357 [DEBUG] [Thread-66819 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:13.357 [DEBUG] [Thread-66819 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:13.358 [DEBUG] [Thread-66819 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:13.358 [DEBUG] [Thread-66819 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:13.358 [DEBUG] [Thread-66819 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:13.358 [DEBUG] [Thread-66819 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:13.358 [INFO] [Thread-66819 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79737664, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283630584891, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.277943, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.29771, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:07:14.496982', telescope_ra_j2k=15.2529329922982, telescope_dec_j2k=-24.1613174161862, observability=1)
2025-11-17T09:08:14.640 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:14.640 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:14.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:14.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:14.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:14.642 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:14.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:14.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:14.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:14.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:14.643 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:08:14.643 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:14.643 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:14.643 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:14.643 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:14.643 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:08:14.644 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:08:14.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3864352703094482s
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2783354;-24.256657;50.108589;89.993116;50.08601;90.12017;12.2981;2460996.79739289;9.13741222;1.3;_
2025-11-17T09:08:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2783354;-24.256657;50.108589;89.993116;50.08601;90.12017;12.2981;2460996.79739289;9.13741222;1.3;_
2025-11-17T09:08:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:14.748 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2783354, teldec = -24.256657
2025-11-17T09:08:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2783354 -24.256657
2025-11-17T09:08:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2783354 -24.256657
2025-11-17T09:08:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2783354 -24.256657
2025-11-17T09:08:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2783354;-24.256657;50.108589;89.993116;50.08601;90.12017;12.2981;2460996.79739293;9.13741222;1.3;_15.2533250996468 -24.16132821815
2025-11-17T09:08:14.749 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.2533250996468     dec_j2k = -24.16132821815
2025-11-17T09:08:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104283871256548;171.162362694745;_
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104283871256548;171.162362694745;_
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47363)
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:14.754 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:14.762 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79739289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283871256548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2783354, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.2981, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2533250996468, telescope_dec_j2k=-24.16132821815, observability=1)
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:15.645 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:08:15.646 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:15.647 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:15.647 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:15.647 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:15.647 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:15.647 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:15.648 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:15.648 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:15.648 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:15.648 [DEBUG] [ThreadPoolExecutor-2586_0] [payload.py] [to_registers()] [0]
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46313)
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:15.649 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:15.657 [DEBUG] [ThreadPoolExecutor-2586_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.4823949337005615s
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:16.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:16.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:16.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2787471;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29851;2460996.79741027;9.13782278;1.3;_
2025-11-17T09:08:16.247 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.2787471;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29851;2460996.79741027;9.13782278;1.3;_
2025-11-17T09:08:16.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:16.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:16.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:16.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:16.248 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:16.248 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.2787471, teldec = -24.256657
2025-11-17T09:08:16.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2787471 -24.256657
2025-11-17T09:08:16.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2787471 -24.256657
2025-11-17T09:08:16.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2787471 -24.256657
2025-11-17T09:08:16.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.2787471;-24.256657;50.108589;89.993116;50.08601;90.12017;12.29851;2460996.79741029;9.13782278;1.3;_15.2537364926332 -24.1613395524975
2025-11-17T09:08:16.249 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.2537364926332     dec_j2k = -24.1613395524975
2025-11-17T09:08:16.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:16.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:16.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104283951480434;171.162357330327;_
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104283951480434;171.162357330327;_
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:16.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:16.251 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:16.251 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:16.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:16.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:16.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:16.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:16.252 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:16.252 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:16.257 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38065)
2025-11-17T09:08:16.258 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:16.258 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:16.258 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:16.258 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:16.258 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:16.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:16.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:16.265 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:16.265 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:16.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:16.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:16.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:16.266 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:16.266 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:16.266 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79741027, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283951480434, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2787471, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.29851, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2537364926332, telescope_dec_j2k=-24.1613395524975, observability=1)
2025-11-17T09:08:24.646 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:08:24
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.380254030227661s
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:24.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:24.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:24.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2810946;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30086;2460996.7975075;9.14016389;1.3;_
2025-11-17T09:08:24.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.2810946;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30086;2460996.7975075;9.14016389;1.3;_
2025-11-17T09:08:24.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:24.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:24.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:24.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:24.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:24.649 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.2810946, teldec = -24.256657
2025-11-17T09:08:24.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2810946 -24.256657
2025-11-17T09:08:24.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2810946 -24.256657
2025-11-17T09:08:24.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2810946 -24.256657
2025-11-17T09:08:24.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.2810946;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30086;2460996.79750752;9.14016389;1.3;_15.2560822426709 -24.1614042019887
2025-11-17T09:08:24.650 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2560822426709     dec_j2k = -24.1614042019887
2025-11-17T09:08:24.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:24.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:24.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104283991592376;171.162362694745;_
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104283991592376;171.162362694745;_
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:24.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:24.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:24.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:24.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:24.659 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41983)
2025-11-17T09:08:24.659 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:24.659 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:24.659 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:24.659 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:24.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:24.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:24.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:24.667 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:24.667 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:24.668 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:24.668 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:24.668 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:24.668 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:24.668 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:24.668 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7975075, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104283991592376, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2810946, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.30086, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2560822426709, telescope_dec_j2k=-24.1614042019887, observability=1)
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Status age = 6.742319345474243s
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:31.410 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:31.411 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:31.412 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 17;15.2829812;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30275;2460996.79758579;9.14204528;1.3;_
2025-11-17T09:08:31.412 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response 17;15.2829812;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30275;2460996.79758579;9.14204528;1.3;_
2025-11-17T09:08:31.412 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:31.412 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:31.412 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:31.413 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:31.413 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:31.413 [INFO] [Thread-66820 (handle)] [driver.py] [get_status()] Telra = 15.2829812, teldec = -24.256657
2025-11-17T09:08:31.414 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2829812 -24.256657
2025-11-17T09:08:31.414 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2829812 -24.256657
2025-11-17T09:08:31.414 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2829812 -24.256657
2025-11-17T09:08:31.415 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 17;15.2829812;-24.256657;50.108589;89.993116;50.08601;90.12017;12.30275;2460996.79758581;9.14204528;1.3;_15.2579674370546 -24.1614561848157
2025-11-17T09:08:31.415 [INFO] [Thread-66820 (handle)] [driver.py] [get_status()] ra_j2k = 15.2579674370546     dec_j2k = -24.1614561848157
2025-11-17T09:08:31.415 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:31.415 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:31.415 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 140;0.104284312487919;171.162346601491;_
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response 140;0.104284312487919;171.162346601491;_
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:31.416 [DEBUG] [Thread-66820 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:31.417 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:31.417 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:31.417 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:31.418 [DEBUG] [Thread-66820 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:31.418 [DEBUG] [Thread-66820 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:31.418 [DEBUG] [Thread-66820 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50027)
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:31.420 [DEBUG] [Thread-66820 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:31.427 [DEBUG] [Thread-66820 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:31.428 [DEBUG] [Thread-66820 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:31.428 [INFO] [Thread-66820 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79758579, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284312487919, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108589, telescope_az=89.993116, telescope_ra=15.2829812, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.30275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2579674370546, telescope_dec_j2k=-24.1614561848157, observability=1)
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:40.657 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:40.658 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:08:40.659 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:08:40.660 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:49.477 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:49.477 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Status age = 18.04976463317871s
2025-11-17T09:08:49.477 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:49.477 [DEBUG] [Thread-66821 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:49.477 [DEBUG] [Thread-66821 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:49.478 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:49.479 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 17;15.2880044;-24.256657;50.108588;89.993116;50.08601;90.12017;12.30777;2460996.7977949;9.14705472;1.3;_
2025-11-17T09:08:49.479 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response 17;15.2880044;-24.256657;50.108588;89.993116;50.08601;90.12017;12.30777;2460996.7977949;9.14705472;1.3;_
2025-11-17T09:08:49.479 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:49.479 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:49.479 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:49.480 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:49.480 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:49.480 [INFO] [Thread-66821 (handle)] [driver.py] [get_status()] Telra = 15.2880044, teldec = -24.256657
2025-11-17T09:08:49.481 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2880044 -24.256657
2025-11-17T09:08:49.481 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2880044 -24.256657
2025-11-17T09:08:49.481 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2880044 -24.256657
2025-11-17T09:08:49.481 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 17;15.2880044;-24.256657;50.108588;89.993116;50.08601;90.12017;12.30777;2460996.79779492;9.14705472;1.3;_15.2629868978307 -24.161594707184
2025-11-17T09:08:49.482 [INFO] [Thread-66821 (handle)] [driver.py] [get_status()] ra_j2k = 15.2629868978307     dec_j2k = -24.161594707184
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 140;0.104284312487919;171.162373423581;_
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response 140;0.104284312487919;171.162373423581;_
2025-11-17T09:08:49.482 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:49.483 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:49.484 [DEBUG] [Thread-66821 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:49.484 [DEBUG] [Thread-66821 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:08:49.484 [DEBUG] [Thread-66821 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49313)
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:49.487 [DEBUG] [Thread-66821 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:49.494 [DEBUG] [Thread-66821 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:49.495 [DEBUG] [Thread-66821 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:49.495 [DEBUG] [Thread-66821 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:49.495 [INFO] [Thread-66821 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7977949, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284312487919, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.2880044, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.30777, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2629868978307, telescope_dec_j2k=-24.161594707184, observability=1)
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Status age = 9.874179363250732s
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:08:59.369 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:08:59.370 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:08:59.370 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:08:59.370 [DEBUG] [Thread-66822 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:08:59.370 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:08:59.370 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 17;15.2907583;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31052;2460996.79790939;9.14980111;1.3;_
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response 17;15.2907583;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31052;2460996.79790939;9.14980111;1.3;_
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:08:59.371 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:08:59.372 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:08:59.372 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:59.372 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:08:59.373 [INFO] [Thread-66822 (handle)] [driver.py] [get_status()] Telra = 15.2907583, teldec = -24.256657
2025-11-17T09:08:59.373 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2907583 -24.256657
2025-11-17T09:08:59.373 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2907583 -24.256657
2025-11-17T09:08:59.373 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2907583 -24.256657
2025-11-17T09:08:59.374 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 17;15.2907583;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31052;2460996.79790942;9.14980111;1.3;_15.265738749906 -24.1616707207941
2025-11-17T09:08:59.374 [INFO] [Thread-66822 (handle)] [driver.py] [get_status()] ra_j2k = 15.265738749906     dec_j2k = -24.1616707207941
2025-11-17T09:08:59.374 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:08:59.374 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:08:59.374 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 140;0.104284432823747;171.162357330327;_
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response 140;0.104284432823747;171.162357330327;_
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:59.375 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:08:59.376 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:08:59.377 [DEBUG] [Thread-66822 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:59.377 [DEBUG] [Thread-66822 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:08:59.377 [DEBUG] [Thread-66822 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42333)
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:08:59.383 [DEBUG] [Thread-66822 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:08:59.390 [DEBUG] [Thread-66822 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:08:59.390 [INFO] [Thread-66822 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79790939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284432823747, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.2907583, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.31052, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.265738749906, telescope_dec_j2k=-24.1616707207941, observability=1)
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Status age = 8.220458984375s
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:07.611 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:07.612 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:07.613 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 17;15.2930465;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31281;2460996.79800478;9.15208306;1.3;_
2025-11-17T09:09:07.613 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response 17;15.2930465;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31281;2460996.79800478;9.15208306;1.3;_
2025-11-17T09:09:07.613 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:07.613 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:07.613 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:07.614 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:07.614 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:07.614 [INFO] [Thread-66823 (handle)] [driver.py] [get_status()] Telra = 15.2930465, teldec = -24.256657
2025-11-17T09:09:07.614 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2930465 -24.256657
2025-11-17T09:09:07.614 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2930465 -24.256657
2025-11-17T09:09:07.614 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2930465 -24.256657
2025-11-17T09:09:07.615 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 17;15.2930465;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31281;2460996.7980048;9.15208306;1.3;_15.2680252494038 -24.1617339180888
2025-11-17T09:09:07.615 [INFO] [Thread-66823 (handle)] [driver.py] [get_status()] ra_j2k = 15.2680252494038     dec_j2k = -24.1617339180888
2025-11-17T09:09:07.615 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:07.615 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:07.615 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:07.616 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 140;0.104285194950661;171.162357330327;_
2025-11-17T09:09:07.616 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response 140;0.104285194950661;171.162357330327;_
2025-11-17T09:09:07.616 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:07.616 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:07.616 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:07.617 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:07.618 [DEBUG] [Thread-66823 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55343)
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:07.619 [DEBUG] [Thread-66823 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:07.626 [DEBUG] [Thread-66823 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:07.626 [DEBUG] [Thread-66823 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:07.627 [DEBUG] [Thread-66823 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:09:07.627 [INFO] [Thread-66823 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79800478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285194950661, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.2930465, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.31281, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2680252494038, telescope_dec_j2k=-24.1617339180888, observability=1)
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.5148589611053467s
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:10.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2937651;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31353;2460996.79803406;9.15279972;1.3;_
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.2937651;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31353;2460996.79803406;9.15279972;1.3;_
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:10.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:10.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:10.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:10.144 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.2937651, teldec = -24.256657
2025-11-17T09:09:10.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.2937651 -24.256657
2025-11-17T09:09:10.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.2937651 -24.256657
2025-11-17T09:09:10.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2937651 -24.256657
2025-11-17T09:09:10.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.2937651;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31353;2460996.79803409;9.15279972;1.3;_15.2687433155754 -24.1617537720601
2025-11-17T09:09:10.145 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2687433155754     dec_j2k = -24.1617537720601
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104284553159576;171.162351965909;_
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104284553159576;171.162351965909;_
2025-11-17T09:09:10.146 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:10.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:10.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:10.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:10.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:10.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:10.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:10.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57917)
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:10.155 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:10.162 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:10.162 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:10.162 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:10.162 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:10.162 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:10.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:10.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:10.163 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:10.163 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:09:10.163 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79803406, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284553159576, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.2937651, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.31353, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2687433155754, telescope_dec_j2k=-24.1617537720601, observability=1)
2025-11-17T09:09:10.163 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51699161529541 seconds ago
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.578198432922363s
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:14.741 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:14.742 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2950266;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31479;2460996.7980873;9.15405778;1.3;_
2025-11-17T09:09:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.2950266;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31479;2460996.7980873;9.15405778;1.3;_
2025-11-17T09:09:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:14.743 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:14.744 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.2950266, teldec = -24.256657
2025-11-17T09:09:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.2950266 -24.256657
2025-11-17T09:09:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.2950266 -24.256657
2025-11-17T09:09:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.2950266 -24.256657
2025-11-17T09:09:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.2950266;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31479;2460996.79808733;9.15405778;1.3;_15.2700038786812 -24.1617886338655
2025-11-17T09:09:14.746 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.2700038786812     dec_j2k = -24.1617886338655
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104284673495404;171.162362694745;_
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104284673495404;171.162362694745;_
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54079)
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:09:14.763 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7980873, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284673495404, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.2950266, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.31479, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:08:14.640256', telescope_ra_j2k=15.2700038786812, telescope_dec_j2k=-24.1617886338655, observability=1)
2025-11-17T09:09:14.784 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:14.784 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:14.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:14.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:14.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:14.785 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:14.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:14.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:14.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:14.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:14.786 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:09:14.786 [INFO] [ThreadPoolExecutor-2587_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:09:14.786 [INFO] [ThreadPoolExecutor-2587_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:09:15.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:15.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5958678722381592s
2025-11-17T09:09:15.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5958678722381592
2025-11-17T09:09:24.728 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:09:24
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.965121269226074s
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:24.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:24.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:24.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:24.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:24.730 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:24.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:24.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:24.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:24.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.297807;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31757;2460996.7982029;9.15683056;1.3;_
2025-11-17T09:09:24.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.297807;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31757;2460996.7982029;9.15683056;1.3;_
2025-11-17T09:09:24.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:24.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:24.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:24.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:24.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:24.732 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.297807, teldec = -24.256657
2025-11-17T09:09:24.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.297807 -24.256657
2025-11-17T09:09:24.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.297807 -24.256657
2025-11-17T09:09:24.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.297807 -24.256657
2025-11-17T09:09:24.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.297807;-24.256657;50.108588;89.993116;50.08601;90.12017;12.31757;2460996.79820293;9.15683056;1.3;_15.2727822148059 -24.161865507753
2025-11-17T09:09:24.733 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2727822148059     dec_j2k = -24.161865507753
2025-11-17T09:09:24.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:24.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:24.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104284914167061;171.162351965909;_
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104284914167061;171.162351965909;_
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:24.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:24.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:24.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:24.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44319)
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:24.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:24.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:24.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:09:24.750 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.7982029, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104284914167061, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108588, telescope_az=89.993116, telescope_ra=15.297807, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.31757, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.2727822148059, telescope_dec_j2k=-24.161865507753, observability=1)
2025-11-17T09:09:25.676 [DEBUG] [Thread-66824 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:25.676 [DEBUG] [Thread-66824 (handle)] [server.py] [get_status()] Status age = 0.9259099960327148s
2025-11-17T09:09:25.676 [DEBUG] [Thread-66824 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9259099960327148
2025-11-17T09:09:35.660 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.660 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.660 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:35.660 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:35.660 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:09:35.661 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:35.662 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:35.663 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:09:35.664 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:35.665 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Park
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:09:35.666 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:09:35.667 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 29;15.3008754;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32064;2460996.79832948;9.15989056;1.3;_Park Command Successful
2025-11-17T09:09:36.667 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:09:36.667 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:09:36.667 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:09:36.667 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:09:36.668 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:09:37.668 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:09:37.668 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:09:37.668 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:09:37.668 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:09:37.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:09:38.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:09:38.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:09:38.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:09:38.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:09:38.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:09:39.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:09:39.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:09:39.669 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:39.670 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:09:39.671 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:40.672 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:40.672 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:40.672 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:40.672 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:40.672 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:09:40.673 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:09:40.674 [DEBUG] [ThreadPoolExecutor-2586_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:40.674 [INFO] [ThreadPoolExecutor-2586_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Status age = 18.989152908325195s
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:43.739 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:43.740 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:43.741 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 17;15.3030998;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32287;2460996.79842293;9.16210889;1.3;_
2025-11-17T09:09:43.741 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response 17;15.3030998;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32287;2460996.79842293;9.16210889;1.3;_
2025-11-17T09:09:43.741 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:43.741 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:43.741 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:43.742 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:43.742 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:43.742 [INFO] [Thread-66825 (handle)] [driver.py] [get_status()] Telra = 15.3030998, teldec = -24.256657
2025-11-17T09:09:43.742 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3030998 -24.256657
2025-11-17T09:09:43.742 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3030998 -24.256657
2025-11-17T09:09:43.742 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3030998 -24.256657
2025-11-17T09:09:43.743 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 17;15.3030998;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32287;2460996.79842295;9.16210889;1.3;_15.2780710900989 -24.1620119861952
2025-11-17T09:09:43.743 [INFO] [Thread-66825 (handle)] [driver.py] [get_status()] ra_j2k = 15.2780710900989     dec_j2k = -24.1620119861952
2025-11-17T09:09:43.743 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:43.743 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:43.743 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 140;0.104285636182031;171.162351965909;_
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response 140;0.104285636182031;171.162351965909;_
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:43.744 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:43.745 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:43.746 [DEBUG] [Thread-66825 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:43.746 [DEBUG] [Thread-66825 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:43.746 [DEBUG] [Thread-66825 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52829)
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:43.751 [DEBUG] [Thread-66825 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:43.758 [DEBUG] [Thread-66825 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:43.758 [DEBUG] [Thread-66825 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:43.758 [DEBUG] [Thread-66825 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:43.759 [DEBUG] [Thread-66825 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:09:43.759 [INFO] [Thread-66825 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79842293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285636182031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.3030998, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.32287, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.2780710900989, telescope_dec_j2k=-24.1620119861952, observability=1)
2025-11-17T09:09:59.422 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Status age = 15.663737773895264s
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:09:59.423 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 17;15.3074785;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32724;2460996.79860444;9.16647556;1.3;_
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response 17;15.3074785;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32724;2460996.79860444;9.16647556;1.3;_
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:09:59.424 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:09:59.425 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:59.425 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:09:59.425 [INFO] [Thread-66826 (handle)] [driver.py] [get_status()] Telra = 15.3074785, teldec = -24.256657
2025-11-17T09:09:59.426 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3074785 -24.256657
2025-11-17T09:09:59.426 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3074785 -24.256657
2025-11-17T09:09:59.426 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3074785 -24.256657
2025-11-17T09:09:59.427 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 17;15.3074785;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32724;2460996.79860448;9.16647556;1.3;_15.28244654729 -24.1621333059305
2025-11-17T09:09:59.427 [INFO] [Thread-66826 (handle)] [driver.py] [get_status()] ra_j2k = 15.28244654729     dec_j2k = -24.1621333059305
2025-11-17T09:09:59.427 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:09:59.427 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:09:59.427 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 140;0.104285515846203;171.162351965909;_
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response 140;0.104285515846203;171.162351965909;_
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:59.428 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:09:59.429 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:09:59.430 [DEBUG] [Thread-66826 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:59.430 [DEBUG] [Thread-66826 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:09:59.430 [DEBUG] [Thread-66826 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:09:59.433 [DEBUG] [Thread-66826 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57929)
2025-11-17T09:09:59.433 [DEBUG] [Thread-66826 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:09:59.433 [DEBUG] [Thread-66826 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:09:59.433 [DEBUG] [Thread-66826 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:09:59.434 [DEBUG] [Thread-66826 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:09:59.434 [DEBUG] [Thread-66826 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:09:59.441 [DEBUG] [Thread-66826 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:09:59.441 [INFO] [Thread-66826 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79860444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285515846203, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.3074785, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.32724, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.28244654729, telescope_dec_j2k=-24.1621333059305, observability=1)
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Status age = 2.407813549041748s
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:01.849 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:01.852 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:01.853 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 17;15.3081503;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32792;2460996.79863256;9.16714556;1.3;_
2025-11-17T09:10:01.853 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response 17;15.3081503;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32792;2460996.79863256;9.16714556;1.3;_
2025-11-17T09:10:01.853 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:01.853 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:01.853 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:01.859 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:01.859 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:01.859 [INFO] [Thread-66827 (handle)] [driver.py] [get_status()] Telra = 15.3081503, teldec = -24.256657
2025-11-17T09:10:01.859 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3081503 -24.256657
2025-11-17T09:10:01.859 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3081503 -24.256657
2025-11-17T09:10:01.859 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3081503 -24.256657
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 17;15.3081503;-24.256657;50.108587;89.993116;50.08601;90.12017;12.32792;2460996.79863263;9.16714556;1.3;_15.2831178500905 -24.1621519304832
2025-11-17T09:10:01.862 [INFO] [Thread-66827 (handle)] [driver.py] [get_status()] ra_j2k = 15.2831178500905     dec_j2k = -24.1621519304832
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 140;0.104285596070089;171.162357330327;_
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response 140;0.104285596070089;171.162357330327;_
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:01.862 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:01.863 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:01.865 [DEBUG] [Thread-66827 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:01.865 [DEBUG] [Thread-66827 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:01.865 [DEBUG] [Thread-66827 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35497)
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:01.871 [DEBUG] [Thread-66827 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:01.880 [DEBUG] [Thread-66827 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:01.880 [INFO] [Thread-66827 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79863256, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285596070089, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.3081503, telescope_dec=-24.256657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.32792, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.2831178500905, telescope_dec_j2k=-24.1621519304832, observability=1)
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.342542171478271s
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:10.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:10.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3104845;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33025;2460996.79872944;9.16947333;1.3;_
2025-11-17T09:10:10.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3104845;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33025;2460996.79872944;9.16947333;1.3;_
2025-11-17T09:10:10.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:10.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:10.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:10.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:10.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:10.225 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3104845, teldec = -24.256656
2025-11-17T09:10:10.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3104845 -24.256656
2025-11-17T09:10:10.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3104845 -24.256656
2025-11-17T09:10:10.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3104845 -24.256656
2025-11-17T09:10:10.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3104845;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33025;2460996.79872947;9.16947333;1.3;_15.2854503233725 -24.1622156653459
2025-11-17T09:10:10.226 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.2854503233725     dec_j2k = -24.1622156653459
2025-11-17T09:10:10.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:10.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:10.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104285997189517;171.162362694745;_
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104285997189517;171.162362694745;_
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:10.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:10.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:10.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:10.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:10.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43009)
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:10.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:10.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:10:10.243 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79872944, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285997189517, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.3104845, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.33025, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.2854503233725, telescope_dec_j2k=-24.1622156653459, observability=1)
2025-11-17T09:10:10.243 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.515283823013306 seconds ago
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.210741996765137s
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:14.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:14.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.311661;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33143;2460996.79877843;9.17064667;1.3;_
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.311661;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33143;2460996.79877843;9.17064667;1.3;_
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:14.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:14.457 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:14.457 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:14.457 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.311661, teldec = -24.256656
2025-11-17T09:10:14.457 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.311661 -24.256656
2025-11-17T09:10:14.458 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.311661 -24.256656
2025-11-17T09:10:14.458 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.311661 -24.256656
2025-11-17T09:10:14.458 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.311661;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33143;2460996.79877845;9.17064667;1.3;_15.2866259533836 -24.1622483070029
2025-11-17T09:10:14.459 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.2866259533836     dec_j2k = -24.1622483070029
2025-11-17T09:10:14.459 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:14.459 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:14.459 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:14.459 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104285194950661;171.162362694745;_
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104285194950661;171.162362694745;_
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:14.460 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:14.461 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:14.461 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:14.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:14.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:14.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:14.462 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:14.462 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:14.462 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45539)
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:14.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:14.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:14.473 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:14.473 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:14.473 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79877843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285194950661, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.311661, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.33143, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:09:14.784090', telescope_ra_j2k=15.2866259533836, telescope_dec_j2k=-24.1622483070029, observability=1)
2025-11-17T09:10:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.2930600643157959s
2025-11-17T09:10:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2930600643157959
2025-11-17T09:10:14.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:14.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:14.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:14.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:14.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:14.926 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:14.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:14.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:14.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:14.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:14.927 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:10:14.927 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:14.927 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:14.927 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:14.927 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:10:14.928 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:10:14.929 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:15.929 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:15.929 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:15.929 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:10:15.930 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:15.931 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:15.932 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:15.932 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:15.932 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:15.932 [DEBUG] [ThreadPoolExecutor-2588_0] [payload.py] [to_registers()] [0]
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51619)
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:15.936 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:15.944 [DEBUG] [ThreadPoolExecutor-2588_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Status age = 5.442020893096924s
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:19.915 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:19.916 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:19.916 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:19.917 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 17;15.3131933;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33296;2460996.79884163;9.17217472;1.3;_
2025-11-17T09:10:19.917 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response 17;15.3131933;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33296;2460996.79884163;9.17217472;1.3;_
2025-11-17T09:10:19.917 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:19.917 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:19.917 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:19.918 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:19.918 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:19.918 [INFO] [Thread-66828 (handle)] [driver.py] [get_status()] Telra = 15.3131933, teldec = -24.256656
2025-11-17T09:10:19.918 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3131933 -24.256656
2025-11-17T09:10:19.918 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3131933 -24.256656
2025-11-17T09:10:19.918 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3131933 -24.256656
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 17;15.3131933;-24.256656;50.108587;89.993116;50.08601;90.12017;12.33296;2460996.79884166;9.17217472;1.3;_15.288157120691 -24.1622908338222
2025-11-17T09:10:19.919 [INFO] [Thread-66828 (handle)] [driver.py] [get_status()] ra_j2k = 15.288157120691     dec_j2k = -24.1622908338222
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 140;0.104285636182031;171.162368059163;_
2025-11-17T09:10:19.919 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response 140;0.104285636182031;171.162368059163;_
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:19.920 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:19.921 [DEBUG] [Thread-66828 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:19.921 [DEBUG] [Thread-66828 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:19.921 [DEBUG] [Thread-66828 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37387)
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:19.927 [DEBUG] [Thread-66828 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:19.935 [DEBUG] [Thread-66828 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:19.935 [INFO] [Thread-66828 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79884163, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285636182031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108587, telescope_az=89.993116, telescope_ra=15.3131933, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.33296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.288157120691, telescope_dec_j2k=-24.1622908338222, observability=1)
2025-11-17T09:10:24.811 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:10:24
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.875931978225708s
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:24.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:24.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:24.812 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:24.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:24.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:24.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:24.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3145564;-24.256656;50.108586;89.993116;50.08601;90.12017;12.33432;2460996.79889829;9.17353417;1.3;_
2025-11-17T09:10:24.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3145564;-24.256656;50.108586;89.993116;50.08601;90.12017;12.33432;2460996.79889829;9.17353417;1.3;_
2025-11-17T09:10:24.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:24.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:24.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:24.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:24.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:24.814 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3145564, teldec = -24.256656
2025-11-17T09:10:24.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3145564 -24.256656
2025-11-17T09:10:24.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3145564 -24.256656
2025-11-17T09:10:24.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3145564 -24.256656
2025-11-17T09:10:24.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3145564;-24.256656;50.108586;89.993116;50.08601;90.12017;12.33432;2460996.79889832;9.17353417;1.3;_15.2895192134538 -24.1623286776547
2025-11-17T09:10:24.815 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.2895192134538     dec_j2k = -24.1623286776547
2025-11-17T09:10:24.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:24.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:24.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10428575651786;171.162362694745;_
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10428575651786;171.162362694745;_
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:24.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:24.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41655)
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:24.818 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:24.819 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:24.819 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:24.826 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:24.826 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79889829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10428575651786, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3145564, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.33432, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.2895192134538, telescope_dec_j2k=-24.1623286776547, observability=1)
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Status age = 13.154664993286133s
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:37.981 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:37.982 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:37.983 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 17;15.3182343;-24.256656;50.108586;89.993116;50.08601;90.12017;12.338;2460996.79905073;9.17720194;1.3;_
2025-11-17T09:10:37.983 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response 17;15.3182343;-24.256656;50.108586;89.993116;50.08601;90.12017;12.338;2460996.79905073;9.17720194;1.3;_
2025-11-17T09:10:37.983 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:37.983 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:37.983 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:37.984 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:37.984 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:37.984 [INFO] [Thread-66829 (handle)] [driver.py] [get_status()] Telra = 15.3182343, teldec = -24.256656
2025-11-17T09:10:37.984 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3182343 -24.256656
2025-11-17T09:10:37.984 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3182343 -24.256656
2025-11-17T09:10:37.985 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3182343 -24.256656
2025-11-17T09:10:37.985 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 17;15.3182343;-24.256656;50.108586;89.993116;50.08601;90.12017;12.338;2460996.79905075;9.17720194;1.3;_15.293194397529 -24.1624308480817
2025-11-17T09:10:37.986 [INFO] [Thread-66829 (handle)] [driver.py] [get_status()] ra_j2k = 15.293194397529     dec_j2k = -24.1624308480817
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 140;0.104285876853688;171.162362694745;_
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response 140;0.104285876853688;171.162362694745;_
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:37.986 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:37.987 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:37.988 [DEBUG] [Thread-66829 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:37.988 [DEBUG] [Thread-66829 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:37.988 [DEBUG] [Thread-66829 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:37.990 [DEBUG] [Thread-66829 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60991)
2025-11-17T09:10:37.991 [DEBUG] [Thread-66829 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:37.991 [DEBUG] [Thread-66829 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:37.991 [DEBUG] [Thread-66829 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:37.991 [DEBUG] [Thread-66829 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:37.991 [DEBUG] [Thread-66829 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:37.998 [DEBUG] [Thread-66829 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:37.998 [INFO] [Thread-66829 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79905073, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285876853688, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3182343, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.338, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.293194397529, telescope_dec_j2k=-24.1624308480817, observability=1)
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:40.944 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:40.945 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:10:40.946 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:10:40.947 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Status age = 18.102930307388306s
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:56.101 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:56.102 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:56.103 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 17;15.3232731;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34304;2460996.79926045;9.18222694;1.3;_
2025-11-17T09:10:56.103 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response 17;15.3232731;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34304;2460996.79926045;9.18222694;1.3;_
2025-11-17T09:10:56.103 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:56.103 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:56.103 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:56.104 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:56.104 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:56.104 [INFO] [Thread-66830 (handle)] [driver.py] [get_status()] Telra = 15.3232731, teldec = -24.256656
2025-11-17T09:10:56.104 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3232731 -24.256656
2025-11-17T09:10:56.104 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3232731 -24.256656
2025-11-17T09:10:56.104 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3232731 -24.256656
2025-11-17T09:10:56.105 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 17;15.3232731;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34304;2460996.79926047;9.18222694;1.3;_15.2982294809009 -24.1625709672541
2025-11-17T09:10:56.105 [INFO] [Thread-66830 (handle)] [driver.py] [get_status()] ra_j2k = 15.2982294809009     dec_j2k = -24.1625709672541
2025-11-17T09:10:56.105 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:56.105 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:56.105 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 140;0.104285716405917;171.162357330327;_
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response 140;0.104285716405917;171.162357330327;_
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:56.106 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:56.107 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:56.108 [DEBUG] [Thread-66830 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:56.108 [DEBUG] [Thread-66830 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:10:56.108 [DEBUG] [Thread-66830 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:10:56.110 [DEBUG] [Thread-66830 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43837)
2025-11-17T09:10:56.110 [DEBUG] [Thread-66830 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:56.110 [DEBUG] [Thread-66830 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:56.111 [DEBUG] [Thread-66830 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:56.111 [DEBUG] [Thread-66830 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:56.111 [DEBUG] [Thread-66830 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:56.117 [DEBUG] [Thread-66830 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:56.117 [INFO] [Thread-66830 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79926045, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104285716405917, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3232731, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.34304, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.2982294809009, telescope_dec_j2k=-24.1625709672541, observability=1)
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Status age = 3.356901168823242s
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:10:59.474 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:10:59.475 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 17;15.3241984;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34396;2460996.79929949;9.18314972;1.3;_
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response 17;15.3241984;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34396;2460996.79929949;9.18314972;1.3;_
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:10:59.476 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:10:59.477 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:59.477 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:10:59.477 [INFO] [Thread-66831 (handle)] [driver.py] [get_status()] Telra = 15.3241984, teldec = -24.256656
2025-11-17T09:10:59.477 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3241984 -24.256656
2025-11-17T09:10:59.477 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3241984 -24.256656
2025-11-17T09:10:59.477 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3241984 -24.256656
2025-11-17T09:10:59.478 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 17;15.3241984;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34396;2460996.79929951;9.18314972;1.3;_15.2991540989319 -24.1625967160567
2025-11-17T09:10:59.478 [INFO] [Thread-66831 (handle)] [driver.py] [get_status()] ra_j2k = 15.2991540989319     dec_j2k = -24.1625967160567
2025-11-17T09:10:59.478 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:10:59.478 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:10:59.479 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 140;0.104286197749231;171.162357330327;_
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response 140;0.104286197749231;171.162357330327;_
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:59.480 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:10:59.481 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:10:59.482 [DEBUG] [Thread-66831 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:59.482 [DEBUG] [Thread-66831 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:10:59.482 [DEBUG] [Thread-66831 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34463)
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:10:59.483 [DEBUG] [Thread-66831 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:10:59.490 [DEBUG] [Thread-66831 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:10:59.491 [DEBUG] [Thread-66831 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:10:59.491 [DEBUG] [Thread-66831 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:10:59.491 [DEBUG] [Thread-66831 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:10:59.491 [INFO] [Thread-66831 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79929949, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286197749231, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3241984, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.34396, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.2991540989319, telescope_dec_j2k=-24.1625967160567, observability=1)
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.812001943588257s
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:10.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:10.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:10.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3272378;-24.256656;50.108586;89.993116;50.08601;90.12017;12.347;2460996.79942483;9.18618083;1.3;_
2025-11-17T09:11:10.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3272378;-24.256656;50.108586;89.993116;50.08601;90.12017;12.347;2460996.79942483;9.18618083;1.3;_
2025-11-17T09:11:10.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:10.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:10.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:10.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:10.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:10.306 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3272378, teldec = -24.256656
2025-11-17T09:11:10.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3272378 -24.256656
2025-11-17T09:11:10.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3272378 -24.256656
2025-11-17T09:11:10.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3272378 -24.256656
2025-11-17T09:11:10.307 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3272378;-24.256656;50.108586;89.993116;50.08601;90.12017;12.347;2460996.79942485;9.18618083;1.3;_15.3021912599853 -24.162681334328
2025-11-17T09:11:10.307 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.3021912599853     dec_j2k = -24.162681334328
2025-11-17T09:11:10.307 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104286237861173;171.162362694745;_
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104286237861173;171.162362694745;_
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:10.308 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:10.309 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:10.309 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:10.310 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58433)
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:10.316 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:10.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:10.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:10.323 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:10.323 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:10.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:10.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:10.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:10.324 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:10.324 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:11:10.324 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79942483, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286237861173, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3272378, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.347, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.3021912599853, telescope_dec_j2k=-24.162681334328, observability=1)
2025-11-17T09:11:10.324 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51303553581238 seconds ago
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.2369964122772217s
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:13.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:13.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:13.563 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.3281258;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34789;2460996.79946252;9.18706639;1.3;_
2025-11-17T09:11:13.563 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.3281258;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34789;2460996.79946252;9.18706639;1.3;_
2025-11-17T09:11:13.563 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:13.563 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:13.563 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:13.564 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:13.564 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:13.564 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.3281258, teldec = -24.256656
2025-11-17T09:11:13.564 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3281258 -24.256656
2025-11-17T09:11:13.564 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3281258 -24.256656
2025-11-17T09:11:13.564 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3281258 -24.256656
2025-11-17T09:11:13.565 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.3281258;-24.256656;50.108586;89.993116;50.08601;90.12017;12.34789;2460996.79946256;9.18706639;1.3;_15.3030786061859 -24.1627060680221
2025-11-17T09:11:13.565 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.3030786061859     dec_j2k = -24.1627060680221
2025-11-17T09:11:13.565 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:13.565 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:13.565 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104286318085059;171.162362694745;_
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104286318085059;171.162362694745;_
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:13.566 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:13.567 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:13.568 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:13.568 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:13.568 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:13.569 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54351)
2025-11-17T09:11:13.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:13.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:13.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:13.569 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:13.570 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:13.577 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:13.577 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79946252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286318085059, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108586, telescope_az=89.993116, telescope_ra=15.3281258, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.34789, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.3030786061859, telescope_dec_j2k=-24.1627060680221, observability=1)
2025-11-17T09:11:14.169 [DEBUG] [Thread-66832 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:14.169 [DEBUG] [Thread-66832 (handle)] [server.py] [get_status()] Status age = 0.5919973850250244s
2025-11-17T09:11:14.169 [DEBUG] [Thread-66832 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5919973850250244
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1976425647735596s
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3284631;-24.256656;50.108585;89.993116;50.08601;90.12017;12.34823;2460996.79947657;9.18740278;1.3;_
2025-11-17T09:11:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.3284631;-24.256656;50.108585;89.993116;50.08601;90.12017;12.34823;2460996.79947657;9.18740278;1.3;_
2025-11-17T09:11:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:14.778 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.3284631, teldec = -24.256656
2025-11-17T09:11:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3284631 -24.256656
2025-11-17T09:11:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3284631 -24.256656
2025-11-17T09:11:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3284631 -24.256656
2025-11-17T09:11:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3284631;-24.256656;50.108585;89.993116;50.08601;90.12017;12.34823;2460996.79947661;9.18740278;1.3;_15.3034156578853 -24.1627154642735
2025-11-17T09:11:14.779 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3034156578853     dec_j2k = -24.1627154642735
2025-11-17T09:11:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104286438420887;171.162341237072;_
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104286438420887;171.162341237072;_
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48953)
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:14.793 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79947657, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286438420887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108585, telescope_az=89.993116, telescope_ra=15.3284631, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.34823, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:10:14.925003', telescope_ra_j2k=15.3034156578853, telescope_dec_j2k=-24.1627154642735, observability=1)
2025-11-17T09:11:15.067 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:15.067 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:15.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:15.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:15.068 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:15.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:15.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:15.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:15.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:15.069 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:11:15.069 [INFO] [ThreadPoolExecutor-2589_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:11:15.070 [INFO] [ThreadPoolExecutor-2589_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:11:24.887 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:11:24
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.093886375427246s
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:24.887 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:24.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:24.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3312733;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35104;2460996.79959362;9.19020528;1.3;_
2025-11-17T09:11:24.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3312733;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35104;2460996.79959362;9.19020528;1.3;_
2025-11-17T09:11:24.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:24.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:24.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:24.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:24.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:24.890 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3312733, teldec = -24.256656
2025-11-17T09:11:24.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3312733 -24.256656
2025-11-17T09:11:24.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3312733 -24.256656
2025-11-17T09:11:24.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3312733 -24.256656
2025-11-17T09:11:24.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3313011;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35107;2460996.79959365;9.19023306;1.3;_15.3062237900369 -24.1627937775448
2025-11-17T09:11:24.891 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.3062237900369     dec_j2k = -24.1627937775448
2025-11-17T09:11:24.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:24.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:24.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104286117525345;171.162346601491;_
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104286117525345;171.162346601491;_
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:24.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:24.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:24.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:24.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:24.899 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47325)
2025-11-17T09:11:24.899 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:24.899 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:24.900 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:24.900 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:24.900 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:24.907 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:24.907 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79959362, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286117525345, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108585, telescope_az=89.993116, telescope_ra=15.3312733, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.35104, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3062237900369, telescope_dec_j2k=-24.1627937775448, observability=1)
2025-11-17T09:11:32.234 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Status age = 7.327491283416748s
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:32.235 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:32.236 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:32.237 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 17;15.3333392;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35311;2460996.79967867;9.19226556;1.3;_
2025-11-17T09:11:32.237 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response 17;15.3333392;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35311;2460996.79967867;9.19226556;1.3;_
2025-11-17T09:11:32.237 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:32.237 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:32.237 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:32.238 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:32.238 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:32.238 [INFO] [Thread-66833 (handle)] [driver.py] [get_status()] Telra = 15.3333392, teldec = -24.256656
2025-11-17T09:11:32.238 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3333392 -24.256656
2025-11-17T09:11:32.238 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3333392 -24.256656
2025-11-17T09:11:32.238 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3333392 -24.256656
2025-11-17T09:11:32.239 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 17;15.3333392;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35311;2460996.79967869;9.19226556;1.3;_15.3082881708487 -24.1628513818346
2025-11-17T09:11:32.239 [INFO] [Thread-66833 (handle)] [driver.py] [get_status()] ra_j2k = 15.3082881708487     dec_j2k = -24.1628513818346
2025-11-17T09:11:32.239 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:32.239 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:32.239 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 140;0.104286518644773;171.162351965909;_
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response 140;0.104286518644773;171.162351965909;_
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:32.240 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:32.241 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:32.242 [DEBUG] [Thread-66833 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:32.242 [DEBUG] [Thread-66833 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:32.242 [DEBUG] [Thread-66833 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54475)
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:32.244 [DEBUG] [Thread-66833 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:32.252 [DEBUG] [Thread-66833 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:32.252 [INFO] [Thread-66833 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.79967867, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286518644773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108585, telescope_az=89.993116, telescope_ra=15.3333392, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.35311, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3082881708487, telescope_dec_j2k=-24.1628513818346, observability=1)
2025-11-17T09:11:35.947 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.947 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.947 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:35.947 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:35.947 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:11:35.948 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:35.949 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:35.950 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:11:35.951 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:35.952 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Park
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:11:35.953 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:11:35.954 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 29;15.3343684;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35413;2460996.79972169;9.19329194;1.3;_Park Command Successful
2025-11-17T09:11:36.954 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:11:36.954 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:11:36.954 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:11:36.955 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:11:36.955 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:11:37.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:11:37.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:11:37.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:11:37.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:11:37.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:11:38.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:11:38.956 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:11:38.957 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:11:38.957 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:11:38.957 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:11:39.957 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:11:39.957 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:11:39.958 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:39.959 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:11:39.960 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:11:39.961 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:40.961 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:40.961 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:40.961 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:40.961 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:40.961 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:11:40.962 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:11:40.963 [DEBUG] [ThreadPoolExecutor-2588_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:40.963 [INFO] [ThreadPoolExecutor-2588_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Status age = 18.1005117893219s
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:50.353 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:50.354 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:50.355 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 17;15.3383808;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35815;2460996.79988837;9.19729333;1.3;_
2025-11-17T09:11:50.355 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response 17;15.3383808;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35815;2460996.79988837;9.19729333;1.3;_
2025-11-17T09:11:50.355 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:50.355 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:50.355 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:50.356 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:50.356 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:50.356 [INFO] [Thread-66834 (handle)] [driver.py] [get_status()] Telra = 15.3383808, teldec = -24.256656
2025-11-17T09:11:50.356 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3383808 -24.256656
2025-11-17T09:11:50.356 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3383808 -24.256656
2025-11-17T09:11:50.356 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3383808 -24.256656
2025-11-17T09:11:50.357 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 17;15.3383808;-24.256656;50.108585;89.993116;50.08601;90.12017;12.35815;2460996.79988839;9.19729333;1.3;_15.3133260669161 -24.1629920752993
2025-11-17T09:11:50.357 [INFO] [Thread-66834 (handle)] [driver.py] [get_status()] ra_j2k = 15.3133260669161     dec_j2k = -24.1629920752993
2025-11-17T09:11:50.357 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:50.357 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:50.357 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 140;0.104286638980602;171.162362694745;_
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response 140;0.104286638980602;171.162362694745;_
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:50.358 [DEBUG] [Thread-66834 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:50.359 [DEBUG] [Thread-66834 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48573)
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:50.361 [DEBUG] [Thread-66834 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:50.368 [DEBUG] [Thread-66834 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:50.369 [DEBUG] [Thread-66834 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:50.369 [DEBUG] [Thread-66834 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:50.369 [INFO] [Thread-66834 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79988837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286638980602, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108585, telescope_az=89.993116, telescope_ra=15.3383808, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.35815, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3133260669161, telescope_dec_j2k=-24.1629920752993, observability=1)
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Status age = 9.1550931930542s
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:11:59.524 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:11:59.525 [DEBUG] [Thread-66835 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:11:59.525 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:11:59.525 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:11:59.525 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:11:59.525 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:11:59.526 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 17;15.3409425;-24.256656;50.108585;89.993116;50.08601;90.12017;12.36071;2460996.79999451;9.19984806;1.3;_
2025-11-17T09:11:59.526 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response 17;15.3409425;-24.256656;50.108585;89.993116;50.08601;90.12017;12.36071;2460996.79999451;9.19984806;1.3;_
2025-11-17T09:11:59.526 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:11:59.526 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:11:59.526 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:11:59.527 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:59.527 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:11:59.527 [INFO] [Thread-66835 (handle)] [driver.py] [get_status()] Telra = 15.3409425, teldec = -24.256656
2025-11-17T09:11:59.527 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3409425 -24.256656
2025-11-17T09:11:59.527 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3409425 -24.256656
2025-11-17T09:11:59.527 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3409425 -24.256656
2025-11-17T09:11:59.528 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 17;15.3409425;-24.256656;50.108585;89.993116;50.08601;90.12017;12.36071;2460996.79999454;9.19984806;1.3;_15.3158858867937 -24.1630636267154
2025-11-17T09:11:59.528 [INFO] [Thread-66835 (handle)] [driver.py] [get_status()] ra_j2k = 15.3158858867937     dec_j2k = -24.1630636267154
2025-11-17T09:11:59.528 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:11:59.528 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:11:59.528 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 140;0.104287320883629;171.162351965909;_
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response 140;0.104287320883629;171.162351965909;_
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:59.529 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:11:59.530 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:11:59.531 [DEBUG] [Thread-66835 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:59.531 [DEBUG] [Thread-66835 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:11:59.531 [DEBUG] [Thread-66835 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49721)
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:11:59.535 [DEBUG] [Thread-66835 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:11:59.542 [DEBUG] [Thread-66835 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:11:59.542 [DEBUG] [Thread-66835 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:59.542 [DEBUG] [Thread-66835 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:11:59.543 [DEBUG] [Thread-66835 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:11:59.543 [INFO] [Thread-66835 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.79999451, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287320883629, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108585, telescope_az=89.993116, telescope_ra=15.3409425, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36071, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3158858867937, telescope_dec_j2k=-24.1630636267154, observability=1)
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Status age = 8.878184080123901s
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:08.421 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:08.422 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:08.422 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:08.423 [DEBUG] [Thread-66836 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:08.423 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:08.423 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:08.423 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:08.423 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:08.424 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 17;15.3434212;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36319;2460996.80009749;9.20232;1.3;_
2025-11-17T09:12:08.424 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response 17;15.3434212;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36319;2460996.80009749;9.20232;1.3;_
2025-11-17T09:12:08.424 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:08.424 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:08.424 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:08.425 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:08.425 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:08.425 [INFO] [Thread-66836 (handle)] [driver.py] [get_status()] Telra = 15.3434212, teldec = -24.256656
2025-11-17T09:12:08.425 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3434212 -24.256656
2025-11-17T09:12:08.425 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3434212 -24.256656
2025-11-17T09:12:08.425 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3434212 -24.256656
2025-11-17T09:12:08.426 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 17;15.3434212;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36319;2460996.80009752;9.20232;1.3;_15.3183627688026 -24.1631329004081
2025-11-17T09:12:08.426 [INFO] [Thread-66836 (handle)] [driver.py] [get_status()] ra_j2k = 15.3183627688026     dec_j2k = -24.1631329004081
2025-11-17T09:12:08.426 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:08.426 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:08.426 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 140;0.104286959876144;171.162351965909;_
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response 140;0.104286959876144;171.162351965909;_
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:08.427 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:08.428 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:08.429 [DEBUG] [Thread-66836 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:08.429 [DEBUG] [Thread-66836 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:08.429 [DEBUG] [Thread-66836 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54779)
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:08.434 [DEBUG] [Thread-66836 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:08.442 [DEBUG] [Thread-66836 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:08.442 [INFO] [Thread-66836 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80009749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286959876144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.3434212, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36319, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3183627688026, telescope_dec_j2k=-24.1631329004081, observability=1)
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.9417362213134766s
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:10.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:10.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:10.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3439549;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36372;2460996.80012021;9.20285222;1.3;_
2025-11-17T09:12:10.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3439549;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36372;2460996.80012021;9.20285222;1.3;_
2025-11-17T09:12:10.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:10.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:10.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:10.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:10.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:10.387 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3439549, teldec = -24.256656
2025-11-17T09:12:10.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3439549 -24.256656
2025-11-17T09:12:10.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3439549 -24.256656
2025-11-17T09:12:10.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3439549 -24.256656
2025-11-17T09:12:10.388 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3439549;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36372;2460996.80012023;9.20285222;1.3;_15.3188960775192 -24.1631478212548
2025-11-17T09:12:10.388 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.3188960775192     dec_j2k = -24.1631478212548
2025-11-17T09:12:10.388 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:10.388 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:10.388 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:10.389 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104286277973116;171.162357330327;_
2025-11-17T09:12:10.389 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104286277973116;171.162357330327;_
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:10.390 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:10.391 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:10.391 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:10.391 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50655)
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:10.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:10.403 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:12:10.403 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80012021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286277973116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.3439549, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36372, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3188960775192, telescope_dec_j2k=-24.1631478212548, observability=1)
2025-11-17T09:12:10.404 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51655721664429 seconds ago
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.262751340866089s
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:12.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:12.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:12.667 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:12.667 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:12.667 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.34459;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36436;2460996.80014662;9.20348556;1.3;_
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.34459;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36436;2460996.80014662;9.20348556;1.3;_
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:12.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:12.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:12.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:12.669 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:12.670 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.34459, teldec = -24.256656
2025-11-17T09:12:12.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.34459 -24.256656
2025-11-17T09:12:12.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.34459 -24.256656
2025-11-17T09:12:12.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.34459 -24.256656
2025-11-17T09:12:12.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.34459;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36436;2460996.80014666;9.20348556;1.3;_15.3195307119664 -24.1631655793866
2025-11-17T09:12:12.671 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.3195307119664     dec_j2k = -24.1631655793866
2025-11-17T09:12:12.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:12.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:12.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104286799428373;171.162351965909;_
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104286799428373;171.162351965909;_
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:12.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:12.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:12.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:12.674 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:12.674 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46415)
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:12.675 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:12.682 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:12.682 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:12.683 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:12.683 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80014662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286799428373, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.34459, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36436, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3195307119664, telescope_dec_j2k=-24.1631655793866, observability=1)
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0620687007904053s
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3451797;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36495;2460996.80017068;9.20407361;1.3;_
2025-11-17T09:12:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.3451797;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36495;2460996.80017068;9.20407361;1.3;_
2025-11-17T09:12:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:14.748 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.3451797, teldec = -24.256656
2025-11-17T09:12:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3451797 -24.256656
2025-11-17T09:12:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3451797 -24.256656
2025-11-17T09:12:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3451797 -24.256656
2025-11-17T09:12:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3451797;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36495;2460996.80017071;9.20407361;1.3;_15.3201199797638 -24.1631820704245
2025-11-17T09:12:14.750 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3201199797638     dec_j2k = -24.1631820704245
2025-11-17T09:12:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10428675931643;171.162362694745;_
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10428675931643;171.162362694745;_
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49949)
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:14.765 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:14.765 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:14.765 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80017068, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10428675931643, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.3451797, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36495, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:11:15.067305', telescope_ra_j2k=15.3201199797638, telescope_dec_j2k=-24.1631820704245, observability=1)
2025-11-17T09:12:15.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:15.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:15.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:15.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:15.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:15.212 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:15.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:15.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:15.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:15.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:15.213 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:12:15.213 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:15.213 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:15.213 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:15.213 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:15.213 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:12:15.214 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:12:15.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:16.215 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:16.216 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:16.217 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:16.217 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:16.217 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:16.218 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:16.218 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:16.218 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:16.218 [DEBUG] [ThreadPoolExecutor-2590_0] [payload.py] [to_registers()] [0]
2025-11-17T09:12:16.224 [DEBUG] [ThreadPoolExecutor-2590_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36367)
2025-11-17T09:12:16.224 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:16.225 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:16.225 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:12:16.225 [DEBUG] [ThreadPoolExecutor-2590_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:16.225 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:16.232 [DEBUG] [ThreadPoolExecutor-2590_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:24.968 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:12:24
2025-11-17T09:12:24.968 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:24.968 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.20373010635376s
2025-11-17T09:12:24.968 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:24.968 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:24.968 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:24.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:24.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:24.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:24.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:24.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:24.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3480216;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36779;2460996.800289;9.20690778;1.3;_
2025-11-17T09:12:24.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3480216;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36779;2460996.800289;9.20690778;1.3;_
2025-11-17T09:12:24.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:24.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:24.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:24.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:24.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:24.972 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3480216, teldec = -24.256656
2025-11-17T09:12:24.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3480216 -24.256656
2025-11-17T09:12:24.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3480216 -24.256656
2025-11-17T09:12:24.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3480216 -24.256656
2025-11-17T09:12:24.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3480216;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36779;2460996.80028904;9.20690778;1.3;_15.3229597978294 -24.1632615761511
2025-11-17T09:12:24.973 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.3229597978294     dec_j2k = -24.1632615761511
2025-11-17T09:12:24.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:24.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:24.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104286919764201;171.162368059163;_
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104286919764201;171.162368059163;_
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:24.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:24.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:24.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:24.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:24.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39751)
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:24.979 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:24.986 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:24.986 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:24.986 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:24.986 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:24.986 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:24.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:24.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:24.987 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:24.987 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:24.987 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.800289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286919764201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.3480216, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3229597978294, telescope_dec_j2k=-24.1632615761511, observability=1)
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Status age = 1.5000927448272705s
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:26.487 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:26.488 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:26.489 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 17;15.3484425;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36821;2460996.80030659;9.2073275;1.3;_
2025-11-17T09:12:26.489 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response 17;15.3484425;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36821;2460996.80030659;9.2073275;1.3;_
2025-11-17T09:12:26.489 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:26.489 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:26.489 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:26.490 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:26.490 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:26.490 [INFO] [Thread-66837 (handle)] [driver.py] [get_status()] Telra = 15.3484425, teldec = -24.256656
2025-11-17T09:12:26.490 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3484425 -24.256656
2025-11-17T09:12:26.490 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3484425 -24.256656
2025-11-17T09:12:26.490 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3484425 -24.256656
2025-11-17T09:12:26.491 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 17;15.3484425;-24.256656;50.108584;89.993116;50.08601;90.12017;12.36821;2460996.80030661;9.2073275;1.3;_15.323380389618 -24.1632733558089
2025-11-17T09:12:26.491 [INFO] [Thread-66837 (handle)] [driver.py] [get_status()] ra_j2k = 15.323380389618     dec_j2k = -24.1632733558089
2025-11-17T09:12:26.491 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:26.491 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:26.491 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 140;0.104286799428373;171.162357330327;_
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response 140;0.104286799428373;171.162357330327;_
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:26.492 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:26.493 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:26.494 [DEBUG] [Thread-66837 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:12:26.494 [DEBUG] [Thread-66837 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:12:26.494 [DEBUG] [Thread-66837 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42431)
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:26.495 [DEBUG] [Thread-66837 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:26.503 [DEBUG] [Thread-66837 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:26.503 [INFO] [Thread-66837 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80030659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104286799428373, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.3484425, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.36821, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.323380389618, telescope_dec_j2k=-24.1632733558089, observability=1)
2025-11-17T09:12:41.232 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:41.233 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:41.233 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:41.233 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:41.233 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:41.234 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:12:41.235 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:12:41.236 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Status age = 18.104000568389893s
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:44.607 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:44.608 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:44.609 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 17;15.353484;-24.256656;50.108584;89.993116;50.08601;90.12017;12.37325;2460996.80051631;9.21235528;1.3;_
2025-11-17T09:12:44.609 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response 17;15.353484;-24.256656;50.108584;89.993116;50.08601;90.12017;12.37325;2460996.80051631;9.21235528;1.3;_
2025-11-17T09:12:44.609 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:44.609 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:44.609 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:44.610 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:44.610 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:44.610 [INFO] [Thread-66838 (handle)] [driver.py] [get_status()] Telra = 15.353484, teldec = -24.256656
2025-11-17T09:12:44.610 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] UnCookCoordinates 15.353484 -24.256656
2025-11-17T09:12:44.610 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.353484 -24.256656
2025-11-17T09:12:44.610 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.353484 -24.256656
2025-11-17T09:12:44.611 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 17;15.353484;-24.256656;50.108584;89.993116;50.08601;90.12017;12.37325;2460996.80051633;9.21235528;1.3;_15.3284182005745 -24.1634145406077
2025-11-17T09:12:44.611 [INFO] [Thread-66838 (handle)] [driver.py] [get_status()] ra_j2k = 15.3284182005745     dec_j2k = -24.1634145406077
2025-11-17T09:12:44.611 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:44.611 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:44.611 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 140;0.104287521443343;171.162351965909;_
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response 140;0.104287521443343;171.162351965909;_
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:44.612 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:44.613 [DEBUG] [Thread-66838 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54847)
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:44.620 [DEBUG] [Thread-66838 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:44.627 [DEBUG] [Thread-66838 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:44.627 [INFO] [Thread-66838 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80051631, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287521443343, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.353484, telescope_dec=-24.256656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.37325, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3284182005745, telescope_dec_j2k=-24.1634145406077, observability=1)
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Status age = 14.948300838470459s
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:12:59.576 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:12:59.577 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:12:59.577 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 17;15.357663;-24.256655;50.108584;89.993116;50.08601;90.12017;12.37743;2460996.80068955;9.21652278;1.3;_
2025-11-17T09:12:59.577 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response 17;15.357663;-24.256655;50.108584;89.993116;50.08601;90.12017;12.37743;2460996.80068955;9.21652278;1.3;_
2025-11-17T09:12:59.577 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:12:59.577 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:12:59.578 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:12:59.578 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:59.578 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:12:59.579 [INFO] [Thread-66839 (handle)] [driver.py] [get_status()] Telra = 15.357663, teldec = -24.256655
2025-11-17T09:12:59.579 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] UnCookCoordinates 15.357663 -24.256655
2025-11-17T09:12:59.579 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.357663 -24.256655
2025-11-17T09:12:59.579 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.357663 -24.256655
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 17;15.357663;-24.256655;50.108584;89.993116;50.08601;90.12017;12.37743;2460996.80068958;9.21652278;1.3;_15.3325941465608 -24.1635306961721
2025-11-17T09:12:59.580 [INFO] [Thread-66839 (handle)] [driver.py] [get_status()] ra_j2k = 15.3325941465608     dec_j2k = -24.1635306961721
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 140;0.104287521443343;171.162357330327;_
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response 140;0.104287521443343;171.162357330327;_
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:59.580 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:12:59.581 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:12:59.582 [DEBUG] [Thread-66839 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:59.582 [DEBUG] [Thread-66839 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:12:59.582 [DEBUG] [Thread-66839 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33095)
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:12:59.584 [DEBUG] [Thread-66839 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:12:59.592 [DEBUG] [Thread-66839 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:12:59.592 [INFO] [Thread-66839 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80068955, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287521443343, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108584, telescope_az=89.993116, telescope_ra=15.357663, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.37743, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3325941465608, telescope_dec_j2k=-24.1635306961721, observability=1)
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Status age = 3.0826659202575684s
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:02.675 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:02.676 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:02.677 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 17;15.3585256;-24.256655;50.108583;89.993116;50.08601;90.12017;12.37829;2460996.80072543;9.21738306;1.3;_
2025-11-17T09:13:02.677 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response 17;15.3585256;-24.256655;50.108583;89.993116;50.08601;90.12017;12.37829;2460996.80072543;9.21738306;1.3;_
2025-11-17T09:13:02.677 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:02.677 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:02.677 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:02.678 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:02.678 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:02.678 [INFO] [Thread-66840 (handle)] [driver.py] [get_status()] Telra = 15.3585256, teldec = -24.256655
2025-11-17T09:13:02.678 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3585256 -24.256655
2025-11-17T09:13:02.678 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3585256 -24.256655
2025-11-17T09:13:02.678 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3585256 -24.256655
2025-11-17T09:13:02.679 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 17;15.3585256;-24.256655;50.108583;89.993116;50.08601;90.12017;12.37829;2460996.80072545;9.21738306;1.3;_15.3334561165663 -24.1635548926619
2025-11-17T09:13:02.679 [INFO] [Thread-66840 (handle)] [driver.py] [get_status()] ra_j2k = 15.3334561165663     dec_j2k = -24.1635548926619
2025-11-17T09:13:02.679 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:02.679 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 140;0.104287882450828;171.162357330327;_
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response 140;0.104287882450828;171.162357330327;_
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:02.680 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:02.681 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:02.681 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:02.681 [DEBUG] [Thread-66840 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:02.681 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:02.681 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:02.682 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:02.682 [DEBUG] [Thread-66840 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:02.682 [DEBUG] [Thread-66840 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:02.682 [DEBUG] [Thread-66840 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41307)
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:02.687 [DEBUG] [Thread-66840 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:02.694 [DEBUG] [Thread-66840 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:02.695 [INFO] [Thread-66840 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80072543, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287882450828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3585256, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.37829, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3334561165663, telescope_dec_j2k=-24.1635548926619, observability=1)
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.769106864929199s
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:10.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:10.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:10.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3607041;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38047;2460996.80081558;9.21955556;1.3;_
2025-11-17T09:13:10.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3607041;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38047;2460996.80081558;9.21955556;1.3;_
2025-11-17T09:13:10.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:10.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:10.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:10.467 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:10.467 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:10.467 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3607041, teldec = -24.256655
2025-11-17T09:13:10.467 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3607041 -24.256655
2025-11-17T09:13:10.467 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3607041 -24.256655
2025-11-17T09:13:10.467 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3607041 -24.256655
2025-11-17T09:13:10.468 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3607041;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38047;2460996.8008156;9.21955556;1.3;_15.3356330261595 -24.1636160223983
2025-11-17T09:13:10.468 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.3356330261595     dec_j2k = -24.1636160223983
2025-11-17T09:13:10.468 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:10.468 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:10.468 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104287962674714;171.162362694745;_
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104287962674714;171.162362694745;_
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:10.469 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:10.470 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:10.471 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:10.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:10.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35193)
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:10.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:10.483 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:13:10.483 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80081558, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287962674714, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3607041, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3356330261595, telescope_dec_j2k=-24.1636160223983, observability=1)
2025-11-17T09:13:10.483 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51520371437073 seconds ago
2025-11-17T09:13:11.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.2913241386413574s
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:11.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:11.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:11.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.3610595;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38083;2460996.80083075;9.21991;1.3;_
2025-11-17T09:13:11.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.3610595;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38083;2460996.80083075;9.21991;1.3;_
2025-11-17T09:13:11.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:11.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:11.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:11.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:11.778 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:11.778 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.3610595, teldec = -24.256655
2025-11-17T09:13:11.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3610595 -24.256655
2025-11-17T09:13:11.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3610595 -24.256655
2025-11-17T09:13:11.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3610595 -24.256655
2025-11-17T09:13:11.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.3610595;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38083;2460996.80083078;9.21991;1.3;_15.3359881667889 -24.1636259979974
2025-11-17T09:13:11.779 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.3359881667889     dec_j2k = -24.1636259979974
2025-11-17T09:13:11.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:11.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104287641779172;171.162357330327;_
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104287641779172;171.162357330327;_
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:11.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:11.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:11.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:11.782 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:11.782 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43335)
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:11.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:11.791 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:11.791 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80083075, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287641779172, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3610595, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38083, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3359881667889, telescope_dec_j2k=-24.1636259979974, observability=1)
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.9667978286743164s
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3619012;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38167;2460996.80086528;9.22074944;1.3;_
2025-11-17T09:13:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.3619012;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38167;2460996.80086528;9.22074944;1.3;_
2025-11-17T09:13:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:14.761 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.3619012, teldec = -24.256655
2025-11-17T09:13:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3619012 -24.256655
2025-11-17T09:13:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3619012 -24.256655
2025-11-17T09:13:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3619012 -24.256655
2025-11-17T09:13:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3619012;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38167;2460996.8008653;9.22074944;1.3;_15.3368292526154 -24.1636496266343
2025-11-17T09:13:14.762 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3368292526154     dec_j2k = -24.1636496266343
2025-11-17T09:13:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104287922562771;171.162357330327;_
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104287922562771;171.162357330327;_
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:13:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:13:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45477)
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:14.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:14.774 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:14.774 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:14.775 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:14.775 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80086528, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287922562771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3619012, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38167, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:12:15.210052', telescope_ra_j2k=15.3368292526154, telescope_dec_j2k=-24.1636496266343, observability=1)
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:15.353 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:15.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:15.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:15.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:15.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:15.354 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:13:15.355 [INFO] [ThreadPoolExecutor-2591_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:13:15.355 [INFO] [ThreadPoolExecutor-2591_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Status age = 6.022186756134033s
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:20.797 [DEBUG] [Thread-66841 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 17;15.3635722;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38334;2460996.80093516;9.22241583;1.3;_
2025-11-17T09:13:20.798 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response 17;15.3635722;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38334;2460996.80093516;9.22241583;1.3;_
2025-11-17T09:13:20.799 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:20.799 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:20.799 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:20.800 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:20.800 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:20.800 [INFO] [Thread-66841 (handle)] [driver.py] [get_status()] Telra = 15.3635722, teldec = -24.256655
2025-11-17T09:13:20.800 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3635722 -24.256655
2025-11-17T09:13:20.800 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3635722 -24.256655
2025-11-17T09:13:20.800 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3635722 -24.256655
2025-11-17T09:13:20.801 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 17;15.3635722;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38334;2460996.8009352;9.22241583;1.3;_15.338499033727 -24.1636965493572
2025-11-17T09:13:20.801 [INFO] [Thread-66841 (handle)] [driver.py] [get_status()] ra_j2k = 15.338499033727     dec_j2k = -24.1636965493572
2025-11-17T09:13:20.801 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:20.801 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:20.801 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 140;0.104287681891114;171.162362694745;_
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response 140;0.104287681891114;171.162362694745;_
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:20.802 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:20.803 [DEBUG] [Thread-66841 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34607)
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:20.808 [DEBUG] [Thread-66841 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:20.815 [DEBUG] [Thread-66841 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:20.816 [DEBUG] [Thread-66841 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:20.816 [DEBUG] [Thread-66841 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:20.816 [DEBUG] [Thread-66841 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:20.816 [INFO] [Thread-66841 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80093516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287681891114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3635722, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38334, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.338499033727, telescope_dec_j2k=-24.1636965493572, observability=1)
2025-11-17T09:13:25.047 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:13:25
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.23129415512085s
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:25.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3647679;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38453;2460996.80098435;9.22360833;1.3;_
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3647679;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38453;2460996.80098435;9.22360833;1.3;_
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:25.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:25.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:25.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:25.049 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3647679, teldec = -24.256655
2025-11-17T09:13:25.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3647679 -24.256655
2025-11-17T09:13:25.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3647679 -24.256655
2025-11-17T09:13:25.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3647679 -24.256655
2025-11-17T09:13:25.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3647679;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38453;2460996.80098438;9.22360833;1.3;_15.339693861875 -24.1637301364157
2025-11-17T09:13:25.050 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.339693861875     dec_j2k = -24.1637301364157
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104287922562771;171.162357330327;_
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104287922562771;171.162357330327;_
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:25.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:25.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:25.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:13:25.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:13:25.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53893)
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:25.059 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:25.066 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:25.066 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80098435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287922562771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.3647679, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38453, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.339693861875, telescope_dec_j2k=-24.1637301364157, observability=1)
2025-11-17T09:13:36.236 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.236 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.236 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:36.236 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:36.236 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:13:36.237 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:36.238 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:36.239 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:13:36.240 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:36.241 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:36.242 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:36.242 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:36.242 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:36.242 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:36.243 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Park
2025-11-17T09:13:36.243 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:13:36.243 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:13:36.243 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 29;15.3678854;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38765;2460996.80111392;9.22671722;1.3;_Park Command Successful
2025-11-17T09:13:37.244 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:13:37.244 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:13:37.244 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:13:37.244 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:13:37.244 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:13:38.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:13:38.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:13:38.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:13:38.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:13:38.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Status age = 13.797043800354004s
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:38.863 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:38.864 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:38.865 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 17;15.368614;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38838;2460996.80114427;9.22744389;1.3;_
2025-11-17T09:13:38.865 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response 17;15.368614;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38838;2460996.80114427;9.22744389;1.3;_
2025-11-17T09:13:38.865 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:38.865 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:38.865 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:38.866 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:38.866 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:38.866 [INFO] [Thread-66842 (handle)] [driver.py] [get_status()] Telra = 15.368614, teldec = -24.256655
2025-11-17T09:13:38.867 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] UnCookCoordinates 15.368614 -24.256655
2025-11-17T09:13:38.867 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.368614 -24.256655
2025-11-17T09:13:38.867 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.368614 -24.256655
2025-11-17T09:13:38.868 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 17;15.368614;-24.256655;50.108583;89.993116;50.08601;90.12017;12.38838;2460996.80114429;9.22744389;1.3;_15.3435371593648 -24.1638382353737
2025-11-17T09:13:38.868 [INFO] [Thread-66842 (handle)] [driver.py] [get_status()] ra_j2k = 15.3435371593648     dec_j2k = -24.1638382353737
2025-11-17T09:13:38.868 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:38.868 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:38.868 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 140;0.104287681891114;171.162357330327;_
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response 140;0.104287681891114;171.162357330327;_
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:38.869 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:38.870 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:38.871 [DEBUG] [Thread-66842 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:38.871 [DEBUG] [Thread-66842 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:38.871 [DEBUG] [Thread-66842 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38519)
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:38.875 [DEBUG] [Thread-66842 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:38.883 [DEBUG] [Thread-66842 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:38.884 [DEBUG] [Thread-66842 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:38.884 [INFO] [Thread-66842 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80114427, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104287681891114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108583, telescope_az=89.993116, telescope_ra=15.368614, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.38838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.3435371593648, telescope_dec_j2k=-24.1638382353737, observability=1)
2025-11-17T09:13:39.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:13:39.245 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:13:39.246 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:13:39.246 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:13:39.246 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:13:40.246 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:13:40.247 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:13:40.247 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:40.248 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:13:40.249 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:41.250 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:41.250 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:41.250 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:41.250 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:41.250 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:13:41.251 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:13:41.252 [DEBUG] [ThreadPoolExecutor-2590_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:41.252 [INFO] [ThreadPoolExecutor-2590_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:13:56.928 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Status age = 18.044522285461426s
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:56.929 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:56.930 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:56.931 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 17;15.3736269;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39339;2460996.80135337;9.23244306;1.3;_
2025-11-17T09:13:56.931 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response 17;15.3736269;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39339;2460996.80135337;9.23244306;1.3;_
2025-11-17T09:13:56.931 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:56.931 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:56.931 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:56.932 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:56.932 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:56.932 [INFO] [Thread-66843 (handle)] [driver.py] [get_status()] Telra = 15.3736269, teldec = -24.256655
2025-11-17T09:13:56.932 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3736269 -24.256655
2025-11-17T09:13:56.932 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3736269 -24.256655
2025-11-17T09:13:56.932 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3736269 -24.256655
2025-11-17T09:13:56.933 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 17;15.3736269;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39339;2460996.80135339;9.23244306;1.3;_15.3485464109999 -24.1639792715614
2025-11-17T09:13:56.933 [INFO] [Thread-66843 (handle)] [driver.py] [get_status()] ra_j2k = 15.3485464109999     dec_j2k = -24.1639792715614
2025-11-17T09:13:56.933 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:56.933 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:56.933 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 140;0.104288444018028;171.162362694745;_
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response 140;0.104288444018028;171.162362694745;_
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:56.934 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:56.935 [DEBUG] [Thread-66843 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33663)
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:56.939 [DEBUG] [Thread-66843 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:56.946 [DEBUG] [Thread-66843 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:56.947 [INFO] [Thread-66843 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80135337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104288444018028, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.3736269, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.39339, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.3485464109999, telescope_dec_j2k=-24.1639792715614, observability=1)
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Status age = 2.679126262664795s
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:13:59.626 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:13:59.627 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:13:59.628 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 17;15.3743837;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39415;2460996.80138458;9.23319778;1.3;_
2025-11-17T09:13:59.628 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response 17;15.3743837;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39415;2460996.80138458;9.23319778;1.3;_
2025-11-17T09:13:59.628 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:13:59.628 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:13:59.628 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:13:59.629 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:59.629 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:13:59.629 [INFO] [Thread-66844 (handle)] [driver.py] [get_status()] Telra = 15.3743837, teldec = -24.256655
2025-11-17T09:13:59.629 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3743837 -24.256655
2025-11-17T09:13:59.629 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3743837 -24.256655
2025-11-17T09:13:59.629 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3743837 -24.256655
2025-11-17T09:13:59.630 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 17;15.3743837;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39415;2460996.80138461;9.23319778;1.3;_15.3493026606324 -24.1640005779121
2025-11-17T09:13:59.630 [INFO] [Thread-66844 (handle)] [driver.py] [get_status()] ra_j2k = 15.3493026606324     dec_j2k = -24.1640005779121
2025-11-17T09:13:59.630 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:13:59.630 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:13:59.630 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 140;0.104288484129971;171.162357330327;_
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response 140;0.104288484129971;171.162357330327;_
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:59.631 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:13:59.633 [DEBUG] [Thread-66844 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51119)
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:13:59.636 [DEBUG] [Thread-66844 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:13:59.644 [DEBUG] [Thread-66844 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:13:59.644 [INFO] [Thread-66844 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80138458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104288484129971, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.3743837, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.39415, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.3493026606324, telescope_dec_j2k=-24.1640005779121, observability=1)
2025-11-17T09:14:10.543 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:14:10.543 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.89922022819519s
2025-11-17T09:14:10.543 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:10.543 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:10.543 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:10.544 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:10.545 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3774162;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39718;2460996.80151094;9.23622194;1.3;_
2025-11-17T09:14:10.545 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3774162;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39718;2460996.80151094;9.23622194;1.3;_
2025-11-17T09:14:10.545 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:10.546 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:10.546 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:10.546 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:10.547 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:10.547 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3774162, teldec = -24.256655
2025-11-17T09:14:10.547 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3774162 -24.256655
2025-11-17T09:14:10.547 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3774162 -24.256655
2025-11-17T09:14:10.547 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3774162 -24.256655
2025-11-17T09:14:10.548 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3774162;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39718;2460996.80151097;9.23622194;1.3;_15.3523329564352 -24.1640859894625
2025-11-17T09:14:10.548 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.3523329564352     dec_j2k = -24.1640859894625
2025-11-17T09:14:10.548 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:10.548 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:10.548 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104288163234428;171.162351965909;_
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104288163234428;171.162351965909;_
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:10.549 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:10.550 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:10.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:10.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:10.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42251)
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:10.553 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:10.561 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:14:10.561 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80151094, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104288163234428, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.3774162, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.39718, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.3523329564352, telescope_dec_j2k=-24.1640859894625, observability=1)
2025-11-17T09:14:10.561 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51447343826294 seconds ago
2025-11-17T09:14:10.882 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:10.882 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.32057642936706543s
2025-11-17T09:14:10.882 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.32057642936706543
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.200004577636719s
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.378613;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39838;2460996.80155977;9.23741556;1.3;_
2025-11-17T09:14:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.378613;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39838;2460996.80155977;9.23741556;1.3;_
2025-11-17T09:14:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.378613, teldec = -24.256655
2025-11-17T09:14:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.378613 -24.256655
2025-11-17T09:14:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.378613 -24.256655
2025-11-17T09:14:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.378613 -24.256655
2025-11-17T09:14:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.378613;-24.256655;50.108582;89.993116;50.08601;90.12017;12.39838;2460996.80155979;9.23741556;1.3;_15.3535288870281 -24.1641197140646
2025-11-17T09:14:14.766 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3535288870281     dec_j2k = -24.1641197140646
2025-11-17T09:14:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104289166032998;171.162357330327;_
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104289166032998;171.162357330327;_
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:14.772 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41053)
2025-11-17T09:14:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:14.773 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:14:14.780 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80155977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289166032998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.378613, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.39838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:13:15.352635', telescope_ra_j2k=15.3535288870281, telescope_dec_j2k=-24.1641197140646, observability=1)
2025-11-17T09:14:15.049 [DEBUG] [Thread-66845 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:15.050 [DEBUG] [Thread-66845 (handle)] [server.py] [get_status()] Status age = 0.2694723606109619s
2025-11-17T09:14:15.050 [DEBUG] [Thread-66845 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2694723606109619
2025-11-17T09:14:15.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:15.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:15.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:15.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:15.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:15.497 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:15.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:15.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:15.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:15.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:15.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:15.498 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:14:15.498 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:15.499 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:14:15.500 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:14:15.500 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:14:15.500 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:16.501 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:16.501 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:16.501 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:16.501 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:16.501 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:14:16.502 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:16.503 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:16.504 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:16.504 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:16.504 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:16.504 [DEBUG] [ThreadPoolExecutor-2592_0] [payload.py] [to_registers()] [0]
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40227)
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:16.509 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:16.516 [DEBUG] [ThreadPoolExecutor-2592_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:25.127 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:14:25
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.346941471099854s
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:25.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:25.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:25.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:25.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:25.128 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:25.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:25.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:25.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:25.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3814884;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40125;2460996.80167973;9.24028306;1.3;_
2025-11-17T09:14:25.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3814884;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40125;2460996.80167973;9.24028306;1.3;_
2025-11-17T09:14:25.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:25.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:25.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:25.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:25.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:25.131 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3814884, teldec = -24.256655
2025-11-17T09:14:25.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3814884 -24.256655
2025-11-17T09:14:25.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3814884 -24.256655
2025-11-17T09:14:25.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3814884 -24.256655
2025-11-17T09:14:25.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3814884;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40125;2460996.80167977;9.24028306;1.3;_15.3564021993633 -24.1642007774921
2025-11-17T09:14:25.132 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.3564021993633     dec_j2k = -24.1642007774921
2025-11-17T09:14:25.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:25.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:25.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104288885249399;171.162357330327;_
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104288885249399;171.162357330327;_
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:25.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:25.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:25.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:25.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:25.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54745)
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:25.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:25.148 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:14:25.148 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80167973, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104288885249399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.3814884, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.40125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3564021993633, telescope_dec_j2k=-24.1642007774921, observability=1)
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Status age = 7.968822956085205s
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:33.117 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:33.118 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:33.119 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:33.120 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 17;15.3837106;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40348;2460996.80177222;9.24249917;1.3;_
2025-11-17T09:14:33.120 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response 17;15.3837106;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40348;2460996.80177222;9.24249917;1.3;_
2025-11-17T09:14:33.120 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:33.120 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:33.120 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:33.121 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:33.121 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:33.121 [INFO] [Thread-66846 (handle)] [driver.py] [get_status()] Telra = 15.3837106, teldec = -24.256655
2025-11-17T09:14:33.121 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3837106 -24.256655
2025-11-17T09:14:33.121 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3837106 -24.256655
2025-11-17T09:14:33.121 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3837106 -24.256655
2025-11-17T09:14:33.122 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 17;15.3837106;-24.256655;50.108582;89.993116;50.08601;90.12017;12.40348;2460996.80177225;9.24249917;1.3;_15.3586227870628 -24.1642634622151
2025-11-17T09:14:33.122 [INFO] [Thread-66846 (handle)] [driver.py] [get_status()] ra_j2k = 15.3586227870628     dec_j2k = -24.1642634622151
2025-11-17T09:14:33.122 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:33.122 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:33.122 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 140;0.104289085809113;171.162357330327;_
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response 140;0.104289085809113;171.162357330327;_
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:33.123 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:33.124 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:33.125 [DEBUG] [Thread-66846 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:33.125 [DEBUG] [Thread-66846 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:33.125 [DEBUG] [Thread-66846 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53483)
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:33.130 [DEBUG] [Thread-66846 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:33.137 [DEBUG] [Thread-66846 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:14:33.137 [INFO] [Thread-66846 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80177222, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289085809113, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108582, telescope_az=89.993116, telescope_ra=15.3837106, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.40348, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3586227870628, telescope_dec_j2k=-24.1642634622151, observability=1)
2025-11-17T09:14:41.516 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:41.517 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:14:41.518 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:14:41.519 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Status age = 18.04749870300293s
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:51.185 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:51.186 [DEBUG] [Thread-66847 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:51.186 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:51.186 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:51.186 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:51.186 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:51.187 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 17;15.3887569;-24.256655;50.108581;89.993116;50.08601;90.12017;12.40852;2460996.80198133;9.24753167;1.3;_
2025-11-17T09:14:51.187 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response 17;15.3887569;-24.256655;50.108581;89.993116;50.08601;90.12017;12.40852;2460996.80198133;9.24753167;1.3;_
2025-11-17T09:14:51.187 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:51.187 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:51.187 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:51.188 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:51.188 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:51.188 [INFO] [Thread-66847 (handle)] [driver.py] [get_status()] Telra = 15.3887569, teldec = -24.256655
2025-11-17T09:14:51.188 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3887569 -24.256655
2025-11-17T09:14:51.188 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3887569 -24.256655
2025-11-17T09:14:51.188 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3887569 -24.256655
2025-11-17T09:14:51.189 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 17;15.3887569;-24.256655;50.108581;89.993116;50.08601;90.12017;12.40852;2460996.80198135;9.24753167;1.3;_15.3636654293641 -24.1644059278617
2025-11-17T09:14:51.189 [INFO] [Thread-66847 (handle)] [driver.py] [get_status()] ra_j2k = 15.3636654293641     dec_j2k = -24.1644059278617
2025-11-17T09:14:51.189 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:51.189 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:51.189 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 140;0.104289687488255;171.162357330327;_
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response 140;0.104289687488255;171.162357330327;_
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:51.190 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:51.191 [DEBUG] [Thread-66847 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:51.191 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:51.191 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:51.191 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:51.192 [DEBUG] [Thread-66847 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:51.192 [DEBUG] [Thread-66847 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:14:51.192 [DEBUG] [Thread-66847 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:14:51.196 [DEBUG] [Thread-66847 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37793)
2025-11-17T09:14:51.196 [DEBUG] [Thread-66847 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:51.196 [DEBUG] [Thread-66847 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:51.197 [DEBUG] [Thread-66847 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:51.197 [DEBUG] [Thread-66847 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:51.197 [DEBUG] [Thread-66847 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:51.204 [DEBUG] [Thread-66847 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:14:51.204 [INFO] [Thread-66847 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80198133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289687488255, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3887569, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.40852, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3636654293641, telescope_dec_j2k=-24.1644059278617, observability=1)
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Status age = 8.473196744918823s
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:14:59.677 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:14:59.678 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:14:59.679 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 17;15.3911008;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41087;2460996.80207962;9.24986917;1.3;_
2025-11-17T09:14:59.679 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response 17;15.3911008;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41087;2460996.80207962;9.24986917;1.3;_
2025-11-17T09:14:59.679 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:14:59.679 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:14:59.679 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:14:59.680 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:59.680 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:14:59.680 [INFO] [Thread-66848 (handle)] [driver.py] [get_status()] Telra = 15.3911008, teldec = -24.256655
2025-11-17T09:14:59.680 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3911008 -24.256655
2025-11-17T09:14:59.680 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3911008 -24.256655
2025-11-17T09:14:59.680 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3911008 -24.256655
2025-11-17T09:14:59.681 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 17;15.3911008;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41087;2460996.80207964;9.24986917;1.3;_15.3660076321446 -24.164472155617
2025-11-17T09:14:59.681 [INFO] [Thread-66848 (handle)] [driver.py] [get_status()] ra_j2k = 15.3660076321446     dec_j2k = -24.164472155617
2025-11-17T09:14:59.681 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:14:59.681 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 140;0.104289206144941;171.162362694745;_
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response 140;0.104289206144941;171.162362694745;_
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:59.682 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:14:59.683 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:14:59.684 [DEBUG] [Thread-66848 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:14:59.684 [DEBUG] [Thread-66848 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:14:59.684 [DEBUG] [Thread-66848 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39709)
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:14:59.685 [DEBUG] [Thread-66848 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:14:59.693 [DEBUG] [Thread-66848 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:14:59.693 [INFO] [Thread-66848 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80207962, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289206144941, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3911008, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.41087, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3660076321446, telescope_dec_j2k=-24.164472155617, observability=1)
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Status age = 9.601713180541992s
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:09.295 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:09.296 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:09.297 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 17;15.3938029;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41357;2460996.80219094;9.25256389;1.3;_
2025-11-17T09:15:09.297 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response 17;15.3938029;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41357;2460996.80219094;9.25256389;1.3;_
2025-11-17T09:15:09.297 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:09.297 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:09.297 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:09.298 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:09.298 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:09.298 [INFO] [Thread-66849 (handle)] [driver.py] [get_status()] Telra = 15.3938029, teldec = -24.256655
2025-11-17T09:15:09.298 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3938029 -24.256655
2025-11-17T09:15:09.298 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3938029 -24.256655
2025-11-17T09:15:09.298 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3938029 -24.256655
2025-11-17T09:15:09.299 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 17;15.3938029;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41357;2460996.80219096;9.25256389;1.3;_15.3687077768951 -24.1645485480594
2025-11-17T09:15:09.299 [INFO] [Thread-66849 (handle)] [driver.py] [get_status()] ra_j2k = 15.3687077768951     dec_j2k = -24.1645485480594
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 140;0.104288965473284;171.162351965909;_
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response 140;0.104288965473284;171.162351965909;_
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:09.300 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:09.301 [DEBUG] [Thread-66849 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53935)
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:09.306 [DEBUG] [Thread-66849 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:09.313 [DEBUG] [Thread-66849 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:09.313 [DEBUG] [Thread-66849 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:09.313 [DEBUG] [Thread-66849 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:09.313 [DEBUG] [Thread-66849 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:09.313 [DEBUG] [Thread-66849 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:09.314 [DEBUG] [Thread-66849 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:09.314 [DEBUG] [Thread-66849 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:09.314 [DEBUG] [Thread-66849 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:09.314 [DEBUG] [Thread-66849 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:09.314 [INFO] [Thread-66849 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80219094, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104288965473284, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3938029, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.41357, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3687077768951, telescope_dec_j2k=-24.1645485480594, observability=1)
2025-11-17T09:15:09.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:09.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.660102367401123s
2025-11-17T09:15:09.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.660102367401123
2025-11-17T09:15:10.621 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.3078043460845947s
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:10.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3941664;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41393;2460996.80220628;9.25292639;1.3;_
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.3941664;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41393;2460996.80220628;9.25292639;1.3;_
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:10.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:10.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:10.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:10.624 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.3941664, teldec = -24.256655
2025-11-17T09:15:10.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.3941664 -24.256655
2025-11-17T09:15:10.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.3941664 -24.256655
2025-11-17T09:15:10.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3941664 -24.256655
2025-11-17T09:15:10.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.3941664;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41393;2460996.80220631;9.25292639;1.3;_15.369071013975 -24.1645588283152
2025-11-17T09:15:10.625 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.369071013975     dec_j2k = -24.1645588283152
2025-11-17T09:15:10.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:10.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104289567152426;171.162362694745;_
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104289567152426;171.162362694745;_
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:10.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:10.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:10.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:10.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:10.632 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41837)
2025-11-17T09:15:10.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:10.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:10.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:10.633 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:10.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:10.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:15:10.640 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80220628, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289567152426, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3941664, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.41393, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.369071013975, telescope_dec_j2k=-24.1645588283152, observability=1)
2025-11-17T09:15:10.640 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51337170600891 seconds ago
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.123844623565674s
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3953059;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41507;2460996.80225424;9.25406278;1.3;_
2025-11-17T09:15:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.3953059;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41507;2460996.80225424;9.25406278;1.3;_
2025-11-17T09:15:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:14.767 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.3953059, teldec = -24.256655
2025-11-17T09:15:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3953059 -24.256655
2025-11-17T09:15:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3953059 -24.256655
2025-11-17T09:15:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3953059 -24.256655
2025-11-17T09:15:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.3953059;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41507;2460996.80225426;9.25406278;1.3;_15.3702096899416 -24.16459106034
2025-11-17T09:15:14.768 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3702096899416     dec_j2k = -24.16459106034
2025-11-17T09:15:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104289567152426;171.162351965909;_
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104289567152426;171.162351965909;_
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44701)
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:14.773 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:14.781 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80225424, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289567152426, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3953059, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.41507, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:14:15.495922', telescope_ra_j2k=15.3702096899416, telescope_dec_j2k=-24.16459106034, observability=1)
2025-11-17T09:15:15.637 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:15.637 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:15.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:15.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:15.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:15.638 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:15.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:15.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:15.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:15.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:15.639 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:15:15.639 [INFO] [ThreadPoolExecutor-2593_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:15:15.639 [INFO] [ThreadPoolExecutor-2593_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:15:25.209 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:15:25
2025-11-17T09:15:25.209 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.429003715515137s
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:25.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:25.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:25.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3982334;-24.256655;50.108581;89.993116;50.08601;90.12017;12.418;2460996.80237514;9.25698222;1.3;_
2025-11-17T09:15:25.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.3982334;-24.256655;50.108581;89.993116;50.08601;90.12017;12.418;2460996.80237514;9.25698222;1.3;_
2025-11-17T09:15:25.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:25.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:25.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:25.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:25.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:25.213 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.3982334, teldec = -24.256655
2025-11-17T09:15:25.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3982334 -24.256655
2025-11-17T09:15:25.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3982334 -24.256655
2025-11-17T09:15:25.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3982334 -24.256655
2025-11-17T09:15:25.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.3982334;-24.256655;50.108581;89.993116;50.08601;90.12017;12.418;2460996.80237516;9.25698222;1.3;_15.3731350740838 -24.1646739059642
2025-11-17T09:15:25.214 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.3731350740838     dec_j2k = -24.1646739059642
2025-11-17T09:15:25.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:25.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:25.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104289687488255;171.162357330327;_
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104289687488255;171.162357330327;_
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:25.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:25.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:25.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:25.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:25.220 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54039)
2025-11-17T09:15:25.220 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:25.220 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:25.220 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:25.221 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:25.221 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:25.228 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:25.228 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80237514, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289687488255, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3982334, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3731350740838, telescope_dec_j2k=-24.1646739059642, observability=1)
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Status age = 2.1315829753875732s
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:27.360 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:27.361 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:27.362 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 17;15.3988211;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41859;2460996.80240002;9.25756833;1.3;_
2025-11-17T09:15:27.362 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response 17;15.3988211;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41859;2460996.80240002;9.25756833;1.3;_
2025-11-17T09:15:27.362 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:27.362 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:27.362 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:27.363 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:27.363 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:27.363 [INFO] [Thread-66850 (handle)] [driver.py] [get_status()] Telra = 15.3988211, teldec = -24.256655
2025-11-17T09:15:27.363 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] UnCookCoordinates 15.3988211 -24.256655
2025-11-17T09:15:27.363 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.3988211 -24.256655
2025-11-17T09:15:27.363 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.3988211 -24.256655
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 17;15.3988211;-24.256655;50.108581;89.993116;50.08601;90.12017;12.41859;2460996.80240005;9.25756833;1.3;_15.373722349526 -24.164690543943
2025-11-17T09:15:27.364 [INFO] [Thread-66850 (handle)] [driver.py] [get_status()] ra_j2k = 15.373722349526     dec_j2k = -24.164690543943
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 140;0.10429004849574;171.162346601491;_
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response 140;0.10429004849574;171.162346601491;_
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:27.364 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:27.365 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:27.365 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:27.366 [DEBUG] [Thread-66850 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:27.370 [DEBUG] [Thread-66850 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54031)
2025-11-17T09:15:27.370 [DEBUG] [Thread-66850 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:27.370 [DEBUG] [Thread-66850 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:27.370 [DEBUG] [Thread-66850 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:27.370 [DEBUG] [Thread-66850 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:27.371 [DEBUG] [Thread-66850 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:27.378 [DEBUG] [Thread-66850 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:27.378 [INFO] [Thread-66850 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80240002, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429004849574, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108581, telescope_az=89.993116, telescope_ra=15.3988211, telescope_dec=-24.256655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.41859, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.373722349526, telescope_dec_j2k=-24.164690543943, observability=1)
2025-11-17T09:15:36.519 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.519 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:15:36.520 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:36.521 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:36.522 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:15:36.523 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:36.524 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:36.525 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:36.525 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:36.525 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:36.525 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Park
2025-11-17T09:15:36.525 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:15:36.526 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:15:36.526 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 29;15.4013831;-24.256654;50.108581;89.993116;50.08601;90.12017;12.42115;2460996.80250609;9.26012333;1.3;_Park Command Successful
2025-11-17T09:15:37.526 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:15:37.527 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:15:37.527 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:15:37.528 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:15:37.528 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:15:38.528 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:15:38.528 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:15:38.528 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:15:38.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:15:38.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:15:39.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:15:39.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:15:39.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:15:39.529 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:15:39.530 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:15:40.530 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:15:40.530 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:15:40.530 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:15:40.530 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:40.531 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:15:40.532 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:15:40.532 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:15:40.532 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:41.532 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:15:41.533 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:15:41.534 [DEBUG] [ThreadPoolExecutor-2592_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:41.534 [INFO] [ThreadPoolExecutor-2592_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Status age = 18.067720413208008s
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:45.446 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:45.447 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:45.447 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:45.448 [DEBUG] [Thread-66851 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:45.448 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:45.448 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:45.448 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:45.448 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:45.449 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 17;15.4038615;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42363;2460996.80260936;9.262595;1.3;_
2025-11-17T09:15:45.449 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response 17;15.4038615;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42363;2460996.80260936;9.262595;1.3;_
2025-11-17T09:15:45.449 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:45.449 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:45.449 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:45.450 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:45.450 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:45.450 [INFO] [Thread-66851 (handle)] [driver.py] [get_status()] Telra = 15.4038615, teldec = -24.256654
2025-11-17T09:15:45.450 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4038615 -24.256654
2025-11-17T09:15:45.450 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4038615 -24.256654
2025-11-17T09:15:45.450 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4038615 -24.256654
2025-11-17T09:15:45.451 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 17;15.4038615;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42363;2460996.80260939;9.262595;1.3;_15.378759111264 -24.1648323298049
2025-11-17T09:15:45.451 [INFO] [Thread-66851 (handle)] [driver.py] [get_status()] ra_j2k = 15.378759111264     dec_j2k = -24.1648323298049
2025-11-17T09:15:45.451 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:45.451 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:45.451 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 140;0.104289727600198;171.162346601491;_
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response 140;0.104289727600198;171.162346601491;_
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:45.452 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:45.453 [DEBUG] [Thread-66851 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:45.454 [DEBUG] [Thread-66851 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:45.454 [DEBUG] [Thread-66851 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:45.455 [DEBUG] [Thread-66851 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43457)
2025-11-17T09:15:45.456 [DEBUG] [Thread-66851 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:45.456 [DEBUG] [Thread-66851 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:45.456 [DEBUG] [Thread-66851 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:45.456 [DEBUG] [Thread-66851 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:45.456 [DEBUG] [Thread-66851 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:45.463 [DEBUG] [Thread-66851 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:45.463 [INFO] [Thread-66851 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80260936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289727600198, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4038615, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.42363, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.378759111264, telescope_dec_j2k=-24.1648323298049, observability=1)
2025-11-17T09:15:59.738 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Status age = 14.27523684501648s
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:15:59.739 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:15:59.740 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:15:59.741 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 17;15.4078458;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42761;2460996.80277478;9.26656833;1.3;_
2025-11-17T09:15:59.741 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response 17;15.4078458;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42761;2460996.80277478;9.26656833;1.3;_
2025-11-17T09:15:59.741 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:15:59.741 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:15:59.741 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:15:59.742 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:59.742 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:15:59.742 [INFO] [Thread-66852 (handle)] [driver.py] [get_status()] Telra = 15.4078458, teldec = -24.256654
2025-11-17T09:15:59.742 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4078458 -24.256654
2025-11-17T09:15:59.742 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4078458 -24.256654
2025-11-17T09:15:59.742 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4078458 -24.256654
2025-11-17T09:15:59.743 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 17;15.4078458;-24.256654;50.10858;89.993116;50.08601;90.12017;12.42761;2460996.8027748;9.26656833;1.3;_15.3827405387488 -24.1649453127605
2025-11-17T09:15:59.743 [INFO] [Thread-66852 (handle)] [driver.py] [get_status()] ra_j2k = 15.3827405387488     dec_j2k = -24.1649453127605
2025-11-17T09:15:59.743 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:15:59.743 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:15:59.743 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 140;0.104289366592712;171.162357330327;_
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response 140;0.104289366592712;171.162357330327;_
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:59.744 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:15:59.745 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:15:59.746 [DEBUG] [Thread-66852 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:59.746 [DEBUG] [Thread-66852 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:15:59.746 [DEBUG] [Thread-66852 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50281)
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:15:59.748 [DEBUG] [Thread-66852 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:15:59.755 [DEBUG] [Thread-66852 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:15:59.756 [DEBUG] [Thread-66852 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:15:59.756 [DEBUG] [Thread-66852 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:15:59.756 [DEBUG] [Thread-66852 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:15:59.756 [INFO] [Thread-66852 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80277478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104289366592712, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4078458, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.42761, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3827405387488, telescope_dec_j2k=-24.1649453127605, observability=1)
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Status age = 3.798532724380493s
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:03.554 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:03.555 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:03.555 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:03.555 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:03.555 [DEBUG] [Thread-66853 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:03.555 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 17;15.4089027;-24.256661;50.10858;89.993127;50.08601;90.12018;12.42867;2460996.80281894;9.26762222;1.3;_
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response 17;15.4089027;-24.256661;50.10858;89.993127;50.08601;90.12018;12.42867;2460996.80281894;9.26762222;1.3;_
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:03.556 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:03.557 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:03.557 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:03.558 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:03.558 [INFO] [Thread-66853 (handle)] [driver.py] [get_status()] Telra = 15.4089027, teldec = -24.256661
2025-11-17T09:16:03.558 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4089027 -24.256661
2025-11-17T09:16:03.558 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4089027 -24.256661
2025-11-17T09:16:03.558 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4089027 -24.256661
2025-11-17T09:16:03.559 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 17;15.4089027;-24.256661;50.10858;89.993127;50.08601;90.12018;12.42867;2460996.80281897;9.26762222;1.3;_15.3837966762332 -24.1649823002711
2025-11-17T09:16:03.559 [INFO] [Thread-66853 (handle)] [driver.py] [get_status()] ra_j2k = 15.3837966762332     dec_j2k = -24.1649823002711
2025-11-17T09:16:03.559 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:03.559 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:03.559 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 140;0.104290369391282;171.162362694745;_
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response 140;0.104290369391282;171.162362694745;_
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:03.560 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:03.561 [DEBUG] [Thread-66853 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46545)
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:03.567 [DEBUG] [Thread-66853 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:03.574 [DEBUG] [Thread-66853 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:03.574 [DEBUG] [Thread-66853 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:03.574 [DEBUG] [Thread-66853 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:03.574 [DEBUG] [Thread-66853 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:03.574 [DEBUG] [Thread-66853 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:03.575 [DEBUG] [Thread-66853 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:03.575 [DEBUG] [Thread-66853 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:03.575 [DEBUG] [Thread-66853 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:03.575 [DEBUG] [Thread-66853 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:03.575 [INFO] [Thread-66853 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80281894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290369391282, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993127, telescope_ra=15.4089027, telescope_dec=-24.256661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.42867, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3837966762332, telescope_dec_j2k=-24.1649823002711, observability=1)
2025-11-17T09:16:09.066 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.491851806640625s
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:09.067 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:09.068 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:09.068 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:09.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:09.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:09.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:09.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.410437;-24.256654;50.10858;89.993116;50.08601;90.12017;12.4302;2460996.80288274;9.2691525;1.3;_
2025-11-17T09:16:09.069 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.410437;-24.256654;50.10858;89.993116;50.08601;90.12017;12.4302;2460996.80288274;9.2691525;1.3;_
2025-11-17T09:16:09.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:09.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:09.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:09.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:09.070 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:09.070 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.410437, teldec = -24.256654
2025-11-17T09:16:09.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.410437 -24.256654
2025-11-17T09:16:09.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.410437 -24.256654
2025-11-17T09:16:09.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.410437 -24.256654
2025-11-17T09:16:09.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.410437;-24.256654;50.10858;89.993116;50.08601;90.12017;12.4302;2460996.80288277;9.2691525;1.3;_15.3853298722859 -24.1650188457586
2025-11-17T09:16:09.071 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.3853298722859     dec_j2k = -24.1650188457586
2025-11-17T09:16:09.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:09.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:09.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10429004849574;171.162362694745;_
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10429004849574;171.162362694745;_
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:09.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:09.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:09.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:09.074 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:09.074 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60703)
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:09.075 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:09.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:09.083 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80288274, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429004849574, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.410437, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.4302, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3853298722859, telescope_dec_j2k=-24.1650188457586, observability=1)
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.617544174194336s
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:10.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:10.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:10.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4108852;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43065;2460996.80290166;9.26959944;1.3;_
2025-11-17T09:16:10.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.4108852;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43065;2460996.80290166;9.26959944;1.3;_
2025-11-17T09:16:10.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:10.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:10.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:10.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:10.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:10.704 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.4108852, teldec = -24.256654
2025-11-17T09:16:10.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.4108852 -24.256654
2025-11-17T09:16:10.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.4108852 -24.256654
2025-11-17T09:16:10.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4108852 -24.256654
2025-11-17T09:16:10.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4108852;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43065;2460996.80290168;9.26959944;1.3;_15.3857777495785 -24.1650315690983
2025-11-17T09:16:10.705 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.3857777495785     dec_j2k = -24.1650315690983
2025-11-17T09:16:10.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:10.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:10.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104290529839054;171.162351965909;_
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104290529839054;171.162351965909;_
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:10.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:10.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:10.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:10.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:10.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51547)
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:10.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:10.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:16:10.722 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80290166, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290529839054, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4108852, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.43065, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3857777495785, telescope_dec_j2k=-24.1650315690983, observability=1)
2025-11-17T09:16:10.722 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.51281189918518 seconds ago
2025-11-17T09:16:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.02335524559021s
2025-11-17T09:16:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4120264;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43179;2460996.80294846;9.2707375;1.3;_
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4120264;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43179;2460996.80294846;9.2707375;1.3;_
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:14.748 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4120264, teldec = -24.256654
2025-11-17T09:16:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4120264 -24.256654
2025-11-17T09:16:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4120264 -24.256654
2025-11-17T09:16:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4120264 -24.256654
2025-11-17T09:16:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4120264;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43179;2460996.80294848;9.2707375;1.3;_15.3869181280854 -24.1650639708387
2025-11-17T09:16:14.749 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.3869181280854     dec_j2k = -24.1650639708387
2025-11-17T09:16:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104290529839054;171.162357330327;_
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104290529839054;171.162357330327;_
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47893)
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:14.757 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:14.765 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:14.765 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80294846, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290529839054, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4120264, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.43179, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:15:15.636995', telescope_ra_j2k=15.3869181280854, telescope_dec_j2k=-24.1650639708387, observability=1)
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:15.781 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:15.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:15.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:15.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:15.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:15.782 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:15.783 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:16:15.784 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:16:16.785 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:16.786 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:16.787 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:16.787 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:16.787 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:16.787 [DEBUG] [ThreadPoolExecutor-2594_0] [payload.py] [to_registers()] [0]
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55321)
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:16.794 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:16.802 [DEBUG] [ThreadPoolExecutor-2594_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:21.602 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:21.602 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Status age = 6.83749794960022s
2025-11-17T09:16:21.602 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:21.602 [DEBUG] [Thread-66854 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:21.603 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:21.604 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 17;15.4139466;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43371;2460996.80302782;9.2726525;1.3;_
2025-11-17T09:16:21.604 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response 17;15.4139466;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43371;2460996.80302782;9.2726525;1.3;_
2025-11-17T09:16:21.604 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:21.604 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:21.604 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:21.605 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:21.605 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:21.605 [INFO] [Thread-66854 (handle)] [driver.py] [get_status()] Telra = 15.4139466, teldec = -24.256654
2025-11-17T09:16:21.605 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4139466 -24.256654
2025-11-17T09:16:21.605 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4139466 -24.256654
2025-11-17T09:16:21.605 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4139466 -24.256654
2025-11-17T09:16:21.606 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 17;15.4139466;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43371;2460996.80302785;9.2726525;1.3;_15.3888369464109 -24.1651185091703
2025-11-17T09:16:21.606 [INFO] [Thread-66854 (handle)] [driver.py] [get_status()] ra_j2k = 15.3888369464109     dec_j2k = -24.1651185091703
2025-11-17T09:16:21.606 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:21.606 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 140;0.104290289167397;171.162346601491;_
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response 140;0.104290289167397;171.162346601491;_
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:21.607 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:21.608 [DEBUG] [Thread-66854 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40445)
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:21.611 [DEBUG] [Thread-66854 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:21.619 [DEBUG] [Thread-66854 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:21.619 [INFO] [Thread-66854 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80302782, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290289167397, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4139466, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.43371, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.3888369464109, telescope_dec_j2k=-24.1651185091703, observability=1)
2025-11-17T09:16:25.289 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:16:25
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.6700379848480225s
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:25.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:25.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:25.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:25.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:25.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:25.291 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:25.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:25.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:25.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:25.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4149756;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43474;2460996.8030705;9.27367861;1.3;_
2025-11-17T09:16:25.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.4149756;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43474;2460996.8030705;9.27367861;1.3;_
2025-11-17T09:16:25.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:25.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:25.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:25.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:25.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:25.293 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.4149756, teldec = -24.256654
2025-11-17T09:16:25.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4149756 -24.256654
2025-11-17T09:16:25.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4149756 -24.256654
2025-11-17T09:16:25.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4149756 -24.256654
2025-11-17T09:16:25.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4149756;-24.256654;50.10858;89.993116;50.08601;90.12017;12.43474;2460996.80307053;9.27367861;1.3;_15.3898652062974 -24.1651477449044
2025-11-17T09:16:25.294 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.3898652062974     dec_j2k = -24.1651477449044
2025-11-17T09:16:25.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:25.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:25.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104290369391282;171.162368059163;_
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104290369391282;171.162368059163;_
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:25.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:25.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:25.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:25.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:25.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:25.299 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59917)
2025-11-17T09:16:25.299 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:25.299 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:25.299 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:25.299 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:25.300 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:25.306 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:25.307 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:25.307 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8030705, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290369391282, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10858, telescope_az=89.993116, telescope_ra=15.4149756, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.43474, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.3898652062974, telescope_dec_j2k=-24.1651477449044, observability=1)
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Status age = 14.36706256866455s
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:39.674 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:39.675 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:39.676 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 17;15.4189592;-24.256654;50.108579;89.993117;50.08601;90.12017;12.43873;2460996.80323699;9.27765139;1.3;_
2025-11-17T09:16:39.676 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response 17;15.4189592;-24.256654;50.108579;89.993117;50.08601;90.12017;12.43873;2460996.80323699;9.27765139;1.3;_
2025-11-17T09:16:39.676 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:39.676 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:39.676 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:39.677 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:39.677 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:39.677 [INFO] [Thread-66855 (handle)] [driver.py] [get_status()] Telra = 15.4189592, teldec = -24.256654
2025-11-17T09:16:39.677 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4189592 -24.256654
2025-11-17T09:16:39.677 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4189592 -24.256654
2025-11-17T09:16:39.677 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4189592 -24.256654
2025-11-17T09:16:39.678 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 17;15.4189592;-24.256654;50.108579;89.993117;50.08601;90.12017;12.43873;2460996.80323701;9.27765139;1.3;_15.3938459430518 -24.1652609895144
2025-11-17T09:16:39.678 [INFO] [Thread-66855 (handle)] [driver.py] [get_status()] ra_j2k = 15.3938459430518     dec_j2k = -24.1652609895144
2025-11-17T09:16:39.678 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:39.678 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:39.678 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 140;0.104291091406253;171.162362694745;_
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response 140;0.104291091406253;171.162362694745;_
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:39.679 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:39.680 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:39.680 [DEBUG] [Thread-66855 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:39.680 [DEBUG] [Thread-66855 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:39.680 [DEBUG] [Thread-66855 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55303)
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:39.686 [DEBUG] [Thread-66855 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:39.693 [DEBUG] [Thread-66855 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:39.694 [DEBUG] [Thread-66855 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:39.694 [INFO] [Thread-66855 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80323699, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291091406253, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4189592, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.43873, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.3938459430518, telescope_dec_j2k=-24.1652609895144, observability=1)
2025-11-17T09:16:41.802 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:41.802 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:41.802 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:41.802 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:41.803 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:16:41.804 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:16:41.805 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:57.795 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:57.795 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Status age = 18.101848125457764s
2025-11-17T09:16:57.795 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:57.796 [DEBUG] [Thread-66856 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:57.796 [DEBUG] [Thread-66856 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:57.796 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:57.796 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:57.796 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:57.797 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:57.798 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 17;15.4240047;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44377;2460996.80344674;9.28268306;1.3;_
2025-11-17T09:16:57.798 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response 17;15.4240047;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44377;2460996.80344674;9.28268306;1.3;_
2025-11-17T09:16:57.798 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:57.798 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:57.798 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:57.799 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:57.799 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:57.799 [INFO] [Thread-66856 (handle)] [driver.py] [get_status()] Telra = 15.4240047, teldec = -24.256654
2025-11-17T09:16:57.799 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4240047 -24.256654
2025-11-17T09:16:57.799 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4240047 -24.256654
2025-11-17T09:16:57.799 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4240047 -24.256654
2025-11-17T09:16:57.800 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 17;15.4240047;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44377;2460996.80344676;9.28268306;1.3;_15.3988878210751 -24.1654045659887
2025-11-17T09:16:57.800 [INFO] [Thread-66856 (handle)] [driver.py] [get_status()] ra_j2k = 15.3988878210751     dec_j2k = -24.1654045659887
2025-11-17T09:16:57.800 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:57.800 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:57.800 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 140;0.104290730398768;171.162346601491;_
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response 140;0.104290730398768;171.162346601491;_
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:57.801 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:57.802 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:57.803 [DEBUG] [Thread-66856 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:57.803 [DEBUG] [Thread-66856 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:16:57.803 [DEBUG] [Thread-66856 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53097)
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:57.804 [DEBUG] [Thread-66856 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:57.812 [DEBUG] [Thread-66856 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:57.813 [INFO] [Thread-66856 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80344674, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290730398768, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4240047, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44377, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.3988878210751, telescope_dec_j2k=-24.1654045659887, observability=1)
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Status age = 1.9773156642913818s
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:16:59.790 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:16:59.791 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 17;15.4245657;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44433;2460996.8034698;9.2832425;1.3;_
2025-11-17T09:16:59.792 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response 17;15.4245657;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44433;2460996.8034698;9.2832425;1.3;_
2025-11-17T09:16:59.792 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:16:59.792 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:16:59.792 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:16:59.793 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:59.793 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:16:59.793 [INFO] [Thread-66857 (handle)] [driver.py] [get_status()] Telra = 15.4245657, teldec = -24.256654
2025-11-17T09:16:59.793 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4245657 -24.256654
2025-11-17T09:16:59.793 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4245657 -24.256654
2025-11-17T09:16:59.793 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4245657 -24.256654
2025-11-17T09:16:59.794 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 17;15.4245657;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44433;2460996.80346984;9.2832425;1.3;_15.3994484186663 -24.1654205399622
2025-11-17T09:16:59.794 [INFO] [Thread-66857 (handle)] [driver.py] [get_status()] ra_j2k = 15.3994484186663     dec_j2k = -24.1654205399622
2025-11-17T09:16:59.794 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:16:59.794 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:16:59.794 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 140;0.104291091406253;171.162357330327;_
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response 140;0.104291091406253;171.162357330327;_
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:59.795 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:16:59.796 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:16:59.797 [DEBUG] [Thread-66857 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:59.797 [DEBUG] [Thread-66857 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:16:59.797 [DEBUG] [Thread-66857 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45225)
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:16:59.804 [DEBUG] [Thread-66857 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:16:59.811 [DEBUG] [Thread-66857 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:16:59.811 [DEBUG] [Thread-66857 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:59.811 [DEBUG] [Thread-66857 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:16:59.812 [DEBUG] [Thread-66857 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:16:59.812 [INFO] [Thread-66857 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8034698, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291091406253, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4245657, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44433, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.3994484186663, telescope_dec_j2k=-24.1654205399622, observability=1)
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.363428592681885s
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:08.175 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:08.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:08.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:08.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4269065;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44667;2460996.80356686;9.28557694;1.3;_
2025-11-17T09:17:08.178 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.4269065;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44667;2460996.80356686;9.28557694;1.3;_
2025-11-17T09:17:08.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:08.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:08.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:08.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:08.179 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:08.179 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.4269065, teldec = -24.256654
2025-11-17T09:17:08.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4269065 -24.256654
2025-11-17T09:17:08.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4269065 -24.256654
2025-11-17T09:17:08.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4269065 -24.256654
2025-11-17T09:17:08.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4269065;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44667;2460996.8035669;9.28557694;1.3;_15.4017875402704 -24.1654872136533
2025-11-17T09:17:08.180 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.4017875402704     dec_j2k = -24.1654872136533
2025-11-17T09:17:08.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:08.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:08.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104291412301795;171.162362694745;_
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104291412301795;171.162362694745;_
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:08.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:08.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:08.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:08.183 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:08.183 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:08.189 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45779)
2025-11-17T09:17:08.189 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:08.189 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:08.189 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:08.190 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:08.190 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:08.197 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:08.197 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80356686, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291412301795, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4269065, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44667, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.4017875402704, telescope_dec_j2k=-24.1654872136533, observability=1)
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.5849785804748535s
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:10.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:10.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:10.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4276268;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44739;2460996.80359704;9.28629528;1.3;_
2025-11-17T09:17:10.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.4276268;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44739;2460996.80359704;9.28629528;1.3;_
2025-11-17T09:17:10.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:10.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:10.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:10.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:10.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:10.785 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.4276268, teldec = -24.256654
2025-11-17T09:17:10.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.4276268 -24.256654
2025-11-17T09:17:10.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.4276268 -24.256654
2025-11-17T09:17:10.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4276268 -24.256654
2025-11-17T09:17:10.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4276268;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44739;2460996.80359706;9.28629528;1.3;_15.4025073240214 -24.1655077371467
2025-11-17T09:17:10.786 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.4025073240214     dec_j2k = -24.1655077371467
2025-11-17T09:17:10.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104290610062939;171.162357330327;_
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104290610062939;171.162357330327;_
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:10.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:10.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:10.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:10.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:10.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:10.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:10.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:10.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:10.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:10.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38547)
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:10.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:10.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:17:10.804 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80359704, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290610062939, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4276268, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44739, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.4025073240214, telescope_dec_j2k=-24.1655077371467, observability=1)
2025-11-17T09:17:10.804 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.5152223110199 seconds ago
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.944838285446167s
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4287396;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44851;2460996.80364295;9.287405;1.3;_
2025-11-17T09:17:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4287396;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44851;2460996.80364295;9.287405;1.3;_
2025-11-17T09:17:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:14.752 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4287396, teldec = -24.256654
2025-11-17T09:17:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4287396 -24.256654
2025-11-17T09:17:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4287396 -24.256654
2025-11-17T09:17:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4287396 -24.256654
2025-11-17T09:17:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4287396;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44851;2460996.80364297;9.287405;1.3;_15.4036193266649 -24.1655394505875
2025-11-17T09:17:14.753 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4036193266649     dec_j2k = -24.1655394505875
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104290610062939;171.162357330327;_
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104290610062939;171.162357330327;_
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:14.761 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33681)
2025-11-17T09:17:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:14.769 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80364295, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290610062939, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4287396, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44851, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.4036193266649, telescope_dec_j2k=-24.1655394505875, observability=1)
2025-11-17T09:17:15.854 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Status age = 1.0854599475860596s
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:15.855 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:15.856 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:15.857 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 17;15.4290499;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44882;2460996.80365575;9.28771444;1.3;_
2025-11-17T09:17:15.857 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response 17;15.4290499;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44882;2460996.80365575;9.28771444;1.3;_
2025-11-17T09:17:15.857 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:15.857 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:15.857 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:15.858 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:15.858 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:15.858 [INFO] [Thread-66858 (handle)] [driver.py] [get_status()] Telra = 15.4290499, teldec = -24.256654
2025-11-17T09:17:15.858 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4290499 -24.256654
2025-11-17T09:17:15.858 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4290499 -24.256654
2025-11-17T09:17:15.858 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4290499 -24.256654
2025-11-17T09:17:15.859 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 17;15.4290499;-24.256654;50.108579;89.993117;50.08601;90.12017;12.44882;2460996.80365578;9.28771444;1.3;_15.403929404369 -24.165548295155
2025-11-17T09:17:15.859 [INFO] [Thread-66858 (handle)] [driver.py] [get_status()] ra_j2k = 15.403929404369     dec_j2k = -24.165548295155
2025-11-17T09:17:15.859 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:15.859 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:15.859 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 140;0.104290971070424;171.162362694745;_
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response 140;0.104290971070424;171.162362694745;_
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:15.860 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:15.861 [DEBUG] [Thread-66858 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:15.862 [DEBUG] [Thread-66858 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:15.862 [DEBUG] [Thread-66858 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51203)
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:15.865 [DEBUG] [Thread-66858 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:15.873 [DEBUG] [Thread-66858 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:15.873 [INFO] [Thread-66858 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80365575, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290971070424, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108579, telescope_az=89.993117, telescope_ra=15.4290499, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.44882, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:16:15.780775', telescope_ra_j2k=15.403929404369, telescope_dec_j2k=-24.165548295155, observability=1)
2025-11-17T09:17:15.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:15.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:15.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:15.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:15.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:15.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:15.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:15.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:15.926 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:17:15.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:15.926 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:15.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:15.928 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:17:15.928 [INFO] [ThreadPoolExecutor-2595_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:17:15.928 [INFO] [ThreadPoolExecutor-2595_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:17:25.368 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:17:25
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.494999170303345s
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:25.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:25.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:25.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4316971;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45146;2460996.80376586;9.29035444;1.3;_
2025-11-17T09:17:25.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.4316971;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45146;2460996.80376586;9.29035444;1.3;_
2025-11-17T09:17:25.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:25.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:25.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:25.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:25.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:25.371 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.4316971, teldec = -24.256654
2025-11-17T09:17:25.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4316971 -24.256654
2025-11-17T09:17:25.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4316971 -24.256654
2025-11-17T09:17:25.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4316971 -24.256654
2025-11-17T09:17:25.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4316971;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45146;2460996.80376588;9.29035444;1.3;_15.4065747087193 -24.1656237737859
2025-11-17T09:17:25.372 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.4065747087193     dec_j2k = -24.1656237737859
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104291291965967;171.162357330327;_
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104291291965967;171.162357330327;_
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:25.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:25.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:25.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:17:25.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:17:25.376 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46491)
2025-11-17T09:17:25.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:25.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:25.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:25.377 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:25.377 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:25.384 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:25.384 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80376586, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291291965967, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4316971, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.45146, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4065747087193, telescope_dec_j2k=-24.1656237737859, observability=1)
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Status age = 8.555149555206299s
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:33.939 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:33.940 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:33.941 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 17;15.4340917;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45386;2460996.80386506;9.2927425;1.3;_
2025-11-17T09:17:33.941 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response 17;15.4340917;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45386;2460996.80386506;9.2927425;1.3;_
2025-11-17T09:17:33.941 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:33.941 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:33.941 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:33.942 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:33.942 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:33.942 [INFO] [Thread-66859 (handle)] [driver.py] [get_status()] Telra = 15.4340917, teldec = -24.256654
2025-11-17T09:17:33.942 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4340917 -24.256654
2025-11-17T09:17:33.942 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4340917 -24.256654
2025-11-17T09:17:33.943 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4340917 -24.256654
2025-11-17T09:17:33.943 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 17;15.4340917;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45386;2460996.80386508;9.2927425;1.3;_15.4089675951565 -24.1656920882723
2025-11-17T09:17:33.944 [INFO] [Thread-66859 (handle)] [driver.py] [get_status()] ra_j2k = 15.4089675951565     dec_j2k = -24.1656920882723
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 140;0.104290890846539;171.162362694745;_
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response 140;0.104290890846539;171.162362694745;_
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:33.944 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:33.945 [DEBUG] [Thread-66859 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:33.946 [DEBUG] [Thread-66859 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47177)
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:33.948 [DEBUG] [Thread-66859 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:33.955 [DEBUG] [Thread-66859 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:33.955 [INFO] [Thread-66859 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80386506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104290890846539, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4340917, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.45386, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4089675951565, telescope_dec_j2k=-24.1656920882723, observability=1)
2025-11-17T09:17:36.805 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.805 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.805 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:36.805 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:17:36.806 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:36.807 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:36.808 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:17:36.809 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:36.810 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:36.811 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:36.811 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:36.811 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:36.812 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:36.812 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Park
2025-11-17T09:17:36.812 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:17:36.812 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:17:36.812 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 29;15.4348956;-24.256654;50.108578;89.993117;50.08601;90.12017;12.45466;2460996.80389829;9.29354417;1.3;_Park Command Successful
2025-11-17T09:17:37.813 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:17:37.813 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:17:37.813 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:17:37.813 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:17:37.813 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:17:38.814 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:17:38.814 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:17:38.814 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:17:38.814 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:17:38.814 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:17:39.815 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:17:39.815 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:17:39.815 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:17:39.816 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:17:39.816 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:17:40.818 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:17:40.818 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:40.819 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:17:40.820 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:17:40.821 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:41.821 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:41.821 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:41.821 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:41.821 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:41.821 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:41.822 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:41.822 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:41.822 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:41.822 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:41.823 [DEBUG] [ThreadPoolExecutor-2594_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:41.823 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:17:41.823 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:17:41.823 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:17:41.823 [DEBUG] [ThreadPoolExecutor-2594_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:41.823 [INFO] [ThreadPoolExecutor-2594_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Status age = 18.08361506462097s
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:52.039 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 17;15.439135;-24.256654;50.108578;89.993117;50.08601;90.12017;12.4589;2460996.80407454;9.29777194;1.3;_
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response 17;15.439135;-24.256654;50.108578;89.993117;50.08601;90.12017;12.4589;2460996.80407454;9.29777194;1.3;_
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:52.040 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:52.041 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:52.041 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:52.041 [INFO] [Thread-66860 (handle)] [driver.py] [get_status()] Telra = 15.439135, teldec = -24.256654
2025-11-17T09:17:52.042 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] UnCookCoordinates 15.439135 -24.256654
2025-11-17T09:17:52.042 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.439135 -24.256654
2025-11-17T09:17:52.042 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.439135 -24.256654
2025-11-17T09:17:52.043 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 17;15.439135;-24.256654;50.108578;89.993117;50.08601;90.12017;12.4589;2460996.80407456;9.29777194;1.3;_15.4140072899335 -24.1658360847485
2025-11-17T09:17:52.043 [INFO] [Thread-66860 (handle)] [driver.py] [get_status()] ra_j2k = 15.4140072899335     dec_j2k = -24.1658360847485
2025-11-17T09:17:52.043 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:52.043 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:52.043 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 140;0.104291773309281;171.162357330327;_
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response 140;0.104291773309281;171.162357330327;_
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:52.044 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:52.045 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:52.046 [DEBUG] [Thread-66860 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:52.046 [DEBUG] [Thread-66860 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:52.046 [DEBUG] [Thread-66860 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53125)
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:52.050 [DEBUG] [Thread-66860 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:52.057 [DEBUG] [Thread-66860 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:52.058 [DEBUG] [Thread-66860 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:52.058 [INFO] [Thread-66860 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80407454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291773309281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.439135, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.4589, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4140072899335, telescope_dec_j2k=-24.1658360847485, observability=1)
2025-11-17T09:17:59.848 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Status age = 7.7906482219696045s
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:17:59.849 [DEBUG] [Thread-66861 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 17;15.4413109;-24.256654;50.108578;89.993117;50.08601;90.12017;12.46108;2460996.80416493;9.29994194;1.3;_
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response 17;15.4413109;-24.256654;50.108578;89.993117;50.08601;90.12017;12.46108;2460996.80416493;9.29994194;1.3;_
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:17:59.850 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:17:59.851 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:59.851 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:17:59.851 [INFO] [Thread-66861 (handle)] [driver.py] [get_status()] Telra = 15.4413109, teldec = -24.256654
2025-11-17T09:17:59.851 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4413109 -24.256654
2025-11-17T09:17:59.851 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4413109 -24.256654
2025-11-17T09:17:59.852 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4413109 -24.256654
2025-11-17T09:17:59.852 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 17;15.4413109;-24.256654;50.108578;89.993117;50.08601;90.12017;12.46108;2460996.80416495;9.29994194;1.3;_15.416181636048 -24.165898260651
2025-11-17T09:17:59.852 [INFO] [Thread-66861 (handle)] [driver.py] [get_status()] ra_j2k = 15.416181636048     dec_j2k = -24.165898260651
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 140;0.104291853533166;171.162357330327;_
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response 140;0.104291853533166;171.162357330327;_
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:17:59.853 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:17:59.854 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:17:59.855 [DEBUG] [Thread-66861 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:59.855 [DEBUG] [Thread-66861 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:17:59.855 [DEBUG] [Thread-66861 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37383)
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:17:59.862 [DEBUG] [Thread-66861 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:17:59.870 [DEBUG] [Thread-66861 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:17:59.870 [INFO] [Thread-66861 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80416493, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291853533166, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4413109, telescope_dec=-24.256654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46108, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.416181636048, telescope_dec_j2k=-24.165898260651, observability=1)
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.4160850048065186s
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:07.286 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:07.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:07.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4433743;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46314;2460996.80425102;9.30199972;1.3;_
2025-11-17T09:18:07.288 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.4433743;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46314;2460996.80425102;9.30199972;1.3;_
2025-11-17T09:18:07.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:07.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:07.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:07.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:07.289 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:07.289 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.4433743, teldec = -24.256653
2025-11-17T09:18:07.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4433743 -24.256653
2025-11-17T09:18:07.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4433743 -24.256653
2025-11-17T09:18:07.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4433743 -24.256653
2025-11-17T09:18:07.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4433743;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46314;2460996.80425104;9.30199972;1.3;_15.4182435635277 -24.1659562494459
2025-11-17T09:18:07.290 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.4182435635277     dec_j2k = -24.1659562494459
2025-11-17T09:18:07.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:07.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:07.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:07.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104291853533166;171.162357330327;_
2025-11-17T09:18:07.291 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104291853533166;171.162357330327;_
2025-11-17T09:18:07.291 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:07.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:07.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:07.292 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:07.293 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:07.293 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:07.293 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:07.293 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:07.293 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:07.294 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:07.294 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:07.294 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:07.294 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59021)
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:07.295 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:07.302 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:07.302 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:07.302 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:07.303 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:07.303 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80425102, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291853533166, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4433743, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46314, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4182435635277, telescope_dec_j2k=-24.1659562494459, observability=1)
2025-11-17T09:18:10.107 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:10.107 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Status age = 2.8044159412384033s
2025-11-17T09:18:10.107 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:10.107 [DEBUG] [Thread-66862 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:10.108 [DEBUG] [Thread-66862 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:10.108 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:10.108 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:10.108 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 17;15.4441492;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46392;2460996.80428367;9.3027725;1.3;_
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response 17;15.4441492;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46392;2460996.80428367;9.3027725;1.3;_
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:10.109 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:10.110 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:10.110 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:10.110 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:10.110 [INFO] [Thread-66862 (handle)] [driver.py] [get_status()] Telra = 15.4441492, teldec = -24.256653
2025-11-17T09:18:10.111 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4441492 -24.256653
2025-11-17T09:18:10.111 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4441492 -24.256653
2025-11-17T09:18:10.111 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4441492 -24.256653
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 17;15.4441492;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46392;2460996.80428369;9.3027725;1.3;_15.4190179106919 -24.1659784093297
2025-11-17T09:18:10.112 [INFO] [Thread-66862 (handle)] [driver.py] [get_status()] ra_j2k = 15.4190179106919     dec_j2k = -24.1659784093297
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 140;0.104291532637624;171.162362694745;_
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response 140;0.104291532637624;171.162362694745;_
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:10.112 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:10.113 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:10.114 [DEBUG] [Thread-66862 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:10.114 [DEBUG] [Thread-66862 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:10.114 [DEBUG] [Thread-66862 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49561)
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:10.121 [DEBUG] [Thread-66862 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:10.128 [DEBUG] [Thread-66862 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:10.129 [DEBUG] [Thread-66862 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:10.129 [DEBUG] [Thread-66862 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:10.129 [DEBUG] [Thread-66862 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:10.129 [INFO] [Thread-66862 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80428367, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291532637624, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4441492, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4190179106919, telescope_dec_j2k=-24.1659784093297, observability=1)
2025-11-17T09:18:10.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:18:10.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.735612154006958s
2025-11-17T09:18:10.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.735612154006958
2025-11-17T09:18:10.864 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.496530532836914 seconds ago
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.634103298187256s
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4454573;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46522;2460996.80433755;9.30407694;1.3;_
2025-11-17T09:18:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4454573;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46522;2460996.80433755;9.30407694;1.3;_
2025-11-17T09:18:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:14.766 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4454573, teldec = -24.256653
2025-11-17T09:18:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4454573 -24.256653
2025-11-17T09:18:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4454573 -24.256653
2025-11-17T09:18:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4454573 -24.256653
2025-11-17T09:18:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4454573;-24.256653;50.108578;89.993117;50.08601;90.12017;12.46522;2460996.80433758;9.30407694;1.3;_15.4203250777278 -24.1660158257564
2025-11-17T09:18:14.767 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4203250777278     dec_j2k = -24.1660158257564
2025-11-17T09:18:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10429205409288;171.162351965909;_
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10429205409288;171.162351965909;_
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35159)
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:14.778 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:14.778 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:14.778 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:14.778 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:14.779 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:14.779 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80433755, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429205409288, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108578, telescope_az=89.993117, telescope_ra=15.4454573, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46522, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:17:15.924863', telescope_ra_j2k=15.4203250777278, telescope_dec_j2k=-24.1660158257564, observability=1)
2025-11-17T09:18:16.067 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:16.068 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:16.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:16.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:16.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:16.069 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:16.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:16.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:16.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:16.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:16.070 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:18:16.070 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:16.070 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:16.070 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:16.070 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:16.070 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:18:16.071 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:18:16.072 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:17.072 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:17.072 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:17.072 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:17.072 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:17.072 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:18:17.073 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:17.074 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:17.075 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:17.075 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:17.075 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:17.075 [DEBUG] [ThreadPoolExecutor-2596_0] [payload.py] [to_registers()] [0]
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58249)
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:17.078 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:17.085 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:17.086 [DEBUG] [ThreadPoolExecutor-2596_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:25.445 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:18:25
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.666322231292725s
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:25.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:25.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:25.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.448441;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46821;2460996.80446119;9.3070525;1.3;_
2025-11-17T09:18:25.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.448441;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46821;2460996.80446119;9.3070525;1.3;_
2025-11-17T09:18:25.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:25.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:25.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:25.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:25.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:25.448 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.448441, teldec = -24.256653
2025-11-17T09:18:25.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.448441 -24.256653
2025-11-17T09:18:25.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.448441 -24.256653
2025-11-17T09:18:25.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.448441 -24.256653
2025-11-17T09:18:25.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.448441;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46821;2460996.80446122;9.3070525;1.3;_15.4233066509695 -24.166101210728
2025-11-17T09:18:25.450 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.4233066509695     dec_j2k = -24.166101210728
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104291933757052;171.162357330327;_
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104291933757052;171.162357330327;_
2025-11-17T09:18:25.450 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:25.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:25.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:25.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:25.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:25.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:25.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:25.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:25.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:25.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:25.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:25.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:25.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:25.455 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52511)
2025-11-17T09:18:25.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:25.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:25.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:25.456 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:25.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:25.463 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:25.463 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80446119, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291933757052, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.448441, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46821, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4233066509695, telescope_dec_j2k=-24.166101210728, observability=1)
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Status age = 2.7439138889312744s
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:28.207 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:28.208 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:28.209 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 17;15.4491983;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46896;2460996.80449316;9.30780778;1.3;_
2025-11-17T09:18:28.209 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response 17;15.4491983;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46896;2460996.80449316;9.30780778;1.3;_
2025-11-17T09:18:28.209 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:28.209 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:28.209 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:28.210 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:28.210 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:28.210 [INFO] [Thread-66863 (handle)] [driver.py] [get_status()] Telra = 15.4491983, teldec = -24.256653
2025-11-17T09:18:28.210 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4491983 -24.256653
2025-11-17T09:18:28.210 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4491983 -24.256653
2025-11-17T09:18:28.210 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4491983 -24.256653
2025-11-17T09:18:28.211 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 17;15.4491983;-24.256653;50.108577;89.993117;50.08601;90.12017;12.46896;2460996.80449318;9.30780778;1.3;_15.4240634114549 -24.1661228913976
2025-11-17T09:18:28.211 [INFO] [Thread-66863 (handle)] [driver.py] [get_status()] ra_j2k = 15.4240634114549     dec_j2k = -24.1661228913976
2025-11-17T09:18:28.211 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:28.211 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:28.211 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 140;0.104292013980937;171.162357330327;_
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response 140;0.104292013980937;171.162357330327;_
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:28.212 [DEBUG] [Thread-66863 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:28.213 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:28.213 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:28.213 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:28.214 [DEBUG] [Thread-66863 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:28.214 [DEBUG] [Thread-66863 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:28.214 [DEBUG] [Thread-66863 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58653)
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:28.218 [DEBUG] [Thread-66863 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:28.225 [DEBUG] [Thread-66863 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:28.225 [INFO] [Thread-66863 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80449316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292013980937, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.4491983, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.46896, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4240634114549, telescope_dec_j2k=-24.1661228913976, observability=1)
2025-11-17T09:18:42.086 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:42.086 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:42.086 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:42.086 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:42.086 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:42.087 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:18:42.088 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:18:42.089 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Status age = 18.05254888534546s
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:46.278 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:46.279 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:46.280 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 17;15.4542393;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47401;2460996.80470232;9.312835;1.3;_
2025-11-17T09:18:46.280 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response 17;15.4542393;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47401;2460996.80470232;9.312835;1.3;_
2025-11-17T09:18:46.280 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:46.280 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:46.280 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:46.281 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:46.281 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:46.281 [INFO] [Thread-66864 (handle)] [driver.py] [get_status()] Telra = 15.4542393, teldec = -24.256653
2025-11-17T09:18:46.281 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4542393 -24.256653
2025-11-17T09:18:46.281 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4542393 -24.256653
2025-11-17T09:18:46.281 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4542393 -24.256653
2025-11-17T09:18:46.282 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 17;15.4542393;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47401;2460996.80470234;9.312835;1.3;_15.4291008230742 -24.1662673015148
2025-11-17T09:18:46.282 [INFO] [Thread-66864 (handle)] [driver.py] [get_status()] ra_j2k = 15.4291008230742     dec_j2k = -24.1662673015148
2025-11-17T09:18:46.282 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:46.282 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 140;0.104291973868995;171.162368059163;_
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response 140;0.104291973868995;171.162368059163;_
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:46.283 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:46.284 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:46.284 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:18:46.284 [DEBUG] [Thread-66864 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:18:46.284 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:46.284 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:46.285 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:46.285 [DEBUG] [Thread-66864 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:46.285 [DEBUG] [Thread-66864 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:46.285 [DEBUG] [Thread-66864 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60447)
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:46.288 [DEBUG] [Thread-66864 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:46.296 [DEBUG] [Thread-66864 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:46.297 [DEBUG] [Thread-66864 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:46.297 [INFO] [Thread-66864 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80470232, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104291973868995, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.4542393, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.47401, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4291008230742, telescope_dec_j2k=-24.1662673015148, observability=1)
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Status age = 13.602384090423584s
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:18:59.899 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:18:59.900 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:18:59.901 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 17;15.4580272;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47779;2460996.80485996;9.3166125;1.3;_
2025-11-17T09:18:59.901 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response 17;15.4580272;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47779;2460996.80485996;9.3166125;1.3;_
2025-11-17T09:18:59.901 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:18:59.901 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:18:59.901 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:18:59.902 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:59.902 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:18:59.902 [INFO] [Thread-66865 (handle)] [driver.py] [get_status()] Telra = 15.4580272, teldec = -24.256653
2025-11-17T09:18:59.902 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4580272 -24.256653
2025-11-17T09:18:59.902 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4580272 -24.256653
2025-11-17T09:18:59.903 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4580272 -24.256653
2025-11-17T09:18:59.903 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 17;15.4580272;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47779;2460996.80485999;9.3166125;1.3;_15.4328860300443 -24.1663759188682
2025-11-17T09:18:59.904 [INFO] [Thread-66865 (handle)] [driver.py] [get_status()] ra_j2k = 15.4328860300443     dec_j2k = -24.1663759188682
2025-11-17T09:18:59.904 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:18:59.904 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:18:59.904 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 140;0.104293097003393;171.162351965909;_
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response 140;0.104293097003393;171.162351965909;_
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:59.905 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:18:59.906 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:18:59.907 [DEBUG] [Thread-66865 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:59.907 [DEBUG] [Thread-66865 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:18:59.907 [DEBUG] [Thread-66865 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41541)
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:18:59.910 [DEBUG] [Thread-66865 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:18:59.917 [DEBUG] [Thread-66865 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:18:59.918 [DEBUG] [Thread-66865 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:18:59.918 [INFO] [Thread-66865 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80485996, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293097003393, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.4580272, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.47779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4328860300443, telescope_dec_j2k=-24.1663759188682, observability=1)
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Status age = 4.425341367721558s
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:04.343 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:04.344 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:04.345 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 17;15.4592514;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47902;2460996.8049114;9.31783333;1.3;_
2025-11-17T09:19:04.345 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response 17;15.4592514;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47902;2460996.8049114;9.31783333;1.3;_
2025-11-17T09:19:04.345 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:04.345 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:04.346 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:04.346 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:04.347 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:04.347 [INFO] [Thread-66866 (handle)] [driver.py] [get_status()] Telra = 15.4592514, teldec = -24.256653
2025-11-17T09:19:04.347 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4592514 -24.256653
2025-11-17T09:19:04.347 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4592514 -24.256653
2025-11-17T09:19:04.347 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4592514 -24.256653
2025-11-17T09:19:04.348 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 17;15.4592514;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47902;2460996.80491144;9.31783333;1.3;_15.4341093603064 -24.1664110418168
2025-11-17T09:19:04.348 [INFO] [Thread-66866 (handle)] [driver.py] [get_status()] ra_j2k = 15.4341093603064     dec_j2k = -24.1664110418168
2025-11-17T09:19:04.348 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:04.348 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:04.348 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 140;0.104292214540651;171.162357330327;_
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response 140;0.104292214540651;171.162357330327;_
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:04.349 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:04.350 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:04.351 [DEBUG] [Thread-66866 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:04.351 [DEBUG] [Thread-66866 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:04.351 [DEBUG] [Thread-66866 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:04.357 [DEBUG] [Thread-66866 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36957)
2025-11-17T09:19:04.357 [DEBUG] [Thread-66866 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:04.357 [DEBUG] [Thread-66866 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:04.357 [DEBUG] [Thread-66866 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:04.357 [DEBUG] [Thread-66866 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:04.358 [DEBUG] [Thread-66866 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:04.364 [DEBUG] [Thread-66866 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:04.365 [DEBUG] [Thread-66866 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:04.365 [INFO] [Thread-66866 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8049114, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292214540651, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.4592514, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.47902, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4341093603064, telescope_dec_j2k=-24.1664110418168, observability=1)
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.0278117656707764s
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:06.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:06.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:06.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4598399;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47961;2460996.80493513;9.31842028;1.3;_
2025-11-17T09:19:06.395 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.4598399;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47961;2460996.80493513;9.31842028;1.3;_
2025-11-17T09:19:06.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:06.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:06.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:06.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:06.396 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:06.396 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.4598399, teldec = -24.256653
2025-11-17T09:19:06.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4598399 -24.256653
2025-11-17T09:19:06.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4598399 -24.256653
2025-11-17T09:19:06.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4598399 -24.256653
2025-11-17T09:19:06.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4598399;-24.256653;50.108577;89.993117;50.08601;90.12017;12.47961;2460996.80493515;9.31842028;1.3;_15.434697442311 -24.1664279295364
2025-11-17T09:19:06.397 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.434697442311     dec_j2k = -24.1664279295364
2025-11-17T09:19:06.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:06.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104292455212308;171.162357330327;_
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104292455212308;171.162357330327;_
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:06.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:06.399 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:06.400 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:06.400 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:06.400 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:06.406 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56005)
2025-11-17T09:19:06.407 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:06.407 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:06.407 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:06.407 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:06.407 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:06.414 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:06.414 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80493513, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292455212308, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108577, telescope_az=89.993117, telescope_ra=15.4598399, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.47961, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.434697442311, telescope_dec_j2k=-24.1664279295364, observability=1)
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.509925603866577s
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:10.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:10.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:10.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4610906;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48086;2460996.80498757;9.3196675;1.3;_
2025-11-17T09:19:10.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.4610906;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48086;2460996.80498757;9.3196675;1.3;_
2025-11-17T09:19:10.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:10.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:10.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:10.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:10.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:10.928 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.4610906, teldec = -24.256653
2025-11-17T09:19:10.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.4610906 -24.256653
2025-11-17T09:19:10.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.4610906 -24.256653
2025-11-17T09:19:10.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4610906 -24.256653
2025-11-17T09:19:10.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4610906;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48086;2460996.8049876;9.3196675;1.3;_15.4359472542036 -24.1664638270903
2025-11-17T09:19:10.929 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.4359472542036     dec_j2k = -24.1664638270903
2025-11-17T09:19:10.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:10.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:10.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104292735995908;171.162368059163;_
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104292735995908;171.162368059163;_
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:10.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:10.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:10.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:10.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:10.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35377)
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:10.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:10.941 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:19:10.941 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80498757, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292735995908, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4610906, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.48086, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4359472542036, telescope_dec_j2k=-24.1664638270903, observability=1)
2025-11-17T09:19:10.941 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.49641013145447 seconds ago
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.829948902130127s
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4621746;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48194;2460996.8050321;9.32074861;1.3;_
2025-11-17T09:19:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4621746;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48194;2460996.8050321;9.32074861;1.3;_
2025-11-17T09:19:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:14.775 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4621746, teldec = -24.256653
2025-11-17T09:19:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4621746 -24.256653
2025-11-17T09:19:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4621746 -24.256653
2025-11-17T09:19:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4621746 -24.256653
2025-11-17T09:19:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4621746;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48194;2460996.80503213;9.32074861;1.3;_15.4370304847215 -24.1664949479491
2025-11-17T09:19:14.776 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4370304847215     dec_j2k = -24.1664949479491
2025-11-17T09:19:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104292856331736;171.162368059163;_
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104292856331736;171.162368059163;_
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46371)
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:14.789 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:14.790 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8050321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292856331736, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4621746, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.48194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:18:16.067275', telescope_ra_j2k=15.4370304847215, telescope_dec_j2k=-24.1664949479491, observability=1)
2025-11-17T09:19:16.211 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:16.211 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:16.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:16.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:16.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:16.212 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:16.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:16.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:16.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:16.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:16.213 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:19:16.213 [INFO] [ThreadPoolExecutor-2597_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:19:16.214 [INFO] [ThreadPoolExecutor-2597_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Status age = 7.688191890716553s
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:22.478 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 17;15.4643258;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48409;2460996.80512128;9.32289389;1.3;_
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response 17;15.4643258;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48409;2460996.80512128;9.32289389;1.3;_
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:22.479 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:22.480 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:22.480 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:22.480 [INFO] [Thread-66867 (handle)] [driver.py] [get_status()] Telra = 15.4643258, teldec = -24.256653
2025-11-17T09:19:22.480 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4643258 -24.256653
2025-11-17T09:19:22.480 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4643258 -24.256653
2025-11-17T09:19:22.480 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4643258 -24.256653
2025-11-17T09:19:22.481 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 17;15.4643258;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48409;2460996.80512131;9.32289389;1.3;_15.4391801583805 -24.1665567291294
2025-11-17T09:19:22.481 [INFO] [Thread-66867 (handle)] [driver.py] [get_status()] ra_j2k = 15.4391801583805     dec_j2k = -24.1665567291294
2025-11-17T09:19:22.481 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 140;0.104292976667565;171.162362694745;_
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response 140;0.104292976667565;171.162362694745;_
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:22.482 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:22.483 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:22.484 [DEBUG] [Thread-66867 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:22.484 [DEBUG] [Thread-66867 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:22.484 [DEBUG] [Thread-66867 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60025)
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:22.491 [DEBUG] [Thread-66867 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:22.498 [DEBUG] [Thread-66867 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:22.499 [INFO] [Thread-66867 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80512128, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292976667565, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4643258, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.48409, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4391801583805, telescope_dec_j2k=-24.1665567291294, observability=1)
2025-11-17T09:19:25.524 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:19:25
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.025463819503784s
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:25.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:25.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:25.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4651578;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48492;2460996.80515655;9.32372361;1.3;_
2025-11-17T09:19:25.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.4651578;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48492;2460996.80515655;9.32372361;1.3;_
2025-11-17T09:19:25.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:25.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:25.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:25.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:25.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:25.527 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.4651578, teldec = -24.256653
2025-11-17T09:19:25.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4651578 -24.256653
2025-11-17T09:19:25.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4651578 -24.256653
2025-11-17T09:19:25.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4651578 -24.256653
2025-11-17T09:19:25.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4651578;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48492;2460996.80515657;9.32372361;1.3;_15.4400115683004 -24.1665806314365
2025-11-17T09:19:25.528 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.4400115683004     dec_j2k = -24.1665806314365
2025-11-17T09:19:25.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:25.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:25.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104292936555622;171.162357330327;_
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104292936555622;171.162357330327;_
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:25.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:25.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:25.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:25.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:25.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41027)
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:25.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:25.539 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:25.540 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80515655, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292936555622, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4651578, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.48492, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4400115683004, telescope_dec_j2k=-24.1665806314365, observability=1)
2025-11-17T09:19:37.089 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.089 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.089 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:37.089 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:37.089 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:37.090 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:37.091 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:37.092 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:19:37.093 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:19:37.094 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.094 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:37.094 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:37.094 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:37.094 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:37.095 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:37.095 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:37.095 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:37.095 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:37.096 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Park
2025-11-17T09:19:37.096 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:19:37.096 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:19:37.096 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 29;15.4683936;-24.256653;50.108576;89.993117;50.08601;90.12017;12.48816;2460996.80529046;9.32695056;1.3;_Park Command Successful
2025-11-17T09:19:38.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:19:38.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:19:38.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:19:38.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:19:38.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:19:39.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:19:39.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:19:39.097 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:19:39.098 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:19:39.098 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:19:40.098 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:19:40.098 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:19:40.098 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:19:40.099 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:19:40.099 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Status age = 14.985221147537231s
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:40.525 [DEBUG] [Thread-66868 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 17;15.4693376;-24.256653;50.108576;89.993117;50.08601;90.12017;12.4891;2460996.80533016;9.32789194;1.3;_
2025-11-17T09:19:40.526 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response 17;15.4693376;-24.256653;50.108576;89.993117;50.08601;90.12017;12.4891;2460996.80533016;9.32789194;1.3;_
2025-11-17T09:19:40.527 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:40.527 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:40.527 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:40.528 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:40.528 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:40.528 [INFO] [Thread-66868 (handle)] [driver.py] [get_status()] Telra = 15.4693376, teldec = -24.256653
2025-11-17T09:19:40.528 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4693376 -24.256653
2025-11-17T09:19:40.528 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4693376 -24.256653
2025-11-17T09:19:40.528 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4693376 -24.256653
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 17;15.4693376;-24.256653;50.108576;89.993117;50.08601;90.12017;12.4891;2460996.8053302;9.32789194;1.3;_15.444188405959 -24.1667007772778
2025-11-17T09:19:40.529 [INFO] [Thread-66868 (handle)] [driver.py] [get_status()] ra_j2k = 15.444188405959     dec_j2k = -24.1667007772778
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 140;0.104292575548137;171.162357330327;_
2025-11-17T09:19:40.529 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response 140;0.104292575548137;171.162357330327;_
2025-11-17T09:19:40.530 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:40.530 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:40.530 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:40.530 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:40.530 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:40.531 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:40.531 [DEBUG] [Thread-66868 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:40.531 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:40.531 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:40.531 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:40.532 [DEBUG] [Thread-66868 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:40.532 [DEBUG] [Thread-66868 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:40.532 [DEBUG] [Thread-66868 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36045)
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:40.535 [DEBUG] [Thread-66868 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:40.542 [DEBUG] [Thread-66868 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:40.543 [DEBUG] [Thread-66868 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:40.543 [DEBUG] [Thread-66868 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:40.543 [DEBUG] [Thread-66868 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:40.543 [INFO] [Thread-66868 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80533016, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104292575548137, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4693376, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.4891, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.444188405959, telescope_dec_j2k=-24.1667007772778, observability=1)
2025-11-17T09:19:41.100 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:19:41.100 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:19:41.100 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:19:41.100 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:41.101 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:19:41.102 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:19:41.103 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:42.103 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:42.103 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:42.103 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:42.103 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:42.103 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:19:42.104 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:19:42.105 [DEBUG] [ThreadPoolExecutor-2596_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:42.105 [INFO] [ThreadPoolExecutor-2596_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:19:58.612 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Status age = 18.069802284240723s
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:58.613 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:58.614 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 17;15.4743886;-24.256653;50.108576;89.993117;50.08601;90.12017;12.49415;2460996.80553951;9.33292917;1.3;_
2025-11-17T09:19:58.614 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response 17;15.4743886;-24.256653;50.108576;89.993117;50.08601;90.12017;12.49415;2460996.80553951;9.33292917;1.3;_
2025-11-17T09:19:58.614 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:58.614 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:58.614 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:58.615 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:58.615 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:58.615 [INFO] [Thread-66869 (handle)] [driver.py] [get_status()] Telra = 15.4743886, teldec = -24.256653
2025-11-17T09:19:58.615 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4743886 -24.256653
2025-11-17T09:19:58.615 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4743886 -24.256653
2025-11-17T09:19:58.615 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4743886 -24.256653
2025-11-17T09:19:58.616 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 17;15.4743886;-24.256653;50.108576;89.993117;50.08601;90.12017;12.49415;2460996.80553954;9.33292917;1.3;_15.4492358308557 -24.1668461108175
2025-11-17T09:19:58.616 [INFO] [Thread-66869 (handle)] [driver.py] [get_status()] ra_j2k = 15.4492358308557     dec_j2k = -24.1668461108175
2025-11-17T09:19:58.616 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:58.616 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:58.616 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 140;0.104293738794478;171.162351965909;_
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response 140;0.104293738794478;171.162351965909;_
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:58.617 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:58.618 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:58.619 [DEBUG] [Thread-66869 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:58.619 [DEBUG] [Thread-66869 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:58.619 [DEBUG] [Thread-66869 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50517)
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:58.622 [DEBUG] [Thread-66869 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:58.630 [DEBUG] [Thread-66869 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:58.630 [INFO] [Thread-66869 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80553951, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293738794478, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108576, telescope_az=89.993117, telescope_ra=15.4743886, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.49415, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4492358308557, telescope_dec_j2k=-24.1668461108175, observability=1)
2025-11-17T09:19:59.946 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Status age = 1.3163611888885498s
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:19:59.947 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 17;15.4747435;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49451;2460996.80555495;9.33328306;1.3;_
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response 17;15.4747435;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49451;2460996.80555495;9.33328306;1.3;_
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:19:59.948 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:19:59.949 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:59.949 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:19:59.950 [INFO] [Thread-66870 (handle)] [driver.py] [get_status()] Telra = 15.4747435, teldec = -24.256653
2025-11-17T09:19:59.950 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4747435 -24.256653
2025-11-17T09:19:59.950 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4747435 -24.256653
2025-11-17T09:19:59.950 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4747435 -24.256653
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 17;15.4747435;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49451;2460996.80555498;9.33328306;1.3;_15.4495904798499 -24.166856328418
2025-11-17T09:19:59.951 [INFO] [Thread-66870 (handle)] [driver.py] [get_status()] ra_j2k = 15.4495904798499     dec_j2k = -24.166856328418
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 140;0.104293016779508;171.162351965909;_
2025-11-17T09:19:59.951 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response 140;0.104293016779508;171.162351965909;_
2025-11-17T09:19:59.952 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:19:59.952 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:59.952 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:59.952 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:19:59.953 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:19:59.954 [DEBUG] [Thread-66870 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:59.954 [DEBUG] [Thread-66870 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:19:59.954 [DEBUG] [Thread-66870 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59375)
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:19:59.961 [DEBUG] [Thread-66870 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:19:59.968 [DEBUG] [Thread-66870 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:19:59.969 [INFO] [Thread-66870 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80555495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293016779508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4747435, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.49451, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4495904798499, telescope_dec_j2k=-24.166856328418, observability=1)
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.537322759628296s
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:05.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4763052;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49607;2460996.80561929;9.33484056;1.3;_
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.4763052;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49607;2460996.80561929;9.33484056;1.3;_
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:05.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:05.508 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:05.508 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:05.508 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.4763052, teldec = -24.256653
2025-11-17T09:20:05.508 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4763052 -24.256653
2025-11-17T09:20:05.508 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4763052 -24.256653
2025-11-17T09:20:05.508 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4763052 -24.256653
2025-11-17T09:20:05.509 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4763052;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49607;2460996.80561932;9.33484056;1.3;_15.4511510756263 -24.16690129922
2025-11-17T09:20:05.509 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.4511510756263     dec_j2k = -24.16690129922
2025-11-17T09:20:05.509 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104293738794478;171.162373423581;_
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104293738794478;171.162373423581;_
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:05.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:05.511 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:05.511 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:05.511 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:05.511 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:05.511 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47223)
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:05.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:05.525 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:05.525 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80561929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293738794478, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4763052, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.49607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4511510756263, telescope_dec_j2k=-24.16690129922, observability=1)
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.475709676742554s
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:11.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:11.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:11.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4778364;-24.256653;50.108575;89.993117;50.08601;90.12017;12.4976;2460996.8056829;9.3363675;1.3;_
2025-11-17T09:20:11.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.4778364;-24.256653;50.108575;89.993117;50.08601;90.12017;12.4976;2460996.8056829;9.3363675;1.3;_
2025-11-17T09:20:11.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:11.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:11.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:11.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:11.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:11.004 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.4778364, teldec = -24.256653
2025-11-17T09:20:11.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.4778364 -24.256653
2025-11-17T09:20:11.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.4778364 -24.256653
2025-11-17T09:20:11.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4778364 -24.256653
2025-11-17T09:20:11.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.4778364;-24.256653;50.108575;89.993117;50.08601;90.12017;12.4976;2460996.80568293;9.3363675;1.3;_15.4526811934446 -24.1669454064981
2025-11-17T09:20:11.005 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.4526811934446     dec_j2k = -24.1669454064981
2025-11-17T09:20:11.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:11.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:11.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104293458010878;171.162351965909;_
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104293458010878;171.162351965909;_
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:11.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:11.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:11.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:11.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:11.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51859)
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:11.013 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:11.021 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:20:11.022 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8056829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293458010878, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4778364, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.4976, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4526811934446, telescope_dec_j2k=-24.1669454064981, observability=1)
2025-11-17T09:20:11.022 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.49778079986572 seconds ago
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.7312850952148438s
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4788734;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49864;2460996.80572633;9.33740167;1.3;_
2025-11-17T09:20:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4788734;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49864;2460996.80572633;9.33740167;1.3;_
2025-11-17T09:20:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:14.756 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4788734, teldec = -24.256653
2025-11-17T09:20:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4788734 -24.256653
2025-11-17T09:20:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4788734 -24.256653
2025-11-17T09:20:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4788734 -24.256653
2025-11-17T09:20:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4788734;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49864;2460996.80572635;9.33740167;1.3;_15.4537174608086 -24.1669752862967
2025-11-17T09:20:14.757 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4537174608086     dec_j2k = -24.1669752862967
2025-11-17T09:20:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104293698682535;171.162351965909;_
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104293698682535;171.162351965909;_
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:20:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:20:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:20:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39825)
2025-11-17T09:20:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:14.770 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:14.770 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80572633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293698682535, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4788734, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.49864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:19:16.210752', telescope_ra_j2k=15.4537174608086, telescope_dec_j2k=-24.1669752862967, observability=1)
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:16.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:16.353 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:16.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:16.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:16.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:16.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:16.354 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:20:16.354 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:16.354 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:16.354 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:16.354 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:16.354 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:20:16.355 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:20:16.356 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Status age = 1.958461046218872s
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:16.729 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:16.730 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:16.730 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 17;15.4794243;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49919;2460996.80574919;9.33795111;1.3;_
2025-11-17T09:20:16.730 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response 17;15.4794243;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49919;2460996.80574919;9.33795111;1.3;_
2025-11-17T09:20:16.731 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:16.731 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:16.731 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:16.731 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:16.731 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:16.732 [INFO] [Thread-66871 (handle)] [driver.py] [get_status()] Telra = 15.4794243, teldec = -24.256653
2025-11-17T09:20:16.732 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4794243 -24.256653
2025-11-17T09:20:16.732 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4794243 -24.256653
2025-11-17T09:20:16.732 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4794243 -24.256653
2025-11-17T09:20:16.733 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 17;15.4794243;-24.256653;50.108575;89.993117;50.08601;90.12017;12.49919;2460996.80574922;9.33795111;1.3;_15.4542679716882 -24.1669911624831
2025-11-17T09:20:16.733 [INFO] [Thread-66871 (handle)] [driver.py] [get_status()] ra_j2k = 15.4542679716882     dec_j2k = -24.1669911624831
2025-11-17T09:20:16.733 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:16.733 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:16.733 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 140;0.104293538234764;171.162357330327;_
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response 140;0.104293538234764;171.162357330327;_
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:16.734 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:16.735 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:16.736 [DEBUG] [Thread-66871 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:16.736 [DEBUG] [Thread-66871 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:16.736 [DEBUG] [Thread-66871 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:16.739 [DEBUG] [Thread-66871 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40689)
2025-11-17T09:20:16.739 [DEBUG] [Thread-66871 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:16.739 [DEBUG] [Thread-66871 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:16.739 [DEBUG] [Thread-66871 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:16.739 [DEBUG] [Thread-66871 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:16.740 [DEBUG] [Thread-66871 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:16.746 [DEBUG] [Thread-66871 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:16.747 [DEBUG] [Thread-66871 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:16.747 [INFO] [Thread-66871 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80574919, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293538234764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4794243, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.49919, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4542679716882, telescope_dec_j2k=-24.1669911624831, observability=1)
2025-11-17T09:20:17.356 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:17.356 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:17.356 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:17.356 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:17.356 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:20:17.357 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:17.358 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:17.359 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:17.359 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:17.359 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:17.359 [DEBUG] [ThreadPoolExecutor-2598_0] [payload.py] [to_registers()] [0]
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33419)
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:17.364 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:17.371 [DEBUG] [ThreadPoolExecutor-2598_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:25.600 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:20:25
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.853090047836304s
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:25.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:25.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:25.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4819083;-24.256653;50.108575;89.993117;50.08601;90.12017;12.50167;2460996.80585188;9.34042833;1.3;_
2025-11-17T09:20:25.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.4819083;-24.256653;50.108575;89.993117;50.08601;90.12017;12.50167;2460996.80585188;9.34042833;1.3;_
2025-11-17T09:20:25.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:25.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:25.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:25.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:25.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:25.603 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.4819083, teldec = -24.256653
2025-11-17T09:20:25.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4819083 -24.256653
2025-11-17T09:20:25.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4819083 -24.256653
2025-11-17T09:20:25.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4819083 -24.256653
2025-11-17T09:20:25.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4819083;-24.256653;50.108575;89.993117;50.08601;90.12017;12.50167;2460996.8058519;9.34042833;1.3;_15.456750217909 -24.1670627714351
2025-11-17T09:20:25.604 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.456750217909     dec_j2k = -24.1670627714351
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104293979466135;171.162373423581;_
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104293979466135;171.162373423581;_
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:25.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:25.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:25.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:25.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:25.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:25.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:25.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56753)
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:25.608 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:25.616 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:25.616 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80585188, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104293979466135, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4819083, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.50167, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.456750217909, telescope_dec_j2k=-24.1670627714351, observability=1)
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Status age = 9.190144300460815s
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:34.806 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:34.807 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:34.807 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:34.807 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:34.807 [DEBUG] [Thread-66872 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 17;15.4844745;-24.256652;50.108575;89.993117;50.08601;90.12017;12.50424;2460996.80595843;9.3429875;1.3;_
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response 17;15.4844745;-24.256652;50.108575;89.993117;50.08601;90.12017;12.50424;2460996.80595843;9.3429875;1.3;_
2025-11-17T09:20:34.808 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:34.809 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:34.809 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:34.810 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:34.810 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:34.810 [INFO] [Thread-66872 (handle)] [driver.py] [get_status()] Telra = 15.4844745, teldec = -24.256652
2025-11-17T09:20:34.810 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4844745 -24.256652
2025-11-17T09:20:34.810 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4844745 -24.256652
2025-11-17T09:20:34.810 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4844745 -24.256652
2025-11-17T09:20:34.811 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 17;15.4844745;-24.256652;50.108575;89.993117;50.08601;90.12017;12.50424;2460996.80595846;9.3429875;1.3;_15.4593146075535 -24.1671357903658
2025-11-17T09:20:34.811 [INFO] [Thread-66872 (handle)] [driver.py] [get_status()] ra_j2k = 15.4593146075535     dec_j2k = -24.1671357903658
2025-11-17T09:20:34.811 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:34.811 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:34.811 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 140;0.104294541033334;171.162351965909;_
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response 140;0.104294541033334;171.162351965909;_
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:34.812 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:34.813 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:34.814 [DEBUG] [Thread-66872 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:34.814 [DEBUG] [Thread-66872 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:34.814 [DEBUG] [Thread-66872 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46757)
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:34.819 [DEBUG] [Thread-66872 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:34.826 [DEBUG] [Thread-66872 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:34.826 [DEBUG] [Thread-66872 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:34.826 [DEBUG] [Thread-66872 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:34.826 [DEBUG] [Thread-66872 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:34.826 [DEBUG] [Thread-66872 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:34.827 [DEBUG] [Thread-66872 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:34.827 [DEBUG] [Thread-66872 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:34.827 [DEBUG] [Thread-66872 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:34.827 [DEBUG] [Thread-66872 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:34.827 [INFO] [Thread-66872 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80595843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294541033334, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108575, telescope_az=89.993117, telescope_ra=15.4844745, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.50424, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4593146075535, telescope_dec_j2k=-24.1671357903658, observability=1)
2025-11-17T09:20:42.371 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:42.371 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:42.371 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:42.372 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:20:42.373 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:20:42.374 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:52.863 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:20:52.863 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Status age = 18.03659749031067s
2025-11-17T09:20:52.863 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:20:52.864 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:20:52.865 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 17;15.4894885;-24.256652;50.108574;89.993117;50.08601;90.12017;12.50925;2460996.80616742;9.34798778;1.3;_
2025-11-17T09:20:52.865 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response 17;15.4894885;-24.256652;50.108574;89.993117;50.08601;90.12017;12.50925;2460996.80616742;9.34798778;1.3;_
2025-11-17T09:20:52.865 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:20:52.865 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:20:52.865 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:20:52.866 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:52.866 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:20:52.866 [INFO] [Thread-66873 (handle)] [driver.py] [get_status()] Telra = 15.4894885, teldec = -24.256652
2025-11-17T09:20:52.866 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4894885 -24.256652
2025-11-17T09:20:52.866 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4894885 -24.256652
2025-11-17T09:20:52.866 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4894885 -24.256652
2025-11-17T09:20:52.867 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 17;15.4894885;-24.256652;50.108574;89.993117;50.08601;90.12017;12.50925;2460996.80616744;9.34798778;1.3;_15.4643250738991 -24.167280531201
2025-11-17T09:20:52.867 [INFO] [Thread-66873 (handle)] [driver.py] [get_status()] ra_j2k = 15.4643250738991     dec_j2k = -24.167280531201
2025-11-17T09:20:52.867 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:20:52.867 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:20:52.867 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 140;0.104294260249735;171.162351965909;_
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response 140;0.104294260249735;171.162351965909;_
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:52.868 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:52.869 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:52.869 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:52.869 [DEBUG] [Thread-66873 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:52.869 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:20:52.870 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:20:52.870 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:20:52.870 [DEBUG] [Thread-66873 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:52.870 [DEBUG] [Thread-66873 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:20:52.870 [DEBUG] [Thread-66873 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37761)
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:20:52.876 [DEBUG] [Thread-66873 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:20:52.883 [DEBUG] [Thread-66873 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:20:52.883 [INFO] [Thread-66873 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80616742, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294260249735, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4894885, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.50925, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4643250738991, telescope_dec_j2k=-24.167280531201, observability=1)
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Status age = 7.122589826583862s
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:00.006 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:00.007 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:00.008 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 17;15.4914876;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51125;2460996.80625009;9.34998139;1.3;_
2025-11-17T09:21:00.008 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response 17;15.4914876;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51125;2460996.80625009;9.34998139;1.3;_
2025-11-17T09:21:00.008 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:00.008 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:00.008 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:00.009 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:00.009 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:00.009 [INFO] [Thread-66874 (handle)] [driver.py] [get_status()] Telra = 15.4914876, teldec = -24.256652
2025-11-17T09:21:00.009 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4914876 -24.256652
2025-11-17T09:21:00.009 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4914876 -24.256652
2025-11-17T09:21:00.009 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4914876 -24.256652
2025-11-17T09:21:00.010 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 17;15.4914876;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51125;2460996.80625012;9.34998139;1.3;_15.4663227664326 -24.1673382834115
2025-11-17T09:21:00.010 [INFO] [Thread-66874 (handle)] [driver.py] [get_status()] ra_j2k = 15.4663227664326     dec_j2k = -24.1673382834115
2025-11-17T09:21:00.010 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:00.010 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:00.010 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 140;0.10429462125722;171.162362694745;_
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response 140;0.10429462125722;171.162362694745;_
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:00.011 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:00.012 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:00.012 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:00.012 [DEBUG] [Thread-66874 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:00.012 [DEBUG] [Thread-66874 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:00.012 [DEBUG] [Thread-66874 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:00.014 [DEBUG] [Thread-66874 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52449)
2025-11-17T09:21:00.014 [DEBUG] [Thread-66874 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:00.014 [DEBUG] [Thread-66874 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:00.015 [DEBUG] [Thread-66874 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:00.015 [DEBUG] [Thread-66874 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:00.015 [DEBUG] [Thread-66874 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:00.016 [DEBUG] [Thread-66874 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:00.016 [INFO] [Thread-66874 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80625009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429462125722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4914876, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.51125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4663227664326, telescope_dec_j2k=-24.1673382834115, observability=1)
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.597974538803101s
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:04.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:04.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:04.615 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:04.615 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:04.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:04.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:04.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:04.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:04.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4927767;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51254;2460996.80630344;9.35126694;1.3;_
2025-11-17T09:21:04.617 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.4927767;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51254;2460996.80630344;9.35126694;1.3;_
2025-11-17T09:21:04.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:04.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:04.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:04.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:04.618 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:04.618 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.4927767, teldec = -24.256652
2025-11-17T09:21:04.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4927767 -24.256652
2025-11-17T09:21:04.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4927767 -24.256652
2025-11-17T09:21:04.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4927767 -24.256652
2025-11-17T09:21:04.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.4927767;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51254;2460996.80630346;9.35126694;1.3;_15.4676109592695 -24.1673755375018
2025-11-17T09:21:04.619 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.4676109592695     dec_j2k = -24.1673755375018
2025-11-17T09:21:04.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:04.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:04.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104294701481105;171.162368059163;_
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104294701481105;171.162368059163;_
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:04.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:04.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:04.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:04.622 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:04.622 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:04.628 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35393)
2025-11-17T09:21:04.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:04.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:04.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:04.629 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:04.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:04.636 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:04.636 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80630344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294701481105, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4927767, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.51254, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4676109592695, telescope_dec_j2k=-24.1673755375018, observability=1)
2025-11-17T09:21:10.994 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:10.994 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Status age = 6.358154296875s
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:10.995 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:10.996 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 17;15.4945318;-24.256652;50.108574;89.993117;50.08601;90.12017;12.5143;2460996.80637727;9.35301722;1.3;_
2025-11-17T09:21:10.997 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response 17;15.4945318;-24.256652;50.108574;89.993117;50.08601;90.12017;12.5143;2460996.80637727;9.35301722;1.3;_
2025-11-17T09:21:10.997 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:10.997 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:10.997 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:10.998 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:10.998 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:10.998 [INFO] [Thread-66875 (handle)] [driver.py] [get_status()] Telra = 15.4945318, teldec = -24.256652
2025-11-17T09:21:10.998 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4945318 -24.256652
2025-11-17T09:21:10.998 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4945318 -24.256652
2025-11-17T09:21:10.998 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4945318 -24.256652
2025-11-17T09:21:10.999 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 17;15.4945318;-24.256652;50.108574;89.993117;50.08601;90.12017;12.5143;2460996.8063773;9.35301722;1.3;_15.4693648247133 -24.1674262752263
2025-11-17T09:21:10.999 [INFO] [Thread-66875 (handle)] [driver.py] [get_status()] ra_j2k = 15.4693648247133     dec_j2k = -24.1674262752263
2025-11-17T09:21:10.999 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:10.999 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:10.999 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 140;0.104294500921391;171.162357330327;_
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response 140;0.104294500921391;171.162357330327;_
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:11.000 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:11.001 [DEBUG] [Thread-66875 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35943)
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:11.008 [DEBUG] [Thread-66875 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:11.015 [DEBUG] [Thread-66875 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:11.015 [DEBUG] [Thread-66875 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:11.015 [DEBUG] [Thread-66875 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:11.015 [DEBUG] [Thread-66875 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:11.015 [DEBUG] [Thread-66875 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:11.016 [DEBUG] [Thread-66875 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:11.016 [DEBUG] [Thread-66875 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:11.016 [DEBUG] [Thread-66875 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:11.016 [DEBUG] [Thread-66875 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:11.016 [INFO] [Thread-66875 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80637727, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294500921391, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4945318, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.5143, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4693648247133, telescope_dec_j2k=-24.1674262752263, observability=1)
2025-11-17T09:21:11.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:21:11.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.06593155860900879s
2025-11-17T09:21:11.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.06593155860900879
2025-11-17T09:21:11.082 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48190927505493 seconds ago
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.745140790939331s
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4955871;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51535;2460996.80642087;9.35406972;1.3;_
2025-11-17T09:21:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.4955871;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51535;2460996.80642087;9.35406972;1.3;_
2025-11-17T09:21:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:14.764 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.4955871, teldec = -24.256652
2025-11-17T09:21:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4955871 -24.256652
2025-11-17T09:21:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4955871 -24.256652
2025-11-17T09:21:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4955871 -24.256652
2025-11-17T09:21:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.4955871;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51535;2460996.80642089;9.35406972;1.3;_15.4704193827035 -24.1674567918046
2025-11-17T09:21:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4704193827035     dec_j2k = -24.1674567918046
2025-11-17T09:21:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104294661369163;171.162362694745;_
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104294661369163;171.162362694745;_
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:14.774 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43875)
2025-11-17T09:21:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:14.775 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:14.782 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80642087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294661369163, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4955871, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.51535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:20:16.351564', telescope_ra_j2k=15.4704193827035, telescope_dec_j2k=-24.1674567918046, observability=1)
2025-11-17T09:21:16.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:16.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:16.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:16.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:16.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:16.496 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:16.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:16.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:16.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:16.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:16.497 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:21:16.497 [INFO] [ThreadPoolExecutor-2599_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:21:16.498 [INFO] [ThreadPoolExecutor-2599_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:21:25.677 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:21:25
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.895313739776611s
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:25.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:25.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:25.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4986271;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51839;2460996.80654721;9.35710139;1.3;_
2025-11-17T09:21:25.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.4986271;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51839;2460996.80654721;9.35710139;1.3;_
2025-11-17T09:21:25.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:25.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:25.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:25.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:25.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:25.680 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.4986271, teldec = -24.256652
2025-11-17T09:21:25.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4986271 -24.256652
2025-11-17T09:21:25.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4986271 -24.256652
2025-11-17T09:21:25.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4986271 -24.256652
2025-11-17T09:21:25.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.4986271;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51839;2460996.80654725;9.35710139;1.3;_15.4734572464561 -24.1675447393785
2025-11-17T09:21:25.682 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.4734572464561     dec_j2k = -24.1675447393785
2025-11-17T09:21:25.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:25.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:25.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10429462125722;171.162351965909;_
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10429462125722;171.162351965909;_
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:25.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:25.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:25.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:25.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:25.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49119)
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:25.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:25.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:25.698 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80654721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429462125722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4986271, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.51839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4734572464561, telescope_dec_j2k=-24.1675447393785, observability=1)
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Status age = 3.365211009979248s
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:29.063 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:29.064 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:29.065 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 17;15.4995714;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51934;2460996.8065864;9.35804306;1.3;_
2025-11-17T09:21:29.065 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response 17;15.4995714;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51934;2460996.8065864;9.35804306;1.3;_
2025-11-17T09:21:29.065 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:29.065 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:29.065 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:29.066 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:29.066 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:29.066 [INFO] [Thread-66876 (handle)] [driver.py] [get_status()] Telra = 15.4995714, teldec = -24.256652
2025-11-17T09:21:29.066 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] UnCookCoordinates 15.4995714 -24.256652
2025-11-17T09:21:29.066 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.4995714 -24.256652
2025-11-17T09:21:29.066 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.4995714 -24.256652
2025-11-17T09:21:29.067 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 17;15.4995714;-24.256652;50.108574;89.993117;50.08601;90.12017;12.51934;2460996.80658642;9.35804306;1.3;_15.4744008832647 -24.167572069736
2025-11-17T09:21:29.067 [INFO] [Thread-66876 (handle)] [driver.py] [get_status()] ra_j2k = 15.4744008832647     dec_j2k = -24.167572069736
2025-11-17T09:21:29.067 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:29.067 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:29.067 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 140;0.104295062488591;171.162362694745;_
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response 140;0.104295062488591;171.162362694745;_
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:29.068 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:29.069 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:29.070 [DEBUG] [Thread-66876 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:29.070 [DEBUG] [Thread-66876 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:29.070 [DEBUG] [Thread-66876 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36305)
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:29.076 [DEBUG] [Thread-66876 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:29.083 [DEBUG] [Thread-66876 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:29.083 [INFO] [Thread-66876 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8065864, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295062488591, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108574, telescope_az=89.993117, telescope_ra=15.4995714, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.51934, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4744008832647, telescope_dec_j2k=-24.167572069736, observability=1)
2025-11-17T09:21:37.374 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.374 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.374 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:37.374 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:21:37.375 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:21:37.376 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.376 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.376 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.376 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:37.376 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:37.377 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:37.377 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.377 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:37.377 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:37.377 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.378 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:21:37.379 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.380 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:37.380 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:37.380 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:37.380 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:37.380 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Park
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:21:37.381 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:21:37.382 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 29;15.5018869;-24.256652;50.108574;89.993117;50.08601;90.12017;12.52165;2460996.80668266;9.36035222;1.3;_Park Command Successful
2025-11-17T09:21:38.382 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:21:38.382 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:21:38.382 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:21:38.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:21:38.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:21:39.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:21:39.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:21:39.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:21:39.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:21:39.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:21:40.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:21:40.383 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:21:40.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:21:40.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:21:40.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:21:41.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:21:41.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:21:41.384 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:41.385 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:21:41.386 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:21:41.387 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:21:41.387 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:42.387 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:42.388 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:21:42.389 [DEBUG] [ThreadPoolExecutor-2598_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:42.389 [INFO] [ThreadPoolExecutor-2598_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Status age = 18.04498791694641s
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:21:47.128 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:21:47.129 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:21:47.130 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 17;15.5046121;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52438;2460996.80679549;9.36307;1.3;_
2025-11-17T09:21:47.131 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response 17;15.5046121;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52438;2460996.80679549;9.36307;1.3;_
2025-11-17T09:21:47.131 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:21:47.131 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:21:47.131 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:21:47.132 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:47.132 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:21:47.132 [INFO] [Thread-66877 (handle)] [driver.py] [get_status()] Telra = 15.5046121, teldec = -24.256652
2025-11-17T09:21:47.132 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5046121 -24.256652
2025-11-17T09:21:47.132 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5046121 -24.256652
2025-11-17T09:21:47.132 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5046121 -24.256652
2025-11-17T09:21:47.133 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 17;15.5046121;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52438;2460996.80679552;9.36307;1.3;_15.4794380461823 -24.167718053218
2025-11-17T09:21:47.133 [INFO] [Thread-66877 (handle)] [driver.py] [get_status()] ra_j2k = 15.4794380461823     dec_j2k = -24.167718053218
2025-11-17T09:21:47.133 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:21:47.133 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:21:47.133 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 140;0.10429534327219;171.162362694745;_
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response 140;0.10429534327219;171.162362694745;_
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:21:47.134 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:21:47.135 [DEBUG] [Thread-66877 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:47.135 [DEBUG] [Thread-66877 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:21:47.135 [DEBUG] [Thread-66877 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56855)
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:21:47.139 [DEBUG] [Thread-66877 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:21:47.146 [DEBUG] [Thread-66877 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:21:47.146 [DEBUG] [Thread-66877 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:47.146 [DEBUG] [Thread-66877 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:21:47.146 [DEBUG] [Thread-66877 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:21:47.147 [DEBUG] [Thread-66877 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:21:47.147 [DEBUG] [Thread-66877 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:21:47.147 [DEBUG] [Thread-66877 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:21:47.147 [DEBUG] [Thread-66877 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:21:47.147 [DEBUG] [Thread-66877 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:21:47.147 [INFO] [Thread-66877 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80679549, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429534327219, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5046121, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.52438, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4794380461823, telescope_dec_j2k=-24.167718053218, observability=1)
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Status age = 12.903284072875977s
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:00.050 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:00.051 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:00.052 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 17;15.5082067;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52797;2460996.80694505;9.36665472;1.3;_
2025-11-17T09:22:00.052 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response 17;15.5082067;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52797;2460996.80694505;9.36665472;1.3;_
2025-11-17T09:22:00.052 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:00.052 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:00.052 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:00.053 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:00.053 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:00.053 [INFO] [Thread-66878 (handle)] [driver.py] [get_status()] Telra = 15.5082067, teldec = -24.256652
2025-11-17T09:22:00.053 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5082067 -24.256652
2025-11-17T09:22:00.053 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5082067 -24.256652
2025-11-17T09:22:00.053 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5082067 -24.256652
2025-11-17T09:22:00.054 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 17;15.5082067;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52797;2460996.80694507;9.36665472;1.3;_15.483030126978 -24.1678222521251
2025-11-17T09:22:00.054 [INFO] [Thread-66878 (handle)] [driver.py] [get_status()] ra_j2k = 15.483030126978     dec_j2k = -24.1678222521251
2025-11-17T09:22:00.054 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:00.054 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:00.054 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 140;0.104295062488591;171.162368059163;_
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response 140;0.104295062488591;171.162368059163;_
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:00.055 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:00.056 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:00.057 [DEBUG] [Thread-66878 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:00.057 [DEBUG] [Thread-66878 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:00.057 [DEBUG] [Thread-66878 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49317)
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:00.062 [DEBUG] [Thread-66878 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:00.069 [DEBUG] [Thread-66878 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:00.070 [DEBUG] [Thread-66878 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:00.070 [DEBUG] [Thread-66878 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:00.070 [INFO] [Thread-66878 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80694505, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295062488591, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5082067, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.52797, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.483030126978, telescope_dec_j2k=-24.1678222521251, observability=1)
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.6610004901885986s
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:03.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5092445;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52901;2460996.80698764;9.36768972;1.3;_
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.5092445;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52901;2460996.80698764;9.36768972;1.3;_
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:03.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:03.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:03.733 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:03.733 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.5092445, teldec = -24.256652
2025-11-17T09:22:03.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5092445 -24.256652
2025-11-17T09:22:03.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5092445 -24.256652
2025-11-17T09:22:03.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5092445 -24.256652
2025-11-17T09:22:03.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5092445;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52901;2460996.80698766;9.36768972;1.3;_15.4840672001436 -24.167852350311
2025-11-17T09:22:03.734 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.4840672001436     dec_j2k = -24.167852350311
2025-11-17T09:22:03.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:03.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:03.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104295182824419;171.162346601491;_
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104295182824419;171.162346601491;_
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:03.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:03.736 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57953)
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:03.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:03.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:03.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:03.746 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:03.746 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:03.747 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:03.747 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:03.747 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:03.747 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:03.747 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:03.747 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80698764, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295182824419, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5092445, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.52901, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4840672001436, telescope_dec_j2k=-24.167852350311, observability=1)
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Status age = 1.4941766262054443s
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:05.241 [DEBUG] [Thread-66879 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:05.242 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:05.242 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:05.242 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:05.242 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:05.242 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 17;15.5096361;-24.256652;50.108573;89.993117;50.08601;90.12017;12.5294;2460996.80700512;9.36808028;1.3;_
2025-11-17T09:22:05.243 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response 17;15.5096361;-24.256652;50.108573;89.993117;50.08601;90.12017;12.5294;2460996.80700512;9.36808028;1.3;_
2025-11-17T09:22:05.243 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:05.243 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:05.243 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:05.244 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:05.244 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:05.244 [INFO] [Thread-66879 (handle)] [driver.py] [get_status()] Telra = 15.5096361, teldec = -24.256652
2025-11-17T09:22:05.244 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5096361 -24.256652
2025-11-17T09:22:05.244 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5096361 -24.256652
2025-11-17T09:22:05.244 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5096361 -24.256652
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 17;15.509664;-24.256652;50.108573;89.993117;50.08601;90.12017;12.52943;2460996.80700515;9.36810806;1.3;_15.484458525939 -24.1678637091863
2025-11-17T09:22:05.245 [INFO] [Thread-66879 (handle)] [driver.py] [get_status()] ra_j2k = 15.484458525939     dec_j2k = -24.1678637091863
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 140;0.104295022376648;171.162362694745;_
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response 140;0.104295022376648;171.162362694745;_
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:05.245 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:05.246 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:05.247 [DEBUG] [Thread-66879 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:05.247 [DEBUG] [Thread-66879 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:05.247 [DEBUG] [Thread-66879 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55977)
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:05.248 [DEBUG] [Thread-66879 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:05.255 [DEBUG] [Thread-66879 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:05.256 [INFO] [Thread-66879 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80700512, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295022376648, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5096361, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.5294, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.484458525939, telescope_dec_j2k=-24.1678637091863, observability=1)
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.88632607460022s
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:11.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:11.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:11.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5113071;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53107;2460996.80707343;9.36974667;1.3;_
2025-11-17T09:22:11.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.5113071;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53107;2460996.80707343;9.36974667;1.3;_
2025-11-17T09:22:11.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:11.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:11.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:11.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:11.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:11.145 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.5113071, teldec = -24.256652
2025-11-17T09:22:11.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.5113071 -24.256652
2025-11-17T09:22:11.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.5113071 -24.256652
2025-11-17T09:22:11.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5113071 -24.256652
2025-11-17T09:22:11.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5113071;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53107;2460996.80707345;9.36974667;1.3;_15.4861283562277 -24.1679121893724
2025-11-17T09:22:11.146 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.4861283562277     dec_j2k = -24.1679121893724
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104295222936362;171.162346601491;_
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104295222936362;171.162346601491;_
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:11.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:11.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:11.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:11.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:11.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55499)
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:11.150 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:11.157 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:11.157 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:11.157 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:11.157 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:11.157 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:11.158 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:11.158 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:11.158 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:11.158 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:22:11.158 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80707343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295222936362, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5113071, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.53107, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4861283562277, telescope_dec_j2k=-24.1679121893724, observability=1)
2025-11-17T09:22:11.158 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.480626344680786 seconds ago
2025-11-17T09:22:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.6117639541625977s
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5123073;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53207;2460996.80711542;9.37074417;1.3;_
2025-11-17T09:22:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.5123073;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53207;2460996.80711542;9.37074417;1.3;_
2025-11-17T09:22:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:14.773 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.5123073, teldec = -24.256652
2025-11-17T09:22:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5123073 -24.256652
2025-11-17T09:22:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5123073 -24.256652
2025-11-17T09:22:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5123073 -24.256652
2025-11-17T09:22:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5123073;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53207;2460996.80711544;9.37074417;1.3;_15.4871278563519 -24.1679412160862
2025-11-17T09:22:14.774 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.4871278563519     dec_j2k = -24.1679412160862
2025-11-17T09:22:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104295463608019;171.162373423581;_
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104295463608019;171.162373423581;_
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:14.783 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44109)
2025-11-17T09:22:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:14.784 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:14.791 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80711542, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295463608019, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5123073, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.53207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:21:16.494772', telescope_ra_j2k=15.4871278563519, telescope_dec_j2k=-24.1679412160862, observability=1)
2025-11-17T09:22:16.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:16.638 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:16.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:16.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:16.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:16.639 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:16.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:16.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:16.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:16.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:16.640 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:22:16.640 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:22:16.641 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:22:16.642 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:22:16.642 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:17.642 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:22:17.643 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:17.644 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:17.645 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:17.645 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:17.645 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:17.645 [DEBUG] [ThreadPoolExecutor-2600_0] [payload.py] [to_registers()] [0]
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37345)
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:17.646 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:17.653 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:17.653 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:22:17.653 [DEBUG] [ThreadPoolExecutor-2600_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:22:17.654 [DEBUG] [ThreadPoolExecutor-2600_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:22:17.654 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:17.654 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:17.654 [DEBUG] [ThreadPoolExecutor-2600_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Status age = 8.527629852294922s
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:23.319 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:23.320 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 17;15.5146785;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53444;2460996.80721436;9.37310889;1.3;_
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response 17;15.5146785;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53444;2460996.80721436;9.37310889;1.3;_
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:23.321 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:23.322 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:23.322 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:23.322 [INFO] [Thread-66880 (handle)] [driver.py] [get_status()] Telra = 15.5146785, teldec = -24.256652
2025-11-17T09:22:23.322 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5146785 -24.256652
2025-11-17T09:22:23.322 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5146785 -24.256652
2025-11-17T09:22:23.322 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5146785 -24.256652
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 17;15.5146785;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53444;2460996.80721439;9.37310889;1.3;_15.4894973979494 -24.1680100550872
2025-11-17T09:22:23.323 [INFO] [Thread-66880 (handle)] [driver.py] [get_status()] ra_j2k = 15.4894973979494     dec_j2k = -24.1680100550872
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 140;0.104294821816934;171.162362694745;_
2025-11-17T09:22:23.323 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response 140;0.104294821816934;171.162362694745;_
2025-11-17T09:22:23.324 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:23.324 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:23.324 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:23.324 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:23.324 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:23.325 [DEBUG] [Thread-66880 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:23.326 [DEBUG] [Thread-66880 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:23.328 [DEBUG] [Thread-66880 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37333)
2025-11-17T09:22:23.328 [DEBUG] [Thread-66880 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:23.329 [DEBUG] [Thread-66880 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:23.329 [DEBUG] [Thread-66880 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:23.329 [DEBUG] [Thread-66880 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:23.329 [DEBUG] [Thread-66880 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:23.336 [DEBUG] [Thread-66880 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:23.337 [DEBUG] [Thread-66880 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:23.337 [INFO] [Thread-66880 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80721436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104294821816934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5146785, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.53444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.4894973979494, telescope_dec_j2k=-24.1680100550872, observability=1)
2025-11-17T09:22:25.758 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:22:25
2025-11-17T09:22:25.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:25.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.4217758178710938s
2025-11-17T09:22:25.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:25.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:25.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:25.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5153696;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53514;2460996.80724259;9.37379806;1.3;_
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5153696;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53514;2460996.80724259;9.37379806;1.3;_
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:25.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:25.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:25.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:25.761 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5153696, teldec = -24.256652
2025-11-17T09:22:25.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5153696 -24.256652
2025-11-17T09:22:25.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5153696 -24.256652
2025-11-17T09:22:25.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5153696 -24.256652
2025-11-17T09:22:25.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5153696;-24.256652;50.108573;89.993117;50.08601;90.12017;12.53514;2460996.80724262;9.37379806;1.3;_15.4901880148132 -24.1680301251284
2025-11-17T09:22:25.762 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.4901880148132     dec_j2k = -24.1680301251284
2025-11-17T09:22:25.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:25.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10429534327219;171.162357330327;_
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10429534327219;171.162357330327;_
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:25.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:25.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59807)
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:25.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:25.773 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:25.773 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80724259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429534327219, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108573, telescope_az=89.993117, telescope_ra=15.5153696, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.53514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.4901880148132, telescope_dec_j2k=-24.1680301251284, observability=1)
2025-11-17T09:22:41.382 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:41.382 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Status age = 15.609084606170654s
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:41.383 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:41.384 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 17;15.5197201;-24.256652;50.108572;89.993117;50.08601;90.12017;12.53949;2460996.80742343;9.37813667;1.3;_
2025-11-17T09:22:41.384 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response 17;15.5197201;-24.256652;50.108572;89.993117;50.08601;90.12017;12.53949;2460996.80742343;9.37813667;1.3;_
2025-11-17T09:22:41.384 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:41.385 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:41.385 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:41.385 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:41.386 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:41.386 [INFO] [Thread-66881 (handle)] [driver.py] [get_status()] Telra = 15.5197201, teldec = -24.256652
2025-11-17T09:22:41.386 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5197201 -24.256652
2025-11-17T09:22:41.386 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5197201 -24.256652
2025-11-17T09:22:41.386 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5197201 -24.256652
2025-11-17T09:22:41.387 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 17;15.5197201;-24.256652;50.108572;89.993117;50.08601;90.12017;12.53949;2460996.80742346;9.37813667;1.3;_15.4945354756802 -24.1681565342434
2025-11-17T09:22:41.387 [INFO] [Thread-66881 (handle)] [driver.py] [get_status()] ra_j2k = 15.4945354756802     dec_j2k = -24.1681565342434
2025-11-17T09:22:41.387 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:41.387 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:41.387 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:41.387 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 140;0.104295985063275;171.162368059163;_
2025-11-17T09:22:41.388 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response 140;0.104295985063275;171.162368059163;_
2025-11-17T09:22:41.388 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:41.388 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:41.388 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:41.388 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:41.389 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:41.390 [DEBUG] [Thread-66881 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:41.390 [DEBUG] [Thread-66881 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:41.390 [DEBUG] [Thread-66881 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:41.391 [DEBUG] [Thread-66881 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54879)
2025-11-17T09:22:41.391 [DEBUG] [Thread-66881 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:41.391 [DEBUG] [Thread-66881 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:41.392 [DEBUG] [Thread-66881 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:41.392 [DEBUG] [Thread-66881 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:41.392 [DEBUG] [Thread-66881 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:41.399 [DEBUG] [Thread-66881 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:41.399 [INFO] [Thread-66881 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80742343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295985063275, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5197201, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.53949, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.4945354756802, telescope_dec_j2k=-24.1681565342434, observability=1)
2025-11-17T09:22:42.654 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:42.654 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:42.654 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:42.654 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:42.654 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:42.655 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:22:42.656 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:22:42.657 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Status age = 18.086049556732178s
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:22:59.485 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:22:59.486 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:22:59.487 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:22:59.488 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 17;15.5247633;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54453;2460996.80763296;9.38316611;1.3;_
2025-11-17T09:22:59.488 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response 17;15.5247633;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54453;2460996.80763296;9.38316611;1.3;_
2025-11-17T09:22:59.488 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:22:59.488 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:22:59.488 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:22:59.489 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:59.489 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:22:59.489 [INFO] [Thread-66882 (handle)] [driver.py] [get_status()] Telra = 15.5247633, teldec = -24.256651
2025-11-17T09:22:59.489 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5247633 -24.256651
2025-11-17T09:22:59.489 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5247633 -24.256651
2025-11-17T09:22:59.489 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5247633 -24.256651
2025-11-17T09:22:59.490 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 17;15.5247633;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54453;2460996.80763299;9.38316611;1.3;_15.4995751576175 -24.1683022161712
2025-11-17T09:22:59.490 [INFO] [Thread-66882 (handle)] [driver.py] [get_status()] ra_j2k = 15.4995751576175     dec_j2k = -24.1683022161712
2025-11-17T09:22:59.490 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:22:59.490 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 140;0.104296145511046;171.162362694745;_
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response 140;0.104296145511046;171.162362694745;_
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:59.491 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:22:59.492 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:22:59.493 [DEBUG] [Thread-66882 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:59.493 [DEBUG] [Thread-66882 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:22:59.493 [DEBUG] [Thread-66882 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:22:59.496 [DEBUG] [Thread-66882 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57913)
2025-11-17T09:22:59.496 [DEBUG] [Thread-66882 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:22:59.496 [DEBUG] [Thread-66882 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:22:59.497 [DEBUG] [Thread-66882 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:22:59.497 [DEBUG] [Thread-66882 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:22:59.497 [DEBUG] [Thread-66882 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:22:59.504 [DEBUG] [Thread-66882 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:22:59.504 [INFO] [Thread-66882 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80763296, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296145511046, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5247633, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.54453, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.4995751576175, telescope_dec_j2k=-24.1683022161712, observability=1)
2025-11-17T09:23:00.107 [DEBUG] [Thread-66883 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:00.107 [DEBUG] [Thread-66883 (handle)] [server.py] [get_status()] Status age = 0.6024713516235352s
2025-11-17T09:23:00.107 [DEBUG] [Thread-66883 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6024713516235352
2025-11-17T09:23:02.839 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:02.839 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.335237503051758s
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:02.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:02.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:02.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5257062;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54547;2460996.80767178;9.38410639;1.3;_
2025-11-17T09:23:02.842 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.5257062;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54547;2460996.80767178;9.38410639;1.3;_
2025-11-17T09:23:02.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:02.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:02.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:02.843 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:02.843 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:02.843 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.5257062, teldec = -24.256651
2025-11-17T09:23:02.843 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5257062 -24.256651
2025-11-17T09:23:02.843 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5257062 -24.256651
2025-11-17T09:23:02.843 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5257062 -24.256651
2025-11-17T09:23:02.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5257062;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54547;2460996.80767181;9.38410639;1.3;_15.5005174004093 -24.1683296578253
2025-11-17T09:23:02.844 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.5005174004093     dec_j2k = -24.1683296578253
2025-11-17T09:23:02.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:02.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:02.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104295944951332;171.162357330327;_
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104295944951332;171.162357330327;_
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:02.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:02.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:02.847 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:02.847 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:02.847 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58035)
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:02.848 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:02.855 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:02.855 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:02.856 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:02.856 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80767178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104295944951332, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5257062, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.54547, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.5005174004093, telescope_dec_j2k=-24.1683296578253, observability=1)
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.3618323802948s
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:11.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:11.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:11.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.528022;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54779;2460996.80776874;9.38641583;1.3;_
2025-11-17T09:23:11.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.528022;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54779;2460996.80776874;9.38641583;1.3;_
2025-11-17T09:23:11.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:11.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:11.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:11.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:11.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:11.221 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.528022, teldec = -24.256651
2025-11-17T09:23:11.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.528022 -24.256651
2025-11-17T09:23:11.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.528022 -24.256651
2025-11-17T09:23:11.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.528022 -24.256651
2025-11-17T09:23:11.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.528022;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54779;2460996.80776877;9.38641583;1.3;_15.502831587048 -24.1683970787625
2025-11-17T09:23:11.222 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.502831587048     dec_j2k = -24.1683970787625
2025-11-17T09:23:11.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:11.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:11.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104296105399104;171.162362694745;_
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104296105399104;171.162362694745;_
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:11.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:11.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:11.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:11.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:11.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39187)
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:11.229 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:11.236 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:23:11.237 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80776874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296105399104, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.528022, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.54779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.502831587048, telescope_dec_j2k=-24.1683970787625, observability=1)
2025-11-17T09:23:11.237 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47851920127869 seconds ago
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.540813684463501s
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5290203;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54879;2460996.80780995;9.38741139;1.3;_
2025-11-17T09:23:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.5290203;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54879;2460996.80780995;9.38741139;1.3;_
2025-11-17T09:23:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:14.781 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.5290203, teldec = -24.256651
2025-11-17T09:23:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5290203 -24.256651
2025-11-17T09:23:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5290203 -24.256651
2025-11-17T09:23:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5290203 -24.256651
2025-11-17T09:23:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5290203;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54879;2460996.80780998;9.38741139;1.3;_15.5038291918936 -24.1684261528642
2025-11-17T09:23:14.782 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5038291918936     dec_j2k = -24.1684261528642
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104296386182703;171.162351965909;_
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104296386182703;171.162351965909;_
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60385)
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:14.798 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:14.799 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80780995, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296386182703, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5290203, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.54879, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:22:16.637812', telescope_ra_j2k=15.5038291918936, telescope_dec_j2k=-24.1684261528642, observability=1)
2025-11-17T09:23:16.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:16.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:16.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:16.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:16.781 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:16.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:16.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:16.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:16.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:16.782 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:23:16.782 [INFO] [ThreadPoolExecutor-2601_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:23:16.783 [INFO] [ThreadPoolExecutor-2601_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Status age = 2.750955820083618s
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:17.550 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 17;15.5298052;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54957;2460996.80784203;9.38819417;1.3;_
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response 17;15.5298052;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54957;2460996.80784203;9.38819417;1.3;_
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:17.551 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:17.552 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:17.552 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:17.553 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:17.553 [INFO] [Thread-66884 (handle)] [driver.py] [get_status()] Telra = 15.5298052, teldec = -24.256651
2025-11-17T09:23:17.553 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5298052 -24.256651
2025-11-17T09:23:17.553 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5298052 -24.256651
2025-11-17T09:23:17.553 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5298052 -24.256651
2025-11-17T09:23:17.554 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 17;15.5298052;-24.256651;50.108572;89.993117;50.08601;90.12017;12.54957;2460996.80784206;9.38819417;1.3;_15.5046135454803 -24.168449016275
2025-11-17T09:23:17.554 [INFO] [Thread-66884 (handle)] [driver.py] [get_status()] ra_j2k = 15.5046135454803     dec_j2k = -24.168449016275
2025-11-17T09:23:17.554 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:17.554 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:17.554 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 140;0.10429662685436;171.162357330327;_
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response 140;0.10429662685436;171.162357330327;_
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:17.555 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:17.556 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:17.557 [DEBUG] [Thread-66884 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:17.557 [DEBUG] [Thread-66884 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:17.557 [DEBUG] [Thread-66884 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:17.563 [DEBUG] [Thread-66884 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44417)
2025-11-17T09:23:17.563 [DEBUG] [Thread-66884 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:17.563 [DEBUG] [Thread-66884 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:17.563 [DEBUG] [Thread-66884 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:17.563 [DEBUG] [Thread-66884 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:17.564 [DEBUG] [Thread-66884 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:17.570 [DEBUG] [Thread-66884 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:17.570 [DEBUG] [Thread-66884 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:17.571 [DEBUG] [Thread-66884 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:17.571 [INFO] [Thread-66884 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80784203, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429662685436, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5298052, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.54957, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5046135454803, telescope_dec_j2k=-24.168449016275, observability=1)
2025-11-17T09:23:25.834 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:23:25
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.263322591781616s
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:25.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:25.835 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:25.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:25.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5320928;-24.256651;50.108572;89.993117;50.08601;90.12017;12.55186;2460996.80793793;9.39047556;1.3;_
2025-11-17T09:23:25.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5320928;-24.256651;50.108572;89.993117;50.08601;90.12017;12.55186;2460996.80793793;9.39047556;1.3;_
2025-11-17T09:23:25.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:25.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:25.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:25.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:25.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:25.838 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5320928, teldec = -24.256651
2025-11-17T09:23:25.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5320928 -24.256651
2025-11-17T09:23:25.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5320928 -24.256651
2025-11-17T09:23:25.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5320928 -24.256651
2025-11-17T09:23:25.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5320928;-24.256651;50.108572;89.993117;50.08601;90.12017;12.55186;2460996.80793795;9.39047556;1.3;_15.5068995536687 -24.1685156734701
2025-11-17T09:23:25.839 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.5068995536687     dec_j2k = -24.1685156734701
2025-11-17T09:23:25.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:25.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:25.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104296025175218;171.162357330327;_
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104296025175218;171.162357330327;_
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:25.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:25.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:25.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:25.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:25.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45827)
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:25.848 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:25.855 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:25.855 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:25.855 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:25.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:25.856 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80793793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296025175218, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108572, telescope_az=89.993117, telescope_ra=15.5320928, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.55186, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5068995536687, telescope_dec_j2k=-24.1685156734701, observability=1)
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Status age = 9.839046001434326s
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:35.695 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:35.696 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:35.696 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:35.696 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:35.696 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 17;15.5348462;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55461;2460996.80805204;9.39322139;1.3;_
2025-11-17T09:23:35.696 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response 17;15.5348462;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55461;2460996.80805204;9.39322139;1.3;_
2025-11-17T09:23:35.697 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:35.697 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:35.697 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:35.698 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:35.698 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:35.698 [INFO] [Thread-66885 (handle)] [driver.py] [get_status()] Telra = 15.5348462, teldec = -24.256651
2025-11-17T09:23:35.698 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5348462 -24.256651
2025-11-17T09:23:35.698 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5348462 -24.256651
2025-11-17T09:23:35.698 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5348462 -24.256651
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 17;15.5348462;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55461;2460996.80805207;9.39322139;1.3;_15.5096510391479 -24.1685959458478
2025-11-17T09:23:35.699 [INFO] [Thread-66885 (handle)] [driver.py] [get_status()] ra_j2k = 15.5096510391479     dec_j2k = -24.1685959458478
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 140;0.104296787302131;171.162357330327;_
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response 140;0.104296787302131;171.162357330327;_
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:35.699 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:35.700 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:35.701 [DEBUG] [Thread-66885 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:35.701 [DEBUG] [Thread-66885 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:23:35.701 [DEBUG] [Thread-66885 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34107)
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:35.708 [DEBUG] [Thread-66885 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:35.715 [DEBUG] [Thread-66885 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:35.716 [DEBUG] [Thread-66885 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:35.716 [DEBUG] [Thread-66885 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:35.716 [INFO] [Thread-66885 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80805204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296787302131, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.5348462, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.55461, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5096510391479, telescope_dec_j2k=-24.1685959458478, observability=1)
2025-11-17T09:23:37.657 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.657 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.657 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:37.657 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:23:37.658 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:37.659 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:37.660 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:23:37.661 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:37.662 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:37.663 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:37.663 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:37.663 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:37.663 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Park
2025-11-17T09:23:37.663 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:23:37.664 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:23:37.664 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 29;15.5354066;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55517;2460996.80807481;9.39378028;1.3;_Park Command Successful
2025-11-17T09:23:38.664 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:23:38.664 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:23:38.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:23:38.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:23:38.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:23:39.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:23:39.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:23:39.665 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:23:39.666 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:23:39.666 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:23:40.667 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:23:40.667 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:23:40.667 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:23:40.668 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:23:40.668 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:23:41.668 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:23:41.668 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:23:41.668 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:41.669 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:23:41.670 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:23:41.671 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:42.671 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:42.671 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:42.671 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:23:42.672 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:23:42.673 [DEBUG] [ThreadPoolExecutor-2600_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:42.673 [INFO] [ThreadPoolExecutor-2600_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Status age = 18.043010473251343s
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:23:53.759 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:23:53.760 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 17;15.5398878;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55965;2460996.80826111;9.39824917;1.3;_
2025-11-17T09:23:53.760 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response 17;15.5398878;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55965;2460996.80826111;9.39824917;1.3;_
2025-11-17T09:23:53.760 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:23:53.760 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:23:53.760 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:23:53.761 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:53.761 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:23:53.761 [INFO] [Thread-66886 (handle)] [driver.py] [get_status()] Telra = 15.5398878, teldec = -24.256651
2025-11-17T09:23:53.761 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5398878 -24.256651
2025-11-17T09:23:53.761 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5398878 -24.256651
2025-11-17T09:23:53.761 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5398878 -24.256651
2025-11-17T09:23:53.762 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 17;15.5398878;-24.256651;50.108571;89.993117;50.08601;90.12017;12.55965;2460996.80826113;9.39824917;1.3;_15.5146891375828 -24.1687430483406
2025-11-17T09:23:53.762 [INFO] [Thread-66886 (handle)] [driver.py] [get_status()] ra_j2k = 15.5146891375828     dec_j2k = -24.1687430483406
2025-11-17T09:23:53.762 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:23:53.762 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:23:53.762 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:23:53.763 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 140;0.104296747190188;171.162362694745;_
2025-11-17T09:23:53.763 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response 140;0.104296747190188;171.162362694745;_
2025-11-17T09:23:53.764 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:23:53.764 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:53.764 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:53.764 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:23:53.765 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:23:53.766 [DEBUG] [Thread-66886 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:53.766 [DEBUG] [Thread-66886 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:23:53.766 [DEBUG] [Thread-66886 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:23:53.766 [DEBUG] [Thread-66886 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50549)
2025-11-17T09:23:53.766 [DEBUG] [Thread-66886 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:23:53.767 [DEBUG] [Thread-66886 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:23:53.767 [DEBUG] [Thread-66886 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:23:53.767 [DEBUG] [Thread-66886 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:23:53.767 [DEBUG] [Thread-66886 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:23:53.774 [DEBUG] [Thread-66886 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:23:53.774 [INFO] [Thread-66886 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80826111, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296747190188, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.5398878, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.55965, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5146891375828, telescope_dec_j2k=-24.1687430483406, observability=1)
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Status age = 6.377686262130737s
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:00.152 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 17;15.5416453;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56141;2460996.8083351;9.40000194;1.3;_
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response 17;15.5416453;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56141;2460996.8083351;9.40000194;1.3;_
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:00.153 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:00.154 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:00.154 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:00.154 [INFO] [Thread-66887 (handle)] [driver.py] [get_status()] Telra = 15.5416453, teldec = -24.256651
2025-11-17T09:24:00.154 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5416453 -24.256651
2025-11-17T09:24:00.154 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5416453 -24.256651
2025-11-17T09:24:00.155 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5416453 -24.256651
2025-11-17T09:24:00.155 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 17;15.5416453;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56141;2460996.80833513;9.40000194;1.3;_15.5164454181583 -24.1687943647093
2025-11-17T09:24:00.155 [INFO] [Thread-66887 (handle)] [driver.py] [get_status()] ra_j2k = 15.5164454181583     dec_j2k = -24.1687943647093
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 140;0.104296546630474;171.162346601491;_
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response 140;0.104296546630474;171.162346601491;_
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:00.156 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:00.157 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:00.158 [DEBUG] [Thread-66887 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:00.158 [DEBUG] [Thread-66887 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:00.158 [DEBUG] [Thread-66887 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50537)
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:00.164 [DEBUG] [Thread-66887 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:00.171 [DEBUG] [Thread-66887 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:00.172 [INFO] [Thread-66887 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8083351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296546630474, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.5416453, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.56141, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5164454181583, telescope_dec_j2k=-24.1687943647093, observability=1)
2025-11-17T09:24:01.949 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.7780036926269531s
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:01.950 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:01.951 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:01.952 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5421503;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56192;2460996.80835593;9.40050556;1.3;_
2025-11-17T09:24:01.952 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.5421503;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56192;2460996.80835593;9.40050556;1.3;_
2025-11-17T09:24:01.952 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:01.952 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:01.952 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:01.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:01.953 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:01.953 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.5421503, teldec = -24.256651
2025-11-17T09:24:01.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5421503 -24.256651
2025-11-17T09:24:01.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5421503 -24.256651
2025-11-17T09:24:01.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5421503 -24.256651
2025-11-17T09:24:01.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5421503;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56192;2460996.80835595;9.40050556;1.3;_15.5169500678857 -24.1688091134396
2025-11-17T09:24:01.954 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.5169500678857     dec_j2k = -24.1688091134396
2025-11-17T09:24:01.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:01.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:01.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104296787302131;171.162362694745;_
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104296787302131;171.162362694745;_
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:01.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:01.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:01.956 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:01.956 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:01.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:01.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:01.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:01.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:01.957 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:01.957 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:01.960 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34513)
2025-11-17T09:24:01.960 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:01.961 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:01.961 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:01.961 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:01.961 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:01.968 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:01.968 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80835593, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296787302131, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.5421503, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.56192, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5169500678857, telescope_dec_j2k=-24.1688091134396, observability=1)
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.3286452293396s
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:11.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:11.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:11.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5447664;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56453;2460996.80846411;9.40311444;1.3;_
2025-11-17T09:24:11.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.5447664;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56453;2460996.80846411;9.40311444;1.3;_
2025-11-17T09:24:11.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:11.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:11.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:11.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:11.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:11.300 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.5447664, teldec = -24.256651
2025-11-17T09:24:11.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.5447664 -24.256651
2025-11-17T09:24:11.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.5447664 -24.256651
2025-11-17T09:24:11.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5447664 -24.256651
2025-11-17T09:24:11.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5447664;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56453;2460996.80846413;9.40311444;1.3;_15.5195643541687 -24.168885542605
2025-11-17T09:24:11.301 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.5195643541687     dec_j2k = -24.168885542605
2025-11-17T09:24:11.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:11.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:11.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104297228533502;171.162357330327;_
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104297228533502;171.162357330327;_
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:11.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:11.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:11.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:11.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:11.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51615)
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:11.311 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:11.318 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:11.318 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:11.318 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:11.318 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:11.318 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:11.319 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:11.319 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:11.319 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:11.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:24:11.319 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80846411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297228533502, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.5447664, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.56453, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5195643541687, telescope_dec_j2k=-24.168885542605, observability=1)
2025-11-17T09:24:11.319 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.4851758480072 seconds ago
2025-11-17T09:24:11.826 [DEBUG] [Thread-66888 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:11.826 [DEBUG] [Thread-66888 (handle)] [server.py] [get_status()] Status age = 0.5066964626312256s
2025-11-17T09:24:11.826 [DEBUG] [Thread-66888 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5066964626312256
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.4290475845336914s
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.545719;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56548;2460996.80850405;9.40406444;1.3;_
2025-11-17T09:24:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.545719;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56548;2460996.80850405;9.40406444;1.3;_
2025-11-17T09:24:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:14.751 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.545719, teldec = -24.256651
2025-11-17T09:24:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.545719 -24.256651
2025-11-17T09:24:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.545719 -24.256651
2025-11-17T09:24:14.751 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.545719 -24.256651
2025-11-17T09:24:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.545719;-24.256651;50.108571;89.993117;50.08601;90.12017;12.56548;2460996.80850407;9.40406444;1.3;_15.5205162940878 -24.1689133831057
2025-11-17T09:24:14.752 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5205162940878     dec_j2k = -24.1689133831057
2025-11-17T09:24:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104297549429045;171.162357330327;_
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104297549429045;171.162357330327;_
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52279)
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:14.758 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:14.765 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:14.766 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80850405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297549429045, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108571, telescope_az=89.993117, telescope_ra=15.545719, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.56548, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:23:16.780268', telescope_ra_j2k=15.5205162940878, telescope_dec_j2k=-24.1689133831057, observability=1)
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:16.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:16.924 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:16.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:16.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:16.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:16.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:16.925 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:24:16.925 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:16.925 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:16.925 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:16.925 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:16.925 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:24:16.926 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:24:16.927 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:17.927 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:17.927 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:17.927 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:17.927 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:17.927 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:24:17.928 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:17.929 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:17.930 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:17.930 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:17.930 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:17.930 [DEBUG] [ThreadPoolExecutor-2602_0] [payload.py] [to_registers()] [0]
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49041)
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:17.933 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:17.940 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:17.941 [DEBUG] [ThreadPoolExecutor-2602_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:25.917 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:24:25
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.151206970214844s
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:25.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:25.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:25.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5488381;-24.256651;50.10857;89.993117;50.08601;90.12017;12.5686;2460996.80863332;9.407175;1.3;_
2025-11-17T09:24:25.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5488381;-24.256651;50.10857;89.993117;50.08601;90.12017;12.5686;2460996.80863332;9.407175;1.3;_
2025-11-17T09:24:25.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:25.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:25.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:25.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:25.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:25.920 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5488381, teldec = -24.256651
2025-11-17T09:24:25.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5488381 -24.256651
2025-11-17T09:24:25.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5488381 -24.256651
2025-11-17T09:24:25.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5488381 -24.256651
2025-11-17T09:24:25.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5488381;-24.256651;50.10857;89.993117;50.08601;90.12017;12.5686;2460996.80863334;9.407175;1.3;_15.5236332340825 -24.1690045799967
2025-11-17T09:24:25.921 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.5236332340825     dec_j2k = -24.1690045799967
2025-11-17T09:24:25.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:25.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:25.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:25.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104297429093216;171.162351965909;_
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104297429093216;171.162351965909;_
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:25.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:25.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:25.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:25.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48469)
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:25.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:25.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:25.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:25.933 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:25.933 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:25.934 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:25.934 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:25.934 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:25.934 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:25.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:25.934 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80863332, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297429093216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10857, telescope_az=89.993117, telescope_ra=15.5488381, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.5686, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.5236332340825, telescope_dec_j2k=-24.1690045799967, observability=1)
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Status age = 4.012559652328491s
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:29.946 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:29.947 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:29.947 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:29.948 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:29.949 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 17;15.5499492;-24.256651;50.10857;89.993117;50.08601;90.12017;12.56971;2460996.80867997;9.40828306;1.3;_
2025-11-17T09:24:29.949 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response 17;15.5499492;-24.256651;50.10857;89.993117;50.08601;90.12017;12.56971;2460996.80867997;9.40828306;1.3;_
2025-11-17T09:24:29.949 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:29.949 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:29.949 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:29.950 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:29.950 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:29.950 [INFO] [Thread-66889 (handle)] [driver.py] [get_status()] Telra = 15.5499492, teldec = -24.256651
2025-11-17T09:24:29.950 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5499492 -24.256651
2025-11-17T09:24:29.950 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5499492 -24.256651
2025-11-17T09:24:29.950 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5499492 -24.256651
2025-11-17T09:24:29.951 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 17;15.5499492;-24.256651;50.10857;89.993117;50.08601;90.12017;12.56971;2460996.80867999;9.40828306;1.3;_15.5247435651165 -24.1690370808776
2025-11-17T09:24:29.951 [INFO] [Thread-66889 (handle)] [driver.py] [get_status()] ra_j2k = 15.5247435651165     dec_j2k = -24.1690370808776
2025-11-17T09:24:29.951 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 140;0.104296827414074;171.162357330327;_
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response 140;0.104296827414074;171.162357330327;_
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:29.952 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:29.953 [DEBUG] [Thread-66889 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:29.954 [DEBUG] [Thread-66889 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32839)
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:29.955 [DEBUG] [Thread-66889 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:29.962 [DEBUG] [Thread-66889 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:29.963 [INFO] [Thread-66889 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80867997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104296827414074, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10857, telescope_az=89.993117, telescope_ra=15.5499492, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.56971, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.5247435651165, telescope_dec_j2k=-24.1690370808776, observability=1)
2025-11-17T09:24:42.941 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:42.941 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:42.941 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:42.941 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:42.941 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:42.942 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:24:42.943 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:24:42.944 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Status age = 18.041237115859985s
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:24:48.004 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:24:48.005 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 17;15.5549932;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57476;2460996.80888895;9.41331333;1.3;_
2025-11-17T09:24:48.005 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response 17;15.5549932;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57476;2460996.80888895;9.41331333;1.3;_
2025-11-17T09:24:48.005 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:24:48.005 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:24:48.005 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:24:48.006 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:48.006 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:24:48.007 [INFO] [Thread-66890 (handle)] [driver.py] [get_status()] Telra = 15.5549932, teldec = -24.256651
2025-11-17T09:24:48.007 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5549932 -24.256651
2025-11-17T09:24:48.007 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5549932 -24.256651
2025-11-17T09:24:48.007 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5549932 -24.256651
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 17;15.5549932;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57476;2460996.80888898;9.41331333;1.3;_15.529784077462 -24.1691847177744
2025-11-17T09:24:48.008 [INFO] [Thread-66890 (handle)] [driver.py] [get_status()] ra_j2k = 15.529784077462     dec_j2k = -24.1691847177744
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 140;0.104297749988759;171.162357330327;_
2025-11-17T09:24:48.008 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response 140;0.104297749988759;171.162357330327;_
2025-11-17T09:24:48.009 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:24:48.009 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:48.009 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:48.009 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:24:48.010 [DEBUG] [Thread-66890 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50177)
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:24:48.017 [DEBUG] [Thread-66890 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:24:48.024 [DEBUG] [Thread-66890 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:24:48.024 [DEBUG] [Thread-66890 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:48.024 [DEBUG] [Thread-66890 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:24:48.024 [DEBUG] [Thread-66890 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:24:48.025 [DEBUG] [Thread-66890 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:24:48.025 [DEBUG] [Thread-66890 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:24:48.025 [DEBUG] [Thread-66890 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:24:48.025 [DEBUG] [Thread-66890 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:24:48.025 [DEBUG] [Thread-66890 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:24:48.025 [INFO] [Thread-66890 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80888895, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297749988759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10857, telescope_az=89.993117, telescope_ra=15.5549932, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.57476, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.529784077462, telescope_dec_j2k=-24.1691847177744, observability=1)
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Status age = 12.18886685371399s
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:00.214 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:00.215 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:00.216 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 17;15.5583911;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57816;2460996.80903028;9.41670194;1.3;_
2025-11-17T09:25:00.216 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response 17;15.5583911;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57816;2460996.80903028;9.41670194;1.3;_
2025-11-17T09:25:00.216 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:00.216 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:00.216 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:00.217 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:00.217 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:00.217 [INFO] [Thread-66891 (handle)] [driver.py] [get_status()] Telra = 15.5583911, teldec = -24.256651
2025-11-17T09:25:00.217 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5583911 -24.256651
2025-11-17T09:25:00.217 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5583911 -24.256651
2025-11-17T09:25:00.217 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5583911 -24.256651
2025-11-17T09:25:00.218 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 17;15.5583911;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57816;2460996.8090303;9.41670194;1.3;_15.5331796309361 -24.1692842607934
2025-11-17T09:25:00.218 [INFO] [Thread-66891 (handle)] [driver.py] [get_status()] ra_j2k = 15.5331796309361     dec_j2k = -24.1692842607934
2025-11-17T09:25:00.218 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:00.218 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:00.218 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 140;0.104297469205159;171.162357330327;_
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response 140;0.104297469205159;171.162357330327;_
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:00.219 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:00.220 [DEBUG] [Thread-66891 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:00.221 [DEBUG] [Thread-66891 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:00.221 [DEBUG] [Thread-66891 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:00.226 [DEBUG] [Thread-66891 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55987)
2025-11-17T09:25:00.227 [DEBUG] [Thread-66891 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:00.227 [DEBUG] [Thread-66891 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:00.227 [DEBUG] [Thread-66891 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:00.227 [DEBUG] [Thread-66891 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:00.227 [DEBUG] [Thread-66891 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:00.234 [DEBUG] [Thread-66891 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:00.234 [DEBUG] [Thread-66891 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:00.235 [DEBUG] [Thread-66891 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:00.235 [INFO] [Thread-66891 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80903028, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297469205159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10857, telescope_az=89.993117, telescope_ra=15.5583911, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.57816, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.5331796309361, telescope_dec_j2k=-24.1692842607934, observability=1)
2025-11-17T09:25:01.057 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:01.058 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.822678804397583s
2025-11-17T09:25:01.058 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.822678804397583
2025-11-17T09:25:06.077 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Status age = 5.842710256576538s
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:06.078 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:06.079 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 17;15.5600078;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57977;2460996.80909814;9.41831417;1.3;_
2025-11-17T09:25:06.079 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response 17;15.5600078;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57977;2460996.80909814;9.41831417;1.3;_
2025-11-17T09:25:06.079 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:06.079 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:06.079 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:06.080 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:06.080 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:06.080 [INFO] [Thread-66892 (handle)] [driver.py] [get_status()] Telra = 15.5600078, teldec = -24.256651
2025-11-17T09:25:06.080 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5600078 -24.256651
2025-11-17T09:25:06.080 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5600078 -24.256651
2025-11-17T09:25:06.080 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5600078 -24.256651
2025-11-17T09:25:06.081 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 17;15.5600078;-24.256651;50.10857;89.993117;50.08601;90.12017;12.57977;2460996.80909816;9.41831417;1.3;_15.5347952153048 -24.1693316473553
2025-11-17T09:25:06.081 [INFO] [Thread-66892 (handle)] [driver.py] [get_status()] ra_j2k = 15.5347952153048     dec_j2k = -24.1693316473553
2025-11-17T09:25:06.081 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:06.081 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:06.081 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:06.081 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 140;0.104297870324587;171.162362694745;_
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response 140;0.104297870324587;171.162362694745;_
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:06.082 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:06.083 [DEBUG] [Thread-66892 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:06.084 [DEBUG] [Thread-66892 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:06.084 [DEBUG] [Thread-66892 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34495)
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:06.090 [DEBUG] [Thread-66892 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:06.097 [DEBUG] [Thread-66892 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:06.097 [DEBUG] [Thread-66892 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:06.098 [DEBUG] [Thread-66892 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:06.098 [INFO] [Thread-66892 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80909814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297870324587, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10857, telescope_az=89.993117, telescope_ra=15.5600078, telescope_dec=-24.256651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.57977, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.5347952153048, telescope_dec_j2k=-24.1693316473553, observability=1)
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.280838251113892s
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:11.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:11.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:11.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5614916;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58126;2460996.8091595;9.41979389;1.3;_
2025-11-17T09:25:11.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.5614916;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58126;2460996.8091595;9.41979389;1.3;_
2025-11-17T09:25:11.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:11.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:11.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:11.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:11.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:11.382 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.5614916, teldec = -24.25665
2025-11-17T09:25:11.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.5614916 -24.25665
2025-11-17T09:25:11.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.5614916 -24.25665
2025-11-17T09:25:11.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5614916 -24.25665
2025-11-17T09:25:11.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5614916;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58126;2460996.80915953;9.41979389;1.3;_15.536277992012 -24.1693741524854
2025-11-17T09:25:11.383 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.536277992012     dec_j2k = -24.1693741524854
2025-11-17T09:25:11.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:11.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:11.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:11.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104297709876816;171.162362694745;_
2025-11-17T09:25:11.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104297709876816;171.162362694745;_
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:11.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:11.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:11.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:11.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:11.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:11.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:11.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:11.387 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37871)
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:11.392 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:11.399 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:25:11.399 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8091595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297709876816, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.5614916, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.58126, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.536277992012, telescope_dec_j2k=-24.1693741524854, observability=1)
2025-11-17T09:25:11.399 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48224687576294 seconds ago
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.3621463775634766s
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.562435;-24.25665;50.108569;89.993117;50.08601;90.12017;12.5822;2460996.80919865;9.42073472;1.3;_
2025-11-17T09:25:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.562435;-24.25665;50.108569;89.993117;50.08601;90.12017;12.5822;2460996.80919865;9.42073472;1.3;_
2025-11-17T09:25:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:14.764 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.562435, teldec = -24.25665
2025-11-17T09:25:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.562435 -24.25665
2025-11-17T09:25:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.562435 -24.25665
2025-11-17T09:25:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.562435 -24.25665
2025-11-17T09:25:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.562435;-24.25665;50.108569;89.993117;50.08601;90.12017;12.5822;2460996.80919867;9.42073472;1.3;_15.5372207415379 -24.1694018199839
2025-11-17T09:25:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5372207415379     dec_j2k = -24.1694018199839
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104297068085731;171.162357330327;_
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104297068085731;171.162357330327;_
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:14.774 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46229)
2025-11-17T09:25:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:14.775 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:14.783 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:14.783 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80919865, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104297068085731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.562435, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.5822, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:24:16.922483', telescope_ra_j2k=15.5372207415379, telescope_dec_j2k=-24.1694018199839, observability=1)
2025-11-17T09:25:17.064 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:17.064 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:17.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:17.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:17.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:17.065 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:17.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:17.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:17.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:17.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:17.066 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:25:17.066 [INFO] [ThreadPoolExecutor-2603_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:25:17.066 [INFO] [ThreadPoolExecutor-2603_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:25:24.184 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:24.184 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Status age = 9.401649951934814s
2025-11-17T09:25:24.184 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:24.184 [DEBUG] [Thread-66893 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:24.184 [DEBUG] [Thread-66893 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:24.185 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:24.185 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:24.185 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:24.186 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:24.187 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 17;15.565058;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58482;2460996.80930772;9.42335056;1.3;_
2025-11-17T09:25:24.187 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response 17;15.565058;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58482;2460996.80930772;9.42335056;1.3;_
2025-11-17T09:25:24.187 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:24.187 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:24.187 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:24.188 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:24.188 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:24.188 [INFO] [Thread-66893 (handle)] [driver.py] [get_status()] Telra = 15.565058, teldec = -24.25665
2025-11-17T09:25:24.188 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] UnCookCoordinates 15.565058 -24.25665
2025-11-17T09:25:24.188 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.565058 -24.25665
2025-11-17T09:25:24.188 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.565058 -24.25665
2025-11-17T09:25:24.189 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 17;15.565058;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58482;2460996.80930774;9.42335056;1.3;_15.5398419339403 -24.1694787741766
2025-11-17T09:25:24.189 [INFO] [Thread-66893 (handle)] [driver.py] [get_status()] ra_j2k = 15.5398419339403     dec_j2k = -24.1694787741766
2025-11-17T09:25:24.189 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:24.189 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:24.189 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 140;0.104298191220129;171.162351965909;_
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response 140;0.104298191220129;171.162351965909;_
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:24.190 [DEBUG] [Thread-66893 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:24.191 [DEBUG] [Thread-66893 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:24.192 [DEBUG] [Thread-66893 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55081)
2025-11-17T09:25:24.192 [DEBUG] [Thread-66893 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:24.192 [DEBUG] [Thread-66893 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:24.192 [DEBUG] [Thread-66893 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:24.192 [DEBUG] [Thread-66893 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:24.193 [DEBUG] [Thread-66893 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:24.200 [DEBUG] [Thread-66893 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:24.201 [INFO] [Thread-66893 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80930772, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298191220129, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.565058, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.58482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.5398419339403, telescope_dec_j2k=-24.1694787741766, observability=1)
2025-11-17T09:25:25.994 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:25:25
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.793656826019287s
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:25.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:25.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:25.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5655814;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58535;2460996.80932866;9.4238725;1.3;_
2025-11-17T09:25:25.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5655814;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58535;2460996.80932866;9.4238725;1.3;_
2025-11-17T09:25:25.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:25.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:25.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:25.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:25.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:25.997 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5655814, teldec = -24.25665
2025-11-17T09:25:25.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5655814 -24.25665
2025-11-17T09:25:25.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5655814 -24.25665
2025-11-17T09:25:25.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5655814 -24.25665
2025-11-17T09:25:25.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5655814;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58535;2460996.80932868;9.4238725;1.3;_15.5403649734169 -24.1694941347962
2025-11-17T09:25:25.998 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.5403649734169     dec_j2k = -24.1694941347962
2025-11-17T09:25:25.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104298151108187;171.162373423581;_
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104298151108187;171.162373423581;_
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:25.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:26.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:26.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:26.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:26.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39643)
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:26.005 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:26.012 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:26.012 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80932866, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298151108187, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.5655814, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.58535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.5403649734169, telescope_dec_j2k=-24.1694941347962, observability=1)
2025-11-17T09:25:37.944 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.944 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:25:37.945 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:37.946 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:37.947 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:25:37.948 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:37.949 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:37.950 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:37.950 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:37.950 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:37.950 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Park
2025-11-17T09:25:37.950 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:25:37.951 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:25:37.951 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 29;15.5689041;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58867;2460996.80946703;9.42718611;1.3;_Park Command Successful
2025-11-17T09:25:38.951 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:25:38.951 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:25:38.951 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:25:38.952 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:25:38.952 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:25:39.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:25:39.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:25:39.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:25:39.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:25:39.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:25:40.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:25:40.953 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:25:40.954 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:25:40.954 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:25:40.955 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:25:41.955 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:25:41.955 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:25:41.955 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:41.956 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:25:41.957 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:25:41.958 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Status age = 16.242732524871826s
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:42.255 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:25:42.256 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 17;15.5701001;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58987;2460996.80951686;9.42837889;1.3;_
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response 17;15.5701001;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58987;2460996.80951686;9.42837889;1.3;_
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:25:42.257 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:25:42.258 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:42.258 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:25:42.258 [INFO] [Thread-66894 (handle)] [driver.py] [get_status()] Telra = 15.5701001, teldec = -24.25665
2025-11-17T09:25:42.258 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5701001 -24.25665
2025-11-17T09:25:42.259 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5701001 -24.25665
2025-11-17T09:25:42.259 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5701001 -24.25665
2025-11-17T09:25:42.259 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 17;15.5701001;-24.25665;50.108569;89.993117;50.08601;90.12017;12.58987;2460996.80951689;9.42837889;1.3;_15.54488056323 -24.1696268174719
2025-11-17T09:25:42.260 [INFO] [Thread-66894 (handle)] [driver.py] [get_status()] ra_j2k = 15.54488056323     dec_j2k = -24.1696268174719
2025-11-17T09:25:42.260 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:25:42.260 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:25:42.260 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 140;0.10429791043653;171.162351965909;_
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response 140;0.10429791043653;171.162351965909;_
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:25:42.261 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:25:42.262 [DEBUG] [Thread-66894 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:42.262 [DEBUG] [Thread-66894 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:25:42.263 [DEBUG] [Thread-66894 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:25:42.265 [DEBUG] [Thread-66894 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34369)
2025-11-17T09:25:42.265 [DEBUG] [Thread-66894 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:25:42.265 [DEBUG] [Thread-66894 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:25:42.266 [DEBUG] [Thread-66894 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:25:42.266 [DEBUG] [Thread-66894 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:25:42.266 [DEBUG] [Thread-66894 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:25:42.272 [DEBUG] [Thread-66894 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:25:42.273 [DEBUG] [Thread-66894 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:25:42.273 [INFO] [Thread-66894 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80951686, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429791043653, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.5701001, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.58987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.54488056323, telescope_dec_j2k=-24.1696268174719, observability=1)
2025-11-17T09:25:42.958 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:42.958 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:42.958 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:25:42.958 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:25:42.958 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:25:42.959 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:25:42.960 [DEBUG] [ThreadPoolExecutor-2602_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:25:42.960 [INFO] [ThreadPoolExecutor-2602_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:26:00.138 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:00.138 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 17.86550545692444s
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:00.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:00.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:00.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:00.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:00.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5750885;-24.25665;50.108569;89.993117;50.08601;90.12017;12.59485;2460996.80972384;9.43335361;1.3;_
2025-11-17T09:26:00.140 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.5750885;-24.25665;50.108569;89.993117;50.08601;90.12017;12.59485;2460996.80972384;9.43335361;1.3;_
2025-11-17T09:26:00.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:00.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:00.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:00.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:00.142 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:00.142 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.5750885, teldec = -24.25665
2025-11-17T09:26:00.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5750885 -24.25665
2025-11-17T09:26:00.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5750885 -24.25665
2025-11-17T09:26:00.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5750885 -24.25665
2025-11-17T09:26:00.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5750885;-24.25665;50.108569;89.993117;50.08601;90.12017;12.59485;2460996.80972388;9.43335361;1.3;_15.5498655346292 -24.1697734352905
2025-11-17T09:26:00.143 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.5498655346292     dec_j2k = -24.1697734352905
2025-11-17T09:26:00.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:00.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:00.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104298271444015;171.162346601491;_
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104298271444015;171.162346601491;_
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:00.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:00.145 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:00.148 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44855)
2025-11-17T09:26:00.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:00.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:00.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:00.149 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:00.149 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:00.156 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:00.156 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80972384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298271444015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108569, telescope_az=89.993117, telescope_ra=15.5750885, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.59485, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.5498655346292, telescope_dec_j2k=-24.1697734352905, observability=1)
2025-11-17T09:26:00.267 [DEBUG] [Thread-66895 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:00.267 [DEBUG] [Thread-66895 (handle)] [server.py] [get_status()] Status age = 0.11070942878723145s
2025-11-17T09:26:00.267 [DEBUG] [Thread-66895 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.11070942878723145
2025-11-17T09:26:00.315 [DEBUG] [Thread-66896 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:00.315 [DEBUG] [Thread-66896 (handle)] [server.py] [get_status()] Status age = 0.1591506004333496s
2025-11-17T09:26:00.315 [DEBUG] [Thread-66896 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.1591506004333496
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.303192138671875s
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:11.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:11.460 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:11.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:11.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5782349;-24.25665;50.108568;89.993117;50.08601;90.12017;12.598;2460996.80985488;9.43649139;1.3;_
2025-11-17T09:26:11.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.5782349;-24.25665;50.108568;89.993117;50.08601;90.12017;12.598;2460996.80985488;9.43649139;1.3;_
2025-11-17T09:26:11.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:11.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:11.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:11.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:11.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:11.463 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.5782349, teldec = -24.25665
2025-11-17T09:26:11.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.5782349 -24.25665
2025-11-17T09:26:11.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.5782349 -24.25665
2025-11-17T09:26:11.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5782349 -24.25665
2025-11-17T09:26:11.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5782349;-24.25665;50.108568;89.993117;50.08601;90.12017;12.598;2460996.80985491;9.43649139;1.3;_15.5530097746968 -24.1698659907487
2025-11-17T09:26:11.464 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.5530097746968     dec_j2k = -24.1698659907487
2025-11-17T09:26:11.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:11.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104298351667901;171.162351965909;_
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104298351667901;171.162351965909;_
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:11.465 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:11.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:11.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:11.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:11.466 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56343)
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:11.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:11.475 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:26:11.476 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80985488, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298351667901, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.5782349, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.598, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.5530097746968, telescope_dec_j2k=-24.1698659907487, observability=1)
2025-11-17T09:26:11.476 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48166465759277 seconds ago
2025-11-17T09:26:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.288928270339966s
2025-11-17T09:26:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:14.765 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:14.765 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5791513;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59892;2460996.80989314;9.43740528;1.3;_
2025-11-17T09:26:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.5791513;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59892;2460996.80989314;9.43740528;1.3;_
2025-11-17T09:26:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:14.769 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.5791513, teldec = -24.25665
2025-11-17T09:26:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5791513 -24.25665
2025-11-17T09:26:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5791513 -24.25665
2025-11-17T09:26:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5791513 -24.25665
2025-11-17T09:26:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5791513;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59892;2460996.80989316;9.43740528;1.3;_15.5539255459924 -24.1698929590748
2025-11-17T09:26:14.770 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5539255459924     dec_j2k = -24.1698929590748
2025-11-17T09:26:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104298311555958;171.162346601491;_
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104298311555958;171.162346601491;_
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38417)
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:14.788 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.80989314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298311555958, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.5791513, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.59892, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:25:17.064008', telescope_ra_j2k=15.5539255459924, telescope_dec_j2k=-24.1698929590748, observability=1)
2025-11-17T09:26:17.207 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:17.207 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:17.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:17.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:17.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:17.208 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:17.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:17.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:17.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:17.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:17.209 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:26:17.209 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:17.209 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:17.209 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:17.209 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:17.209 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:26:17.210 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:26:17.211 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:18.211 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:18.211 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:18.211 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:18.211 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:18.211 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:26:18.212 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:26:18.213 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:26:18.213 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:18.213 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:18.213 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:18.213 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:18.214 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:18.214 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:18.214 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:18.214 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:18.215 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:18.215 [DEBUG] [ThreadPoolExecutor-2604_0] [payload.py] [to_registers()] [0]
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40751)
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:18.219 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:18.226 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:18.226 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:26:18.226 [DEBUG] [ThreadPoolExecutor-2604_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:26:18.227 [DEBUG] [ThreadPoolExecutor-2604_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:26:18.227 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:18.227 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:18.227 [DEBUG] [ThreadPoolExecutor-2604_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Status age = 3.6585371494293213s
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:18.446 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:18.447 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:18.448 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 17;15.580188;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59995;2460996.80993574;9.43843917;1.3;_
2025-11-17T09:26:18.448 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response 17;15.580188;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59995;2460996.80993574;9.43843917;1.3;_
2025-11-17T09:26:18.448 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:18.448 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:18.448 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:18.449 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:18.449 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:18.449 [INFO] [Thread-66897 (handle)] [driver.py] [get_status()] Telra = 15.580188, teldec = -24.25665
2025-11-17T09:26:18.449 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] UnCookCoordinates 15.580188 -24.25665
2025-11-17T09:26:18.449 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.580188 -24.25665
2025-11-17T09:26:18.449 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.580188 -24.25665
2025-11-17T09:26:18.450 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 17;15.580188;-24.25665;50.108568;89.993117;50.08601;90.12017;12.59995;2460996.80993576;9.43843917;1.3;_15.5549615349639 -24.1699234737572
2025-11-17T09:26:18.450 [INFO] [Thread-66897 (handle)] [driver.py] [get_status()] ra_j2k = 15.5549615349639     dec_j2k = -24.1699234737572
2025-11-17T09:26:18.450 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:18.450 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:18.450 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 140;0.104299113794814;171.162351965909;_
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response 140;0.104299113794814;171.162351965909;_
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:18.451 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:18.452 [DEBUG] [Thread-66897 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:18.452 [DEBUG] [Thread-66897 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:18.452 [DEBUG] [Thread-66897 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46983)
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:18.455 [DEBUG] [Thread-66897 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:18.462 [DEBUG] [Thread-66897 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:18.463 [INFO] [Thread-66897 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.80993574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299113794814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.580188, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.59995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5549615349639, telescope_dec_j2k=-24.1699234737572, observability=1)
2025-11-17T09:26:26.073 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:26:26
2025-11-17T09:26:26.073 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:26.073 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.610654592514038s
2025-11-17T09:26:26.073 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:26.073 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:26.073 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:26.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:26.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:26.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:26.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:26.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5823071;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60207;2460996.81002402;9.4405525;1.3;_
2025-11-17T09:26:26.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5823071;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60207;2460996.81002402;9.4405525;1.3;_
2025-11-17T09:26:26.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:26.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:26.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:26.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:26.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:26.077 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5823071, teldec = -24.25665
2025-11-17T09:26:26.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5823071 -24.25665
2025-11-17T09:26:26.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5823071 -24.25665
2025-11-17T09:26:26.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5823071 -24.25665
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5823071;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60207;2460996.81002405;9.4405525;1.3;_15.5570791822524 -24.1699858684179
2025-11-17T09:26:26.078 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.5570791822524     dec_j2k = -24.1699858684179
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104298110996244;171.162357330327;_
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104298110996244;171.162357330327;_
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:26.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:26.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:26.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:26.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:26.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:26.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:26.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:26.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:26.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:26.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:26.087 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49119)
2025-11-17T09:26:26.088 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:26.088 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:26.088 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:26.088 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:26.088 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:26.095 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:26.095 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81002402, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298110996244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.5823071, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.60207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5570791822524, telescope_dec_j2k=-24.1699858684179, observability=1)
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Status age = 10.417237043380737s
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:36.513 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:36.514 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:36.515 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 17;15.5852017;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60497;2460996.81014485;9.44343917;1.3;_
2025-11-17T09:26:36.515 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response 17;15.5852017;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60497;2460996.81014485;9.44343917;1.3;_
2025-11-17T09:26:36.515 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:36.515 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:36.515 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:36.516 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:36.516 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:36.516 [INFO] [Thread-66898 (handle)] [driver.py] [get_status()] Telra = 15.5852017, teldec = -24.25665
2025-11-17T09:26:36.516 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5852017 -24.25665
2025-11-17T09:26:36.516 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5852017 -24.25665
2025-11-17T09:26:36.517 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5852017 -24.25665
2025-11-17T09:26:36.517 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 17;15.5852017;-24.25665;50.108568;89.993117;50.08601;90.12017;12.60497;2460996.81014487;9.44343917;1.3;_15.5599717994072 -24.1700711405385
2025-11-17T09:26:36.517 [INFO] [Thread-66898 (handle)] [driver.py] [get_status()] ra_j2k = 15.5599717994072     dec_j2k = -24.1700711405385
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 140;0.104298792899272;171.162368059163;_
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response 140;0.104298792899272;171.162368059163;_
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:36.518 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:36.519 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:36.519 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:36.519 [DEBUG] [Thread-66898 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:36.520 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:36.520 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:36.520 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:36.521 [DEBUG] [Thread-66898 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:36.521 [DEBUG] [Thread-66898 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:36.521 [DEBUG] [Thread-66898 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44697)
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:36.525 [DEBUG] [Thread-66898 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:36.532 [DEBUG] [Thread-66898 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:36.532 [INFO] [Thread-66898 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81014485, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104298792899272, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.5852017, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.60497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5599717994072, telescope_dec_j2k=-24.1700711405385, observability=1)
2025-11-17T09:26:43.227 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:43.227 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:43.227 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:43.227 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:43.227 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:43.228 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:43.229 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:43.230 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:26:43.230 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:26:43.230 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:26:43.230 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Status age = 18.041483879089355s
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:54.574 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:54.575 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:54.575 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:54.575 [DEBUG] [Thread-66899 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:54.576 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:54.576 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:54.576 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:54.576 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:54.576 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 17;15.5902433;-24.25665;50.108568;89.993117;50.08601;90.12017;12.61001;2460996.81035389;9.44846694;1.3;_
2025-11-17T09:26:54.577 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response 17;15.5902433;-24.25665;50.108568;89.993117;50.08601;90.12017;12.61001;2460996.81035389;9.44846694;1.3;_
2025-11-17T09:26:54.577 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:54.577 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:54.577 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:54.578 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:54.578 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:54.578 [INFO] [Thread-66899 (handle)] [driver.py] [get_status()] Telra = 15.5902433, teldec = -24.25665
2025-11-17T09:26:54.578 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5902433 -24.25665
2025-11-17T09:26:54.578 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5902433 -24.25665
2025-11-17T09:26:54.578 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5902433 -24.25665
2025-11-17T09:26:54.579 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 17;15.5902433;-24.25665;50.108568;89.993117;50.08601;90.12017;12.61001;2460996.81035392;9.44846694;1.3;_15.5650099499638 -24.1702197815002
2025-11-17T09:26:54.579 [INFO] [Thread-66899 (handle)] [driver.py] [get_status()] ra_j2k = 15.5650099499638     dec_j2k = -24.1702197815002
2025-11-17T09:26:54.579 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:54.579 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:54.579 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 140;0.104299514914242;171.162357330327;_
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response 140;0.104299514914242;171.162357330327;_
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:54.580 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:54.581 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:54.582 [DEBUG] [Thread-66899 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:54.582 [DEBUG] [Thread-66899 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:54.582 [DEBUG] [Thread-66899 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:54.586 [DEBUG] [Thread-66899 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54907)
2025-11-17T09:26:54.586 [DEBUG] [Thread-66899 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:54.587 [DEBUG] [Thread-66899 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:54.587 [DEBUG] [Thread-66899 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:54.587 [DEBUG] [Thread-66899 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:54.587 [DEBUG] [Thread-66899 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:54.594 [DEBUG] [Thread-66899 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:54.595 [DEBUG] [Thread-66899 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:54.595 [DEBUG] [Thread-66899 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:54.595 [DEBUG] [Thread-66899 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:54.595 [INFO] [Thread-66899 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81035389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299514914242, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108568, telescope_az=89.993117, telescope_ra=15.5902433, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61001, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5650099499638, telescope_dec_j2k=-24.1702197815002, observability=1)
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.65328311920166s
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:26:59.248 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:26:59.249 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:26:59.249 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:26:59.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:26:59.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:26:59.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:26:59.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5915507;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61132;2460996.81040797;9.44977083;1.3;_
2025-11-17T09:26:59.250 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.5915507;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61132;2460996.81040797;9.44977083;1.3;_
2025-11-17T09:26:59.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:26:59.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:26:59.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:26:59.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:59.251 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:26:59.251 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.5915507, teldec = -24.25665
2025-11-17T09:26:59.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5915507 -24.25665
2025-11-17T09:26:59.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5915507 -24.25665
2025-11-17T09:26:59.251 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5915507 -24.25665
2025-11-17T09:26:59.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.5915507;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61132;2460996.81040801;9.44977083;1.3;_15.566316456303 -24.1702583523671
2025-11-17T09:26:59.252 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.566316456303     dec_j2k = -24.1702583523671
2025-11-17T09:26:59.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:26:59.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:26:59.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104299474802299;171.162351965909;_
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104299474802299;171.162351965909;_
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:59.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:26:59.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:26:59.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:59.255 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:26:59.255 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56487)
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:26:59.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:26:59.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:26:59.267 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:26:59.267 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81040797, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299474802299, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5915507, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61132, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.566316456303, telescope_dec_j2k=-24.1702583523671, observability=1)
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Status age = 1.0279390811920166s
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:00.295 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 17;15.5918309;-24.25665;50.108567;89.993117;50.08601;90.12017;12.6116;2460996.81042009;9.45005028;1.3;_
2025-11-17T09:27:00.296 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response 17;15.5918309;-24.25665;50.108567;89.993117;50.08601;90.12017;12.6116;2460996.81042009;9.45005028;1.3;_
2025-11-17T09:27:00.297 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:00.297 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:00.297 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:00.298 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:00.298 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:00.298 [INFO] [Thread-66900 (handle)] [driver.py] [get_status()] Telra = 15.5918309, teldec = -24.25665
2025-11-17T09:27:00.298 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5918309 -24.25665
2025-11-17T09:27:00.298 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5918309 -24.25665
2025-11-17T09:27:00.298 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5918309 -24.25665
2025-11-17T09:27:00.299 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 17;15.5918309;-24.25665;50.108567;89.993117;50.08601;90.12017;12.6116;2460996.81042013;9.45005028;1.3;_15.5665964648209 -24.1702666201524
2025-11-17T09:27:00.299 [INFO] [Thread-66900 (handle)] [driver.py] [get_status()] ra_j2k = 15.5665964648209     dec_j2k = -24.1702666201524
2025-11-17T09:27:00.299 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:00.299 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:00.299 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 140;0.1042991940187;171.162346601491;_
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response 140;0.1042991940187;171.162346601491;_
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:00.300 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:00.301 [DEBUG] [Thread-66900 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:00.301 [DEBUG] [Thread-66900 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:00.301 [DEBUG] [Thread-66900 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44157)
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:00.304 [DEBUG] [Thread-66900 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:00.311 [DEBUG] [Thread-66900 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:00.311 [DEBUG] [Thread-66900 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:00.312 [DEBUG] [Thread-66900 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:00.312 [INFO] [Thread-66900 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81042009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1042991940187, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5918309, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.6116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5665964648209, telescope_dec_j2k=-24.1702666201524, observability=1)
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.223807334899902s
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:11.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:11.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:11.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5949765;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61474;2460996.81055021;9.45318722;1.3;_
2025-11-17T09:27:11.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.5949765;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61474;2460996.81055021;9.45318722;1.3;_
2025-11-17T09:27:11.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:11.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:11.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:11.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:11.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:11.539 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.5949765, teldec = -24.25665
2025-11-17T09:27:11.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.5949765 -24.25665
2025-11-17T09:27:11.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.5949765 -24.25665
2025-11-17T09:27:11.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5949765 -24.25665
2025-11-17T09:27:11.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.5949765;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61474;2460996.81055023;9.45318722;1.3;_15.569739916306 -24.1703594688405
2025-11-17T09:27:11.540 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.569739916306     dec_j2k = -24.1703594688405
2025-11-17T09:27:11.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:11.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:11.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104299394578414;171.162357330327;_
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104299394578414;171.162357330327;_
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:11.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:11.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:11.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:11.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32897)
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:11.545 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:11.552 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:27:11.553 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81055021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299394578414, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5949765, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61474, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.569739916306, telescope_dec_j2k=-24.1703594688405, observability=1)
2025-11-17T09:27:11.553 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.479814291000366 seconds ago
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Status age = 1.150108814239502s
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:12.703 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:12.704 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:12.704 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 17;15.5952848;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61505;2460996.8105637;9.45349472;1.3;_
2025-11-17T09:27:12.704 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response 17;15.5952848;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61505;2460996.8105637;9.45349472;1.3;_
2025-11-17T09:27:12.704 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:12.704 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:12.705 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:12.705 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:12.706 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:12.706 [INFO] [Thread-66901 (handle)] [driver.py] [get_status()] Telra = 15.5952848, teldec = -24.25665
2025-11-17T09:27:12.706 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5952848 -24.25665
2025-11-17T09:27:12.706 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5952848 -24.25665
2025-11-17T09:27:12.706 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5952848 -24.25665
2025-11-17T09:27:12.707 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 17;15.5952848;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61505;2460996.81056374;9.45349472;1.3;_15.5700480058403 -24.1703685721256
2025-11-17T09:27:12.707 [INFO] [Thread-66901 (handle)] [driver.py] [get_status()] ra_j2k = 15.5700480058403     dec_j2k = -24.1703685721256
2025-11-17T09:27:12.707 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:12.707 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:12.707 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 140;0.104299153906757;171.162368059163;_
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response 140;0.104299153906757;171.162368059163;_
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:12.708 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:12.709 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:12.710 [DEBUG] [Thread-66901 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:12.710 [DEBUG] [Thread-66901 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:12.710 [DEBUG] [Thread-66901 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48913)
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:12.711 [DEBUG] [Thread-66901 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:12.718 [DEBUG] [Thread-66901 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:12.719 [DEBUG] [Thread-66901 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:12.719 [INFO] [Thread-66901 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8105637, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299153906757, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5952848, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61505, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5700480058403, telescope_dec_j2k=-24.1703685721256, observability=1)
2025-11-17T09:27:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0546140670776367s
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5958737;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61564;2460996.81058767;9.45408194;1.3;_
2025-11-17T09:27:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.5958737;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61564;2460996.81058767;9.45408194;1.3;_
2025-11-17T09:27:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:14.777 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.5958737, teldec = -24.25665
2025-11-17T09:27:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5958737 -24.25665
2025-11-17T09:27:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5958737 -24.25665
2025-11-17T09:27:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5958737 -24.25665
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.5958737;-24.25665;50.108567;89.993117;50.08601;90.12017;12.61564;2460996.81058771;9.45408194;1.3;_15.5706365038735 -24.1703859623714
2025-11-17T09:27:14.778 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5706365038735     dec_j2k = -24.1703859623714
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104299033570928;171.162341237072;_
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104299033570928;171.162341237072;_
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:14.781 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42837)
2025-11-17T09:27:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:14.782 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:14.789 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81058767, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299033570928, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5958737, telescope_dec=-24.25665, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61564, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:26:17.206926', telescope_ra_j2k=15.5706365038735, telescope_dec_j2k=-24.1703859623714, observability=1)
2025-11-17T09:27:17.358 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:17.358 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:17.358 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:17.358 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:17.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:17.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:17.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:17.360 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:17.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:17.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:17.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:17.361 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:27:17.361 [INFO] [ThreadPoolExecutor-2605_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:27:17.361 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T09:27:26.156 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:27:26
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.367650032043457s
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:26.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:26.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:26.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5990482;-24.256649;50.108567;89.993117;50.08601;90.12017;12.61881;2460996.81071942;9.45724778;1.3;_
2025-11-17T09:27:26.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.5990482;-24.256649;50.108567;89.993117;50.08601;90.12017;12.61881;2460996.81071942;9.45724778;1.3;_
2025-11-17T09:27:26.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:26.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:26.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:26.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:26.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:26.160 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.5990482, teldec = -24.256649
2025-11-17T09:27:26.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.5990482 -24.256649
2025-11-17T09:27:26.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.5990482 -24.256649
2025-11-17T09:27:26.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.5990482 -24.256649
2025-11-17T09:27:26.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.5990482;-24.256649;50.108567;89.993117;50.08601;90.12017;12.61881;2460996.81071946;9.45724778;1.3;_15.5738088384415 -24.1704787413059
2025-11-17T09:27:26.161 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.5738088384415     dec_j2k = -24.1704787413059
2025-11-17T09:27:26.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:26.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:26.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:26.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104299474802299;171.162351965909;_
2025-11-17T09:27:26.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104299474802299;171.162351965909;_
2025-11-17T09:27:26.162 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:26.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:26.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:26.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:26.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:26.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:26.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34555)
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:26.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:26.176 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:26.177 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81071942, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299474802299, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.5990482, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.61881, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5738088384415, telescope_dec_j2k=-24.1704787413059, observability=1)
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Status age = 4.594268560409546s
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:30.771 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:30.772 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 17;15.6003264;-24.256649;50.108567;89.993117;50.08601;90.12017;12.62009;2460996.81077282;9.4585225;1.3;_
2025-11-17T09:27:30.773 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response 17;15.6003264;-24.256649;50.108567;89.993117;50.08601;90.12017;12.62009;2460996.81077282;9.4585225;1.3;_
2025-11-17T09:27:30.773 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:30.773 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:30.773 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:30.774 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:30.774 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:30.774 [INFO] [Thread-66902 (handle)] [driver.py] [get_status()] Telra = 15.6003264, teldec = -24.256649
2025-11-17T09:27:30.774 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6003264 -24.256649
2025-11-17T09:27:30.774 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6003264 -24.256649
2025-11-17T09:27:30.774 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6003264 -24.256649
2025-11-17T09:27:30.775 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 17;15.6003264;-24.256649;50.108567;89.993117;50.08601;90.12017;12.62009;2460996.81077286;9.4585225;1.3;_15.5750861670643 -24.1705165180642
2025-11-17T09:27:30.775 [INFO] [Thread-66902 (handle)] [driver.py] [get_status()] ra_j2k = 15.5750861670643     dec_j2k = -24.1705165180642
2025-11-17T09:27:30.775 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:30.775 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:30.775 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 140;0.104299033570928;171.162341237072;_
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response 140;0.104299033570928;171.162341237072;_
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:30.776 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:30.777 [DEBUG] [Thread-66902 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57295)
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:30.778 [DEBUG] [Thread-66902 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:30.785 [DEBUG] [Thread-66902 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:30.786 [DEBUG] [Thread-66902 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:30.786 [DEBUG] [Thread-66902 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:30.786 [INFO] [Thread-66902 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81077282, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299033570928, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108567, telescope_az=89.993117, telescope_ra=15.6003264, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.62009, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5750861670643, telescope_dec_j2k=-24.1705165180642, observability=1)
2025-11-17T09:27:38.231 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.231 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.231 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:38.231 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:38.231 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:27:38.232 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:38.233 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:38.234 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:38.235 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.235 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:38.235 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:38.235 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.235 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:38.236 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:38.237 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:38.237 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:38.237 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:38.237 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:38.238 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:38.238 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:38.238 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Park
2025-11-17T09:27:38.238 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:27:38.238 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:27:38.239 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 29;15.6024188;-24.256649;50.108567;89.993117;50.08601;90.12017;12.62218;2460996.81085924;9.46060917;1.3;_Park Command Successful
2025-11-17T09:27:39.239 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:27:39.239 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:27:39.239 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:27:39.240 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:27:39.240 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:27:40.240 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:27:40.240 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:27:40.240 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:27:40.241 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:27:40.241 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:27:41.241 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:27:41.241 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:27:41.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:27:41.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:27:41.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:27:42.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:27:42.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:27:42.242 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:27:42.243 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:27:42.243 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:27:42.243 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:42.243 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:42.243 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:42.244 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:42.244 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:42.244 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:42.244 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:42.244 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:27:42.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:43.245 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:43.245 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:43.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:43.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:43.245 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:27:43.246 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:27:43.247 [DEBUG] [ThreadPoolExecutor-2604_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:43.247 [INFO] [ThreadPoolExecutor-2604_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Status age = 18.04531979560852s
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:48.831 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 17;15.6053499;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62511;2460996.81098185;9.46353222;1.3;_
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response 17;15.6053499;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62511;2460996.81098185;9.46353222;1.3;_
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:48.832 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:48.833 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:48.833 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:48.833 [INFO] [Thread-66903 (handle)] [driver.py] [get_status()] Telra = 15.6053499, teldec = -24.256649
2025-11-17T09:27:48.833 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6053499 -24.256649
2025-11-17T09:27:48.833 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6053499 -24.256649
2025-11-17T09:27:48.833 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6053499 -24.256649
2025-11-17T09:27:48.834 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 17;15.6053499;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62511;2460996.81098187;9.46353222;1.3;_15.5801062457122 -24.170665080543
2025-11-17T09:27:48.834 [INFO] [Thread-66903 (handle)] [driver.py] [get_status()] ra_j2k = 15.5801062457122     dec_j2k = -24.170665080543
2025-11-17T09:27:48.834 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:48.834 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:48.834 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 140;0.104299996257556;171.162351965909;_
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response 140;0.104299996257556;171.162351965909;_
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:48.835 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:48.836 [DEBUG] [Thread-66903 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:48.836 [DEBUG] [Thread-66903 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:48.836 [DEBUG] [Thread-66903 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:48.838 [DEBUG] [Thread-66903 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35945)
2025-11-17T09:27:48.839 [DEBUG] [Thread-66903 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:48.839 [DEBUG] [Thread-66903 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:48.839 [DEBUG] [Thread-66903 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:48.839 [DEBUG] [Thread-66903 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:48.839 [DEBUG] [Thread-66903 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:48.846 [DEBUG] [Thread-66903 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:48.846 [INFO] [Thread-66903 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81098185, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299996257556, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6053499, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.62511, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5801062457122, telescope_dec_j2k=-24.170665080543, observability=1)
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.512530088424683s
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:27:58.359 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:27:58.360 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:27:58.361 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6080205;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62779;2460996.81109214;9.46619556;1.3;_
2025-11-17T09:27:58.361 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6080205;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62779;2460996.81109214;9.46619556;1.3;_
2025-11-17T09:27:58.361 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:27:58.361 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:27:58.361 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:27:58.362 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:58.362 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:27:58.362 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6080205, teldec = -24.256649
2025-11-17T09:27:58.362 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6080205 -24.256649
2025-11-17T09:27:58.362 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6080205 -24.256649
2025-11-17T09:27:58.362 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6080205 -24.256649
2025-11-17T09:27:58.363 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6080205;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62779;2460996.81109216;9.46619556;1.3;_15.5827750289779 -24.1707441209237
2025-11-17T09:27:58.363 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.5827750289779     dec_j2k = -24.1707441209237
2025-11-17T09:27:58.363 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:27:58.364 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:27:58.364 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:27:58.364 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104299073682871;171.162346601491;_
2025-11-17T09:27:58.364 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104299073682871;171.162346601491;_
2025-11-17T09:27:58.364 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:27:58.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:27:58.366 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:58.366 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:27:58.366 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:27:58.371 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44029)
2025-11-17T09:27:58.372 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:27:58.372 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:27:58.372 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:27:58.372 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:27:58.372 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:27:58.379 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:27:58.380 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81109214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299073682871, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6080205, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.62779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5827750289779, telescope_dec_j2k=-24.1707441209237, observability=1)
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Status age = 1.962770700454712s
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:00.342 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:00.343 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:00.344 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 17;15.6085528;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62832;2460996.81111509;9.46672639;1.3;_
2025-11-17T09:28:00.345 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response 17;15.6085528;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62832;2460996.81111509;9.46672639;1.3;_
2025-11-17T09:28:00.345 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:00.345 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:00.345 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:00.346 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:00.346 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:00.346 [INFO] [Thread-66904 (handle)] [driver.py] [get_status()] Telra = 15.6085528, teldec = -24.256649
2025-11-17T09:28:00.346 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6085528 -24.256649
2025-11-17T09:28:00.346 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6085528 -24.256649
2025-11-17T09:28:00.346 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6085528 -24.256649
2025-11-17T09:28:00.347 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 17;15.6085528;-24.256649;50.108566;89.993117;50.08601;90.12017;12.62832;2460996.81111513;9.46672639;1.3;_15.583306967046 -24.1707598802232
2025-11-17T09:28:00.347 [INFO] [Thread-66904 (handle)] [driver.py] [get_status()] ra_j2k = 15.583306967046     dec_j2k = -24.1707598802232
2025-11-17T09:28:00.347 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:00.347 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:00.347 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 140;0.104300036369499;171.162357330327;_
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response 140;0.104300036369499;171.162357330327;_
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:00.348 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:00.349 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:28:00.349 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:28:00.349 [DEBUG] [Thread-66904 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:28:00.349 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:00.350 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:00.350 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:00.350 [DEBUG] [Thread-66904 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:00.350 [DEBUG] [Thread-66904 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:00.350 [DEBUG] [Thread-66904 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50663)
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:00.352 [DEBUG] [Thread-66904 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:00.359 [DEBUG] [Thread-66904 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:00.360 [INFO] [Thread-66904 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81111509, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300036369499, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6085528, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.62832, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.583306967046, telescope_dec_j2k=-24.1707598802232, observability=1)
2025-11-17T09:28:06.950 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:06.950 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Status age = 6.590889930725098s
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:06.951 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:06.952 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 17;15.6104134;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63018;2460996.81119157;9.46858194;1.3;_
2025-11-17T09:28:06.952 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response 17;15.6104134;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63018;2460996.81119157;9.46858194;1.3;_
2025-11-17T09:28:06.952 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:06.952 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:06.952 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:06.953 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:06.953 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:06.953 [INFO] [Thread-66905 (handle)] [driver.py] [get_status()] Telra = 15.6104134, teldec = -24.256649
2025-11-17T09:28:06.953 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6104134 -24.256649
2025-11-17T09:28:06.954 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6104134 -24.256649
2025-11-17T09:28:06.954 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6104134 -24.256649
2025-11-17T09:28:06.954 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 17;15.6104134;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63018;2460996.8111916;9.46858194;1.3;_15.585166302412 -24.1708149785187
2025-11-17T09:28:06.955 [INFO] [Thread-66905 (handle)] [driver.py] [get_status()] ra_j2k = 15.585166302412     dec_j2k = -24.1708149785187
2025-11-17T09:28:06.955 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:06.955 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:06.955 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:06.955 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 140;0.104300076481441;171.162362694745;_
2025-11-17T09:28:06.955 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response 140;0.104300076481441;171.162362694745;_
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:06.956 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:06.957 [DEBUG] [Thread-66905 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:06.957 [DEBUG] [Thread-66905 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:06.957 [DEBUG] [Thread-66905 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:06.959 [DEBUG] [Thread-66905 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42555)
2025-11-17T09:28:06.959 [DEBUG] [Thread-66905 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:06.959 [DEBUG] [Thread-66905 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:06.959 [DEBUG] [Thread-66905 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:06.959 [DEBUG] [Thread-66905 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:06.960 [DEBUG] [Thread-66905 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:06.966 [DEBUG] [Thread-66905 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:06.967 [DEBUG] [Thread-66905 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:06.967 [INFO] [Thread-66905 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81119157, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300076481441, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6104134, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.63018, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.585166302412, telescope_dec_j2k=-24.1708149785187, observability=1)
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.645914077758789s
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:11.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:11.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:11.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6117036;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63147;2460996.81124554;9.46986861;1.3;_
2025-11-17T09:28:11.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6117036;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63147;2460996.81124554;9.46986861;1.3;_
2025-11-17T09:28:11.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:11.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:11.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:11.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:11.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:11.616 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6117036, teldec = -24.256649
2025-11-17T09:28:11.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6117036 -24.256649
2025-11-17T09:28:11.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6117036 -24.256649
2025-11-17T09:28:11.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6117036 -24.256649
2025-11-17T09:28:11.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6117036;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63147;2460996.81124557;9.46986861;1.3;_15.5864556258959 -24.1708531975746
2025-11-17T09:28:11.617 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.5864556258959     dec_j2k = -24.1708531975746
2025-11-17T09:28:11.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:11.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:11.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:11.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10429991603367;171.162362694745;_
2025-11-17T09:28:11.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10429991603367;171.162362694745;_
2025-11-17T09:28:11.618 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:11.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:11.619 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:11.619 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:11.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43399)
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:11.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:11.632 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:28:11.632 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81124554, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10429991603367, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6117036, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.63147, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5864556258959, telescope_dec_j2k=-24.1708531975746, observability=1)
2025-11-17T09:28:11.633 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47612285614014 seconds ago
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.111516237258911s
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:14.744 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:14.745 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6125657;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63233;2460996.81128178;9.47072833;1.3;_
2025-11-17T09:28:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.6125657;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63233;2460996.81128178;9.47072833;1.3;_
2025-11-17T09:28:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:14.746 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:14.747 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.6125657, teldec = -24.256649
2025-11-17T09:28:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6125657 -24.256649
2025-11-17T09:28:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6125657 -24.256649
2025-11-17T09:28:14.747 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6125657 -24.256649
2025-11-17T09:28:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6125657;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63233;2460996.81128181;9.47072833;1.3;_15.5873171404084 -24.1708787407334
2025-11-17T09:28:14.748 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.5873171404084     dec_j2k = -24.1708787407334
2025-11-17T09:28:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:14.748 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104299835809785;171.162357330327;_
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104299835809785;171.162357330327;_
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:14.749 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:14.750 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55765)
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:14.755 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:14.763 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81128178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104299835809785, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6125657, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.63233, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:27:17.358232', telescope_ra_j2k=15.5873171404084, telescope_dec_j2k=-24.1708787407334, observability=1)
2025-11-17T09:28:17.502 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:17.502 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:17.502 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:17.502 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:17.502 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:17.503 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:17.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:17.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:17.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:17.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:17.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:17.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:17.504 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:17.505 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:28:17.506 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:28:17.507 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:18.507 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:18.507 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:18.507 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:18.507 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:18.507 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:28:18.508 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:18.509 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:18.510 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:18.510 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:18.510 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:18.510 [DEBUG] [ThreadPoolExecutor-2606_0] [payload.py] [to_registers()] [0]
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42055)
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:18.513 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:18.520 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:18.521 [DEBUG] [ThreadPoolExecutor-2606_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Status age = 10.25164008140564s
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:25.015 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 17;15.6154324;-24.256649;50.108566;89.993117;50.08601;90.12017;12.6352;2460996.81140065;9.47358722;1.3;_
2025-11-17T09:28:25.016 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response 17;15.6154324;-24.256649;50.108566;89.993117;50.08601;90.12017;12.6352;2460996.81140065;9.47358722;1.3;_
2025-11-17T09:28:25.017 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:25.017 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:25.017 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:25.018 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:25.018 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:25.018 [INFO] [Thread-66906 (handle)] [driver.py] [get_status()] Telra = 15.6154324, teldec = -24.256649
2025-11-17T09:28:25.018 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6154324 -24.256649
2025-11-17T09:28:25.018 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6154324 -24.256649
2025-11-17T09:28:25.018 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6154324 -24.256649
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 17;15.6154324;-24.256649;50.108566;89.993117;50.08601;90.12017;12.6352;2460996.81140068;9.47358722;1.3;_15.5901818946247 -24.1709637100236
2025-11-17T09:28:25.019 [INFO] [Thread-66906 (handle)] [driver.py] [get_status()] ra_j2k = 15.5901818946247     dec_j2k = -24.1709637100236
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 140;0.104300357265041;171.162351965909;_
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response 140;0.104300357265041;171.162351965909;_
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:25.019 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:25.020 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:25.021 [DEBUG] [Thread-66906 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:25.021 [DEBUG] [Thread-66906 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:25.021 [DEBUG] [Thread-66906 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50103)
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:25.026 [DEBUG] [Thread-66906 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:25.033 [DEBUG] [Thread-66906 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:25.033 [INFO] [Thread-66906 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81140065, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300357265041, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6154324, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.6352, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.5901818946247, telescope_dec_j2k=-24.1709637100236, observability=1)
2025-11-17T09:28:26.237 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:28:26
2025-11-17T09:28:26.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:26.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.2040398120880127s
2025-11-17T09:28:26.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:26.237 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:26.237 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:26.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:26.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6157689;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63553;2460996.8114148;9.47392278;1.3;_
2025-11-17T09:28:26.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.6157689;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63553;2460996.8114148;9.47392278;1.3;_
2025-11-17T09:28:26.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:26.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:26.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:26.240 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:26.240 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:26.240 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.6157689, teldec = -24.256649
2025-11-17T09:28:26.240 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6157689 -24.256649
2025-11-17T09:28:26.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6157689 -24.256649
2025-11-17T09:28:26.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6157689 -24.256649
2025-11-17T09:28:26.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6157689;-24.256649;50.108566;89.993117;50.08601;90.12017;12.63553;2460996.81141483;9.47392278;1.3;_15.590518166336 -24.1709736871285
2025-11-17T09:28:26.242 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.590518166336     dec_j2k = -24.1709736871285
2025-11-17T09:28:26.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:26.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:26.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:26.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104300838608355;171.162357330327;_
2025-11-17T09:28:26.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104300838608355;171.162357330327;_
2025-11-17T09:28:26.243 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:26.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:26.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:26.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:26.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:26.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:26.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:26.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43269)
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:26.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:26.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:26.254 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8114148, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300838608355, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108566, telescope_az=89.993117, telescope_ra=15.6157689, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.63553, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.590518166336, telescope_dec_j2k=-24.1709736871285, observability=1)
2025-11-17T09:28:43.142 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Status age = 16.88904595375061s
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:43.143 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 17;15.6204737;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64024;2460996.81161046;9.47861472;1.3;_
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response 17;15.6204737;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64024;2460996.81161046;9.47861472;1.3;_
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:43.144 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:43.145 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:43.145 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:43.145 [INFO] [Thread-66907 (handle)] [driver.py] [get_status()] Telra = 15.6204737, teldec = -24.256649
2025-11-17T09:28:43.145 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6204737 -24.256649
2025-11-17T09:28:43.145 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6204737 -24.256649
2025-11-17T09:28:43.145 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6204737 -24.256649
2025-11-17T09:28:43.146 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 17;15.6204737;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64024;2460996.81161049;9.47861472;1.3;_15.5952197769657 -24.1711132533282
2025-11-17T09:28:43.146 [INFO] [Thread-66907 (handle)] [driver.py] [get_status()] ra_j2k = 15.5952197769657     dec_j2k = -24.1711132533282
2025-11-17T09:28:43.146 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:43.146 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:43.146 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 140;0.104300758384469;171.162346601491;_
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response 140;0.104300758384469;171.162346601491;_
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:43.147 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:43.148 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:43.149 [DEBUG] [Thread-66907 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:43.149 [DEBUG] [Thread-66907 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:43.149 [DEBUG] [Thread-66907 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59697)
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:43.150 [DEBUG] [Thread-66907 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:43.157 [DEBUG] [Thread-66907 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:43.158 [INFO] [Thread-66907 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81161046, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300758384469, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6204737, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.64024, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.5952197769657, telescope_dec_j2k=-24.1711132533282, observability=1)
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:43.521 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:43.522 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:28:43.523 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:28:43.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.317301511764526s
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:28:57.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:28:57.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:28:57.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6244883;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64425;2460996.81177635;9.48261833;1.3;_
2025-11-17T09:28:57.477 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6244883;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64425;2460996.81177635;9.48261833;1.3;_
2025-11-17T09:28:57.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:28:57.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:28:57.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:28:57.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:57.479 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:28:57.479 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6244883, teldec = -24.256649
2025-11-17T09:28:57.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6244883 -24.256649
2025-11-17T09:28:57.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6244883 -24.256649
2025-11-17T09:28:57.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6244883 -24.256649
2025-11-17T09:28:57.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6244883;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64425;2460996.81177639;9.48261833;1.3;_15.599231659121 -24.1712324490211
2025-11-17T09:28:57.480 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.599231659121     dec_j2k = -24.1712324490211
2025-11-17T09:28:57.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:28:57.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:28:57.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104300437488927;171.162351965909;_
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104300437488927;171.162351965909;_
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:28:57.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:28:57.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:57.483 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:28:57.483 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52411)
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:28:57.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:28:57.495 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:28:57.495 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81177635, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300437488927, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6244883, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.64425, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.599231659121, telescope_dec_j2k=-24.1712324490211, observability=1)
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Status age = 2.897031307220459s
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:00.392 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:00.393 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 17;15.6252732;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64504;2460996.8118101;9.48340111;1.3;_
2025-11-17T09:29:00.394 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response 17;15.6252732;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64504;2460996.8118101;9.48340111;1.3;_
2025-11-17T09:29:00.394 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:00.394 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:00.394 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:00.395 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:00.395 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:00.395 [INFO] [Thread-66908 (handle)] [driver.py] [get_status()] Telra = 15.6252732, teldec = -24.256649
2025-11-17T09:29:00.395 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6252732 -24.256649
2025-11-17T09:29:00.395 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6252732 -24.256649
2025-11-17T09:29:00.395 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6252732 -24.256649
2025-11-17T09:29:00.396 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 17;15.6252732;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64504;2460996.81181014;9.48340111;1.3;_15.6000160281435 -24.1712557643189
2025-11-17T09:29:00.396 [INFO] [Thread-66908 (handle)] [driver.py] [get_status()] ra_j2k = 15.6000160281435     dec_j2k = -24.1712557643189
2025-11-17T09:29:00.396 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:00.396 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:00.396 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 140;0.104300678160583;171.162351965909;_
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response 140;0.104300678160583;171.162351965909;_
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:00.397 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:00.398 [DEBUG] [Thread-66908 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:00.398 [DEBUG] [Thread-66908 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:00.398 [DEBUG] [Thread-66908 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33283)
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:00.402 [DEBUG] [Thread-66908 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:00.409 [DEBUG] [Thread-66908 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:00.409 [DEBUG] [Thread-66908 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:00.409 [DEBUG] [Thread-66908 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:00.409 [DEBUG] [Thread-66908 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:00.409 [DEBUG] [Thread-66908 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:00.410 [DEBUG] [Thread-66908 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:00.410 [DEBUG] [Thread-66908 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:00.410 [DEBUG] [Thread-66908 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:00.410 [DEBUG] [Thread-66908 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:00.410 [INFO] [Thread-66908 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8118101, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300678160583, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6252732, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.64504, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.6000160281435, telescope_dec_j2k=-24.1712557643189, observability=1)
2025-11-17T09:29:01.210 [DEBUG] [Thread-66909 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:01.210 [DEBUG] [Thread-66909 (handle)] [server.py] [get_status()] Status age = 0.800281286239624s
2025-11-17T09:29:01.210 [DEBUG] [Thread-66909 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.800281286239624
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.282987356185913s
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:11.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:11.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:11.695 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6284411;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64821;2460996.81194091;9.48656028;1.3;_
2025-11-17T09:29:11.695 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6284411;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64821;2460996.81194091;9.48656028;1.3;_
2025-11-17T09:29:11.695 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:11.695 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:11.695 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:11.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:11.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:11.696 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6284411, teldec = -24.256649
2025-11-17T09:29:11.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6284411 -24.256649
2025-11-17T09:29:11.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6284411 -24.256649
2025-11-17T09:29:11.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6284411 -24.256649
2025-11-17T09:29:11.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6284411;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64821;2460996.81194094;9.48656028;1.3;_15.6031817863931 -24.1713499032955
2025-11-17T09:29:11.697 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.6031817863931     dec_j2k = -24.1713499032955
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104300437488927;171.162351965909;_
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104300437488927;171.162351965909;_
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:11.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:11.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:11.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:11.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:11.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:11.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:11.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:11.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:11.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:11.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:11.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39135)
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:11.702 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:11.709 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:29:11.709 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81194091, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300437488927, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6284411, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.64821, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.6031817863931, telescope_dec_j2k=-24.1713499032955, observability=1)
2025-11-17T09:29:11.709 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47220706939697 seconds ago
2025-11-17T09:29:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.054091453552246s
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6292823;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64905;2460996.81197645;9.48739917;1.3;_
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.6292823;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64905;2460996.81197645;9.48739917;1.3;_
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:14.766 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.6292823, teldec = -24.256649
2025-11-17T09:29:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6292823 -24.256649
2025-11-17T09:29:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6292823 -24.256649
2025-11-17T09:29:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6292823 -24.256649
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6292823;-24.256649;50.108565;89.993117;50.08601;90.12017;12.64905;2460996.81197647;9.48739917;1.3;_15.6040224180269 -24.1713749108323
2025-11-17T09:29:14.768 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.6040224180269     dec_j2k = -24.1713749108323
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104300878720297;171.162368059163;_
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104300878720297;171.162368059163;_
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:14.774 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57631)
2025-11-17T09:29:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:14.774 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:14.775 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:14.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:14.782 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81197645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300878720297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6292823, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.64905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:28:17.501751', telescope_ra_j2k=15.6040224180269, telescope_dec_j2k=-24.1713749108323, observability=1)
2025-11-17T09:29:17.644 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:17.644 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:17.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:17.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:17.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:17.645 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:17.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:17.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:17.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:17.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:17.646 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:29:17.646 [INFO] [ThreadPoolExecutor-2607_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:29:17.646 [INFO] [ThreadPoolExecutor-2607_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Status age = 4.494751930236816s
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:19.277 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:19.278 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:19.279 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 17;15.6305357;-24.256649;50.108565;89.993117;50.08601;90.12017;12.6503;2460996.81202869;9.48864917;1.3;_
2025-11-17T09:29:19.279 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response 17;15.6305357;-24.256649;50.108565;89.993117;50.08601;90.12017;12.6503;2460996.81202869;9.48864917;1.3;_
2025-11-17T09:29:19.279 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:19.279 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:19.279 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:19.280 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:19.280 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:19.280 [INFO] [Thread-66910 (handle)] [driver.py] [get_status()] Telra = 15.6305357, teldec = -24.256649
2025-11-17T09:29:19.280 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6305357 -24.256649
2025-11-17T09:29:19.280 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6305357 -24.256649
2025-11-17T09:29:19.280 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6305357 -24.256649
2025-11-17T09:29:19.281 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 17;15.6305357;-24.256649;50.108565;89.993117;50.08601;90.12017;12.6503;2460996.81202872;9.48864917;1.3;_15.6052749714267 -24.1714121801967
2025-11-17T09:29:19.281 [INFO] [Thread-66910 (handle)] [driver.py] [get_status()] ra_j2k = 15.6052749714267     dec_j2k = -24.1714121801967
2025-11-17T09:29:19.281 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:19.281 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:19.281 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 140;0.104300878720297;171.162357330327;_
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response 140;0.104300878720297;171.162357330327;_
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:19.282 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:19.283 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:19.284 [DEBUG] [Thread-66910 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:19.284 [DEBUG] [Thread-66910 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:19.284 [DEBUG] [Thread-66910 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:19.289 [DEBUG] [Thread-66910 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55027)
2025-11-17T09:29:19.289 [DEBUG] [Thread-66910 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:19.289 [DEBUG] [Thread-66910 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:19.290 [DEBUG] [Thread-66910 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:19.290 [DEBUG] [Thread-66910 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:19.290 [DEBUG] [Thread-66910 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:19.297 [DEBUG] [Thread-66910 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:19.297 [INFO] [Thread-66910 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81202869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300878720297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6305357, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.6503, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6052749714267, telescope_dec_j2k=-24.1714121801967, observability=1)
2025-11-17T09:29:26.314 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:29:26
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.0169079303741455s
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:26.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:26.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6325181;-24.256649;50.108565;89.993117;50.08601;90.12017;12.65228;2460996.81211013;9.49062611;1.3;_
2025-11-17T09:29:26.316 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.6325181;-24.256649;50.108565;89.993117;50.08601;90.12017;12.65228;2460996.81211013;9.49062611;1.3;_
2025-11-17T09:29:26.316 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:26.316 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:26.316 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:26.317 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:26.317 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:26.317 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.6325181, teldec = -24.256649
2025-11-17T09:29:26.317 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6325181 -24.256649
2025-11-17T09:29:26.317 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6325181 -24.256649
2025-11-17T09:29:26.317 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6325181 -24.256649
2025-11-17T09:29:26.318 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6325181;-24.256649;50.108565;89.993117;50.08601;90.12017;12.65228;2460996.81211016;9.49062611;1.3;_15.6072560330975 -24.1714711450886
2025-11-17T09:29:26.318 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.6072560330975     dec_j2k = -24.1714711450886
2025-11-17T09:29:26.318 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:26.318 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:26.318 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104300798496412;171.162362694745;_
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104300798496412;171.162362694745;_
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:26.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:26.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:26.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:29:26.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:29:26.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57759)
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:26.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:26.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:26.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:26.334 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:26.335 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:26.335 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81211013, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104300798496412, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108565, telescope_az=89.993117, telescope_ra=15.6325181, telescope_dec=-24.256649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.65228, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6072560330975, telescope_dec_j2k=-24.1714711450886, observability=1)
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Status age = 11.073280811309814s
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:37.408 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:37.409 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:37.410 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 17;15.6356048;-24.256648;50.108564;89.993117;50.08601;90.12017;12.65537;2460996.81223854;9.49370444;1.3;_
2025-11-17T09:29:37.410 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response 17;15.6356048;-24.256648;50.108564;89.993117;50.08601;90.12017;12.65537;2460996.81223854;9.49370444;1.3;_
2025-11-17T09:29:37.410 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:37.410 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:37.410 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:37.411 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:37.411 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:37.411 [INFO] [Thread-66911 (handle)] [driver.py] [get_status()] Telra = 15.6356048, teldec = -24.256648
2025-11-17T09:29:37.411 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6356048 -24.256648
2025-11-17T09:29:37.411 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6356048 -24.256648
2025-11-17T09:29:37.411 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6356048 -24.256648
2025-11-17T09:29:37.412 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 17;15.6356048;-24.256648;50.108564;89.993117;50.08601;90.12017;12.65537;2460996.81223856;9.49370444;1.3;_15.6103406510403 -24.1715620027997
2025-11-17T09:29:37.412 [INFO] [Thread-66911 (handle)] [driver.py] [get_status()] ra_j2k = 15.6103406510403     dec_j2k = -24.1715620027997
2025-11-17T09:29:37.412 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:37.412 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:37.412 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 140;0.104301680959154;171.162357330327;_
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response 140;0.104301680959154;171.162357330327;_
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:37.413 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:37.414 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:37.415 [DEBUG] [Thread-66911 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:37.415 [DEBUG] [Thread-66911 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:37.415 [DEBUG] [Thread-66911 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39643)
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:37.418 [DEBUG] [Thread-66911 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:37.426 [DEBUG] [Thread-66911 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:37.426 [INFO] [Thread-66911 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81223854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301680959154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993117, telescope_ra=15.6356048, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.65537, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6103406510403, telescope_dec_j2k=-24.1715620027997, observability=1)
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.524 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:29:38.525 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:38.526 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:38.527 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:29:38.528 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:38.529 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Park
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:29:38.530 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:29:38.531 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 29;15.6359137;-24.256648;50.108564;89.993117;50.08601;90.12017;12.65568;2460996.81225152;9.4940125;1.3;_Park Command Successful
2025-11-17T09:29:39.531 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:29:39.531 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:29:39.531 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:29:39.532 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:29:39.532 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:29:40.533 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:29:40.533 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:29:40.533 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:29:40.534 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:29:40.534 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:29:41.534 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:29:41.534 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:29:41.534 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:29:41.535 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:29:41.535 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:29:42.535 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:29:42.535 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:29:42.535 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:42.536 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:29:42.537 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:29:42.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:43.538 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:29:43.539 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:29:43.540 [DEBUG] [ThreadPoolExecutor-2606_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:43.540 [INFO] [ThreadPoolExecutor-2606_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Status age = 18.046268701553345s
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:55.472 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:55.473 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:55.474 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 17;15.6406261;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66039;2460996.81244762;9.49871194;1.3;_
2025-11-17T09:29:55.474 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response 17;15.6406261;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66039;2460996.81244762;9.49871194;1.3;_
2025-11-17T09:29:55.474 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:55.474 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:55.474 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:55.475 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:55.475 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:55.475 [INFO] [Thread-66912 (handle)] [driver.py] [get_status()] Telra = 15.6406261, teldec = -24.256648
2025-11-17T09:29:55.475 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6406261 -24.256648
2025-11-17T09:29:55.475 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6406261 -24.256648
2025-11-17T09:29:55.476 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6406261 -24.256648
2025-11-17T09:29:55.476 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 17;15.6406261;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66039;2460996.81244764;9.49871194;1.3;_15.6153585680377 -24.1717115529693
2025-11-17T09:29:55.477 [INFO] [Thread-66912 (handle)] [driver.py] [get_status()] ra_j2k = 15.6153585680377     dec_j2k = -24.1717115529693
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 140;0.104301841406925;171.162357330327;_
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response 140;0.104301841406925;171.162357330327;_
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:55.477 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:55.478 [DEBUG] [Thread-66912 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:55.479 [DEBUG] [Thread-66912 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37625)
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:55.482 [DEBUG] [Thread-66912 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:55.489 [DEBUG] [Thread-66912 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:55.489 [DEBUG] [Thread-66912 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:55.489 [DEBUG] [Thread-66912 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:55.489 [DEBUG] [Thread-66912 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:55.489 [DEBUG] [Thread-66912 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:55.490 [DEBUG] [Thread-66912 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:55.490 [DEBUG] [Thread-66912 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:55.490 [DEBUG] [Thread-66912 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:55.490 [DEBUG] [Thread-66912 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:55.490 [INFO] [Thread-66912 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81244762, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301841406925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993117, telescope_ra=15.6406261, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66039, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6153585680377, telescope_dec_j2k=-24.1717115529693, observability=1)
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.0961322784423828s
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:29:56.586 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:29:56.587 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:29:56.588 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6409252;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66069;2460996.81246051;9.49901028;1.3;_
2025-11-17T09:29:56.588 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6409252;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66069;2460996.81246051;9.49901028;1.3;_
2025-11-17T09:29:56.588 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:29:56.588 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:29:56.588 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:29:56.589 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:56.589 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:29:56.589 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6409252, teldec = -24.256648
2025-11-17T09:29:56.589 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6409252 -24.256648
2025-11-17T09:29:56.589 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6409252 -24.256648
2025-11-17T09:29:56.589 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6409252 -24.256648
2025-11-17T09:29:56.590 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6409252;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66069;2460996.81246053;9.49901028;1.3;_15.6156574666912 -24.1717204658104
2025-11-17T09:29:56.590 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.6156574666912     dec_j2k = -24.1717204658104
2025-11-17T09:29:56.590 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:29:56.590 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104301520511382;171.162368059163;_
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104301520511382;171.162368059163;_
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:56.591 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:29:56.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:29:56.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:29:56.593 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:29:56.593 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41223)
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:29:56.600 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:29:56.607 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:29:56.607 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81246051, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301520511382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993117, telescope_ra=15.6409252, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66069, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6156574666912, telescope_dec_j2k=-24.1717204658104, observability=1)
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Status age = 3.835665464401245s
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:00.443 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:00.444 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:00.445 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 17;15.6420188;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66178;2460996.81250515;9.50010083;1.3;_
2025-11-17T09:30:00.445 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response 17;15.6420188;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66178;2460996.81250515;9.50010083;1.3;_
2025-11-17T09:30:00.445 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:00.445 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:00.445 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:00.446 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:00.446 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:00.446 [INFO] [Thread-66913 (handle)] [driver.py] [get_status()] Telra = 15.6420188, teldec = -24.256648
2025-11-17T09:30:00.446 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6420188 -24.256648
2025-11-17T09:30:00.447 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6420188 -24.256648
2025-11-17T09:30:00.447 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6420188 -24.256648
2025-11-17T09:30:00.447 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 17;15.6420188;-24.256648;50.108564;89.993117;50.08601;90.12017;12.66178;2460996.81250517;9.50010083;1.3;_15.6167503306665 -24.1717530583453
2025-11-17T09:30:00.448 [INFO] [Thread-66913 (handle)] [driver.py] [get_status()] ra_j2k = 15.6167503306665     dec_j2k = -24.1717530583453
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 140;0.104301440287497;171.162357330327;_
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response 140;0.104301440287497;171.162357330327;_
2025-11-17T09:30:00.448 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:00.449 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:00.449 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:00.449 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:00.450 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:00.451 [DEBUG] [Thread-66913 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:00.451 [DEBUG] [Thread-66913 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:00.451 [DEBUG] [Thread-66913 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52361)
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:00.453 [DEBUG] [Thread-66913 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:00.461 [DEBUG] [Thread-66913 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:00.461 [INFO] [Thread-66913 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81250515, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301440287497, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993117, telescope_ra=15.6420188, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6167503306665, telescope_dec_j2k=-24.1717530583453, observability=1)
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.307817459106445s
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:11.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:11.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:11.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6451657;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66493;2460996.81263624;9.50323917;1.3;_
2025-11-17T09:30:11.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6451657;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66493;2460996.81263624;9.50323917;1.3;_
2025-11-17T09:30:11.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:11.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:11.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:11.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:11.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:11.772 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6451657, teldec = -24.256648
2025-11-17T09:30:11.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6451657 -24.256648
2025-11-17T09:30:11.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6451657 -24.256648
2025-11-17T09:30:11.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6451657 -24.256648
2025-11-17T09:30:11.773 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6451657;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66493;2460996.81263626;9.50323917;1.3;_15.619895114106 -24.1718468846836
2025-11-17T09:30:11.773 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.619895114106     dec_j2k = -24.1718468846836
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104302362862181;171.162368059163;_
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104302362862181;171.162368059163;_
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:11.774 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:11.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:11.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:11.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:11.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51223)
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:11.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:11.794 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:30:11.794 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81263624, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302362862181, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993116, telescope_ra=15.6451657, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66493, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.619895114106, telescope_dec_j2k=-24.1718468846836, observability=1)
2025-11-17T09:30:11.794 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.480374336242676 seconds ago
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Status age = 1.7451775074005127s
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:13.539 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:13.540 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:13.541 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 17;15.6456696;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66543;2460996.81265672;9.50374167;1.3;_
2025-11-17T09:30:13.541 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response 17;15.6456696;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66543;2460996.81265672;9.50374167;1.3;_
2025-11-17T09:30:13.541 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:13.541 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:13.541 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:13.542 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:13.542 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:13.542 [INFO] [Thread-66914 (handle)] [driver.py] [get_status()] Telra = 15.6456696, teldec = -24.256648
2025-11-17T09:30:13.542 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6456696 -24.256648
2025-11-17T09:30:13.542 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6456696 -24.256648
2025-11-17T09:30:13.542 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6456696 -24.256648
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 17;15.6456696;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66543;2460996.81265675;9.50374167;1.3;_15.6203986753823 -24.1718619141267
2025-11-17T09:30:13.543 [INFO] [Thread-66914 (handle)] [driver.py] [get_status()] ra_j2k = 15.6203986753823     dec_j2k = -24.1718619141267
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 140;0.104301881518868;171.162362694745;_
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response 140;0.104301881518868;171.162362694745;_
2025-11-17T09:30:13.543 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:13.544 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:13.544 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:13.544 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:13.545 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:13.546 [DEBUG] [Thread-66914 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:13.546 [DEBUG] [Thread-66914 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:13.546 [DEBUG] [Thread-66914 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44155)
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:13.552 [DEBUG] [Thread-66914 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:13.559 [DEBUG] [Thread-66914 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:13.560 [INFO] [Thread-66914 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81265672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301881518868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993116, telescope_ra=15.6456696, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66543, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6203986753823, telescope_dec_j2k=-24.1718619141267, observability=1)
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.2176682949066162s
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6459966;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66576;2460996.81267105;9.50406778;1.3;_
2025-11-17T09:30:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.6459966;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66576;2460996.81267105;9.50406778;1.3;_
2025-11-17T09:30:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:14.781 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.6459966, teldec = -24.256648
2025-11-17T09:30:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6459966 -24.256648
2025-11-17T09:30:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6459966 -24.256648
2025-11-17T09:30:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6459966 -24.256648
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6459966;-24.256648;50.108564;89.993116;50.08601;90.12017;12.66576;2460996.81267109;9.50406778;1.3;_15.6207254556 -24.1718716681081
2025-11-17T09:30:14.782 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.6207254556     dec_j2k = -24.1718716681081
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104301560623325;171.162351965909;_
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104301560623325;171.162351965909;_
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33837)
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:14.798 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:14.798 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81267105, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301560623325, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108564, telescope_az=89.993116, telescope_ra=15.6459966, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.66576, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:29:17.643495', telescope_ra_j2k=15.6207254556, telescope_dec_j2k=-24.1718716681081, observability=1)
2025-11-17T09:30:17.785 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:17.785 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:17.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:17.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:17.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:17.787 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:17.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:17.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:17.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:17.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:17.788 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:30:17.788 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:17.788 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:17.788 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:17.788 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:17.788 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:30:17.789 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:30:17.790 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:18.790 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:18.790 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:18.790 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:18.790 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:18.790 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:18.791 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:18.791 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:30:18.792 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:18.793 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:18.793 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:18.793 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:18.793 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:18.793 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:18.794 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:18.794 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:18.794 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:18.794 [DEBUG] [ThreadPoolExecutor-2608_0] [payload.py] [to_registers()] [0]
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60367)
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:18.800 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:18.807 [DEBUG] [ThreadPoolExecutor-2608_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:26.396 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:30:26
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.59834909439087s
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:26.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:26.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:26.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6492366;-24.256648;50.108563;89.993116;50.08601;90.12017;12.669;2460996.81280553;9.50729889;1.3;_
2025-11-17T09:30:26.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.6492366;-24.256648;50.108563;89.993116;50.08601;90.12017;12.669;2460996.81280553;9.50729889;1.3;_
2025-11-17T09:30:26.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:26.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:26.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:26.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:26.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:26.399 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.6492366, teldec = -24.256648
2025-11-17T09:30:26.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6492366 -24.256648
2025-11-17T09:30:26.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6492366 -24.256648
2025-11-17T09:30:26.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6492366 -24.256648
2025-11-17T09:30:26.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6492366;-24.256648;50.108563;89.993116;50.08601;90.12017;12.669;2460996.81280556;9.50729889;1.3;_15.6239632791496 -24.1719683470928
2025-11-17T09:30:26.400 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.6239632791496     dec_j2k = -24.1719683470928
2025-11-17T09:30:26.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:26.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:26.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104301721071096;171.162351965909;_
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104301721071096;171.162351965909;_
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:26.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:26.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:26.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:26.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:26.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52273)
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:26.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:26.414 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:26.414 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81280553, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104301721071096, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6492366, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.669, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6239632791496, telescope_dec_j2k=-24.1719683470928, observability=1)
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Status age = 5.276888132095337s
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:31.691 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:31.692 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:31.693 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 17;15.6507123;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67048;2460996.81286682;9.50877056;1.3;_
2025-11-17T09:30:31.693 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response 17;15.6507123;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67048;2460996.81286682;9.50877056;1.3;_
2025-11-17T09:30:31.693 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:31.693 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:31.693 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:31.694 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:31.694 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:31.694 [INFO] [Thread-66915 (handle)] [driver.py] [get_status()] Telra = 15.6507123, teldec = -24.256648
2025-11-17T09:30:31.694 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6507123 -24.256648
2025-11-17T09:30:31.694 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6507123 -24.256648
2025-11-17T09:30:31.694 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6507123 -24.256648
2025-11-17T09:30:31.695 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 17;15.6507123;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67048;2460996.81286684;9.50877056;1.3;_15.6254379885854 -24.1720124012691
2025-11-17T09:30:31.695 [INFO] [Thread-66915 (handle)] [driver.py] [get_status()] ra_j2k = 15.6254379885854     dec_j2k = -24.1720124012691
2025-11-17T09:30:31.695 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:31.695 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:31.695 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 140;0.104302162302467;171.162357330327;_
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response 140;0.104302162302467;171.162357330327;_
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:31.696 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:31.697 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:31.698 [DEBUG] [Thread-66915 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:31.698 [DEBUG] [Thread-66915 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:31.698 [DEBUG] [Thread-66915 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44393)
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:31.702 [DEBUG] [Thread-66915 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:31.710 [DEBUG] [Thread-66915 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:31.711 [INFO] [Thread-66915 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81286682, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302162302467, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6507123, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.67048, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6254379885854, telescope_dec_j2k=-24.1720124012691, observability=1)
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:43.808 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:43.809 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:30:43.810 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:30:43.810 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:30:43.810 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Status age = 18.050110340118408s
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:49.761 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:49.762 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 17;15.6557547;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67552;2460996.81307595;9.51379917;1.3;_
2025-11-17T09:30:49.762 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response 17;15.6557547;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67552;2460996.81307595;9.51379917;1.3;_
2025-11-17T09:30:49.762 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:49.762 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:49.762 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:49.763 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:49.763 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:49.763 [INFO] [Thread-66916 (handle)] [driver.py] [get_status()] Telra = 15.6557547, teldec = -24.256648
2025-11-17T09:30:49.763 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6557547 -24.256648
2025-11-17T09:30:49.763 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6557547 -24.256648
2025-11-17T09:30:49.763 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6557547 -24.256648
2025-11-17T09:30:49.764 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 17;15.6557547;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67552;2460996.81307597;9.51379917;1.3;_15.6304770073154 -24.1721630290071
2025-11-17T09:30:49.764 [INFO] [Thread-66916 (handle)] [driver.py] [get_status()] ra_j2k = 15.6304770073154     dec_j2k = -24.1721630290071
2025-11-17T09:30:49.764 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:49.764 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 140;0.104302322750238;171.162357330327;_
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response 140;0.104302322750238;171.162357330327;_
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:49.765 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:49.766 [DEBUG] [Thread-66916 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:49.766 [DEBUG] [Thread-66916 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:49.766 [DEBUG] [Thread-66916 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52167)
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:49.769 [DEBUG] [Thread-66916 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:49.776 [DEBUG] [Thread-66916 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:49.777 [INFO] [Thread-66916 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81307595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302322750238, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6557547, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.67552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6304770073154, telescope_dec_j2k=-24.1721630290071, observability=1)
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.9226438999176025s
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:30:55.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6573972;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67716;2460996.81314468;9.51543722;1.3;_
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6573972;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67716;2460996.81314468;9.51543722;1.3;_
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:30:55.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:30:55.701 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:30:55.701 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:55.702 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:30:55.702 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6573972, teldec = -24.256648
2025-11-17T09:30:55.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6573972 -24.256648
2025-11-17T09:30:55.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6573972 -24.256648
2025-11-17T09:30:55.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6573972 -24.256648
2025-11-17T09:30:55.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6573972;-24.256648;50.108563;89.993116;50.08601;90.12017;12.67716;2460996.81314471;9.51543722;1.3;_15.632118407059 -24.1722121263926
2025-11-17T09:30:55.703 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.632118407059     dec_j2k = -24.1722121263926
2025-11-17T09:30:55.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:30:55.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:30:55.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104302563421895;171.162357330327;_
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104302563421895;171.162357330327;_
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:55.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:30:55.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:30:55.706 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:55.706 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:30:55.706 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43457)
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:30:55.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:30:55.715 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:30:55.715 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:55.715 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:30:55.715 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:30:55.715 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:30:55.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:30:55.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:30:55.716 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:30:55.716 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:30:55.716 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81314468, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302563421895, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6573972, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.67716, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.632118407059, telescope_dec_j2k=-24.1722121263926, observability=1)
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Status age = 4.7790422439575195s
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:00.495 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:00.496 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:00.497 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 17;15.6587323;-24.256648;50.108563;89.993116;50.08601;90.12017;12.6785;2460996.8132002;9.51676861;1.3;_
2025-11-17T09:31:00.497 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response 17;15.6587323;-24.256648;50.108563;89.993116;50.08601;90.12017;12.6785;2460996.8132002;9.51676861;1.3;_
2025-11-17T09:31:00.497 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:00.497 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:00.497 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:00.498 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:00.498 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:00.498 [INFO] [Thread-66917 (handle)] [driver.py] [get_status()] Telra = 15.6587323, teldec = -24.256648
2025-11-17T09:31:00.498 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6587323 -24.256648
2025-11-17T09:31:00.498 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6587323 -24.256648
2025-11-17T09:31:00.498 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6587323 -24.256648
2025-11-17T09:31:00.500 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 17;15.6587323;-24.256648;50.108563;89.993116;50.08601;90.12017;12.6785;2460996.81320023;9.51676861;1.3;_15.6334526131365 -24.1722520466833
2025-11-17T09:31:00.500 [INFO] [Thread-66917 (handle)] [driver.py] [get_status()] ra_j2k = 15.6334526131365     dec_j2k = -24.1722520466833
2025-11-17T09:31:00.500 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:00.500 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:00.500 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:00.501 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 140;0.104302282638296;171.162357330327;_
2025-11-17T09:31:00.501 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response 140;0.104302282638296;171.162357330327;_
2025-11-17T09:31:00.501 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:00.501 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:00.502 [DEBUG] [Thread-66917 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53961)
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:00.504 [DEBUG] [Thread-66917 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:00.511 [DEBUG] [Thread-66917 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:00.511 [INFO] [Thread-66917 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8132002, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302282638296, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6587323, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.6785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6334526131365, telescope_dec_j2k=-24.1722520466833, observability=1)
2025-11-17T09:31:07.839 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:07.839 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Status age = 7.328041315078735s
2025-11-17T09:31:07.839 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:07.839 [DEBUG] [Thread-66918 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:07.839 [DEBUG] [Thread-66918 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:07.840 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:07.841 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 17;15.6607979;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68056;2460996.8132852;9.51882861;1.3;_
2025-11-17T09:31:07.841 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response 17;15.6607979;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68056;2460996.8132852;9.51882861;1.3;_
2025-11-17T09:31:07.841 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:07.841 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:07.841 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:07.842 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:07.842 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:07.842 [INFO] [Thread-66918 (handle)] [driver.py] [get_status()] Telra = 15.6607979, teldec = -24.256648
2025-11-17T09:31:07.842 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6607979 -24.256648
2025-11-17T09:31:07.842 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6607979 -24.256648
2025-11-17T09:31:07.842 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6607979 -24.256648
2025-11-17T09:31:07.843 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 17;15.6607979;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68056;2460996.81328522;9.51882861;1.3;_15.6355168308414 -24.1723138299604
2025-11-17T09:31:07.843 [INFO] [Thread-66918 (handle)] [driver.py] [get_status()] ra_j2k = 15.6355168308414     dec_j2k = -24.1723138299604
2025-11-17T09:31:07.843 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:07.843 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:07.843 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 140;0.104302643645781;171.162362694745;_
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response 140;0.104302643645781;171.162362694745;_
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:07.844 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:07.845 [DEBUG] [Thread-66918 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:07.845 [DEBUG] [Thread-66918 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:07.845 [DEBUG] [Thread-66918 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58623)
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:07.849 [DEBUG] [Thread-66918 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:07.856 [DEBUG] [Thread-66918 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:07.856 [DEBUG] [Thread-66918 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:07.857 [DEBUG] [Thread-66918 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:07.857 [INFO] [Thread-66918 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8132852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302643645781, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6607979, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.68056, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6355168308414, telescope_dec_j2k=-24.1723138299604, observability=1)
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.9971816539764404s
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:11.854 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:11.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:11.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6619112;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68168;2460996.81333167;9.51993889;1.3;_
2025-11-17T09:31:11.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6619112;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68168;2460996.81333167;9.51993889;1.3;_
2025-11-17T09:31:11.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:11.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:11.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:11.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:11.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:11.857 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6619112, teldec = -24.256648
2025-11-17T09:31:11.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6619112 -24.256648
2025-11-17T09:31:11.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6619112 -24.256648
2025-11-17T09:31:11.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6619112 -24.256648
2025-11-17T09:31:11.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6619112;-24.256648;50.108563;89.993116;50.08601;90.12017;12.68168;2460996.81333169;9.51993889;1.3;_15.6366293861948 -24.1723471397722
2025-11-17T09:31:11.858 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.6366293861948     dec_j2k = -24.1723471397722
2025-11-17T09:31:11.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:11.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:11.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104302523309952;171.162357330327;_
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104302523309952;171.162357330327;_
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:11.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:11.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:11.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:11.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33791)
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:11.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:11.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:11.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:11.869 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:11.869 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:11.870 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:11.870 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:11.870 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:11.870 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:11.870 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:31:11.870 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81333167, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302523309952, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108563, telescope_az=89.993116, telescope_ra=15.6619112, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.68168, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6366293861948, telescope_dec_j2k=-24.1723471397722, observability=1)
2025-11-17T09:31:11.870 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47400951385498 seconds ago
2025-11-17T09:31:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.9107866287231445s
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6627234;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68249;2460996.81336553;9.52074889;1.3;_
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.6627234;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68249;2460996.81336553;9.52074889;1.3;_
2025-11-17T09:31:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:14.784 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.6627234, teldec = -24.256648
2025-11-17T09:31:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6627234 -24.256648
2025-11-17T09:31:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6627234 -24.256648
2025-11-17T09:31:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6627234 -24.256648
2025-11-17T09:31:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6627234;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68249;2460996.81336557;9.52074889;1.3;_15.6374410431074 -24.172371445287
2025-11-17T09:31:14.785 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.6374410431074     dec_j2k = -24.172371445287
2025-11-17T09:31:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104303285436866;171.162362694745;_
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104303285436866;171.162362694745;_
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45107)
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:14.794 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:14.801 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:14.802 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:14.802 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81336553, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303285436866, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6627234, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.68249, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:30:17.785338', telescope_ra_j2k=15.6374410431074, telescope_dec_j2k=-24.172371445287, observability=1)
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:17.927 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:17.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:17.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:17.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:17.928 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:17.928 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:31:17.928 [INFO] [ThreadPoolExecutor-2609_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:31:17.929 [INFO] [ThreadPoolExecutor-2609_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:31:25.955 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:25.955 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Status age = 11.153785228729248s
2025-11-17T09:31:25.955 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:25.956 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:25.957 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:25.958 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 17;15.6658436;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68561;2460996.81349488;9.52386056;1.3;_
2025-11-17T09:31:25.958 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response 17;15.6658436;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68561;2460996.81349488;9.52386056;1.3;_
2025-11-17T09:31:25.958 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:25.958 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:25.958 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:25.959 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:25.959 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:25.959 [INFO] [Thread-66919 (handle)] [driver.py] [get_status()] Telra = 15.6658436, teldec = -24.256648
2025-11-17T09:31:25.959 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6658436 -24.256648
2025-11-17T09:31:25.959 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6658436 -24.256648
2025-11-17T09:31:25.959 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6658436 -24.256648
2025-11-17T09:31:25.960 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 17;15.6658436;-24.256648;50.108562;89.993116;50.08601;90.12017;12.68561;2460996.81349491;9.52386056;1.3;_15.6405591580364 -24.1724648548459
2025-11-17T09:31:25.960 [INFO] [Thread-66919 (handle)] [driver.py] [get_status()] ra_j2k = 15.6405591580364     dec_j2k = -24.1724648548459
2025-11-17T09:31:25.960 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:25.960 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:25.960 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 140;0.104303445884637;171.162346601491;_
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response 140;0.104303445884637;171.162346601491;_
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:31:25.961 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:25.962 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:25.962 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:25.962 [DEBUG] [Thread-66919 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:25.962 [DEBUG] [Thread-66919 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:31:25.962 [DEBUG] [Thread-66919 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51017)
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:25.968 [DEBUG] [Thread-66919 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:25.975 [DEBUG] [Thread-66919 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:25.976 [INFO] [Thread-66919 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81349488, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303445884637, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6658436, telescope_dec=-24.256648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.68561, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6405591580364, telescope_dec_j2k=-24.1724648548459, observability=1)
2025-11-17T09:31:26.475 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:31:26
2025-11-17T09:31:26.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:26.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.49955320358276367s
2025-11-17T09:31:26.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.49955320358276367
2025-11-17T09:31:38.811 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.811 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.811 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:38.811 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:38.811 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:31:38.812 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:38.813 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:38.814 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:31:38.815 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:38.816 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:38.817 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:38.817 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:38.817 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:38.817 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Park
2025-11-17T09:31:38.817 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:31:38.818 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:31:38.818 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 29;15.6694106;-24.256647;50.108562;89.993116;50.08601;90.12017;12.68918;2460996.81364373;9.52741778;1.3;_Park Command Successful
2025-11-17T09:31:39.818 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:31:39.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:31:39.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:31:39.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:31:39.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:31:40.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:31:40.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:31:40.819 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:31:40.820 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:31:40.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:31:41.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:31:41.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:31:41.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:31:41.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:31:41.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:31:42.821 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:31:42.822 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:31:42.822 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:42.823 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:31:42.824 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:31:42.825 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:43.825 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:43.825 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:43.825 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:43.825 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:43.826 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:31:43.827 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:31:43.828 [DEBUG] [ThreadPoolExecutor-2608_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:43.828 [INFO] [ThreadPoolExecutor-2608_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Status age = 18.03710412979126s
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:44.013 [DEBUG] [Thread-66920 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 17;15.6708585;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69062;2460996.81370387;9.52886167;1.3;_
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response 17;15.6708585;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69062;2460996.81370387;9.52886167;1.3;_
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:44.014 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:44.015 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:44.015 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:44.015 [INFO] [Thread-66920 (handle)] [driver.py] [get_status()] Telra = 15.6708585, teldec = -24.256647
2025-11-17T09:31:44.015 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6708585 -24.256647
2025-11-17T09:31:44.015 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6708585 -24.256647
2025-11-17T09:31:44.015 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6708585 -24.256647
2025-11-17T09:31:44.016 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 17;15.6708585;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69062;2460996.81370389;9.52886167;1.3;_15.6455707112809 -24.172614105443
2025-11-17T09:31:44.016 [INFO] [Thread-66920 (handle)] [driver.py] [get_status()] ra_j2k = 15.6455707112809     dec_j2k = -24.172614105443
2025-11-17T09:31:44.016 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:44.016 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:44.016 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 140;0.104303165101037;171.162351965909;_
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response 140;0.104303165101037;171.162351965909;_
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:44.017 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:44.018 [DEBUG] [Thread-66920 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:44.019 [DEBUG] [Thread-66920 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38721)
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:44.022 [DEBUG] [Thread-66920 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:44.029 [DEBUG] [Thread-66920 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:44.029 [INFO] [Thread-66920 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81370387, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303165101037, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6708585, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6455707112809, telescope_dec_j2k=-24.172614105443, observability=1)
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.781430006027222s
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:31:54.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:31:54.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:31:54.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6738642;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69363;2460996.81382885;9.53185917;1.3;_
2025-11-17T09:31:54.813 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6738642;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69363;2460996.81382885;9.53185917;1.3;_
2025-11-17T09:31:54.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:31:54.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:31:54.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:31:54.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:54.814 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:31:54.814 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6738642, teldec = -24.256647
2025-11-17T09:31:54.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6738642 -24.256647
2025-11-17T09:31:54.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6738642 -24.256647
2025-11-17T09:31:54.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6738642 -24.256647
2025-11-17T09:31:54.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6738642;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69363;2460996.81382888;9.53185917;1.3;_15.6485744078294 -24.1727042291385
2025-11-17T09:31:54.815 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.6485744078294     dec_j2k = -24.1727042291385
2025-11-17T09:31:54.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:31:54.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:31:54.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104302603533838;171.162357330327;_
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104302603533838;171.162357330327;_
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:54.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:31:54.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:31:54.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:54.818 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:31:54.818 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:31:54.821 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53479)
2025-11-17T09:31:54.821 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:31:54.821 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:31:54.821 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:31:54.822 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:31:54.822 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:31:54.829 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:31:54.829 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81382885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104302603533838, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6738642, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69363, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6485744078294, telescope_dec_j2k=-24.1727042291385, observability=1)
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Status age = 5.715523719787598s
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:00.545 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:00.546 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:00.547 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 17;15.6754794;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69524;2460996.81389522;9.53347;1.3;_
2025-11-17T09:32:00.547 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response 17;15.6754794;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69524;2460996.81389522;9.53347;1.3;_
2025-11-17T09:32:00.547 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:00.547 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:00.547 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:00.548 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:00.548 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:00.548 [INFO] [Thread-66921 (handle)] [driver.py] [get_status()] Telra = 15.6754794, teldec = -24.256647
2025-11-17T09:32:00.548 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6754794 -24.256647
2025-11-17T09:32:00.548 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6754794 -24.256647
2025-11-17T09:32:00.548 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6754794 -24.256647
2025-11-17T09:32:00.549 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 17;15.6754794;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69524;2460996.81389524;9.53347;1.3;_15.6501885320022 -24.1727526814939
2025-11-17T09:32:00.549 [INFO] [Thread-66921 (handle)] [driver.py] [get_status()] ra_j2k = 15.6501885320022     dec_j2k = -24.1727526814939
2025-11-17T09:32:00.549 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:00.549 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:00.549 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 140;0.104304248123493;171.162357330327;_
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response 140;0.104304248123493;171.162357330327;_
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:00.550 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:00.551 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:00.552 [DEBUG] [Thread-66921 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:00.552 [DEBUG] [Thread-66921 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:00.552 [DEBUG] [Thread-66921 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34287)
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:00.557 [DEBUG] [Thread-66921 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:00.564 [DEBUG] [Thread-66921 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:00.565 [DEBUG] [Thread-66921 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:00.565 [INFO] [Thread-66921 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81389522, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304248123493, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6754794, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69524, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6501885320022, telescope_dec_j2k=-24.1727526814939, observability=1)
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Status age = 1.5357885360717773s
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:02.101 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:02.102 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:02.103 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 17;15.6759017;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69567;2460996.81391323;9.53389111;1.3;_
2025-11-17T09:32:02.103 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response 17;15.6759017;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69567;2460996.81391323;9.53389111;1.3;_
2025-11-17T09:32:02.103 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:02.103 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:02.103 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:02.104 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:02.104 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:02.104 [INFO] [Thread-66922 (handle)] [driver.py] [get_status()] Telra = 15.6759017, teldec = -24.256647
2025-11-17T09:32:02.104 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6759017 -24.256647
2025-11-17T09:32:02.104 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6759017 -24.256647
2025-11-17T09:32:02.104 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6759017 -24.256647
2025-11-17T09:32:02.105 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 17;15.6759017;-24.256647;50.108562;89.993116;50.08601;90.12017;12.69567;2460996.81391325;9.53389111;1.3;_15.6506105508138 -24.1727653520499
2025-11-17T09:32:02.105 [INFO] [Thread-66922 (handle)] [driver.py] [get_status()] ra_j2k = 15.6506105508138     dec_j2k = -24.1727653520499
2025-11-17T09:32:02.105 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:02.105 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:02.105 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:02.106 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 140;0.104303606332408;171.162362694745;_
2025-11-17T09:32:02.106 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response 140;0.104303606332408;171.162362694745;_
2025-11-17T09:32:02.106 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:02.106 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:02.106 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:02.107 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:02.108 [DEBUG] [Thread-66922 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:02.108 [DEBUG] [Thread-66922 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:02.108 [DEBUG] [Thread-66922 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56727)
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:02.112 [DEBUG] [Thread-66922 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:02.119 [DEBUG] [Thread-66922 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:02.120 [INFO] [Thread-66922 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81391323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303606332408, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108562, telescope_az=89.993116, telescope_ra=15.6759017, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69567, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6506105508138, telescope_dec_j2k=-24.1727653520499, observability=1)
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.810423851013184s
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:11.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:11.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:11.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6786283;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69839;2460996.81402699;9.53661028;1.3;_
2025-11-17T09:32:11.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6786283;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69839;2460996.81402699;9.53661028;1.3;_
2025-11-17T09:32:11.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:11.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:11.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:11.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:11.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:11.933 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6786283, teldec = -24.256647
2025-11-17T09:32:11.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6786283 -24.256647
2025-11-17T09:32:11.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6786283 -24.256647
2025-11-17T09:32:11.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6786283 -24.256647
2025-11-17T09:32:11.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6786283;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69839;2460996.81402701;9.53661028;1.3;_15.6533353362117 -24.1728471851171
2025-11-17T09:32:11.934 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.6533353362117     dec_j2k = -24.1728471851171
2025-11-17T09:32:11.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:11.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:11.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104303847004065;171.162362694745;_
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104303847004065;171.162362694745;_
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:11.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:11.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:11.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:11.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:11.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56989)
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:11.943 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:11.950 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:32:11.950 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81402699, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303847004065, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6786283, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6533353362117, telescope_dec_j2k=-24.1728471851171, observability=1)
2025-11-17T09:32:11.951 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.4756178855896 seconds ago
2025-11-17T09:32:14.761 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.811174154281616s
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6794411;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69921;2460996.81405977;9.53742083;1.3;_
2025-11-17T09:32:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.6794411;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69921;2460996.81405977;9.53742083;1.3;_
2025-11-17T09:32:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:14.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:14.765 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.6794411, teldec = -24.256647
2025-11-17T09:32:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6794411 -24.256647
2025-11-17T09:32:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6794411 -24.256647
2025-11-17T09:32:14.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6794411 -24.256647
2025-11-17T09:32:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.6794411;-24.256647;50.108561;89.993116;50.08601;90.12017;12.69921;2460996.81405979;9.53742083;1.3;_15.6541475955816 -24.1728715879504
2025-11-17T09:32:14.766 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.6541475955816     dec_j2k = -24.1728715879504
2025-11-17T09:32:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:14.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10430348599658;171.162357330327;_
2025-11-17T09:32:14.767 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10430348599658;171.162357330327;_
2025-11-17T09:32:14.767 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:14.768 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33069)
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:14.772 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:14.779 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:14.780 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81405977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430348599658, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6794411, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.69921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:31:17.926625', telescope_ra_j2k=15.6541475955816, telescope_dec_j2k=-24.1728715879504, observability=1)
2025-11-17T09:32:18.069 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:18.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:18.071 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:18.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:18.072 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:18.072 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:32:18.073 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:32:18.074 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:19.074 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:19.074 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:19.074 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:19.074 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:19.074 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:32:19.075 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:19.076 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:19.077 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:19.077 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:19.077 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:19.077 [DEBUG] [ThreadPoolExecutor-2610_0] [payload.py] [to_registers()] [0]
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52905)
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:19.082 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:19.089 [DEBUG] [ThreadPoolExecutor-2610_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Status age = 5.403536558151245s
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:20.183 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:20.184 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:20.184 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:20.184 [DEBUG] [Thread-66923 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:20.184 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:20.184 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 17;15.6809447;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70071;2460996.81412251;9.53892028;1.3;_
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response 17;15.6809447;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70071;2460996.81412251;9.53892028;1.3;_
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:20.185 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:20.186 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:20.186 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:20.186 [INFO] [Thread-66923 (handle)] [driver.py] [get_status()] Telra = 15.6809447, teldec = -24.256647
2025-11-17T09:32:20.186 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6809447 -24.256647
2025-11-17T09:32:20.186 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6809447 -24.256647
2025-11-17T09:32:20.187 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6809447 -24.256647
2025-11-17T09:32:20.187 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 17;15.6809447;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70071;2460996.81412253;9.53892028;1.3;_15.6556501958361 -24.1729167409296
2025-11-17T09:32:20.187 [INFO] [Thread-66923 (handle)] [driver.py] [get_status()] ra_j2k = 15.6556501958361     dec_j2k = -24.1729167409296
2025-11-17T09:32:20.188 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:20.188 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:20.188 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 140;0.10430320521298;171.162351965909;_
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response 140;0.10430320521298;171.162351965909;_
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:20.189 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:20.190 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:20.191 [DEBUG] [Thread-66923 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:20.191 [DEBUG] [Thread-66923 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:20.191 [DEBUG] [Thread-66923 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32873)
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:20.192 [DEBUG] [Thread-66923 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:20.199 [DEBUG] [Thread-66923 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:20.199 [DEBUG] [Thread-66923 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:20.199 [DEBUG] [Thread-66923 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:20.199 [DEBUG] [Thread-66923 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:20.199 [DEBUG] [Thread-66923 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:20.200 [DEBUG] [Thread-66923 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:20.200 [DEBUG] [Thread-66923 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:20.200 [DEBUG] [Thread-66923 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:20.200 [DEBUG] [Thread-66923 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:20.200 [INFO] [Thread-66923 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81412251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430320521298, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6809447, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.70071, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6556501958361, telescope_dec_j2k=-24.1729167409296, observability=1)
2025-11-17T09:32:26.536 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:32:26
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.336392164230347s
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:26.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:26.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:26.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:26.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:26.537 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:26.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:26.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:26.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:26.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6827003;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70247;2460996.81419604;9.54067111;1.3;_
2025-11-17T09:32:26.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.6827003;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70247;2460996.81419604;9.54067111;1.3;_
2025-11-17T09:32:26.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:26.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:26.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:26.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:26.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:26.540 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.6827003, teldec = -24.256647
2025-11-17T09:32:26.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6827003 -24.256647
2025-11-17T09:32:26.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6827003 -24.256647
2025-11-17T09:32:26.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6827003 -24.256647
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6827003;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70247;2460996.81419608;9.54067111;1.3;_15.6574046291386 -24.1729694780962
2025-11-17T09:32:26.541 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.6574046291386     dec_j2k = -24.1729694780962
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104303646444351;171.162357330327;_
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104303646444351;171.162357330327;_
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:26.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:26.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:26.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:26.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:26.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:26.547 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38377)
2025-11-17T09:32:26.547 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:26.547 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:26.547 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:26.547 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:26.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:26.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:26.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:26.555 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:26.555 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:26.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:26.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:26.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:26.556 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:26.556 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:26.556 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81419604, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303646444351, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6827003, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.70247, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6574046291386, telescope_dec_j2k=-24.1729694780962, observability=1)
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Status age = 11.692523717880249s
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:38.248 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:38.249 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:38.249 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:38.249 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:38.249 [DEBUG] [Thread-66924 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 17;15.6859606;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70573;2460996.8143316;9.5439225;1.3;_
2025-11-17T09:32:38.250 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response 17;15.6859606;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70573;2460996.8143316;9.5439225;1.3;_
2025-11-17T09:32:38.251 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:38.251 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:38.251 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:38.252 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:38.252 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:38.252 [INFO] [Thread-66924 (handle)] [driver.py] [get_status()] Telra = 15.6859606, teldec = -24.256647
2025-11-17T09:32:38.252 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6859606 -24.256647
2025-11-17T09:32:38.252 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6859606 -24.256647
2025-11-17T09:32:38.252 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6859606 -24.256647
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 17;15.6859606;-24.256647;50.108561;89.993116;50.08601;90.12017;12.70573;2460996.81433163;9.5439225;1.3;_15.6606627642061 -24.1730674630921
2025-11-17T09:32:38.253 [INFO] [Thread-66924 (handle)] [driver.py] [get_status()] ra_j2k = 15.6606627642061     dec_j2k = -24.1730674630921
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 140;0.104303285436866;171.162362694745;_
2025-11-17T09:32:38.253 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response 140;0.104303285436866;171.162362694745;_
2025-11-17T09:32:38.254 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:38.254 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:38.254 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:38.254 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:38.255 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:38.256 [DEBUG] [Thread-66924 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:38.256 [DEBUG] [Thread-66924 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:38.256 [DEBUG] [Thread-66924 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39029)
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:38.258 [DEBUG] [Thread-66924 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:38.265 [DEBUG] [Thread-66924 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:38.265 [DEBUG] [Thread-66924 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:38.266 [DEBUG] [Thread-66924 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:38.266 [INFO] [Thread-66924 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8143316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104303285436866, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6859606, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.70573, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6606627642061, telescope_dec_j2k=-24.1730674630921, observability=1)
2025-11-17T09:32:44.089 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:44.090 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:44.090 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:44.090 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:44.090 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:44.091 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:32:44.092 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:32:44.093 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 15.65686559677124s
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:53.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:53.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:53.925 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6903384;-24.256647;50.108561;89.993116;50.08601;90.12017;12.7101;2460996.81451302;9.54828833;1.3;_
2025-11-17T09:32:53.925 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.6903384;-24.256647;50.108561;89.993116;50.08601;90.12017;12.7101;2460996.81451302;9.54828833;1.3;_
2025-11-17T09:32:53.925 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:53.925 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:53.925 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:53.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:53.926 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:53.926 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.6903384, teldec = -24.256647
2025-11-17T09:32:53.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6903384 -24.256647
2025-11-17T09:32:53.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6903384 -24.256647
2025-11-17T09:32:53.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6903384 -24.256647
2025-11-17T09:32:53.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.6903384;-24.256647;50.108561;89.993116;50.08601;90.12017;12.7101;2460996.81451304;9.54828833;1.3;_15.6650376607506 -24.1731991305262
2025-11-17T09:32:53.927 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.6650376607506     dec_j2k = -24.1731991305262
2025-11-17T09:32:53.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:53.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:53.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104304087675722;171.162346601491;_
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104304087675722;171.162346601491;_
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:53.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:53.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:53.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:32:53.930 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:32:53.930 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35793)
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:53.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:53.943 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:53.944 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:53.944 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81451302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304087675722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108561, telescope_az=89.993116, telescope_ra=15.6903384, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.7101, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6650376607506, telescope_dec_j2k=-24.1731991305262, observability=1)
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Status age = 2.371758460998535s
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:32:56.316 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:32:56.317 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:32:56.318 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 17;15.6910016;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71077;2460996.81454072;9.54894972;1.3;_
2025-11-17T09:32:56.318 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response 17;15.6910016;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71077;2460996.81454072;9.54894972;1.3;_
2025-11-17T09:32:56.318 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:32:56.318 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:32:56.318 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:32:56.319 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:56.319 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:32:56.319 [INFO] [Thread-66925 (handle)] [driver.py] [get_status()] Telra = 15.6910016, teldec = -24.256647
2025-11-17T09:32:56.319 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6910016 -24.256647
2025-11-17T09:32:56.319 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6910016 -24.256647
2025-11-17T09:32:56.319 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6910016 -24.256647
2025-11-17T09:32:56.320 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 17;15.6910016;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71077;2460996.81454074;9.54894972;1.3;_15.6657004212545 -24.1732190867387
2025-11-17T09:32:56.320 [INFO] [Thread-66925 (handle)] [driver.py] [get_status()] ra_j2k = 15.6657004212545     dec_j2k = -24.1732190867387
2025-11-17T09:32:56.320 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:32:56.320 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:32:56.320 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 140;0.104304007451836;171.162362694745;_
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response 140;0.104304007451836;171.162362694745;_
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:56.321 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:32:56.322 [DEBUG] [Thread-66925 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33145)
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:32:56.329 [DEBUG] [Thread-66925 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:32:56.336 [DEBUG] [Thread-66925 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:32:56.337 [DEBUG] [Thread-66925 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:32:56.337 [DEBUG] [Thread-66925 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:32:56.337 [DEBUG] [Thread-66925 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:32:56.337 [INFO] [Thread-66925 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81454072, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304007451836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.6910016, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.71077, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6657004212545, telescope_dec_j2k=-24.1732190867387, observability=1)
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Status age = 4.268041372299194s
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:00.605 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:00.606 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:00.606 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:00.607 [DEBUG] [Thread-66926 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:00.607 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:00.607 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:00.607 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:00.607 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:00.608 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 17;15.6921993;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71196;2460996.81459036;9.55014417;1.3;_
2025-11-17T09:33:00.608 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response 17;15.6921993;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71196;2460996.81459036;9.55014417;1.3;_
2025-11-17T09:33:00.608 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:00.608 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:00.608 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:00.609 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:00.609 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:00.609 [INFO] [Thread-66926 (handle)] [driver.py] [get_status()] Telra = 15.6921993, teldec = -24.256647
2025-11-17T09:33:00.609 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6921993 -24.256647
2025-11-17T09:33:00.609 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6921993 -24.256647
2025-11-17T09:33:00.609 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6921993 -24.256647
2025-11-17T09:33:00.610 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 17;15.6921993;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71196;2460996.81459039;9.55014417;1.3;_15.666897327786 -24.173255132941
2025-11-17T09:33:00.610 [INFO] [Thread-66926 (handle)] [driver.py] [get_status()] ra_j2k = 15.666897327786     dec_j2k = -24.173255132941
2025-11-17T09:33:00.610 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:00.610 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:00.610 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 140;0.104304368459322;171.162362694745;_
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response 140;0.104304368459322;171.162362694745;_
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:00.611 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:00.612 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:00.613 [DEBUG] [Thread-66926 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:00.613 [DEBUG] [Thread-66926 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:00.613 [DEBUG] [Thread-66926 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58639)
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:00.617 [DEBUG] [Thread-66926 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:00.626 [DEBUG] [Thread-66926 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:00.626 [INFO] [Thread-66926 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81459036, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304368459322, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.6921993, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.71196, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.666897327786, telescope_dec_j2k=-24.173255132941, observability=1)
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.38463020324707s
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:12.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:12.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:12.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6953733;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71514;2460996.81472237;9.55330944;1.3;_
2025-11-17T09:33:12.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.6953733;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71514;2460996.81472237;9.55330944;1.3;_
2025-11-17T09:33:12.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:12.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:12.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:12.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:12.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:12.014 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.6953733, teldec = -24.256647
2025-11-17T09:33:12.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.6953733 -24.256647
2025-11-17T09:33:12.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.6953733 -24.256647
2025-11-17T09:33:12.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6953733 -24.256647
2025-11-17T09:33:12.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.6953733;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71514;2460996.8147224;9.55330944;1.3;_15.6700692264981 -24.1733506984423
2025-11-17T09:33:12.015 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.6700692264981     dec_j2k = -24.1733506984423
2025-11-17T09:33:12.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104304689354864;171.162362694745;_
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104304689354864;171.162362694745;_
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:12.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:12.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:12.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:12.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:12.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58975)
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:12.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:12.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:12.029 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:12.029 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:33:12.029 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81472237, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304689354864, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.6953733, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.71514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6700692264981, telescope_dec_j2k=-24.1733506984423, observability=1)
2025-11-17T09:33:12.029 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.49284863471985 seconds ago
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Status age = 2.4179604053497314s
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:14.447 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:14.448 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:14.449 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 17;15.6960457;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71581;2460996.81475057;9.55398;1.3;_
2025-11-17T09:33:14.449 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response 17;15.6960457;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71581;2460996.81475057;9.55398;1.3;_
2025-11-17T09:33:14.449 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:14.449 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:14.449 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:14.450 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:14.450 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:14.450 [INFO] [Thread-66927 (handle)] [driver.py] [get_status()] Telra = 15.6960457, teldec = -24.256647
2025-11-17T09:33:14.450 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6960457 -24.256647
2025-11-17T09:33:14.450 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6960457 -24.256647
2025-11-17T09:33:14.450 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6960457 -24.256647
2025-11-17T09:33:14.451 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 17;15.6960457;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71581;2460996.81475059;9.55398;1.3;_15.6707411816215 -24.173370951125
2025-11-17T09:33:14.451 [INFO] [Thread-66927 (handle)] [driver.py] [get_status()] ra_j2k = 15.6707411816215     dec_j2k = -24.173370951125
2025-11-17T09:33:14.451 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:14.451 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:14.451 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 140;0.10430420801155;171.162357330327;_
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response 140;0.10430420801155;171.162357330327;_
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:14.452 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:14.453 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:14.454 [DEBUG] [Thread-66927 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:14.455 [DEBUG] [Thread-66927 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:14.455 [DEBUG] [Thread-66927 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33249)
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:14.462 [DEBUG] [Thread-66927 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:14.470 [DEBUG] [Thread-66927 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:14.470 [INFO] [Thread-66927 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81475057, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430420801155, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.6960457, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.71581, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:32:18.069344', telescope_ra_j2k=15.6707411816215, telescope_dec_j2k=-24.173370951125, observability=1)
2025-11-17T09:33:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.3004591464996338s
2025-11-17T09:33:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3004591464996338
2025-11-17T09:33:18.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:18.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:18.213 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:18.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:18.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:18.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:18.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:18.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:18.214 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:33:18.215 [INFO] [ThreadPoolExecutor-2611_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:33:18.215 [INFO] [ThreadPoolExecutor-2611_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:33:26.617 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:33:26
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.14661192893982s
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:26.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6994442;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71921;2460996.81489142;9.55736917;1.3;_
2025-11-17T09:33:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.6994442;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71921;2460996.81489142;9.55736917;1.3;_
2025-11-17T09:33:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:26.620 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.6994442, teldec = -24.256647
2025-11-17T09:33:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.6994442 -24.256647
2025-11-17T09:33:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.6994442 -24.256647
2025-11-17T09:33:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.6994442 -24.256647
2025-11-17T09:33:26.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.6994442;-24.256647;50.10856;89.993116;50.08601;90.12017;12.71921;2460996.81489145;9.55736917;1.3;_15.6741374345531 -24.1734733539478
2025-11-17T09:33:26.621 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.6741374345531     dec_j2k = -24.1734733539478
2025-11-17T09:33:26.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:26.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:26.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104304649242921;171.162346601491;_
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104304649242921;171.162346601491;_
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:26.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:26.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:26.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:26.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:26.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34673)
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:26.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:26.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:26.636 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81489142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304649242921, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.6994442, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.71921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6741374345531, telescope_dec_j2k=-24.1734733539478, observability=1)
2025-11-17T09:33:32.505 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Status age = 5.869234561920166s
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:32.506 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:32.507 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 17;15.7010864;-24.256647;50.10856;89.993116;50.08601;90.12017;12.72085;2460996.81495957;9.55900694;1.3;_
2025-11-17T09:33:32.507 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response 17;15.7010864;-24.256647;50.10856;89.993116;50.08601;90.12017;12.72085;2460996.81495957;9.55900694;1.3;_
2025-11-17T09:33:32.507 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:32.507 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:32.507 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:32.508 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:32.508 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:32.508 [INFO] [Thread-66928 (handle)] [driver.py] [get_status()] Telra = 15.7010864, teldec = -24.256647
2025-11-17T09:33:32.508 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7010864 -24.256647
2025-11-17T09:33:32.508 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7010864 -24.256647
2025-11-17T09:33:32.509 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7010864 -24.256647
2025-11-17T09:33:32.509 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 17;15.7010864;-24.256647;50.10856;89.993116;50.08601;90.12017;12.72085;2460996.8149596;9.55900694;1.3;_15.6757785496161 -24.1735228602762
2025-11-17T09:33:32.510 [INFO] [Thread-66928 (handle)] [driver.py] [get_status()] ra_j2k = 15.6757785496161     dec_j2k = -24.1735228602762
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 140;0.104304328347379;171.162351965909;_
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response 140;0.104304328347379;171.162351965909;_
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:32.510 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:32.511 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:32.511 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:32.511 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:32.511 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:32.511 [DEBUG] [Thread-66928 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:32.512 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:32.512 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:32.512 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:32.512 [DEBUG] [Thread-66928 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:32.512 [DEBUG] [Thread-66928 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:32.513 [DEBUG] [Thread-66928 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44663)
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:32.518 [DEBUG] [Thread-66928 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:32.525 [DEBUG] [Thread-66928 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:32.526 [DEBUG] [Thread-66928 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:32.526 [DEBUG] [Thread-66928 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:32.526 [INFO] [Thread-66928 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81495957, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304328347379, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10856, telescope_az=89.993116, telescope_ra=15.7010864, telescope_dec=-24.256647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.72085, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6757785496161, telescope_dec_j2k=-24.1735228602762, observability=1)
2025-11-17T09:33:39.093 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.093 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.093 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:39.093 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:39.093 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:33:39.095 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:39.096 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:39.097 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:33:39.098 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:39.099 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Park
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:33:39.100 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:33:39.101 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 29;15.7029262;-24.256646;50.10856;89.993116;50.08601;90.12017;12.72269;2460996.81503589;9.56084167;1.3;_Park Command Successful
2025-11-17T09:33:40.101 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:33:40.101 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:33:40.101 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:33:40.102 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:33:40.102 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:33:41.102 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:33:41.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:33:41.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:33:41.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:33:41.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:33:42.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:33:42.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:33:42.103 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:33:42.104 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:33:42.104 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:33:43.104 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:33:43.104 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:33:43.104 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:43.105 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:33:43.106 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:33:43.107 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:44.107 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:44.107 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:44.107 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:44.107 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:44.107 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:33:44.108 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:33:44.109 [DEBUG] [ThreadPoolExecutor-2610_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:44.109 [INFO] [ThreadPoolExecutor-2610_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Status age = 18.093151092529297s
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:50.619 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:50.620 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:50.621 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 17;15.7061369;-24.256646;50.108559;89.993116;50.08601;90.12017;12.7259;2460996.81516922;9.56404361;1.3;_
2025-11-17T09:33:50.621 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response 17;15.7061369;-24.256646;50.108559;89.993116;50.08601;90.12017;12.7259;2460996.81516922;9.56404361;1.3;_
2025-11-17T09:33:50.621 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:50.621 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:50.621 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:50.622 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:50.622 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:50.622 [INFO] [Thread-66929 (handle)] [driver.py] [get_status()] Telra = 15.7061369, teldec = -24.256646
2025-11-17T09:33:50.622 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7061369 -24.256646
2025-11-17T09:33:50.622 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7061369 -24.256646
2025-11-17T09:33:50.622 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7061369 -24.256646
2025-11-17T09:33:50.623 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 17;15.7061369;-24.256646;50.108559;89.993116;50.08601;90.12017;12.7259;2460996.81516925;9.56404361;1.3;_15.68082571669 -24.1736742120181
2025-11-17T09:33:50.623 [INFO] [Thread-66929 (handle)] [driver.py] [get_status()] ra_j2k = 15.68082571669     dec_j2k = -24.1736742120181
2025-11-17T09:33:50.623 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:50.623 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:50.623 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 140;0.104304288235436;171.162362694745;_
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response 140;0.104304288235436;171.162362694745;_
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:50.624 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:50.625 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:50.626 [DEBUG] [Thread-66929 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:50.626 [DEBUG] [Thread-66929 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:50.626 [DEBUG] [Thread-66929 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41465)
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:50.633 [DEBUG] [Thread-66929 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:50.640 [DEBUG] [Thread-66929 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:50.641 [INFO] [Thread-66929 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81516922, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104304288235436, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.7061369, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.7259, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.68082571669, telescope_dec_j2k=-24.1736742120181, observability=1)
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.391249418258667s
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:33:53.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:33:53.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:33:53.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7068012;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72657;2460996.81519715;9.56470611;1.3;_
2025-11-17T09:33:53.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7068012;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72657;2460996.81519715;9.56470611;1.3;_
2025-11-17T09:33:53.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:33:53.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:33:53.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:33:53.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:53.035 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:33:53.035 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7068012, teldec = -24.256646
2025-11-17T09:33:53.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7068012 -24.256646
2025-11-17T09:33:53.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7068012 -24.256646
2025-11-17T09:33:53.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7068012 -24.256646
2025-11-17T09:33:53.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7068012;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72657;2460996.81519718;9.56470611;1.3;_15.6814895786862 -24.1736942620289
2025-11-17T09:33:53.036 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.6814895786862     dec_j2k = -24.1736942620289
2025-11-17T09:33:53.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:33:53.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:33:53.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104305170698178;171.162357330327;_
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104305170698178;171.162357330327;_
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:33:53.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:33:53.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:53.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:33:53.038 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:33:53.043 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35045)
2025-11-17T09:33:53.044 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:33:53.044 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:33:53.044 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:33:53.044 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:33:53.044 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:33:53.051 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:33:53.051 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81519715, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305170698178, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.7068012, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.72657, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6814895786862, telescope_dec_j2k=-24.1736942620289, observability=1)
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Status age = 7.607858657836914s
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:00.659 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:00.660 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:00.660 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:00.661 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:00.662 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 17;15.7089212;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72869;2460996.81528544;9.56682028;1.3;_
2025-11-17T09:34:00.662 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response 17;15.7089212;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72869;2460996.81528544;9.56682028;1.3;_
2025-11-17T09:34:00.662 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:00.662 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:00.662 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:00.663 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:00.663 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:00.663 [INFO] [Thread-66930 (handle)] [driver.py] [get_status()] Telra = 15.7089212, teldec = -24.256646
2025-11-17T09:34:00.663 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7089212 -24.256646
2025-11-17T09:34:00.663 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7089212 -24.256646
2025-11-17T09:34:00.663 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7089212 -24.256646
2025-11-17T09:34:00.664 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 17;15.7089212;-24.256646;50.108559;89.993116;50.08601;90.12017;12.72869;2460996.81528546;9.56682028;1.3;_15.6836081814977 -24.17375826523
2025-11-17T09:34:00.664 [INFO] [Thread-66930 (handle)] [driver.py] [get_status()] ra_j2k = 15.6836081814977     dec_j2k = -24.17375826523
2025-11-17T09:34:00.664 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:00.664 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:00.664 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 140;0.104305571817606;171.162357330327;_
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response 140;0.104305571817606;171.162357330327;_
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:00.665 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:00.666 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:00.667 [DEBUG] [Thread-66930 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:00.667 [DEBUG] [Thread-66930 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:00.667 [DEBUG] [Thread-66930 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:00.671 [DEBUG] [Thread-66930 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58247)
2025-11-17T09:34:00.672 [DEBUG] [Thread-66930 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:00.672 [DEBUG] [Thread-66930 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:00.672 [DEBUG] [Thread-66930 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:00.672 [DEBUG] [Thread-66930 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:00.672 [DEBUG] [Thread-66930 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:00.679 [DEBUG] [Thread-66930 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:00.679 [INFO] [Thread-66930 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81528544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305571817606, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.7089212, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.72869, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6836081814977, telescope_dec_j2k=-24.17375826523, observability=1)
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Status age = 8.004317283630371s
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:08.684 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 17;15.711147;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73091;2460996.8153783;9.56904;1.3;_
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response 17;15.711147;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73091;2460996.8153783;9.56904;1.3;_
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:08.685 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:08.686 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:08.686 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:08.686 [INFO] [Thread-66931 (handle)] [driver.py] [get_status()] Telra = 15.711147, teldec = -24.256646
2025-11-17T09:34:08.686 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] UnCookCoordinates 15.711147 -24.256646
2025-11-17T09:34:08.686 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.711147 -24.256646
2025-11-17T09:34:08.686 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.711147 -24.256646
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 17;15.711147;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73091;2460996.81537832;9.56904;1.3;_15.6858325156074 -24.1738254904204
2025-11-17T09:34:08.687 [INFO] [Thread-66931 (handle)] [driver.py] [get_status()] ra_j2k = 15.6858325156074     dec_j2k = -24.1738254904204
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 140;0.104305331145949;171.162351965909;_
2025-11-17T09:34:08.687 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response 140;0.104305331145949;171.162351965909;_
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:08.688 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:08.689 [DEBUG] [Thread-66931 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:08.689 [DEBUG] [Thread-66931 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:08.689 [DEBUG] [Thread-66931 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:08.692 [DEBUG] [Thread-66931 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56013)
2025-11-17T09:34:08.693 [DEBUG] [Thread-66931 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:08.693 [DEBUG] [Thread-66931 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:08.693 [DEBUG] [Thread-66931 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:08.693 [DEBUG] [Thread-66931 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:08.693 [DEBUG] [Thread-66931 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:08.700 [DEBUG] [Thread-66931 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:08.700 [INFO] [Thread-66931 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8153783, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305331145949, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.711147, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.73091, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6858325156074, telescope_dec_j2k=-24.1738254904204, observability=1)
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.388399600982666s
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:12.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7120914;-24.256653;50.108559;89.993127;50.08601;90.12018;12.73186;2460996.81541771;9.56998167;1.3;_
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.7120914;-24.256653;50.108559;89.993127;50.08601;90.12018;12.73186;2460996.81541771;9.56998167;1.3;_
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:12.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:12.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:12.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:12.091 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.7120914, teldec = -24.256653
2025-11-17T09:34:12.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.7120914 -24.256653
2025-11-17T09:34:12.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.7120914 -24.256653
2025-11-17T09:34:12.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7120914 -24.256653
2025-11-17T09:34:12.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7121197;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73188;2460996.81541773;9.57001;1.3;_15.6867762928223 -24.1738610224199
2025-11-17T09:34:12.092 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.6867762928223     dec_j2k = -24.1738610224199
2025-11-17T09:34:12.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:12.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:12.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104305130586235;171.162351965909;_
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104305130586235;171.162351965909;_
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:12.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:12.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:12.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:12.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:12.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37033)
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:12.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:12.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:34:12.106 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81541771, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305130586235, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993127, telescope_ra=15.7120914, telescope_dec=-24.256653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.73186, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6867762928223, telescope_dec_j2k=-24.1738610224199, observability=1)
2025-11-17T09:34:12.106 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48955774307251 seconds ago
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.6725363731384277s
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7128494;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73261;2460996.81544885;9.57073778;1.3;_
2025-11-17T09:34:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7128494;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73261;2460996.81544885;9.57073778;1.3;_
2025-11-17T09:34:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:14.783 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7128494, teldec = -24.256646
2025-11-17T09:34:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7128494 -24.256646
2025-11-17T09:34:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7128494 -24.256646
2025-11-17T09:34:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7128494 -24.256646
2025-11-17T09:34:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7128494;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73261;2460996.81544889;9.57073778;1.3;_15.6875337951329 -24.173876926765
2025-11-17T09:34:14.784 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.6875337951329     dec_j2k = -24.173876926765
2025-11-17T09:34:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104305130586235;171.162346601491;_
2025-11-17T09:34:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104305130586235;171.162346601491;_
2025-11-17T09:34:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56393)
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:14.800 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81544885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305130586235, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.7128494, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.73261, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:33:18.212400', telescope_ra_j2k=15.6875337951329, telescope_dec_j2k=-24.173876926765, observability=1)
2025-11-17T09:34:18.355 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:18.355 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:18.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:18.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:18.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:18.356 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:18.356 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:18.357 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:18.357 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:18.357 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:18.357 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:34:18.357 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:18.357 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:18.357 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:18.357 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:18.357 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:34:18.358 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:34:18.359 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:19.359 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:19.359 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:19.359 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:19.359 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:19.359 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:34:19.360 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:19.361 [DEBUG] [ThreadPoolExecutor-2612_0] [payload.py] [to_registers()] [0]
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42325)
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:19.368 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:19.375 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:19.376 [DEBUG] [ThreadPoolExecutor-2612_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:26.697 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:34:26
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.897209882736206s
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:26.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:26.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:26.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7161638;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73593;2460996.81558679;9.57404306;1.3;_
2025-11-17T09:34:26.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7161638;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73593;2460996.81558679;9.57404306;1.3;_
2025-11-17T09:34:26.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:26.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:26.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:26.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:26.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:26.700 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7161638, teldec = -24.256646
2025-11-17T09:34:26.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7161638 -24.256646
2025-11-17T09:34:26.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7161638 -24.256646
2025-11-17T09:34:26.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7161638 -24.256646
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7161638;-24.256646;50.108559;89.993116;50.08601;90.12017;12.73593;2460996.81558682;9.57404306;1.3;_15.6908460154479 -24.1739771159348
2025-11-17T09:34:26.702 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.6908460154479     dec_j2k = -24.1739771159348
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104305010250406;171.162357330327;_
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104305010250406;171.162357330327;_
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:26.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:26.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:26.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:26.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:26.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:26.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:26.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:26.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:26.706 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35685)
2025-11-17T09:34:26.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:26.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:26.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:26.706 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:26.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:26.714 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:26.714 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81558679, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305010250406, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108559, telescope_az=89.993116, telescope_ra=15.7161638, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.73593, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.6908460154479, telescope_dec_j2k=-24.1739771159348, observability=1)
2025-11-17T09:34:26.759 [DEBUG] [Thread-66932 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:26.759 [DEBUG] [Thread-66932 (handle)] [server.py] [get_status()] Status age = 0.04515671730041504s
2025-11-17T09:34:26.759 [DEBUG] [Thread-66932 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.04515671730041504
2025-11-17T09:34:44.376 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:44.376 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:44.376 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:44.376 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:44.376 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:44.377 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:34:44.378 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:34:44.379 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:44.892 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Status age = 18.17857837677002s
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:44.893 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:44.894 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 17;15.7212326;-24.256646;50.108558;89.993116;50.08601;90.12017;12.741;2460996.81579738;9.57909806;1.3;_
2025-11-17T09:34:44.894 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response 17;15.7212326;-24.256646;50.108558;89.993116;50.08601;90.12017;12.741;2460996.81579738;9.57909806;1.3;_
2025-11-17T09:34:44.894 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:44.894 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:44.895 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:44.895 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:44.895 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:44.896 [INFO] [Thread-66933 (handle)] [driver.py] [get_status()] Telra = 15.7212326, teldec = -24.256646
2025-11-17T09:34:44.896 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7212326 -24.256646
2025-11-17T09:34:44.896 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7212326 -24.256646
2025-11-17T09:34:44.896 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7212326 -24.256646
2025-11-17T09:34:44.897 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 17;15.7212326;-24.256646;50.108558;89.993116;50.08601;90.12017;12.741;2460996.81579742;9.57909806;1.3;_15.6959114865118 -24.1741304599732
2025-11-17T09:34:44.897 [INFO] [Thread-66933 (handle)] [driver.py] [get_status()] ra_j2k = 15.6959114865118     dec_j2k = -24.1741304599732
2025-11-17T09:34:44.897 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:44.897 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:44.897 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 140;0.104305170698178;171.162351965909;_
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response 140;0.104305170698178;171.162351965909;_
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:44.898 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:44.899 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:44.900 [DEBUG] [Thread-66933 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:44.900 [DEBUG] [Thread-66933 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:44.900 [DEBUG] [Thread-66933 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39925)
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:44.906 [DEBUG] [Thread-66933 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:44.914 [DEBUG] [Thread-66933 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:44.914 [INFO] [Thread-66933 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81579738, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305170698178, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7212326, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.741, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.6959114865118, telescope_dec_j2k=-24.1741304599732, observability=1)
2025-11-17T09:34:52.143 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.229557752609253s
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:34:52.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:34:52.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:34:52.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:34:52.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:34:52.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7232712;-24.256652;50.108558;89.993127;50.08601;90.12018;12.74304;2460996.81588131;9.58113083;1.3;_
2025-11-17T09:34:52.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7232712;-24.256652;50.108558;89.993127;50.08601;90.12018;12.74304;2460996.81588131;9.58113083;1.3;_
2025-11-17T09:34:52.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:34:52.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:34:52.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:34:52.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:52.147 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:34:52.147 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7232712, teldec = -24.256652
2025-11-17T09:34:52.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7232712 -24.256652
2025-11-17T09:34:52.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7232712 -24.256652
2025-11-17T09:34:52.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7232712 -24.256652
2025-11-17T09:34:52.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7232712;-24.256652;50.108558;89.993127;50.08601;90.12018;12.74304;2460996.81588134;9.58113083;1.3;_15.6979487482303 -24.1741981743083
2025-11-17T09:34:52.148 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.6979487482303     dec_j2k = -24.1741981743083
2025-11-17T09:34:52.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:34:52.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:34:52.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104305250922063;171.162357330327;_
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104305250922063;171.162357330327;_
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:52.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:34:52.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:34:52.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:52.151 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:34:52.151 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:34:52.156 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33091)
2025-11-17T09:34:52.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:34:52.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:34:52.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:34:52.157 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:34:52.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:34:52.165 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:34:52.165 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81588131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305250922063, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993127, telescope_ra=15.7232712, telescope_dec=-24.256652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.74304, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.6979487482303, telescope_dec_j2k=-24.1741981743083, observability=1)
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Status age = 8.546606540679932s
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:00.712 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:00.713 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:00.714 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 17;15.7256389;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7454;2460996.81598049;9.58349222;1.3;_
2025-11-17T09:35:00.714 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response 17;15.7256389;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7454;2460996.81598049;9.58349222;1.3;_
2025-11-17T09:35:00.714 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:00.714 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:00.714 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:00.715 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:00.715 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:00.715 [INFO] [Thread-66934 (handle)] [driver.py] [get_status()] Telra = 15.7256389, teldec = -24.256646
2025-11-17T09:35:00.715 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7256389 -24.256646
2025-11-17T09:35:00.715 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7256389 -24.256646
2025-11-17T09:35:00.715 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7256389 -24.256646
2025-11-17T09:35:00.716 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 17;15.7256389;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7454;2460996.81598051;9.58349222;1.3;_15.7003148971122 -24.1742638814693
2025-11-17T09:35:00.716 [INFO] [Thread-66934 (handle)] [driver.py] [get_status()] ra_j2k = 15.7003148971122     dec_j2k = -24.1742638814693
2025-11-17T09:35:00.716 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:00.716 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:00.716 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 140;0.104305932825091;171.162368059163;_
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response 140;0.104305932825091;171.162368059163;_
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:00.717 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:00.718 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:00.719 [DEBUG] [Thread-66934 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:00.719 [DEBUG] [Thread-66934 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:00.719 [DEBUG] [Thread-66934 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56153)
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:00.724 [DEBUG] [Thread-66934 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:00.731 [DEBUG] [Thread-66934 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:00.731 [DEBUG] [Thread-66934 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:00.731 [DEBUG] [Thread-66934 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:00.731 [DEBUG] [Thread-66934 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:00.731 [DEBUG] [Thread-66934 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:00.732 [DEBUG] [Thread-66934 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:00.732 [DEBUG] [Thread-66934 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:00.732 [DEBUG] [Thread-66934 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:00.732 [DEBUG] [Thread-66934 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:00.732 [INFO] [Thread-66934 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81598049, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104305932825091, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7256389, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.7454, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.7003148971122, telescope_dec_j2k=-24.1742638814693, observability=1)
2025-11-17T09:35:02.966 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Status age = 2.234877347946167s
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:02.967 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:02.968 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 17;15.7262739;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74604;2460996.81600657;9.58412556;1.3;_
2025-11-17T09:35:02.968 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response 17;15.7262739;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74604;2460996.81600657;9.58412556;1.3;_
2025-11-17T09:35:02.968 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:02.968 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:02.968 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:02.969 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:02.969 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:02.969 [INFO] [Thread-66935 (handle)] [driver.py] [get_status()] Telra = 15.7262739, teldec = -24.256646
2025-11-17T09:35:02.970 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7262739 -24.256646
2025-11-17T09:35:02.970 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7262739 -24.256646
2025-11-17T09:35:02.970 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7262739 -24.256646
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 17;15.7262739;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74604;2460996.8160066;9.58412556;1.3;_15.7009494810562 -24.1742831182581
2025-11-17T09:35:02.971 [INFO] [Thread-66935 (handle)] [driver.py] [get_status()] ra_j2k = 15.7009494810562     dec_j2k = -24.1742831182581
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 140;0.104306013048977;171.162351965909;_
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response 140;0.104306013048977;171.162351965909;_
2025-11-17T09:35:02.971 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:02.972 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:02.972 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:02.972 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:02.972 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:02.972 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:02.973 [DEBUG] [Thread-66935 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:35:02.973 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:02.973 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:02.973 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:02.974 [DEBUG] [Thread-66935 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:02.974 [DEBUG] [Thread-66935 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:02.974 [DEBUG] [Thread-66935 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35833)
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:02.976 [DEBUG] [Thread-66935 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:02.983 [DEBUG] [Thread-66935 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:02.983 [INFO] [Thread-66935 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81600657, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306013048977, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7262739, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.74604, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.7009494810562, telescope_dec_j2k=-24.1742831182581, observability=1)
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.182517290115356s
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:12.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:12.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:12.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7288376;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7486;2460996.81611306;9.58668222;1.3;_
2025-11-17T09:35:12.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.7288376;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7486;2460996.81611306;9.58668222;1.3;_
2025-11-17T09:35:12.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:12.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:12.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:12.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:12.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:12.169 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.7288376, teldec = -24.256646
2025-11-17T09:35:12.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.7288376 -24.256646
2025-11-17T09:35:12.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.7288376 -24.256646
2025-11-17T09:35:12.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7288376 -24.256646
2025-11-17T09:35:12.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7288376;-24.256646;50.108558;89.993116;50.08601;90.12017;12.7486;2460996.81611308;9.58668222;1.3;_15.7035115021766 -24.1743608068581
2025-11-17T09:35:12.170 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7035115021766     dec_j2k = -24.1743608068581
2025-11-17T09:35:12.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:12.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:12.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10430649439229;171.162357330327;_
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10430649439229;171.162357330327;_
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:12.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:12.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41069)
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:12.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:12.186 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:35:12.187 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81611306, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430649439229, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7288376, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.7486, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.7035115021766, telescope_dec_j2k=-24.1743608068581, observability=1)
2025-11-17T09:35:12.187 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48978781700134 seconds ago
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.6007299423217773s
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7295679;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74933;2460996.81614339;9.58741056;1.3;_
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7295679;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74933;2460996.81614339;9.58741056;1.3;_
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:14.791 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7295679, teldec = -24.256646
2025-11-17T09:35:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7295679 -24.256646
2025-11-17T09:35:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7295679 -24.256646
2025-11-17T09:35:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7295679 -24.256646
2025-11-17T09:35:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7295679;-24.256646;50.108558;89.993116;50.08601;90.12017;12.74933;2460996.81614343;9.58741056;1.3;_15.7042413241843 -24.1743829442492
2025-11-17T09:35:14.792 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7042413241843     dec_j2k = -24.1743829442492
2025-11-17T09:35:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104306093272862;171.162362694745;_
2025-11-17T09:35:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104306093272862;171.162362694745;_
2025-11-17T09:35:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45443)
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:14.803 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:14.803 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:14.804 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:14.804 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:14.804 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:14.804 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81614339, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306093272862, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7295679, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.74933, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:34:18.354677', telescope_ra_j2k=15.7042413241843, telescope_dec_j2k=-24.1743829442492, observability=1)
2025-11-17T09:35:18.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:18.497 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:18.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:18.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:18.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:18.498 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:18.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:18.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:18.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:18.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:18.499 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:35:18.499 [INFO] [ThreadPoolExecutor-2613_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:35:18.499 [INFO] [ThreadPoolExecutor-2613_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Status age = 6.223427057266235s
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:21.027 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 17;15.7313213;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75109;2460996.8162156;9.58915917;1.3;_
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response 17;15.7313213;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75109;2460996.8162156;9.58915917;1.3;_
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:21.028 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:21.029 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:21.029 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:21.029 [INFO] [Thread-66936 (handle)] [driver.py] [get_status()] Telra = 15.7313213, teldec = -24.256646
2025-11-17T09:35:21.029 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7313213 -24.256646
2025-11-17T09:35:21.029 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7313213 -24.256646
2025-11-17T09:35:21.029 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7313213 -24.256646
2025-11-17T09:35:21.030 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 17;15.7313213;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75109;2460996.81621562;9.58915917;1.3;_15.7059935770215 -24.1744361070523
2025-11-17T09:35:21.030 [INFO] [Thread-66936 (handle)] [driver.py] [get_status()] ra_j2k = 15.7059935770215     dec_j2k = -24.1744361070523
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 140;0.104306414168405;171.162357330327;_
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response 140;0.104306414168405;171.162357330327;_
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:21.031 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:21.032 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:21.033 [DEBUG] [Thread-66936 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:21.033 [DEBUG] [Thread-66936 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:21.033 [DEBUG] [Thread-66936 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48127)
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:21.036 [DEBUG] [Thread-66936 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:21.044 [DEBUG] [Thread-66936 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:21.044 [INFO] [Thread-66936 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8162156, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306414168405, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7313213, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.75109, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7059935770215, telescope_dec_j2k=-24.1744361070523, observability=1)
2025-11-17T09:35:26.775 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:35:26
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.730841875076294s
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:26.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:26.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:26.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7329115;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75268;2460996.81628213;9.590745;1.3;_
2025-11-17T09:35:26.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7329115;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75268;2460996.81628213;9.590745;1.3;_
2025-11-17T09:35:26.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:26.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:26.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:26.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:26.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:26.778 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7329115, teldec = -24.256646
2025-11-17T09:35:26.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7329115 -24.256646
2025-11-17T09:35:26.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7329115 -24.256646
2025-11-17T09:35:26.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7329115 -24.256646
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7329115;-24.256646;50.108558;89.993116;50.08601;90.12017;12.75268;2460996.81628216;9.590745;1.3;_15.707582737199 -24.1744843368532
2025-11-17T09:35:26.779 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.707582737199     dec_j2k = -24.1744843368532
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104306293832576;171.162357330327;_
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104306293832576;171.162357330327;_
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:26.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:26.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:26.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:26.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:26.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52637)
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:26.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:26.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:26.796 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:26.796 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:26.796 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81628213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306293832576, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108558, telescope_az=89.993116, telescope_ra=15.7329115, telescope_dec=-24.256646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.75268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.707582737199, telescope_dec_j2k=-24.1744843368532, observability=1)
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Status age = 12.363385200500488s
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:39.159 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:39.160 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:39.162 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 17;15.7363654;-24.256645;50.108557;89.993116;50.08601;90.12017;12.75613;2460996.81642547;9.59418944;1.3;_
2025-11-17T09:35:39.162 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response 17;15.7363654;-24.256645;50.108557;89.993116;50.08601;90.12017;12.75613;2460996.81642547;9.59418944;1.3;_
2025-11-17T09:35:39.162 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:39.162 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:39.162 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:39.163 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:39.163 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:39.163 [INFO] [Thread-66937 (handle)] [driver.py] [get_status()] Telra = 15.7363654, teldec = -24.256645
2025-11-17T09:35:39.163 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7363654 -24.256645
2025-11-17T09:35:39.163 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7363654 -24.256645
2025-11-17T09:35:39.163 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7363654 -24.256645
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 17;15.7363654;-24.256645;50.108557;89.993116;50.08601;90.12017;12.75613;2460996.81642551;9.59418944;1.3;_15.7110343807336 -24.1745881413019
2025-11-17T09:35:39.164 [INFO] [Thread-66937 (handle)] [driver.py] [get_status()] ra_j2k = 15.7110343807336     dec_j2k = -24.1745881413019
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 140;0.104306253720633;171.162362694745;_
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response 140;0.104306253720633;171.162362694745;_
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:39.164 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:39.165 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:39.165 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:39.166 [DEBUG] [Thread-66937 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49401)
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:39.168 [DEBUG] [Thread-66937 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:39.175 [DEBUG] [Thread-66937 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:39.176 [INFO] [Thread-66937 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81642547, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306253720633, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7363654, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.75613, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7110343807336, telescope_dec_j2k=-24.1745881413019, observability=1)
2025-11-17T09:35:39.379 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.379 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.379 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:39.379 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:39.379 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:35:39.380 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:39.381 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:39.382 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:35:39.383 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:39.384 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Park
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:35:39.385 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:35:39.386 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 29;15.7364214;-24.256645;50.108557;89.993116;50.08601;90.12017;12.75619;2460996.81642808;9.59424528;1.3;_Park Command Successful
2025-11-17T09:35:40.386 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:35:40.386 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:35:40.387 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:35:40.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:35:40.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:35:41.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:35:41.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:35:41.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:35:41.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:35:41.388 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:35:42.389 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:35:42.389 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:35:42.389 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:35:42.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:35:42.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:43.390 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:43.391 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:43.391 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:43.391 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:35:43.392 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:44.393 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:44.393 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:44.393 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:44.393 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:44.393 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:35:44.394 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:35:44.395 [DEBUG] [ThreadPoolExecutor-2612_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:44.395 [INFO] [ThreadPoolExecutor-2612_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.083562135696411s
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:51.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:51.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:51.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7397318;-24.256645;50.108557;89.993116;50.08601;90.12017;12.7595;2460996.81656552;9.59754667;1.3;_
2025-11-17T09:35:51.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7397318;-24.256645;50.108557;89.993116;50.08601;90.12017;12.7595;2460996.81656552;9.59754667;1.3;_
2025-11-17T09:35:51.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:51.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:51.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:51.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:51.262 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:51.262 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7397318, teldec = -24.256645
2025-11-17T09:35:51.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7397318 -24.256645
2025-11-17T09:35:51.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7397318 -24.256645
2025-11-17T09:35:51.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7397318 -24.256645
2025-11-17T09:35:51.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7397318;-24.256645;50.108557;89.993116;50.08601;90.12017;12.7595;2460996.81656556;9.59754667;1.3;_15.7143985837241 -24.1746903561552
2025-11-17T09:35:51.264 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.7143985837241     dec_j2k = -24.1746903561552
2025-11-17T09:35:51.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:51.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:51.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:51.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104306855399775;171.162357330327;_
2025-11-17T09:35:51.265 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104306855399775;171.162357330327;_
2025-11-17T09:35:51.265 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:51.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:51.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:51.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:51.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:51.267 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:35:51.267 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:35:51.272 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41593)
2025-11-17T09:35:51.272 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:51.272 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:51.272 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:51.273 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:51.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:51.280 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:51.280 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81656552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306855399775, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7397318, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.7595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7143985837241, telescope_dec_j2k=-24.1746903561552, observability=1)
2025-11-17T09:35:57.211 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:35:57.211 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Status age = 5.9313695430755615s
2025-11-17T09:35:57.211 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:35:57.211 [DEBUG] [Thread-66938 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:35:57.211 [DEBUG] [Thread-66938 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:35:57.212 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:35:57.213 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 17;15.7413788;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76114;2460996.81663441;9.59918917;1.3;_
2025-11-17T09:35:57.213 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response 17;15.7413788;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76114;2460996.81663441;9.59918917;1.3;_
2025-11-17T09:35:57.213 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:35:57.213 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:35:57.213 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:35:57.214 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:57.214 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:35:57.214 [INFO] [Thread-66938 (handle)] [driver.py] [get_status()] Telra = 15.7413788, teldec = -24.256645
2025-11-17T09:35:57.214 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7413788 -24.256645
2025-11-17T09:35:57.214 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7413788 -24.256645
2025-11-17T09:35:57.214 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7413788 -24.256645
2025-11-17T09:35:57.215 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 17;15.7413788;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76114;2460996.81663443;9.59918917;1.3;_15.7160445097259 -24.1747403879623
2025-11-17T09:35:57.215 [INFO] [Thread-66938 (handle)] [driver.py] [get_status()] ra_j2k = 15.7160445097259     dec_j2k = -24.1747403879623
2025-11-17T09:35:57.215 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:35:57.215 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:35:57.215 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 140;0.104306333944519;171.162357330327;_
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response 140;0.104306333944519;171.162357330327;_
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:57.216 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:57.217 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:57.217 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:57.217 [DEBUG] [Thread-66938 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:57.217 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:35:57.217 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:35:57.218 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:35:57.218 [DEBUG] [Thread-66938 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:57.218 [DEBUG] [Thread-66938 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:35:57.218 [DEBUG] [Thread-66938 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40575)
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:35:57.224 [DEBUG] [Thread-66938 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:35:57.232 [DEBUG] [Thread-66938 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:35:57.232 [INFO] [Thread-66938 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81663441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306333944519, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7413788, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.76114, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7160445097259, telescope_dec_j2k=-24.1747403879623, observability=1)
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Status age = 3.5287351608276367s
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:00.761 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:00.762 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:00.763 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:00.763 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 17;15.7423794;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76214;2460996.8166755;9.60018694;1.3;_
2025-11-17T09:36:00.763 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response 17;15.7423794;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76214;2460996.8166755;9.60018694;1.3;_
2025-11-17T09:36:00.764 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:00.764 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:00.764 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:00.765 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:00.765 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:00.765 [INFO] [Thread-66939 (handle)] [driver.py] [get_status()] Telra = 15.7423794, teldec = -24.256645
2025-11-17T09:36:00.765 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7423794 -24.256645
2025-11-17T09:36:00.765 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7423794 -24.256645
2025-11-17T09:36:00.765 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7423794 -24.256645
2025-11-17T09:36:00.766 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 17;15.7423794;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76214;2460996.81667553;9.60018694;1.3;_15.7170444575239 -24.1747707912718
2025-11-17T09:36:00.766 [INFO] [Thread-66939 (handle)] [driver.py] [get_status()] ra_j2k = 15.7170444575239     dec_j2k = -24.1747707912718
2025-11-17T09:36:00.766 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:00.766 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:00.766 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 140;0.104307096071432;171.162357330327;_
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response 140;0.104307096071432;171.162357330327;_
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:00.767 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:00.768 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:00.769 [DEBUG] [Thread-66939 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:00.769 [DEBUG] [Thread-66939 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:00.769 [DEBUG] [Thread-66939 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:00.772 [DEBUG] [Thread-66939 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49979)
2025-11-17T09:36:00.772 [DEBUG] [Thread-66939 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:00.772 [DEBUG] [Thread-66939 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:00.772 [DEBUG] [Thread-66939 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:00.773 [DEBUG] [Thread-66939 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:00.773 [DEBUG] [Thread-66939 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:00.780 [DEBUG] [Thread-66939 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:00.780 [INFO] [Thread-66939 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8166755, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307096071432, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7423794, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.76214, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7170444575239, telescope_dec_j2k=-24.1747707912718, observability=1)
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.466415405273438s
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:12.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:12.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:12.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7455625;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76533;2460996.81680844;9.60336139;1.3;_
2025-11-17T09:36:12.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.7455625;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76533;2460996.81680844;9.60336139;1.3;_
2025-11-17T09:36:12.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:12.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:12.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:12.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:12.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:12.250 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.7455625, teldec = -24.256645
2025-11-17T09:36:12.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.7455625 -24.256645
2025-11-17T09:36:12.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.7455625 -24.256645
2025-11-17T09:36:12.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7455625 -24.256645
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7455904;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76535;2460996.81680846;9.60338917;1.3;_15.7202254841672 -24.1748675479104
2025-11-17T09:36:12.251 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7202254841672     dec_j2k = -24.1748675479104
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104307015847547;171.162357330327;_
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104307015847547;171.162357330327;_
2025-11-17T09:36:12.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:12.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:12.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:12.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:12.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:12.256 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41569)
2025-11-17T09:36:12.256 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:12.256 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:12.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:12.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:12.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:12.264 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:36:12.264 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81680844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307015847547, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7455625, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.76533, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7202254841672, telescope_dec_j2k=-24.1748675479104, observability=1)
2025-11-17T09:36:12.264 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48933434486389 seconds ago
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.5320215225219727s
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7462823;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76605;2460996.81683795;9.60407917;1.3;_
2025-11-17T09:36:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7462823;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76605;2460996.81683795;9.60407917;1.3;_
2025-11-17T09:36:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:14.800 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7462823, teldec = -24.256645
2025-11-17T09:36:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7462823 -24.256645
2025-11-17T09:36:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7462823 -24.256645
2025-11-17T09:36:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7462823 -24.256645
2025-11-17T09:36:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7462823;-24.256645;50.108557;89.993116;50.08601;90.12017;12.76605;2460996.81683797;9.60407917;1.3;_15.7209448156157 -24.1748894356486
2025-11-17T09:36:14.801 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7209448156157     dec_j2k = -24.1748894356486
2025-11-17T09:36:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104307457078918;171.162351965909;_
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104307457078918;171.162351965909;_
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57579)
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:14.814 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81683795, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307457078918, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108557, telescope_az=89.993116, telescope_ra=15.7462823, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.76605, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:35:18.496707', telescope_ra_j2k=15.7209448156157, telescope_dec_j2k=-24.1748894356486, observability=1)
2025-11-17T09:36:15.279 [DEBUG] [Thread-66940 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:15.279 [DEBUG] [Thread-66940 (handle)] [server.py] [get_status()] Status age = 0.46483373641967773s
2025-11-17T09:36:15.279 [DEBUG] [Thread-66940 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.46483373641967773
2025-11-17T09:36:18.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:18.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:18.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:18.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:18.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:18.640 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:18.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:18.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:18.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:18.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:18.641 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:18.642 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:36:18.643 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:36:19.644 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:19.645 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:19.647 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:19.647 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:19.647 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:19.647 [DEBUG] [ThreadPoolExecutor-2614_0] [payload.py] [to_registers()] [0]
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41541)
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:19.649 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:19.656 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:19.656 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:36:19.656 [DEBUG] [ThreadPoolExecutor-2614_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:36:19.656 [DEBUG] [ThreadPoolExecutor-2614_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:36:19.656 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:19.657 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:19.657 [DEBUG] [ThreadPoolExecutor-2614_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:26.856 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:36:26
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.042200326919556s
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:26.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:26.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:26.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7496529;-24.256645;50.108556;89.993116;50.08601;90.12017;12.76942;2460996.81697752;9.60744056;1.3;_
2025-11-17T09:36:26.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7496529;-24.256645;50.108556;89.993116;50.08601;90.12017;12.76942;2460996.81697752;9.60744056;1.3;_
2025-11-17T09:36:26.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:26.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:26.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:26.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:26.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:26.859 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7496529, teldec = -24.256645
2025-11-17T09:36:26.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7496529 -24.256645
2025-11-17T09:36:26.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7496529 -24.256645
2025-11-17T09:36:26.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7496529 -24.256645
2025-11-17T09:36:26.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7496529;-24.256645;50.108556;89.993116;50.08601;90.12017;12.76942;2460996.81697755;9.60744056;1.3;_15.7243132230082 -24.1749919683077
2025-11-17T09:36:26.860 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.7243132230082     dec_j2k = -24.1749919683077
2025-11-17T09:36:26.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:26.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:26.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:26.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104306935623661;171.162351965909;_
2025-11-17T09:36:26.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104306935623661;171.162351965909;_
2025-11-17T09:36:26.861 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:26.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:26.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:26.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:26.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:26.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:26.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35913)
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:26.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:26.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:26.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:26.874 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:26.874 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81697752, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306935623661, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.7496529, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.76942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7243132230082, telescope_dec_j2k=-24.1749919683077, observability=1)
2025-11-17T09:36:33.395 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Status age = 6.5216100215911865s
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:33.396 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:33.397 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 17;15.751465;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77123;2460996.81705321;9.60924778;1.3;_
2025-11-17T09:36:33.397 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response 17;15.751465;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77123;2460996.81705321;9.60924778;1.3;_
2025-11-17T09:36:33.397 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:33.397 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:33.397 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:33.398 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:33.398 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:33.398 [INFO] [Thread-66941 (handle)] [driver.py] [get_status()] Telra = 15.751465, teldec = -24.256645
2025-11-17T09:36:33.398 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] UnCookCoordinates 15.751465 -24.256645
2025-11-17T09:36:33.398 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.751465 -24.256645
2025-11-17T09:36:33.398 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.751465 -24.256645
2025-11-17T09:36:33.399 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 17;15.751465;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77123;2460996.81705323;9.60924778;1.3;_15.7261241452245 -24.1750471185215
2025-11-17T09:36:33.399 [INFO] [Thread-66941 (handle)] [driver.py] [get_status()] ra_j2k = 15.7261241452245     dec_j2k = -24.1750471185215
2025-11-17T09:36:33.399 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:33.399 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:33.400 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 140;0.104307136183375;171.162357330327;_
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response 140;0.104307136183375;171.162357330327;_
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:33.401 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:33.402 [DEBUG] [Thread-66941 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:33.403 [DEBUG] [Thread-66941 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51059)
2025-11-17T09:36:33.403 [DEBUG] [Thread-66941 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:33.403 [DEBUG] [Thread-66941 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:33.403 [DEBUG] [Thread-66941 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:33.403 [DEBUG] [Thread-66941 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:33.404 [DEBUG] [Thread-66941 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:33.410 [DEBUG] [Thread-66941 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:33.411 [DEBUG] [Thread-66941 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:33.411 [INFO] [Thread-66941 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81705321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307136183375, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.751465, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.77123, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7261241452245, telescope_dec_j2k=-24.1750471185215, observability=1)
2025-11-17T09:36:44.657 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:44.657 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:44.657 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:44.657 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:44.657 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:44.658 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:44.659 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:36:44.660 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:36:44.660 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:36:44.660 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:50.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.96263313293457s
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:50.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:50.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7561983;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77596;2460996.81724971;9.61396806;1.3;_
2025-11-17T09:36:50.375 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7561983;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77596;2460996.81724971;9.61396806;1.3;_
2025-11-17T09:36:50.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:50.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:50.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:50.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:50.376 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:50.376 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7561983, teldec = -24.256645
2025-11-17T09:36:50.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7561983 -24.256645
2025-11-17T09:36:50.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7561983 -24.256645
2025-11-17T09:36:50.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7561983 -24.256645
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7561983;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77596;2460996.81724973;9.61396806;1.3;_15.730854372108 -24.1751912616248
2025-11-17T09:36:50.378 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.730854372108     dec_j2k = -24.1751912616248
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104306975735604;171.162368059163;_
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104306975735604;171.162368059163;_
2025-11-17T09:36:50.378 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:50.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:50.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:50.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:50.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:50.381 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:50.381 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:50.381 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46861)
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:50.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:50.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:50.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:50.392 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:50.392 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:50.393 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:50.393 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:50.393 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:50.393 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:50.393 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:50.393 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81724971, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104306975735604, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.7561983, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.77596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.730854372108, telescope_dec_j2k=-24.1751912616248, observability=1)
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Status age = 1.0784378051757812s
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:36:51.471 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:36:51.472 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 17;15.7565063;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77627;2460996.81726242;9.61427528;1.3;_
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response 17;15.7565063;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77627;2460996.81726242;9.61427528;1.3;_
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:36:51.473 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:36:51.474 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:51.474 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:36:51.474 [INFO] [Thread-66942 (handle)] [driver.py] [get_status()] Telra = 15.7565063, teldec = -24.256645
2025-11-17T09:36:51.475 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7565063 -24.256645
2025-11-17T09:36:51.475 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7565063 -24.256645
2025-11-17T09:36:51.475 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7565063 -24.256645
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 17;15.7565063;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77627;2460996.81726244;9.61427528;1.3;_15.7311621723039 -24.1752006455432
2025-11-17T09:36:51.476 [INFO] [Thread-66942 (handle)] [driver.py] [get_status()] ra_j2k = 15.7311621723039     dec_j2k = -24.1752006455432
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 140;0.104307376855032;171.162362694745;_
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response 140;0.104307376855032;171.162362694745;_
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:51.476 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:36:51.477 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:36:51.478 [DEBUG] [Thread-66942 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:51.478 [DEBUG] [Thread-66942 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:36:51.478 [DEBUG] [Thread-66942 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37921)
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:36:51.484 [DEBUG] [Thread-66942 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:36:51.491 [DEBUG] [Thread-66942 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:36:51.491 [DEBUG] [Thread-66942 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:51.491 [DEBUG] [Thread-66942 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:36:51.492 [DEBUG] [Thread-66942 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:36:51.492 [INFO] [Thread-66942 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81726242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307376855032, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.7565063, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.77627, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7311621723039, telescope_dec_j2k=-24.1752006455432, observability=1)
2025-11-17T09:37:00.815 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:00.815 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Status age = 9.323523044586182s
2025-11-17T09:37:00.815 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:00.816 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 17;15.759104;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77887;2460996.81737057;9.61686583;1.3;_
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response 17;15.759104;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77887;2460996.81737057;9.61686583;1.3;_
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:00.817 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:00.818 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:00.818 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:00.818 [INFO] [Thread-66943 (handle)] [driver.py] [get_status()] Telra = 15.759104, teldec = -24.256645
2025-11-17T09:37:00.818 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] UnCookCoordinates 15.759104 -24.256645
2025-11-17T09:37:00.818 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.759104 -24.256645
2025-11-17T09:37:00.818 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.759104 -24.256645
2025-11-17T09:37:00.819 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 17;15.759104;-24.256645;50.108556;89.993116;50.08601;90.12017;12.77887;2460996.81737059;9.61686583;1.3;_15.7337581879465 -24.1752798117311
2025-11-17T09:37:00.819 [INFO] [Thread-66943 (handle)] [driver.py] [get_status()] ra_j2k = 15.7337581879465     dec_j2k = -24.1752798117311
2025-11-17T09:37:00.819 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:00.819 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:00.819 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 140;0.104307416966975;171.162357330327;_
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response 140;0.104307416966975;171.162357330327;_
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:00.820 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:00.821 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:00.822 [DEBUG] [Thread-66943 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:00.822 [DEBUG] [Thread-66943 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:00.822 [DEBUG] [Thread-66943 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56049)
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:00.826 [DEBUG] [Thread-66943 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:00.833 [DEBUG] [Thread-66943 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:00.834 [DEBUG] [Thread-66943 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:00.834 [INFO] [Thread-66943 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81737057, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307416966975, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.759104, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.77887, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7337581879465, telescope_dec_j2k=-24.1752798117311, observability=1)
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Status age = 8.699407577514648s
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:09.533 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:09.534 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:09.535 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 17;15.7615223;-24.256645;50.108556;89.993116;50.08601;90.12017;12.78129;2460996.81747147;9.6192775;1.3;_
2025-11-17T09:37:09.535 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response 17;15.7615223;-24.256645;50.108556;89.993116;50.08601;90.12017;12.78129;2460996.81747147;9.6192775;1.3;_
2025-11-17T09:37:09.535 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:09.535 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:09.535 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:09.536 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:09.536 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:09.536 [INFO] [Thread-66944 (handle)] [driver.py] [get_status()] Telra = 15.7615223, teldec = -24.256645
2025-11-17T09:37:09.536 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7615223 -24.256645
2025-11-17T09:37:09.536 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7615223 -24.256645
2025-11-17T09:37:09.536 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7615223 -24.256645
2025-11-17T09:37:09.537 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 17;15.7615223;-24.256645;50.108556;89.993116;50.08601;90.12017;12.78129;2460996.81747149;9.6192775;1.3;_15.736174921213 -24.1753535449319
2025-11-17T09:37:09.537 [INFO] [Thread-66944 (handle)] [driver.py] [get_status()] ra_j2k = 15.736174921213     dec_j2k = -24.1753535449319
2025-11-17T09:37:09.537 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:09.537 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:09.537 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 140;0.104307376855032;171.162341237072;_
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response 140;0.104307376855032;171.162341237072;_
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:09.538 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:09.539 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:09.540 [DEBUG] [Thread-66944 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:09.540 [DEBUG] [Thread-66944 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:09.540 [DEBUG] [Thread-66944 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53235)
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:09.547 [DEBUG] [Thread-66944 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:09.555 [DEBUG] [Thread-66944 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:09.555 [INFO] [Thread-66944 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81747147, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307376855032, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108556, telescope_az=89.993116, telescope_ra=15.7615223, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.78129, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.736174921213, telescope_dec_j2k=-24.1753535449319, observability=1)
2025-11-17T09:37:12.324 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:37:12.324 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.7693397998809814s
2025-11-17T09:37:12.324 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:12.324 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:12.324 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:12.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:12.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7623066;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78207;2460996.81750377;9.62005972;1.3;_
2025-11-17T09:37:12.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.7623066;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78207;2460996.81750377;9.62005972;1.3;_
2025-11-17T09:37:12.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:12.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:12.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:12.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:12.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:12.327 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.7623066, teldec = -24.256645
2025-11-17T09:37:12.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.7623066 -24.256645
2025-11-17T09:37:12.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.7623066 -24.256645
2025-11-17T09:37:12.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7623066 -24.256645
2025-11-17T09:37:12.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7623066;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78207;2460996.8175038;9.62005972;1.3;_15.7369587133613 -24.1753774650913
2025-11-17T09:37:12.328 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7369587133613     dec_j2k = -24.1753774650913
2025-11-17T09:37:12.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104307697750574;171.162362694745;_
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104307697750574;171.162362694745;_
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:12.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:12.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:12.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:12.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:12.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:12.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:12.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:12.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:12.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:12.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:12.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60903)
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:12.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:12.340 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:37:12.340 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81750377, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307697750574, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7623066, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.78207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7369587133613, telescope_dec_j2k=-24.1753774650913, observability=1)
2025-11-17T09:37:12.340 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48418617248535 seconds ago
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.4319310188293457s
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7629971;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78276;2460996.81753211;9.62074833;1.3;_
2025-11-17T09:37:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7629971;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78276;2460996.81753211;9.62074833;1.3;_
2025-11-17T09:37:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:14.775 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7629971, teldec = -24.256645
2025-11-17T09:37:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7629971 -24.256645
2025-11-17T09:37:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7629971 -24.256645
2025-11-17T09:37:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7629971 -24.256645
2025-11-17T09:37:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7629971;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78276;2460996.81753213;9.62074833;1.3;_15.7376487663564 -24.1753985273466
2025-11-17T09:37:14.776 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7376487663564     dec_j2k = -24.1753985273466
2025-11-17T09:37:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104307617526689;171.162357330327;_
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104307617526689;171.162357330327;_
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48453)
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:14.785 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:14.793 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:14.793 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81753211, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104307617526689, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7629971, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.78276, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:36:18.638969', telescope_ra_j2k=15.7376487663564, telescope_dec_j2k=-24.1753985273466, observability=1)
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:18.782 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:37:18.782 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:18.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:18.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:18.784 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:37:18.784 [INFO] [ThreadPoolExecutor-2615_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:37:18.784 [INFO] [ThreadPoolExecutor-2615_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:37:26.935 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:37:26
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.14233112335205s
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:26.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:26.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:26.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7663769;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78614;2460996.81767288;9.62411889;1.3;_
2025-11-17T09:37:26.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7663769;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78614;2460996.81767288;9.62411889;1.3;_
2025-11-17T09:37:26.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:26.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:26.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:26.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:26.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:26.938 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7663769, teldec = -24.256645
2025-11-17T09:37:26.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7663769 -24.256645
2025-11-17T09:37:26.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7663769 -24.256645
2025-11-17T09:37:26.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7663769 -24.256645
2025-11-17T09:37:26.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7663769;-24.256645;50.108555;89.993116;50.08601;90.12017;12.78614;2460996.8176729;9.62411889;1.3;_15.7410263798714 -24.1755016599103
2025-11-17T09:37:26.939 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.7410263798714     dec_j2k = -24.1755016599103
2025-11-17T09:37:26.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:26.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:26.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104308419765545;171.162341237072;_
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104308419765545;171.162341237072;_
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:26.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:26.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50843)
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:26.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:26.957 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:26.957 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81767288, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308419765545, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7663769, telescope_dec=-24.256645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.78614, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7410263798714, telescope_dec_j2k=-24.1755016599103, observability=1)
2025-11-17T09:37:27.681 [DEBUG] [Thread-66945 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:27.681 [DEBUG] [Thread-66945 (handle)] [server.py] [get_status()] Status age = 0.7234053611755371s
2025-11-17T09:37:27.681 [DEBUG] [Thread-66945 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7234053611755371
2025-11-17T09:37:39.661 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.661 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.661 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:39.661 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:39.661 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:37:39.662 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:39.663 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:39.664 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:39.665 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.665 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:39.665 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:39.665 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.665 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:39.666 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:39.667 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:39.667 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:39.667 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:39.667 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:39.668 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:39.668 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Park
2025-11-17T09:37:39.668 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:37:39.668 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:37:39.669 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 29;15.769915;-24.256644;50.108555;89.993116;50.08601;90.12017;12.78968;2460996.81782023;9.62764722;1.3;_Park Command Successful
2025-11-17T09:37:40.669 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:37:40.669 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:37:40.669 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:37:40.670 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:37:40.670 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:37:41.670 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:37:41.670 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:37:41.671 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:37:41.671 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:37:41.672 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:37:42.672 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:37:42.672 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:37:42.672 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:37:42.673 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:37:42.673 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:37:43.673 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:37:43.673 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:37:43.673 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:43.674 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:43.675 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:37:43.676 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:37:43.676 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:37:43.676 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:44.677 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:44.677 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:44.677 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:44.677 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:44.677 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:37:44.678 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:37:44.679 [DEBUG] [ThreadPoolExecutor-2614_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:44.679 [INFO] [ThreadPoolExecutor-2614_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Status age = 18.78251886367798s
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:45.740 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:45.741 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:45.742 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 17;15.7716146;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79138;2460996.81789052;9.62934222;1.3;_
2025-11-17T09:37:45.742 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response 17;15.7716146;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79138;2460996.81789052;9.62934222;1.3;_
2025-11-17T09:37:45.742 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:45.742 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:45.742 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:45.743 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:45.743 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:45.743 [INFO] [Thread-66946 (handle)] [driver.py] [get_status()] Telra = 15.7716146, teldec = -24.256644
2025-11-17T09:37:45.743 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7716146 -24.256644
2025-11-17T09:37:45.743 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7716146 -24.256644
2025-11-17T09:37:45.743 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7716146 -24.256644
2025-11-17T09:37:45.744 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 17;15.7716146;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79138;2460996.81789056;9.62934222;1.3;_15.7462606964693 -24.1756606124997
2025-11-17T09:37:45.744 [INFO] [Thread-66946 (handle)] [driver.py] [get_status()] ra_j2k = 15.7462606964693     dec_j2k = -24.1756606124997
2025-11-17T09:37:45.744 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:45.744 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:45.744 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 140;0.104308179093888;171.162362694745;_
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response 140;0.104308179093888;171.162362694745;_
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:45.745 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:45.746 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:45.747 [DEBUG] [Thread-66946 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:45.747 [DEBUG] [Thread-66946 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:45.747 [DEBUG] [Thread-66946 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45645)
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:45.753 [DEBUG] [Thread-66946 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:45.760 [DEBUG] [Thread-66946 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:45.760 [DEBUG] [Thread-66946 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:45.760 [DEBUG] [Thread-66946 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:45.760 [DEBUG] [Thread-66946 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:45.760 [DEBUG] [Thread-66946 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:45.761 [DEBUG] [Thread-66946 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:45.761 [DEBUG] [Thread-66946 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:45.761 [DEBUG] [Thread-66946 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:45.761 [DEBUG] [Thread-66946 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:45.761 [INFO] [Thread-66946 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81789052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308179093888, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7716146, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7462606964693, telescope_dec_j2k=-24.1756606124997, observability=1)
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.7249231338500977s
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:37:49.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:37:49.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7726694;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79243;2460996.81793388;9.63039417;1.3;_
2025-11-17T09:37:49.487 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7726694;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79243;2460996.81793388;9.63039417;1.3;_
2025-11-17T09:37:49.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:37:49.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:37:49.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:37:49.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:49.488 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:37:49.488 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7726694, teldec = -24.256644
2025-11-17T09:37:49.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7726694 -24.256644
2025-11-17T09:37:49.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7726694 -24.256644
2025-11-17T09:37:49.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7726694 -24.256644
2025-11-17T09:37:49.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7726694;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79243;2460996.8179339;9.63039417;1.3;_15.7473148157794 -24.1756928434262
2025-11-17T09:37:49.490 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.7473148157794     dec_j2k = -24.1756928434262
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104308379653602;171.162357330327;_
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104308379653602;171.162357330327;_
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:49.490 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:37:49.491 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:37:49.492 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47259)
2025-11-17T09:37:49.492 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:37:49.493 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:37:49.493 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:37:49.493 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:37:49.493 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:37:49.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:37:49.500 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81793388, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308379653602, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7726694, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7473148157794, telescope_dec_j2k=-24.1756928434262, observability=1)
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Status age = 11.369718790054321s
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:00.870 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:00.871 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:00.872 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 17;15.7758434;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79561;2460996.81806565;9.63355944;1.3;_
2025-11-17T09:38:00.872 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response 17;15.7758434;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79561;2460996.81806565;9.63355944;1.3;_
2025-11-17T09:38:00.872 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:00.872 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:00.872 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:00.873 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:00.873 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:00.873 [INFO] [Thread-66947 (handle)] [driver.py] [get_status()] Telra = 15.7758434, teldec = -24.256644
2025-11-17T09:38:00.873 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7758434 -24.256644
2025-11-17T09:38:00.873 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7758434 -24.256644
2025-11-17T09:38:00.873 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7758434 -24.256644
2025-11-17T09:38:00.874 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 17;15.7758434;-24.256644;50.108555;89.993116;50.08601;90.12017;12.79561;2460996.81806567;9.63355944;1.3;_15.7504867689576 -24.1757898673182
2025-11-17T09:38:00.874 [INFO] [Thread-66947 (handle)] [driver.py] [get_status()] ra_j2k = 15.7504867689576     dec_j2k = -24.1757898673182
2025-11-17T09:38:00.874 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:00.874 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:00.874 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 140;0.10430906155663;171.162357330327;_
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response 140;0.10430906155663;171.162357330327;_
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:00.875 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:00.876 [DEBUG] [Thread-66947 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:00.876 [DEBUG] [Thread-66947 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:00.876 [DEBUG] [Thread-66947 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49811)
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:00.883 [DEBUG] [Thread-66947 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:00.890 [DEBUG] [Thread-66947 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:00.890 [DEBUG] [Thread-66947 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:00.890 [DEBUG] [Thread-66947 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:00.890 [DEBUG] [Thread-66947 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:00.891 [DEBUG] [Thread-66947 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:00.891 [DEBUG] [Thread-66947 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:00.891 [DEBUG] [Thread-66947 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:00.891 [DEBUG] [Thread-66947 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:00.891 [DEBUG] [Thread-66947 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:00.891 [INFO] [Thread-66947 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81806565, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430906155663, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108555, telescope_az=89.993116, telescope_ra=15.7758434, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79561, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7504867689576, telescope_dec_j2k=-24.1757898673182, observability=1)
2025-11-17T09:38:03.804 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Status age = 2.913881540298462s
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:03.805 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:03.806 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:03.807 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 17;15.7766564;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79642;2460996.81809962;9.63437028;1.3;_
2025-11-17T09:38:03.807 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response 17;15.7766564;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79642;2460996.81809962;9.63437028;1.3;_
2025-11-17T09:38:03.807 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:03.807 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:03.807 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:03.808 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:03.808 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:03.808 [INFO] [Thread-66948 (handle)] [driver.py] [get_status()] Telra = 15.7766564, teldec = -24.256644
2025-11-17T09:38:03.808 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7766564 -24.256644
2025-11-17T09:38:03.808 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7766564 -24.256644
2025-11-17T09:38:03.808 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7766564 -24.256644
2025-11-17T09:38:03.809 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 17;15.7766564;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79642;2460996.81809964;9.63437028;1.3;_15.7512992450257 -24.1758147284895
2025-11-17T09:38:03.809 [INFO] [Thread-66948 (handle)] [driver.py] [get_status()] ra_j2k = 15.7512992450257     dec_j2k = -24.1758147284895
2025-11-17T09:38:03.809 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:03.810 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:03.810 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:03.810 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 140;0.104308419765545;171.162351965909;_
2025-11-17T09:38:03.810 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response 140;0.104308419765545;171.162351965909;_
2025-11-17T09:38:03.811 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:03.811 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:03.811 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:03.811 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:03.811 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:03.812 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:03.812 [DEBUG] [Thread-66948 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:03.812 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:03.812 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:03.812 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:03.813 [DEBUG] [Thread-66948 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:03.813 [DEBUG] [Thread-66948 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:03.813 [DEBUG] [Thread-66948 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56745)
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:03.818 [DEBUG] [Thread-66948 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:03.825 [DEBUG] [Thread-66948 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:03.825 [DEBUG] [Thread-66948 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:03.826 [DEBUG] [Thread-66948 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:03.826 [INFO] [Thread-66948 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81809962, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308419765545, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.7766564, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79642, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7512992450257, telescope_dec_j2k=-24.1758147284895, observability=1)
2025-11-17T09:38:12.400 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:38:12.400 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.574622392654419s
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:12.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:12.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:12.402 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:12.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:12.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:12.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:12.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.779048;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79881;2460996.8181991;9.63675528;1.3;_
2025-11-17T09:38:12.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.779048;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79881;2460996.8181991;9.63675528;1.3;_
2025-11-17T09:38:12.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:12.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:12.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:12.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:12.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:12.404 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.779048, teldec = -24.256644
2025-11-17T09:38:12.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.779048 -24.256644
2025-11-17T09:38:12.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.779048 -24.256644
2025-11-17T09:38:12.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.779048 -24.256644
2025-11-17T09:38:12.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.779048;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79881;2460996.81819913;9.63675528;1.3;_15.7536893046013 -24.1758878840696
2025-11-17T09:38:12.405 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7536893046013     dec_j2k = -24.1758878840696
2025-11-17T09:38:12.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:12.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104308580213316;171.162351965909;_
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104308580213316;171.162351965909;_
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:12.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.00329;_GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:38:12.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:38:12.411 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50145)
2025-11-17T09:38:12.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:12.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:12.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:12.412 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:12.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:12.419 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:38:12.419 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8181991, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308580213316, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.779048, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79881, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7536893046013, telescope_dec_j2k=-24.1758878840696, observability=1)
2025-11-17T09:38:12.419 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48421573638916 seconds ago
2025-11-17T09:38:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.3616364002227783s
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7796936;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79946;2460996.81822666;9.63739917;1.3;_
2025-11-17T09:38:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7796936;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79946;2460996.81822666;9.63739917;1.3;_
2025-11-17T09:38:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:14.784 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7796936, teldec = -24.256644
2025-11-17T09:38:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7796936 -24.256644
2025-11-17T09:38:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7796936 -24.256644
2025-11-17T09:38:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7796936 -24.256644
2025-11-17T09:38:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7796936;-24.256644;50.108554;89.993116;50.08601;90.12017;12.79946;2460996.81822668;9.63739917;1.3;_15.7543344889828 -24.1759076375459
2025-11-17T09:38:14.785 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7543344889828     dec_j2k = -24.1759076375459
2025-11-17T09:38:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104308981332744;171.162351965909;_
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104308981332744;171.162351965909;_
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39167)
2025-11-17T09:38:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:14.794 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:14.801 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81822666, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308981332744, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.7796936, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.79946, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:37:18.781700', telescope_ra_j2k=15.7543344889828, telescope_dec_j2k=-24.1759076375459, observability=1)
2025-11-17T09:38:18.924 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:18.924 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:18.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:18.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:18.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:18.925 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:18.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:18.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:18.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:18.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:18.926 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:38:18.926 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:38:18.927 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:38:18.928 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:19.928 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:19.928 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:19.928 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:19.928 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:19.929 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:19.929 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:19.929 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:19.929 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:19.930 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:19.931 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:19.931 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:19.931 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:19.931 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:19.932 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:19.932 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:19.932 [DEBUG] [ThreadPoolExecutor-2616_0] [payload.py] [to_registers()] [0]
2025-11-17T09:38:19.934 [DEBUG] [ThreadPoolExecutor-2616_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43615)
2025-11-17T09:38:19.934 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:19.934 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:19.934 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:38:19.934 [DEBUG] [ThreadPoolExecutor-2616_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:19.935 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:19.942 [DEBUG] [ThreadPoolExecutor-2616_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Status age = 7.153900146484375s
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:21.955 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:21.956 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:21.957 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 17;15.7816944;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80146;2460996.81830969;9.63939444;1.3;_
2025-11-17T09:38:21.957 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response 17;15.7816944;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80146;2460996.81830969;9.63939444;1.3;_
2025-11-17T09:38:21.957 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:21.957 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:21.957 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:21.958 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:21.958 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:21.958 [INFO] [Thread-66949 (handle)] [driver.py] [get_status()] Telra = 15.7816944, teldec = -24.256644
2025-11-17T09:38:21.958 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7816944 -24.256644
2025-11-17T09:38:21.958 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7816944 -24.256644
2025-11-17T09:38:21.958 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7816944 -24.256644
2025-11-17T09:38:21.959 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 17;15.7816944;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80146;2460996.81830971;9.63939444;1.3;_15.7563340014959 -24.1759688710507
2025-11-17T09:38:21.959 [INFO] [Thread-66949 (handle)] [driver.py] [get_status()] ra_j2k = 15.7563340014959     dec_j2k = -24.1759688710507
2025-11-17T09:38:21.959 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:21.959 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:21.959 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 140;0.104308459877488;171.162357330327;_
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response 140;0.104308459877488;171.162357330327;_
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:21.960 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:21.961 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:21.962 [DEBUG] [Thread-66949 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:21.962 [DEBUG] [Thread-66949 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:21.962 [DEBUG] [Thread-66949 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49865)
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:21.964 [DEBUG] [Thread-66949 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:21.971 [DEBUG] [Thread-66949 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:21.972 [DEBUG] [Thread-66949 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:21.972 [DEBUG] [Thread-66949 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:21.972 [INFO] [Thread-66949 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81830969, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308459877488, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.7816944, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.80146, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7563340014959, telescope_dec_j2k=-24.1759688710507, observability=1)
2025-11-17T09:38:27.018 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:38:27
2025-11-17T09:38:27.018 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:27.018 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.046717405319214s
2025-11-17T09:38:27.018 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:27.019 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:27.019 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:27.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:27.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:27.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:27.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:27.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7831166;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80288;2460996.8183683;9.64081278;1.3;_
2025-11-17T09:38:27.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7831166;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80288;2460996.8183683;9.64081278;1.3;_
2025-11-17T09:38:27.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:27.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:27.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:27.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:27.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:27.022 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7831166, teldec = -24.256644
2025-11-17T09:38:27.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7831166 -24.256644
2025-11-17T09:38:27.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7831166 -24.256644
2025-11-17T09:38:27.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7831166 -24.256644
2025-11-17T09:38:27.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7831166;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80288;2460996.81836832;9.64081278;1.3;_15.7577552868542 -24.1760124104435
2025-11-17T09:38:27.023 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.7577552868542     dec_j2k = -24.1760124104435
2025-11-17T09:38:27.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:27.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:27.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10430878077303;171.162351965909;_
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10430878077303;171.162351965909;_
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:27.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:27.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:27.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:27.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:27.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:27.032 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35793)
2025-11-17T09:38:27.032 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:27.032 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:27.032 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:27.032 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:27.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:27.039 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:27.039 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:27.039 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:27.040 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:27.040 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8183683, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10430878077303, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.7831166, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.80288, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7577552868542, telescope_dec_j2k=-24.1760124104435, observability=1)
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Status age = 12.980811834335327s
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:40.021 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:40.022 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 17;15.786739;-24.256644;50.108554;89.993116;50.08601;90.12017;12.8065;2460996.81851877;9.64442528;1.3;_
2025-11-17T09:38:40.022 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response 17;15.786739;-24.256644;50.108554;89.993116;50.08601;90.12017;12.8065;2460996.81851877;9.64442528;1.3;_
2025-11-17T09:38:40.022 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:40.022 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:40.022 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:40.023 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:40.023 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:40.023 [INFO] [Thread-66950 (handle)] [driver.py] [get_status()] Telra = 15.786739, teldec = -24.256644
2025-11-17T09:38:40.023 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] UnCookCoordinates 15.786739 -24.256644
2025-11-17T09:38:40.023 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.786739 -24.256644
2025-11-17T09:38:40.023 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.786739 -24.256644
2025-11-17T09:38:40.024 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 17;15.786739;-24.256644;50.108554;89.993116;50.08601;90.12017;12.8065;2460996.8185188;9.64442528;1.3;_15.7613753591944 -24.1761233582321
2025-11-17T09:38:40.024 [INFO] [Thread-66950 (handle)] [driver.py] [get_status()] ra_j2k = 15.7613753591944     dec_j2k = -24.1761233582321
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 140;0.104308660437202;171.162362694745;_
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response 140;0.104308660437202;171.162362694745;_
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:40.025 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:40.026 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:40.026 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:40.026 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:40.027 [DEBUG] [Thread-66950 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:40.027 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:40.027 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:40.027 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:40.028 [DEBUG] [Thread-66950 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:40.028 [DEBUG] [Thread-66950 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:40.028 [DEBUG] [Thread-66950 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51521)
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:40.035 [DEBUG] [Thread-66950 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:40.043 [DEBUG] [Thread-66950 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:40.043 [DEBUG] [Thread-66950 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:40.043 [DEBUG] [Thread-66950 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:40.043 [DEBUG] [Thread-66950 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:40.043 [DEBUG] [Thread-66950 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:40.044 [DEBUG] [Thread-66950 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:40.044 [DEBUG] [Thread-66950 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:40.044 [DEBUG] [Thread-66950 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:40.044 [DEBUG] [Thread-66950 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:40.044 [INFO] [Thread-66950 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81851877, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104308660437202, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.786739, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.8065, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7613753591944, telescope_dec_j2k=-24.1761233582321, observability=1)
2025-11-17T09:38:44.942 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:44.942 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:44.942 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:44.942 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:44.943 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:44.943 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:44.943 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:44.944 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:38:44.945 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:38:44.946 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:48.592 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:48.592 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.548698425292969s
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:48.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7891102;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80887;2460996.81861799;9.64679;1.3;_
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.7891102;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80887;2460996.81861799;9.64679;1.3;_
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:48.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:48.595 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:48.595 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:48.595 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.7891102, teldec = -24.256644
2025-11-17T09:38:48.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7891102 -24.256644
2025-11-17T09:38:48.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7891102 -24.256644
2025-11-17T09:38:48.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7891102 -24.256644
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.7891102;-24.256644;50.108554;89.993116;50.08601;90.12017;12.80887;2460996.81861801;9.64679;1.3;_15.7637450370551 -24.1761960237495
2025-11-17T09:38:48.597 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.7637450370551     dec_j2k = -24.1761960237495
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104309342340229;171.162357330327;_
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104309342340229;171.162357330327;_
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:48.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:48.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:48.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:48.599 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:48.599 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56591)
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:48.605 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:48.607 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:48.607 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81861799, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309342340229, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108554, telescope_az=89.993116, telescope_ra=15.7891102, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.80887, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7637450370551, telescope_dec_j2k=-24.1761960237495, observability=1)
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Status age = 9.545916557312012s
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:38:58.153 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:38:58.154 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:38:58.155 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 17;15.7917889;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81155;2460996.81872865;9.64946139;1.3;_
2025-11-17T09:38:58.155 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response 17;15.7917889;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81155;2460996.81872865;9.64946139;1.3;_
2025-11-17T09:38:58.155 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:38:58.155 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:38:58.155 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:38:58.156 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:58.156 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:38:58.156 [INFO] [Thread-66951 (handle)] [driver.py] [get_status()] Telra = 15.7917889, teldec = -24.256644
2025-11-17T09:38:58.156 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7917889 -24.256644
2025-11-17T09:38:58.156 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7917889 -24.256644
2025-11-17T09:38:58.156 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7917889 -24.256644
2025-11-17T09:38:58.157 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 17;15.7917889;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81155;2460996.81872867;9.64946139;1.3;_15.766422018982 -24.1762781504582
2025-11-17T09:38:58.157 [INFO] [Thread-66951 (handle)] [driver.py] [get_status()] ra_j2k = 15.766422018982     dec_j2k = -24.1762781504582
2025-11-17T09:38:58.157 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:38:58.157 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:38:58.157 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 140;0.104309663235772;171.162357330327;_
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response 140;0.104309663235772;171.162357330327;_
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:58.159 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:38:58.160 [DEBUG] [Thread-66951 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35271)
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:38:58.165 [DEBUG] [Thread-66951 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:38:58.172 [DEBUG] [Thread-66951 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:38:58.172 [DEBUG] [Thread-66951 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:58.172 [DEBUG] [Thread-66951 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:38:58.172 [DEBUG] [Thread-66951 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:38:58.173 [DEBUG] [Thread-66951 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:38:58.173 [DEBUG] [Thread-66951 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:38:58.173 [DEBUG] [Thread-66951 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:38:58.173 [DEBUG] [Thread-66951 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:38:58.173 [DEBUG] [Thread-66951 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:38:58.173 [INFO] [Thread-66951 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81872865, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309663235772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7917889, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81155, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.766422018982, telescope_dec_j2k=-24.1762781504582, observability=1)
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Status age = 2.751439332962036s
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:00.924 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:00.925 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:00.926 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 17;15.7925647;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81233;2460996.81876072;9.650235;1.3;_
2025-11-17T09:39:00.926 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response 17;15.7925647;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81233;2460996.81876072;9.650235;1.3;_
2025-11-17T09:39:00.926 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:00.926 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:00.926 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:00.927 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:00.927 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:00.927 [INFO] [Thread-66952 (handle)] [driver.py] [get_status()] Telra = 15.7925647, teldec = -24.256644
2025-11-17T09:39:00.927 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7925647 -24.256644
2025-11-17T09:39:00.927 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7925647 -24.256644
2025-11-17T09:39:00.927 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7925647 -24.256644
2025-11-17T09:39:00.928 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 17;15.7925647;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81233;2460996.81876074;9.650235;1.3;_15.7671973216861 -24.1763019433311
2025-11-17T09:39:00.928 [INFO] [Thread-66952 (handle)] [driver.py] [get_status()] ra_j2k = 15.7671973216861     dec_j2k = -24.1763019433311
2025-11-17T09:39:00.928 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:00.928 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 140;0.104309101668573;171.162357330327;_
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response 140;0.104309101668573;171.162357330327;_
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:00.929 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:00.930 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:00.931 [DEBUG] [Thread-66952 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:00.931 [DEBUG] [Thread-66952 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:00.931 [DEBUG] [Thread-66952 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42667)
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:00.935 [DEBUG] [Thread-66952 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:00.942 [DEBUG] [Thread-66952 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:00.943 [DEBUG] [Thread-66952 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:00.943 [DEBUG] [Thread-66952 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:00.943 [DEBUG] [Thread-66952 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:00.943 [INFO] [Thread-66952 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81876072, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309101668573, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7925647, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81233, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7671973216861, telescope_dec_j2k=-24.1763019433311, observability=1)
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.536539316177368s
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:12.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:12.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:12.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7957679;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81553;2460996.81889446;9.65342944;1.3;_
2025-11-17T09:39:12.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.7957679;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81553;2460996.81889446;9.65342944;1.3;_
2025-11-17T09:39:12.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:12.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:12.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:12.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:12.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:12.483 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.7957679, teldec = -24.256644
2025-11-17T09:39:12.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.7957679 -24.256644
2025-11-17T09:39:12.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.7957679 -24.256644
2025-11-17T09:39:12.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7957679 -24.256644
2025-11-17T09:39:12.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.7957679;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81553;2460996.81889449;9.65342944;1.3;_15.7703984697774 -24.1764002173046
2025-11-17T09:39:12.484 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7703984697774     dec_j2k = -24.1764002173046
2025-11-17T09:39:12.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:12.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:12.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104309342340229;171.162346601491;_
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104309342340229;171.162346601491;_
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:12.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:12.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:12.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:12.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:12.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42593)
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:12.493 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:12.500 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:39:12.500 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81889446, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309342340229, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7957679, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81553, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7703984697774, telescope_dec_j2k=-24.1764002173046, observability=1)
2025-11-17T09:39:12.500 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.48204255104065 seconds ago
2025-11-17T09:39:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.283369541168213s
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7964124;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81618;2460996.81892112;9.65407222;1.3;_
2025-11-17T09:39:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.7964124;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81618;2460996.81892112;9.65407222;1.3;_
2025-11-17T09:39:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:14.786 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.7964124, teldec = -24.256644
2025-11-17T09:39:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7964124 -24.256644
2025-11-17T09:39:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7964124 -24.256644
2025-11-17T09:39:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7964124 -24.256644
2025-11-17T09:39:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.7964124;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81618;2460996.81892115;9.65407222;1.3;_15.7710425571908 -24.1764199974463
2025-11-17T09:39:14.787 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7710425571908     dec_j2k = -24.1764199974463
2025-11-17T09:39:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104309863795486;171.162351965909;_
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104309863795486;171.162351965909;_
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48417)
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:14.798 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81892112, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309863795486, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7964124, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81618, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7710425571908, telescope_dec_j2k=-24.1764199974463, observability=1)
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Status age = 1.4217071533203125s
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:16.220 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:16.221 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:16.222 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 17;15.7968043;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81657;2460996.81893775;9.65446306;1.3;_
2025-11-17T09:39:16.222 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response 17;15.7968043;-24.256644;50.108553;89.993116;50.08601;90.12017;12.81657;2460996.81893775;9.65446306;1.3;_
2025-11-17T09:39:16.222 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:16.222 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:16.222 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:16.223 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:16.223 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:16.223 [INFO] [Thread-66953 (handle)] [driver.py] [get_status()] Telra = 15.7968043, teldec = -24.256644
2025-11-17T09:39:16.223 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7968043 -24.256644
2025-11-17T09:39:16.223 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7968043 -24.256644
2025-11-17T09:39:16.223 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7968043 -24.256644
2025-11-17T09:39:16.224 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 17;15.7968319;-24.256644;50.108553;89.993116;50.08601;90.12017;12.8166;2460996.81893778;9.65449056;1.3;_15.7714342063539 -24.176432026256
2025-11-17T09:39:16.224 [INFO] [Thread-66953 (handle)] [driver.py] [get_status()] ra_j2k = 15.7714342063539     dec_j2k = -24.176432026256
2025-11-17T09:39:16.224 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:16.224 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:16.224 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 140;0.104309262116344;171.162362694745;_
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response 140;0.104309262116344;171.162362694745;_
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:16.225 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:16.226 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:16.227 [DEBUG] [Thread-66953 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:16.227 [DEBUG] [Thread-66953 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:16.227 [DEBUG] [Thread-66953 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:16.232 [DEBUG] [Thread-66953 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42499)
2025-11-17T09:39:16.233 [DEBUG] [Thread-66953 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:16.233 [DEBUG] [Thread-66953 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:16.233 [DEBUG] [Thread-66953 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:16.233 [DEBUG] [Thread-66953 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:16.233 [DEBUG] [Thread-66953 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:16.240 [DEBUG] [Thread-66953 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:16.240 [INFO] [Thread-66953 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81893775, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104309262116344, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7968043, telescope_dec=-24.256644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81657, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:38:18.923894', telescope_ra_j2k=15.7714342063539, telescope_dec_j2k=-24.176432026256, observability=1)
2025-11-17T09:39:19.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:19.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:19.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:19.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:19.066 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:19.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:19.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:19.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:19.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:19.067 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:39:19.067 [INFO] [ThreadPoolExecutor-2617_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:39:19.067 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T09:39:27.100 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:39:27
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.85978102684021s
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:27.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:27.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:27.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:27.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7998616;-24.256643;50.108553;89.993116;50.08601;90.12017;12.81963;2460996.81906368;9.65751194;1.3;_
2025-11-17T09:39:27.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.7998616;-24.256643;50.108553;89.993116;50.08601;90.12017;12.81963;2460996.81906368;9.65751194;1.3;_
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:27.103 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.7998616, teldec = -24.256643
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.7998616 -24.256643
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.7998616 -24.256643
2025-11-17T09:39:27.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.7998616 -24.256643
2025-11-17T09:39:27.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.7998616;-24.256643;50.108553;89.993116;50.08601;90.12017;12.81963;2460996.8190637;9.65751194;1.3;_15.774489550822 -24.1765248951215
2025-11-17T09:39:27.104 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.774489550822     dec_j2k = -24.1765248951215
2025-11-17T09:39:27.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:27.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:27.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104310104467143;171.162351965909;_
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104310104467143;171.162351965909;_
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:27.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:27.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54013)
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:27.108 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:27.115 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:27.116 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81906368, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310104467143, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993116, telescope_ra=15.7998616, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.81963, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.774489550822, telescope_dec_j2k=-24.1765248951215, observability=1)
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Status age = 7.169318437576294s
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:34.285 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 17;15.8018412;-24.256643;50.108553;89.993115;50.08601;90.12017;12.82161;2460996.81914683;9.65948611;1.3;_
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response 17;15.8018412;-24.256643;50.108553;89.993115;50.08601;90.12017;12.82161;2460996.81914683;9.65948611;1.3;_
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:34.286 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:34.287 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:34.287 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:34.287 [INFO] [Thread-66954 (handle)] [driver.py] [get_status()] Telra = 15.8018412, teldec = -24.256643
2025-11-17T09:39:34.287 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8018412 -24.256643
2025-11-17T09:39:34.287 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8018412 -24.256643
2025-11-17T09:39:34.287 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8018412 -24.256643
2025-11-17T09:39:34.288 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 17;15.8018412;-24.256643;50.108553;89.993115;50.08601;90.12017;12.82161;2460996.81914685;9.65948611;1.3;_15.7764678855878 -24.1765857029373
2025-11-17T09:39:34.288 [INFO] [Thread-66954 (handle)] [driver.py] [get_status()] ra_j2k = 15.7764678855878     dec_j2k = -24.1765857029373
2025-11-17T09:39:34.288 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:34.288 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:34.288 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:34.288 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 140;0.104310906705999;171.162357330327;_
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response 140;0.104310906705999;171.162357330327;_
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:34.289 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:34.290 [DEBUG] [Thread-66954 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:34.290 [DEBUG] [Thread-66954 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:34.291 [DEBUG] [Thread-66954 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:34.294 [DEBUG] [Thread-66954 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57507)
2025-11-17T09:39:34.294 [DEBUG] [Thread-66954 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:34.294 [DEBUG] [Thread-66954 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:34.295 [DEBUG] [Thread-66954 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:34.295 [DEBUG] [Thread-66954 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:34.295 [DEBUG] [Thread-66954 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:34.302 [DEBUG] [Thread-66954 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:34.302 [INFO] [Thread-66954 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81914683, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310906705999, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108553, telescope_az=89.993115, telescope_ra=15.8018412, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.82161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7764678855878, telescope_dec_j2k=-24.1765857029373, observability=1)
2025-11-17T09:39:39.946 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.946 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.946 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:39.946 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:39.946 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:39:39.947 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:39.948 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:39.949 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:39.949 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.949 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:39.949 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:39.949 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:39.950 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:39:39.951 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.952 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:39.952 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:39.952 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:39.952 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:39.952 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Park
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:39:39.953 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:39:39.954 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 29;15.803428;-24.256643;50.108553;89.993115;50.08601;90.12017;12.82319;2460996.81921243;9.66106861;1.3;_Park Command Successful
2025-11-17T09:39:40.954 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:39:40.954 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:39:40.955 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:39:40.955 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:39:40.955 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:39:41.955 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:39:41.955 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:39:41.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:39:41.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:39:41.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:39:42.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:39:42.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:39:42.956 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:39:42.957 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:39:42.957 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:39:43.957 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:39:43.957 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:39:43.957 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:43.958 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:39:43.959 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:39:43.960 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:39:44.961 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:39:44.962 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:39:44.962 [DEBUG] [ThreadPoolExecutor-2616_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:44.962 [INFO] [ThreadPoolExecutor-2616_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.393578290939331s
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:47.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:47.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:47.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.8055753;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82534;2460996.81930206;9.66321;1.3;_
2025-11-17T09:39:47.698 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.8055753;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82534;2460996.81930206;9.66321;1.3;_
2025-11-17T09:39:47.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:47.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:47.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:47.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:47.699 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:47.699 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.8055753, teldec = -24.256643
2025-11-17T09:39:47.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8055753 -24.256643
2025-11-17T09:39:47.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8055753 -24.256643
2025-11-17T09:39:47.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8055753 -24.256643
2025-11-17T09:39:47.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.8055753;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82534;2460996.81930208;9.66321;1.3;_15.7801996012964 -24.1767004635111
2025-11-17T09:39:47.700 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.7801996012964     dec_j2k = -24.1767004635111
2025-11-17T09:39:47.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:47.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:47.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:47.701 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104310184691028;171.162362694745;_
2025-11-17T09:39:47.702 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104310184691028;171.162362694745;_
2025-11-17T09:39:47.702 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:47.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:47.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:47.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:47.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:47.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:47.704 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:47.704 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58795)
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:47.708 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:47.715 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:47.716 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:47.716 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81930206, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310184691028, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.8055753, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.82534, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7801996012964, telescope_dec_j2k=-24.1767004635111, observability=1)
2025-11-17T09:39:52.440 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Status age = 4.724584102630615s
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:39:52.441 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:39:52.442 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:39:52.443 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 17;15.8069189;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82668;2460996.81935698;9.66455;1.3;_
2025-11-17T09:39:52.443 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response 17;15.8069189;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82668;2460996.81935698;9.66455;1.3;_
2025-11-17T09:39:52.443 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:39:52.443 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:39:52.443 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:39:52.444 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:52.444 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:39:52.444 [INFO] [Thread-66955 (handle)] [driver.py] [get_status()] Telra = 15.8069189, teldec = -24.256643
2025-11-17T09:39:52.444 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8069189 -24.256643
2025-11-17T09:39:52.444 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8069189 -24.256643
2025-11-17T09:39:52.444 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8069189 -24.256643
2025-11-17T09:39:52.445 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 17;15.8069189;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82668;2460996.819357;9.66455;1.3;_15.7815423441213 -24.176741775516
2025-11-17T09:39:52.445 [INFO] [Thread-66955 (handle)] [driver.py] [get_status()] ra_j2k = 15.7815423441213     dec_j2k = -24.176741775516
2025-11-17T09:39:52.445 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:39:52.445 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 140;0.10431078637017;171.162362694745;_
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response 140;0.10431078637017;171.162362694745;_
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:52.446 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:39:52.447 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:39:52.448 [DEBUG] [Thread-66955 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:52.448 [DEBUG] [Thread-66955 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:39:52.448 [DEBUG] [Thread-66955 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:39:52.454 [DEBUG] [Thread-66955 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38763)
2025-11-17T09:39:52.454 [DEBUG] [Thread-66955 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:39:52.454 [DEBUG] [Thread-66955 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:39:52.454 [DEBUG] [Thread-66955 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:39:52.455 [DEBUG] [Thread-66955 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:39:52.455 [DEBUG] [Thread-66955 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:39:52.462 [DEBUG] [Thread-66955 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:39:52.462 [INFO] [Thread-66955 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81935698, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431078637017, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.8069189, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.82668, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7815423441213, telescope_dec_j2k=-24.176741775516, observability=1)
2025-11-17T09:40:00.974 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Status age = 8.512197017669678s
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:00.975 [DEBUG] [Thread-66956 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 17;15.8092857;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82905;2460996.81945574;9.66691028;1.3;_
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response 17;15.8092857;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82905;2460996.81945574;9.66691028;1.3;_
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:00.976 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:00.977 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:00.978 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:00.978 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:00.978 [INFO] [Thread-66956 (handle)] [driver.py] [get_status()] Telra = 15.8092857, teldec = -24.256643
2025-11-17T09:40:00.978 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8092857 -24.256643
2025-11-17T09:40:00.978 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8092857 -24.256643
2025-11-17T09:40:00.978 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8092857 -24.256643
2025-11-17T09:40:00.979 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 17;15.8092857;-24.256643;50.108552;89.993115;50.08601;90.12017;12.82905;2460996.81945578;9.66691028;1.3;_15.7839076351272 -24.1768145725072
2025-11-17T09:40:00.979 [INFO] [Thread-66956 (handle)] [driver.py] [get_status()] ra_j2k = 15.7839076351272     dec_j2k = -24.1768145725072
2025-11-17T09:40:00.979 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:00.979 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:00.979 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 140;0.104310104467143;171.162357330327;_
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response 140;0.104310104467143;171.162357330327;_
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:00.980 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:00.981 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:00.982 [DEBUG] [Thread-66956 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:00.982 [DEBUG] [Thread-66956 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:00.982 [DEBUG] [Thread-66956 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35003)
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:00.983 [DEBUG] [Thread-66956 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:00.990 [DEBUG] [Thread-66956 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:00.990 [INFO] [Thread-66956 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81945574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310104467143, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.8092857, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.82905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7839076351272, telescope_dec_j2k=-24.1768145725072, observability=1)
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Status age = 9.542984962463379s
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:10.533 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:10.534 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:10.535 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 17;15.811934;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83173;2460996.81956638;9.66957917;1.3;_
2025-11-17T09:40:10.535 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response 17;15.811934;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83173;2460996.81956638;9.66957917;1.3;_
2025-11-17T09:40:10.535 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:10.535 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:10.536 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:10.536 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:10.536 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:10.536 [INFO] [Thread-66957 (handle)] [driver.py] [get_status()] Telra = 15.811934, teldec = -24.256643
2025-11-17T09:40:10.537 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] UnCookCoordinates 15.811934 -24.256643
2025-11-17T09:40:10.537 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.811934 -24.256643
2025-11-17T09:40:10.537 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.811934 -24.256643
2025-11-17T09:40:10.537 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 17;15.8119619;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83173;2460996.8195664;9.66957917;1.3;_15.7865542480963 -24.1768960646243
2025-11-17T09:40:10.538 [INFO] [Thread-66957 (handle)] [driver.py] [get_status()] ra_j2k = 15.7865542480963     dec_j2k = -24.1768960646243
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 140;0.10431106715377;171.162346601491;_
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response 140;0.10431106715377;171.162346601491;_
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:10.538 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:10.539 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:10.539 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:10.539 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:10.540 [DEBUG] [Thread-66957 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39345)
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:10.548 [DEBUG] [Thread-66957 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:10.556 [DEBUG] [Thread-66957 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:10.556 [INFO] [Thread-66957 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81956638, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431106715377, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.811934, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.83173, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7865542480963, telescope_dec_j2k=-24.1768960646243, observability=1)
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.004128932952881s
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:12.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:12.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:12.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.812512;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83228;2460996.81958984;9.67012778;1.3;_
2025-11-17T09:40:12.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.812512;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83228;2460996.81958984;9.67012778;1.3;_
2025-11-17T09:40:12.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:12.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:12.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:12.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:12.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:12.563 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.812512, teldec = -24.256643
2025-11-17T09:40:12.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.812512 -24.256643
2025-11-17T09:40:12.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.812512 -24.256643
2025-11-17T09:40:12.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.812512 -24.256643
2025-11-17T09:40:12.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.812512;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83228;2460996.81958986;9.67012778;1.3;_15.7871318800984 -24.1769138557148
2025-11-17T09:40:12.564 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.7871318800984     dec_j2k = -24.1769138557148
2025-11-17T09:40:12.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:12.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:12.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:12.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104311107265713;171.162351965909;_
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104311107265713;171.162351965909;_
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:12.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:12.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42729)
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:12.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:12.575 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:40:12.575 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81958984, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311107265713, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.812512, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.83228, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7871318800984, telescope_dec_j2k=-24.1769138557148, observability=1)
2025-11-17T09:40:12.575 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.475204944610596 seconds ago
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.1769754886627197s
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:14.752 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:14.753 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.813129;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83289;2460996.81961521;9.67074306;1.3;_
2025-11-17T09:40:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.813129;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83289;2460996.81961521;9.67074306;1.3;_
2025-11-17T09:40:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:14.754 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:14.755 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.813129, teldec = -24.256643
2025-11-17T09:40:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.813129 -24.256643
2025-11-17T09:40:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.813129 -24.256643
2025-11-17T09:40:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.813129 -24.256643
2025-11-17T09:40:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.813129;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83289;2460996.81961523;9.67074306;1.3;_15.7877484873501 -24.1769328492867
2025-11-17T09:40:14.756 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.7877484873501     dec_j2k = -24.1769328492867
2025-11-17T09:40:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104310545698514;171.162368059163;_
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104310545698514;171.162368059163;_
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43901)
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:14.762 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:14.770 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.81961521, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310545698514, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.813129, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.83289, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:39:19.065333', telescope_ra_j2k=15.7877484873501, telescope_dec_j2k=-24.1769328492867, observability=1)
2025-11-17T09:40:19.209 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:19.210 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:19.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:19.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:19.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:19.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:19.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:19.212 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:40:19.212 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:19.212 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:19.212 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:19.212 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:19.212 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:40:19.213 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:40:19.214 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:20.214 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:20.214 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:20.214 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:20.214 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:20.214 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:40:20.215 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:20.216 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:20.217 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:20.217 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:20.217 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:20.217 [DEBUG] [ThreadPoolExecutor-2618_0] [payload.py] [to_registers()] [0]
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49613)
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:20.223 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:20.232 [DEBUG] [ThreadPoolExecutor-2618_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:27.176 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:40:27
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.406474113464355s
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:27.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:27.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:27.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.816584;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83635;2460996.819759;9.67418861;1.3;_
2025-11-17T09:40:27.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.816584;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83635;2460996.819759;9.67418861;1.3;_
2025-11-17T09:40:27.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:27.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:27.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:27.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:27.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:27.179 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.816584, teldec = -24.256643
2025-11-17T09:40:27.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.816584 -24.256643
2025-11-17T09:40:27.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.816584 -24.256643
2025-11-17T09:40:27.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.816584 -24.256643
2025-11-17T09:40:27.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.816584;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83635;2460996.81975903;9.67418861;1.3;_15.7912012896122 -24.1770392461218
2025-11-17T09:40:27.180 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.7912012896122     dec_j2k = -24.1770392461218
2025-11-17T09:40:27.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:27.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:27.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104310986929884;171.162368059163;_
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104310986929884;171.162368059163;_
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:27.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:27.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:27.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:27.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:27.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49563)
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:27.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:27.197 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:27.198 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.819759, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104310986929884, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.816584, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.83635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.7912012896122, telescope_dec_j2k=-24.1770392461218, observability=1)
2025-11-17T09:40:28.602 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:28.602 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Status age = 1.4047174453735352s
2025-11-17T09:40:28.602 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:28.602 [DEBUG] [Thread-66958 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:28.602 [DEBUG] [Thread-66958 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:28.603 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:28.603 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:28.603 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:28.604 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:28.605 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 17;15.816977;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83674;2460996.81977552;9.67458056;1.3;_
2025-11-17T09:40:28.605 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response 17;15.816977;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83674;2460996.81977552;9.67458056;1.3;_
2025-11-17T09:40:28.605 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:28.605 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:28.605 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:28.606 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:28.606 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:28.606 [INFO] [Thread-66958 (handle)] [driver.py] [get_status()] Telra = 15.816977, teldec = -24.256643
2025-11-17T09:40:28.606 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] UnCookCoordinates 15.816977 -24.256643
2025-11-17T09:40:28.606 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.816977 -24.256643
2025-11-17T09:40:28.606 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.816977 -24.256643
2025-11-17T09:40:28.607 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 17;15.816977;-24.256643;50.108552;89.993115;50.08601;90.12017;12.83674;2460996.81977554;9.67458056;1.3;_15.7915940397875 -24.1770513527579
2025-11-17T09:40:28.607 [INFO] [Thread-66958 (handle)] [driver.py] [get_status()] ra_j2k = 15.7915940397875     dec_j2k = -24.1770513527579
2025-11-17T09:40:28.607 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:28.607 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:28.607 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 140;0.104311307825427;171.162357330327;_
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response 140;0.104311307825427;171.162357330327;_
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:28.608 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:28.609 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:28.610 [DEBUG] [Thread-66958 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:28.610 [DEBUG] [Thread-66958 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:28.610 [DEBUG] [Thread-66958 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35709)
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:28.617 [DEBUG] [Thread-66958 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:28.624 [DEBUG] [Thread-66958 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:28.624 [DEBUG] [Thread-66958 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:28.624 [DEBUG] [Thread-66958 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:28.625 [DEBUG] [Thread-66958 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:28.625 [INFO] [Thread-66958 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81977552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311307825427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108552, telescope_az=89.993115, telescope_ra=15.816977, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.83674, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.7915940397875, telescope_dec_j2k=-24.1770513527579, observability=1)
2025-11-17T09:40:45.232 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:45.232 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:45.232 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:45.232 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:45.232 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:45.233 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:40:45.234 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:40:45.235 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:46.696 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Status age = 18.071720838546753s
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:40:46.697 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:40:46.698 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:40:46.699 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 17;15.8220191;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84178;2460996.81998494;9.67960889;1.3;_
2025-11-17T09:40:46.699 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response 17;15.8220191;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84178;2460996.81998494;9.67960889;1.3;_
2025-11-17T09:40:46.699 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:40:46.699 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:40:46.699 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:40:46.700 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:46.700 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:40:46.700 [INFO] [Thread-66959 (handle)] [driver.py] [get_status()] Telra = 15.8220191, teldec = -24.256643
2025-11-17T09:40:46.700 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8220191 -24.256643
2025-11-17T09:40:46.700 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8220191 -24.256643
2025-11-17T09:40:46.700 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8220191 -24.256643
2025-11-17T09:40:46.701 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 17;15.8220191;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84178;2460996.81998497;9.67960889;1.3;_15.7966329375672 -24.1772067539451
2025-11-17T09:40:46.701 [INFO] [Thread-66959 (handle)] [driver.py] [get_status()] ra_j2k = 15.7966329375672     dec_j2k = -24.1772067539451
2025-11-17T09:40:46.701 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:40:46.701 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:40:46.701 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 140;0.104311307825427;171.162362694745;_
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response 140;0.104311307825427;171.162362694745;_
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:46.702 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:40:46.703 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:40:46.704 [DEBUG] [Thread-66959 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:46.704 [DEBUG] [Thread-66959 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:40:46.704 [DEBUG] [Thread-66959 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48901)
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:40:46.706 [DEBUG] [Thread-66959 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:40:46.713 [DEBUG] [Thread-66959 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:40:46.714 [DEBUG] [Thread-66959 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:40:46.714 [INFO] [Thread-66959 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.81998494, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311307825427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8220191, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.84178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.7966329375672, telescope_dec_j2k=-24.1772067539451, observability=1)
2025-11-17T09:40:46.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:40:46.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.09199380874633789s
2025-11-17T09:40:46.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.09199380874633789
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Status age = 14.309920072555542s
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:01.024 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:01.025 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 17;15.8260039;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84577;2460996.82015075;9.68358278;1.3;_
2025-11-17T09:41:01.026 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response 17;15.8260039;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84577;2460996.82015075;9.68358278;1.3;_
2025-11-17T09:41:01.026 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:01.026 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:01.026 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:01.027 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:01.027 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:01.027 [INFO] [Thread-66960 (handle)] [driver.py] [get_status()] Telra = 15.8260039, teldec = -24.256643
2025-11-17T09:41:01.027 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8260039 -24.256643
2025-11-17T09:41:01.027 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8260039 -24.256643
2025-11-17T09:41:01.027 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8260039 -24.256643
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 17;15.8260039;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84577;2460996.82015079;9.68358278;1.3;_15.8006152107399 -24.1773296677759
2025-11-17T09:41:01.028 [INFO] [Thread-66960 (handle)] [driver.py] [get_status()] ra_j2k = 15.8006152107399     dec_j2k = -24.1773296677759
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 140;0.104311508385141;171.162351965909;_
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response 140;0.104311508385141;171.162351965909;_
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:01.028 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:01.029 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:01.030 [DEBUG] [Thread-66960 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:01.030 [DEBUG] [Thread-66960 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:01.030 [DEBUG] [Thread-66960 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57835)
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:01.034 [DEBUG] [Thread-66960 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:01.041 [DEBUG] [Thread-66960 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:01.042 [DEBUG] [Thread-66960 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:01.042 [DEBUG] [Thread-66960 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:01.042 [INFO] [Thread-66960 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82015075, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311508385141, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8260039, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.84577, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.8006152107399, telescope_dec_j2k=-24.1773296677759, observability=1)
2025-11-17T09:41:04.776 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:04.776 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Status age = 3.7347466945648193s
2025-11-17T09:41:04.776 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:04.776 [DEBUG] [Thread-66961 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:04.777 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 17;15.8270596;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84682;2460996.82019419;9.68463556;1.3;_
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response 17;15.8270596;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84682;2460996.82019419;9.68463556;1.3;_
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:04.778 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:04.779 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:04.779 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:04.779 [INFO] [Thread-66961 (handle)] [driver.py] [get_status()] Telra = 15.8270596, teldec = -24.256643
2025-11-17T09:41:04.779 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8270596 -24.256643
2025-11-17T09:41:04.779 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8270596 -24.256643
2025-11-17T09:41:04.779 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8270596 -24.256643
2025-11-17T09:41:04.780 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 17;15.8270596;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84682;2460996.82019421;9.68463556;1.3;_15.8016702418813 -24.1773622462365
2025-11-17T09:41:04.780 [INFO] [Thread-66961 (handle)] [driver.py] [get_status()] ra_j2k = 15.8016702418813     dec_j2k = -24.1773622462365
2025-11-17T09:41:04.780 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:04.780 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:04.780 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 140;0.104311468273198;171.162362694745;_
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response 140;0.104311468273198;171.162362694745;_
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:04.781 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:04.782 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:04.783 [DEBUG] [Thread-66961 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:04.783 [DEBUG] [Thread-66961 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:04.783 [DEBUG] [Thread-66961 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:04.787 [DEBUG] [Thread-66961 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45737)
2025-11-17T09:41:04.787 [DEBUG] [Thread-66961 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:04.787 [DEBUG] [Thread-66961 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:04.788 [DEBUG] [Thread-66961 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:04.788 [DEBUG] [Thread-66961 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:04.788 [DEBUG] [Thread-66961 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:04.795 [DEBUG] [Thread-66961 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:04.795 [INFO] [Thread-66961 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82019419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311468273198, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8270596, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.84682, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.8016702418813, telescope_dec_j2k=-24.1773622462365, observability=1)
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.839886426925659s
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:12.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:12.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:12.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:12.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:12.637 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:12.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:12.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:12.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:12.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8292355;-24.256643;50.108551;89.993115;50.08601;90.12017;12.849;2460996.82028515;9.68680556;1.3;_
2025-11-17T09:41:12.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.8292355;-24.256643;50.108551;89.993115;50.08601;90.12017;12.849;2460996.82028515;9.68680556;1.3;_
2025-11-17T09:41:12.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:12.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:12.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:12.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:12.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:12.639 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.8292355, teldec = -24.256643
2025-11-17T09:41:12.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.8292355 -24.256643
2025-11-17T09:41:12.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.8292355 -24.256643
2025-11-17T09:41:12.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8292355 -24.256643
2025-11-17T09:41:12.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8292355;-24.256643;50.108551;89.993115;50.08601;90.12017;12.849;2460996.82028519;9.68680556;1.3;_15.8038447640633 -24.1774294129889
2025-11-17T09:41:12.640 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.8038447640633     dec_j2k = -24.1774294129889
2025-11-17T09:41:12.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:12.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:12.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104311388049313;171.162357330327;_
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104311388049313;171.162357330327;_
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:12.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:12.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:12.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:12.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41245)
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:12.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:12.650 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:41:12.650 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82028515, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311388049313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8292355, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.849, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.8038447640633, telescope_dec_j2k=-24.1774294129889, observability=1)
2025-11-17T09:41:12.650 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47469997406006 seconds ago
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.1227238178253174s
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8298514;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84962;2460996.8203099;9.68741972;1.3;_
2025-11-17T09:41:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.8298514;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84962;2460996.8203099;9.68741972;1.3;_
2025-11-17T09:41:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:14.776 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.8298514, teldec = -24.256643
2025-11-17T09:41:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8298514 -24.256643
2025-11-17T09:41:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8298514 -24.256643
2025-11-17T09:41:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8298514 -24.256643
2025-11-17T09:41:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8298514;-24.256643;50.108551;89.993115;50.08601;90.12017;12.84962;2460996.82030992;9.68741972;1.3;_15.8044602742516 -24.177448429632
2025-11-17T09:41:14.777 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8044602742516     dec_j2k = -24.177448429632
2025-11-17T09:41:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104311909504569;171.162346601491;_
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104311909504569;171.162346601491;_
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52633)
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:14.783 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:14.790 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:14.791 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8203099, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311909504569, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8298514, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.84962, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:40:19.209544', telescope_ra_j2k=15.8044602742516, telescope_dec_j2k=-24.177448429632, observability=1)
2025-11-17T09:41:19.351 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:19.352 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:19.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:19.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:19.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:19.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:19.353 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:41:19.353 [INFO] [ThreadPoolExecutor-2619_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:41:19.354 [INFO] [ThreadPoolExecutor-2619_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Status age = 8.041477680206299s
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:22.832 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:22.833 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:22.834 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 17;15.8320736;-24.256642;50.108551;89.993115;50.08601;90.12017;12.85184;2460996.82040317;9.68963583;1.3;_
2025-11-17T09:41:22.834 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response 17;15.8320736;-24.256642;50.108551;89.993115;50.08601;90.12017;12.85184;2460996.82040317;9.68963583;1.3;_
2025-11-17T09:41:22.834 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:22.834 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:22.834 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:22.835 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:22.835 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:22.835 [INFO] [Thread-66962 (handle)] [driver.py] [get_status()] Telra = 15.8320736, teldec = -24.256642
2025-11-17T09:41:22.835 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8320736 -24.256642
2025-11-17T09:41:22.835 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8320736 -24.256642
2025-11-17T09:41:22.835 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8320736 -24.256642
2025-11-17T09:41:22.836 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 17;15.8320736;-24.256642;50.108551;89.993115;50.08601;90.12017;12.85184;2460996.82040319;9.68963583;1.3;_15.8066810686412 -24.1775160600741
2025-11-17T09:41:22.836 [INFO] [Thread-66962 (handle)] [driver.py] [get_status()] ra_j2k = 15.8066810686412     dec_j2k = -24.1775160600741
2025-11-17T09:41:22.836 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:22.836 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:22.836 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 140;0.104311869392626;171.162346601491;_
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response 140;0.104311869392626;171.162346601491;_
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:22.837 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:22.838 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:22.839 [DEBUG] [Thread-66962 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:22.839 [DEBUG] [Thread-66962 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:22.839 [DEBUG] [Thread-66962 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43923)
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:22.846 [DEBUG] [Thread-66962 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:22.853 [DEBUG] [Thread-66962 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:22.854 [INFO] [Thread-66962 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82040317, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311869392626, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108551, telescope_az=89.993115, telescope_ra=15.8320736, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.85184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8066810686412, telescope_dec_j2k=-24.1775160600741, observability=1)
2025-11-17T09:41:27.258 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:41:27
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.404476881027222s
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:27.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:27.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:27.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:27.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8333067;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85307;2460996.8204544;9.69086556;1.3;_
2025-11-17T09:41:27.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.8333067;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85307;2460996.8204544;9.69086556;1.3;_
2025-11-17T09:41:27.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:27.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:27.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:27.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:27.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:27.262 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.8333067, teldec = -24.256642
2025-11-17T09:41:27.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8333067 -24.256642
2025-11-17T09:41:27.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8333067 -24.256642
2025-11-17T09:41:27.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8333067 -24.256642
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8333067;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85307;2460996.82045443;9.69086556;1.3;_15.8079133890392 -24.1775541548663
2025-11-17T09:41:27.264 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8079133890392     dec_j2k = -24.1775541548663
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104311789168741;171.162362694745;_
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104311789168741;171.162362694745;_
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:27.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:27.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:27.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:27.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:27.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:27.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41877)
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:27.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:27.275 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:27.276 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8204544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311789168741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8333067, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.85307, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8079133890392, telescope_dec_j2k=-24.1775541548663, observability=1)
2025-11-17T09:41:40.235 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.235 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.236 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:40.236 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:40.236 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:41:40.237 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:40.238 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:40.239 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:41:40.240 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:40.241 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Park
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:41:40.242 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:41:40.243 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 29;15.8369296;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85669;2460996.82060466;9.69447861;1.3;_Park Command Successful
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Status age = 13.714502573013306s
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:40.990 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:40.991 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:40.992 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 17;15.8371533;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85692;2460996.82061333;9.69470167;1.3;_
2025-11-17T09:41:40.992 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response 17;15.8371533;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85692;2460996.82061333;9.69470167;1.3;_
2025-11-17T09:41:40.992 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:40.992 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:40.992 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:40.993 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:40.993 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:40.993 [INFO] [Thread-66963 (handle)] [driver.py] [get_status()] Telra = 15.8371533, teldec = -24.256642
2025-11-17T09:41:40.993 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8371533 -24.256642
2025-11-17T09:41:40.993 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8371533 -24.256642
2025-11-17T09:41:40.993 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8371533 -24.256642
2025-11-17T09:41:40.994 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 17;15.8371533;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85692;2460996.82061336;9.69470167;1.3;_15.8117575592327 -24.1776730435939
2025-11-17T09:41:40.994 [INFO] [Thread-66963 (handle)] [driver.py] [get_status()] ra_j2k = 15.8117575592327     dec_j2k = -24.1776730435939
2025-11-17T09:41:40.994 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:40.994 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 140;0.104312110064283;171.162357330327;_
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response 140;0.104312110064283;171.162357330327;_
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:40.995 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:40.996 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:40.996 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:40.996 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:40.996 [DEBUG] [Thread-66963 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:40.996 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:40.997 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:40.997 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:40.997 [DEBUG] [Thread-66963 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:40.998 [DEBUG] [Thread-66963 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:40.998 [DEBUG] [Thread-66963 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57449)
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:41.001 [DEBUG] [Thread-66963 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:41.008 [DEBUG] [Thread-66963 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:41.009 [INFO] [Thread-66963 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82061333, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312110064283, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8371533, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.85692, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8117575592327, telescope_dec_j2k=-24.1776730435939, observability=1)
2025-11-17T09:41:41.243 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:41:41.243 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:41:41.243 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:41:41.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:41:41.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:41:42.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:41:42.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:41:42.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:41:42.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:41:42.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:41:43.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:41:43.244 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:41:43.245 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:41:43.245 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:41:43.245 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:41:44.245 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:41:44.245 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:44.246 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:41:44.247 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:41:44.248 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:45.248 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:45.248 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:45.248 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:45.248 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:45.248 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:41:45.249 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:41:45.250 [DEBUG] [ThreadPoolExecutor-2618_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:45.250 [INFO] [ThreadPoolExecutor-2618_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.8896825313568115s
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:45.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:45.899 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:45.900 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.8385167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85828;2460996.82067014;9.69606139;1.3;_
2025-11-17T09:41:45.900 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.8385167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85828;2460996.82067014;9.69606139;1.3;_
2025-11-17T09:41:45.900 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:45.900 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:45.900 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:45.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:45.901 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:45.901 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.8385167, teldec = -24.256642
2025-11-17T09:41:45.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8385167 -24.256642
2025-11-17T09:41:45.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8385167 -24.256642
2025-11-17T09:41:45.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8385167 -24.256642
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.8385167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.85828;2460996.82067016;9.69606139;1.3;_15.8131200987786 -24.1777152023764
2025-11-17T09:41:45.903 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8131200987786     dec_j2k = -24.1777152023764
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104311989728455;171.162351965909;_
2025-11-17T09:41:45.903 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104311989728455;171.162351965909;_
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:45.904 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.934;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:45.905 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.934 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:45.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:45.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:45.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:45.906 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:45.906 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:45.906 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34073)
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:45.911 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:45.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:45.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:45.918 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:45.919 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:45.919 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82067014, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.934, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.102), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104311989728455, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8385167, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.85828, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8131200987786, telescope_dec_j2k=-24.1777152023764, observability=1)
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Status age = 13.130386352539062s
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:41:59.049 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:41:59.050 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:41:59.051 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:41:59.051 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 17;15.842167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86193;2460996.82082235;9.69970167;1.3;_
2025-11-17T09:41:59.051 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response 17;15.842167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86193;2460996.82082235;9.69970167;1.3;_
2025-11-17T09:41:59.051 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:41:59.051 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:41:59.052 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:41:59.052 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:59.052 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:41:59.053 [INFO] [Thread-66964 (handle)] [driver.py] [get_status()] Telra = 15.842167, teldec = -24.256642
2025-11-17T09:41:59.053 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] UnCookCoordinates 15.842167 -24.256642
2025-11-17T09:41:59.053 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.842167 -24.256642
2025-11-17T09:41:59.053 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.842167 -24.256642
2025-11-17T09:41:59.054 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 17;15.842167;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86193;2460996.82082238;9.69970167;1.3;_15.8167680970353 -24.1778281264564
2025-11-17T09:41:59.054 [INFO] [Thread-66964 (handle)] [driver.py] [get_status()] ra_j2k = 15.8167680970353     dec_j2k = -24.1778281264564
2025-11-17T09:41:59.054 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:41:59.054 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:41:59.054 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 140;0.104312551295654;171.162351965909;_
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response 140;0.104312551295654;171.162351965909;_
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:59.055 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:41:59.056 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:41:59.057 [DEBUG] [Thread-66964 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:59.057 [DEBUG] [Thread-66964 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:41:59.057 [DEBUG] [Thread-66964 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59869)
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:41:59.063 [DEBUG] [Thread-66964 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:41:59.071 [DEBUG] [Thread-66964 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:41:59.071 [INFO] [Thread-66964 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82082235, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312551295654, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.842167, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86193, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8167680970353, telescope_dec_j2k=-24.1778281264564, observability=1)
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Status age = 2.002838134765625s
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:01.074 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 17;15.8427458;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86251;2460996.82084578;9.70027889;1.3;_
2025-11-17T09:42:01.075 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response 17;15.8427458;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86251;2460996.82084578;9.70027889;1.3;_
2025-11-17T09:42:01.076 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:01.076 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:01.076 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:01.077 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:01.077 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:01.077 [INFO] [Thread-66965 (handle)] [driver.py] [get_status()] Telra = 15.8427458, teldec = -24.256642
2025-11-17T09:42:01.077 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8427458 -24.256642
2025-11-17T09:42:01.077 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8427458 -24.256642
2025-11-17T09:42:01.077 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8427458 -24.256642
2025-11-17T09:42:01.078 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 17;15.8427458;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86251;2460996.82084581;9.70027889;1.3;_15.8173465323324 -24.1778460386731
2025-11-17T09:42:01.078 [INFO] [Thread-66965 (handle)] [driver.py] [get_status()] ra_j2k = 15.8173465323324     dec_j2k = -24.1778460386731
2025-11-17T09:42:01.078 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:01.078 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:01.078 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 140;0.104312992527025;171.162357330327;_
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response 140;0.104312992527025;171.162357330327;_
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:01.079 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:01.080 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:01.081 [DEBUG] [Thread-66965 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:01.081 [DEBUG] [Thread-66965 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:01.081 [DEBUG] [Thread-66965 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41567)
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:01.082 [DEBUG] [Thread-66965 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:01.089 [DEBUG] [Thread-66965 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:01.089 [DEBUG] [Thread-66965 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:01.089 [DEBUG] [Thread-66965 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:01.089 [DEBUG] [Thread-66965 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:01.089 [DEBUG] [Thread-66965 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:01.090 [DEBUG] [Thread-66965 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:01.090 [DEBUG] [Thread-66965 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:01.090 [DEBUG] [Thread-66965 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:01.090 [DEBUG] [Thread-66965 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:01.090 [INFO] [Thread-66965 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82084578, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312992527025, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8427458, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86251, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8173465323324, telescope_dec_j2k=-24.1778460386731, observability=1)
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.62096881866455s
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:12.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8459858;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86575;2460996.82098046;9.70351;1.3;_
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.8459858;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86575;2460996.82098046;9.70351;1.3;_
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:12.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:12.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:12.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:12.714 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.8459858, teldec = -24.256642
2025-11-17T09:42:12.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.8459858 -24.256642
2025-11-17T09:42:12.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.8459858 -24.256642
2025-11-17T09:42:12.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8459858 -24.256642
2025-11-17T09:42:12.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8459858;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86575;2460996.8209805;9.70351;1.3;_15.8205844921519 -24.1779463413777
2025-11-17T09:42:12.715 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.8205844921519     dec_j2k = -24.1779463413777
2025-11-17T09:42:12.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:12.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:12.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104312711743425;171.162346601491;_
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104312711743425;171.162346601491;_
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:12.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:12.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:12.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:12.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:12.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46943)
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:12.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:12.729 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:42:12.730 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82098046, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312711743425, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8459858, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86575, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8205844921519, telescope_dec_j2k=-24.1779463413777, observability=1)
2025-11-17T09:42:12.730 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47173714637756 seconds ago
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.047489881515503s
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8465649;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86633;2460996.82100439;9.7040875;1.3;_
2025-11-17T09:42:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.8465649;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86633;2460996.82100439;9.7040875;1.3;_
2025-11-17T09:42:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:14.780 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.8465649, teldec = -24.256642
2025-11-17T09:42:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8465649 -24.256642
2025-11-17T09:42:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8465649 -24.256642
2025-11-17T09:42:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8465649 -24.256642
2025-11-17T09:42:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8465649;-24.256642;50.10855;89.993115;50.08601;90.12017;12.86633;2460996.82100441;9.7040875;1.3;_15.8211632277423 -24.1779642749949
2025-11-17T09:42:14.781 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8211632277423     dec_j2k = -24.1779642749949
2025-11-17T09:42:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104312832079254;171.162351965909;_
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104312832079254;171.162351965909;_
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:14.788 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59177)
2025-11-17T09:42:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:14.789 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:14.789 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:14.796 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:14.797 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82100439, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312832079254, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10855, telescope_az=89.993115, telescope_ra=15.8465649, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86633, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.8211632277423, telescope_dec_j2k=-24.1779642749949, observability=1)
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Status age = 2.31919002532959s
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:17.116 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:17.117 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 17;15.8472097;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86697;2460996.82103146;9.70473056;1.3;_
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response 17;15.8472097;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86697;2460996.82103146;9.70473056;1.3;_
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:17.118 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:17.119 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:17.119 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:17.119 [INFO] [Thread-66966 (handle)] [driver.py] [get_status()] Telra = 15.8472097, teldec = -24.256642
2025-11-17T09:42:17.119 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8472097 -24.256642
2025-11-17T09:42:17.119 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8472097 -24.256642
2025-11-17T09:42:17.120 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8472097 -24.256642
2025-11-17T09:42:17.120 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 17;15.8472097;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86697;2460996.82103148;9.70473056;1.3;_15.821807622076 -24.1779842453753
2025-11-17T09:42:17.121 [INFO] [Thread-66966 (handle)] [driver.py] [get_status()] ra_j2k = 15.821807622076     dec_j2k = -24.1779842453753
2025-11-17T09:42:17.121 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:17.121 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:17.121 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:17.121 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 140;0.104312631519539;171.162362694745;_
2025-11-17T09:42:17.122 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response 140;0.104312631519539;171.162362694745;_
2025-11-17T09:42:17.122 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:17.122 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:17.122 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:17.122 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:17.123 [DEBUG] [Thread-66966 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49071)
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:17.124 [DEBUG] [Thread-66966 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:17.131 [DEBUG] [Thread-66966 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:17.131 [DEBUG] [Thread-66966 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:17.131 [DEBUG] [Thread-66966 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:17.131 [DEBUG] [Thread-66966 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:17.131 [DEBUG] [Thread-66966 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:17.132 [DEBUG] [Thread-66966 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:17.132 [DEBUG] [Thread-66966 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:17.132 [DEBUG] [Thread-66966 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:17.132 [DEBUG] [Thread-66966 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:17.132 [INFO] [Thread-66966 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82103146, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312631519539, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.8472097, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86697, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:41:19.351257', telescope_ra_j2k=15.821807622076, telescope_dec_j2k=-24.1779842453753, observability=1)
2025-11-17T09:42:19.493 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:19.494 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:19.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:19.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:19.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:19.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:19.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:19.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:19.495 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:19.496 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:42:19.497 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:20.498 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:20.498 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:20.498 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:20.498 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:20.498 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:42:20.499 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:20.500 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:20.501 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:20.501 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:20.501 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:20.501 [DEBUG] [ThreadPoolExecutor-2620_0] [payload.py] [to_registers()] [0]
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55161)
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:20.502 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:20.509 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:20.510 [DEBUG] [ThreadPoolExecutor-2620_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:27.336 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:42:27
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.204893350601196s
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:27.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:27.338 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:27.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:27.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:27.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:27.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8500475;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86981;2460996.82114975;9.70756056;1.3;_
2025-11-17T09:42:27.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.8500475;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86981;2460996.82114975;9.70756056;1.3;_
2025-11-17T09:42:27.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:27.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:27.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:27.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:27.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:27.340 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.8500475, teldec = -24.256642
2025-11-17T09:42:27.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8500475 -24.256642
2025-11-17T09:42:27.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8500475 -24.256642
2025-11-17T09:42:27.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8500475 -24.256642
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8500475;-24.256642;50.108549;89.993115;50.08601;90.12017;12.86981;2460996.82114978;9.70756056;1.3;_15.8246436377949 -24.1780721631447
2025-11-17T09:42:27.341 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8246436377949     dec_j2k = -24.1780721631447
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104313955213652;171.162351965909;_
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104313955213652;171.162351965909;_
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:27.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:27.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48477)
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:27.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:27.353 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:27.353 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82114975, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313955213652, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.8500475, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.86981, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8246436377949, telescope_dec_j2k=-24.1780721631447, observability=1)
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Status age = 7.876507043838501s
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:35.230 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 17;15.8522507;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87201;2460996.8212411;9.70975778;1.3;_
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response 17;15.8522507;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87201;2460996.8212411;9.70975778;1.3;_
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:35.231 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:35.232 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:35.232 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:35.232 [INFO] [Thread-66967 (handle)] [driver.py] [get_status()] Telra = 15.8522507, teldec = -24.256642
2025-11-17T09:42:35.232 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8522507 -24.256642
2025-11-17T09:42:35.233 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8522507 -24.256642
2025-11-17T09:42:35.233 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8522507 -24.256642
2025-11-17T09:42:35.233 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 17;15.8522507;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87201;2460996.82124112;9.70975778;1.3;_15.8268454537345 -24.1781404507563
2025-11-17T09:42:35.234 [INFO] [Thread-66967 (handle)] [driver.py] [get_status()] ra_j2k = 15.8268454537345     dec_j2k = -24.1781404507563
2025-11-17T09:42:35.234 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:35.234 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:35.234 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:35.234 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 140;0.104313152974796;171.162351965909;_
2025-11-17T09:42:35.235 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response 140;0.104313152974796;171.162351965909;_
2025-11-17T09:42:35.235 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:35.235 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:35.235 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:35.235 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:35.236 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:35.237 [DEBUG] [Thread-66967 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:35.237 [DEBUG] [Thread-66967 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:35.237 [DEBUG] [Thread-66967 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47661)
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:35.242 [DEBUG] [Thread-66967 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:35.249 [DEBUG] [Thread-66967 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:35.250 [DEBUG] [Thread-66967 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:35.250 [DEBUG] [Thread-66967 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:35.250 [DEBUG] [Thread-66967 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:35.250 [INFO] [Thread-66967 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8212411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313152974796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.8522507, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.87201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8268454537345, telescope_dec_j2k=-24.1781404507563, observability=1)
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.757424354553223s
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:45.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:45.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:45.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.854986;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87475;2460996.82135427;9.71248556;1.3;_
2025-11-17T09:42:45.009 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.854986;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87475;2460996.82135427;9.71248556;1.3;_
2025-11-17T09:42:45.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:45.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:45.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:45.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:45.010 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:45.010 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.854986, teldec = -24.256642
2025-11-17T09:42:45.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.854986 -24.256642
2025-11-17T09:42:45.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.854986 -24.256642
2025-11-17T09:42:45.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.854986 -24.256642
2025-11-17T09:42:45.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.854986;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87475;2460996.82135429;9.71248556;1.3;_15.8295790368822 -24.1782252675577
2025-11-17T09:42:45.011 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8295790368822     dec_j2k = -24.1782252675577
2025-11-17T09:42:45.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:45.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:45.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104312912303139;171.162346601491;_
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104312912303139;171.162346601491;_
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:45.013 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:45.014 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:45.014 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:45.014 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:45.014 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:45.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:45.015 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:45.015 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:45.020 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46349)
2025-11-17T09:42:45.021 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:45.021 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:45.021 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:45.021 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:45.021 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:45.028 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:45.028 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82135427, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312912303139, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.854986, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.87475, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8295790368822, telescope_dec_j2k=-24.1782252675577, observability=1)
2025-11-17T09:42:45.510 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:45.510 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:45.510 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:45.510 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:45.510 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:45.511 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:42:45.512 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:42:45.513 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:42:45.513 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:53.296 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:42:53.296 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Status age = 8.268217086791992s
2025-11-17T09:42:53.296 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:42:53.296 [DEBUG] [Thread-66968 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:42:53.296 [DEBUG] [Thread-66968 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:42:53.297 [DEBUG] [Thread-66968 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 17;15.8572923;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87706;2460996.82145021;9.71478556;1.3;_
2025-11-17T09:42:53.298 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response 17;15.8572923;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87706;2460996.82145021;9.71478556;1.3;_
2025-11-17T09:42:53.299 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:42:53.299 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:42:53.299 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:42:53.300 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:53.300 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:42:53.300 [INFO] [Thread-66968 (handle)] [driver.py] [get_status()] Telra = 15.8572923, teldec = -24.256642
2025-11-17T09:42:53.300 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8572923 -24.256642
2025-11-17T09:42:53.300 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8572923 -24.256642
2025-11-17T09:42:53.300 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8572923 -24.256642
2025-11-17T09:42:53.301 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 17;15.8572923;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87706;2460996.82145024;9.71478556;1.3;_15.831883890569 -24.1782968135524
2025-11-17T09:42:53.301 [INFO] [Thread-66968 (handle)] [driver.py] [get_status()] ra_j2k = 15.831883890569     dec_j2k = -24.1782968135524
2025-11-17T09:42:53.301 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:42:53.301 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:42:53.301 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 140;0.104313473870338;171.162346601491;_
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response 140;0.104313473870338;171.162346601491;_
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:53.302 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:42:53.303 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:42:53.304 [DEBUG] [Thread-66968 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:53.304 [DEBUG] [Thread-66968 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:42:53.304 [DEBUG] [Thread-66968 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47377)
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:42:53.310 [DEBUG] [Thread-66968 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:42:53.317 [DEBUG] [Thread-66968 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:42:53.318 [DEBUG] [Thread-66968 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:42:53.318 [DEBUG] [Thread-66968 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:42:53.318 [INFO] [Thread-66968 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82145021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313473870338, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.8572923, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.87706, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.831883890569, telescope_dec_j2k=-24.1782968135524, observability=1)
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Status age = 7.805371522903442s
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:01.123 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:01.125 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:01.126 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 17;15.8594702;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87923;2460996.82154081;9.7169575;1.3;_
2025-11-17T09:43:01.126 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response 17;15.8594702;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87923;2460996.82154081;9.7169575;1.3;_
2025-11-17T09:43:01.126 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:01.126 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:01.126 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:01.127 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:01.127 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:01.127 [INFO] [Thread-66969 (handle)] [driver.py] [get_status()] Telra = 15.8594702, teldec = -24.256642
2025-11-17T09:43:01.127 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8594702 -24.256642
2025-11-17T09:43:01.127 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8594702 -24.256642
2025-11-17T09:43:01.127 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8594702 -24.256642
2025-11-17T09:43:01.128 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 17;15.8594702;-24.256642;50.108549;89.993115;50.08601;90.12017;12.87923;2460996.82154083;9.7169575;1.3;_15.8340604258452 -24.1783644029442
2025-11-17T09:43:01.128 [INFO] [Thread-66969 (handle)] [driver.py] [get_status()] ra_j2k = 15.8340604258452     dec_j2k = -24.1783644029442
2025-11-17T09:43:01.128 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:01.128 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:01.128 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 140;0.104313273310624;171.162362694745;_
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response 140;0.104313273310624;171.162362694745;_
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:01.130 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:01.131 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:01.131 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:01.131 [DEBUG] [Thread-66969 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:01.132 [DEBUG] [Thread-66969 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:01.132 [DEBUG] [Thread-66969 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41575)
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:01.135 [DEBUG] [Thread-66969 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:01.142 [DEBUG] [Thread-66969 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:01.142 [INFO] [Thread-66969 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82154081, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313273310624, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108549, telescope_az=89.993115, telescope_ra=15.8594702, telescope_dec=-24.256642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.87923, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8340604258452, telescope_dec_j2k=-24.1783644029442, observability=1)
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Status age = 10.218621015548706s
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:11.361 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:11.362 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:11.363 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 17;15.8623082;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88207;2460996.82165929;9.71978778;1.3;_
2025-11-17T09:43:11.363 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response 17;15.8623082;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88207;2460996.82165929;9.71978778;1.3;_
2025-11-17T09:43:11.363 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:11.363 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:11.363 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:11.364 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:11.364 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:11.364 [INFO] [Thread-66970 (handle)] [driver.py] [get_status()] Telra = 15.8623082, teldec = -24.256641
2025-11-17T09:43:11.364 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8623082 -24.256641
2025-11-17T09:43:11.364 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8623082 -24.256641
2025-11-17T09:43:11.364 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8623082 -24.256641
2025-11-17T09:43:11.365 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 17;15.8623082;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88207;2460996.82165932;9.71978778;1.3;_15.8368966492105 -24.1784515167895
2025-11-17T09:43:11.365 [INFO] [Thread-66970 (handle)] [driver.py] [get_status()] ra_j2k = 15.8368966492105     dec_j2k = -24.1784515167895
2025-11-17T09:43:11.365 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:11.365 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:11.365 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 140;0.104313313422567;171.162357330327;_
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response 140;0.104313313422567;171.162357330327;_
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:11.366 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:11.367 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:11.368 [DEBUG] [Thread-66970 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:11.368 [DEBUG] [Thread-66970 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:11.368 [DEBUG] [Thread-66970 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:11.369 [DEBUG] [Thread-66970 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44489)
2025-11-17T09:43:11.370 [DEBUG] [Thread-66970 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:11.370 [DEBUG] [Thread-66970 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:11.370 [DEBUG] [Thread-66970 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:11.370 [DEBUG] [Thread-66970 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:11.370 [DEBUG] [Thread-66970 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:11.377 [DEBUG] [Thread-66970 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:11.377 [INFO] [Thread-66970 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82165929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313313422567, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8623082, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.88207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8368966492105, telescope_dec_j2k=-24.1784515167895, observability=1)
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.4125969409942627s
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:12.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:12.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8627007;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88246;2460996.82167582;9.72017917;1.3;_
2025-11-17T09:43:12.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.8627007;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88246;2460996.82167582;9.72017917;1.3;_
2025-11-17T09:43:12.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:12.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:12.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:12.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:12.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:12.793 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.8627007, teldec = -24.256641
2025-11-17T09:43:12.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.8627007 -24.256641
2025-11-17T09:43:12.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.8627007 -24.256641
2025-11-17T09:43:12.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8627007 -24.256641
2025-11-17T09:43:12.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8627007;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88246;2460996.82167586;9.72017917;1.3;_15.8372889036148 -24.1784637065259
2025-11-17T09:43:12.794 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.8372889036148     dec_j2k = -24.1784637065259
2025-11-17T09:43:12.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:12.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:12.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104312992527025;171.162362694745;_
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104312992527025;171.162362694745;_
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:12.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:12.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:12.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:12.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:12.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:12.803 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47843)
2025-11-17T09:43:12.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:12.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:12.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:12.804 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:12.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:12.811 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:43:12.812 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82167582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104312992527025, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8627007, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.88246, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8372889036148, telescope_dec_j2k=-24.1784637065259, observability=1)
2025-11-17T09:43:12.812 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47522974014282 seconds ago
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.973618507385254s
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8632614;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88303;2460996.82169891;9.72073833;1.3;_
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.8632614;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88303;2460996.82169891;9.72073833;1.3;_
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:14.787 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.8632614, teldec = -24.256641
2025-11-17T09:43:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8632614 -24.256641
2025-11-17T09:43:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8632614 -24.256641
2025-11-17T09:43:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8632614 -24.256641
2025-11-17T09:43:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8632614;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88303;2460996.82169894;9.72073833;1.3;_15.8378492528314 -24.1784811214449
2025-11-17T09:43:14.788 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8378492528314     dec_j2k = -24.1784811214449
2025-11-17T09:43:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104313834877824;171.162362694745;_
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104313834877824;171.162362694745;_
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43595)
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:14.801 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82169891, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313834877824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8632614, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.88303, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:42:19.493542', telescope_ra_j2k=15.8378492528314, telescope_dec_j2k=-24.1784811214449, observability=1)
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:19.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:19.637 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:19.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:19.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:19.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:19.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:19.638 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:43:19.638 [INFO] [ThreadPoolExecutor-2621_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:43:19.638 [INFO] [ThreadPoolExecutor-2621_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:43:27.414 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:43:27
2025-11-17T09:43:27.414 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:27.414 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.61387300491333s
2025-11-17T09:43:27.414 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:27.414 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:27.414 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:27.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:27.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:27.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8667735;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88654;2460996.82184509;9.72424083;1.3;_
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.8667735;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88654;2460996.82184509;9.72424083;1.3;_
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:27.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:27.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:27.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:27.417 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.8667735, teldec = -24.256641
2025-11-17T09:43:27.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8667735 -24.256641
2025-11-17T09:43:27.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8667735 -24.256641
2025-11-17T09:43:27.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8667735 -24.256641
2025-11-17T09:43:27.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8667735;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88654;2460996.82184512;9.72424083;1.3;_15.8413591571682 -24.1785902435037
2025-11-17T09:43:27.418 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8413591571682     dec_j2k = -24.1785902435037
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104314276109194;171.162357330327;_
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104314276109194;171.162357330327;_
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:27.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:27.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:27.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:27.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:27.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32865)
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:27.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:27.434 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:27.434 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82184509, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314276109194, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8667735, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.88654, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8413591571682, telescope_dec_j2k=-24.1785902435037, observability=1)
2025-11-17T09:43:29.490 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:29.490 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Status age = 2.056135654449463s
2025-11-17T09:43:29.490 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:29.490 [DEBUG] [Thread-66971 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:29.491 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:29.492 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:29.492 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 17;15.8673526;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88712;2460996.82186912;9.72481833;1.3;_
2025-11-17T09:43:29.492 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response 17;15.8673526;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88712;2460996.82186912;9.72481833;1.3;_
2025-11-17T09:43:29.492 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:29.492 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:29.493 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:29.493 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:29.493 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:29.494 [INFO] [Thread-66971 (handle)] [driver.py] [get_status()] Telra = 15.8673526, teldec = -24.256641
2025-11-17T09:43:29.494 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8673526 -24.256641
2025-11-17T09:43:29.494 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8673526 -24.256641
2025-11-17T09:43:29.494 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8673526 -24.256641
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 17;15.8673526;-24.256641;50.108548;89.993115;50.08601;90.12017;12.88712;2460996.82186916;9.72481833;1.3;_15.8419378953911 -24.1786082427603
2025-11-17T09:43:29.495 [INFO] [Thread-66971 (handle)] [driver.py] [get_status()] ra_j2k = 15.8419378953911     dec_j2k = -24.1786082427603
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 140;0.104313233198682;171.162346601491;_
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response 140;0.104313233198682;171.162346601491;_
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:29.495 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:29.496 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:29.497 [DEBUG] [Thread-66971 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:29.497 [DEBUG] [Thread-66971 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:29.497 [DEBUG] [Thread-66971 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55587)
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:29.503 [DEBUG] [Thread-66971 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:29.511 [DEBUG] [Thread-66971 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:29.512 [INFO] [Thread-66971 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82186912, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104313233198682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8673526, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.88712, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8419378953911, telescope_dec_j2k=-24.1786082427603, observability=1)
2025-11-17T09:43:40.513 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.514 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:43:40.515 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:43:40.515 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:43:40.515 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.515 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.515 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.516 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:40.516 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:40.516 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:40.516 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.516 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:40.517 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:43:40.518 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:40.519 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Park
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:43:40.520 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:43:40.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 29;15.8704235;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89019;2460996.82199677;9.72788083;1.3;_Park Command Successful
2025-11-17T09:43:41.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:43:41.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:43:41.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:43:41.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:43:41.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:43:42.521 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:43:42.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:43:42.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:43:42.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:43:42.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:43:43.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:43:43.522 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:43:43.523 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:43:43.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:43:43.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:43:44.116 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.604942798614502s
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:44.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:44.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:44.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.871451;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89121;2460996.82203841;9.72890556;1.3;_
2025-11-17T09:43:44.119 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.871451;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89121;2460996.82203841;9.72890556;1.3;_
2025-11-17T09:43:44.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:44.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:44.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:44.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:44.120 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:44.120 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.871451, teldec = -24.256641
2025-11-17T09:43:44.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.871451 -24.256641
2025-11-17T09:43:44.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.871451 -24.256641
2025-11-17T09:43:44.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.871451 -24.256641
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.871451;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89121;2460996.82203844;9.72890556;1.3;_15.8460337371278 -24.1787356789187
2025-11-17T09:43:44.121 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8460337371278     dec_j2k = -24.1787356789187
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104314115661423;171.162351965909;_
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104314115661423;171.162351965909;_
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:44.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:44.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:44.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:44.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:44.122 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:44.123 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:44.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:44.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:44.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:44.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:44.124 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:44.124 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56383)
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:44.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:44.137 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:44.138 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:44.138 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:44.138 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82203841, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314115661423, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.871451, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89121, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8460337371278, telescope_dec_j2k=-24.1787356789187, observability=1)
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:44.524 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:44.525 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:44.525 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:44.525 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:44.525 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:44.525 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:44.526 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:44.526 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:43:44.526 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:43:44.526 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:43:44.526 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:45.527 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:43:45.528 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:43:45.529 [DEBUG] [ThreadPoolExecutor-2620_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:45.529 [INFO] [ThreadPoolExecutor-2620_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Status age = 3.418064832687378s
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:43:47.556 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:43:47.557 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:43:47.558 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 17;15.8723933;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89216;2460996.82207822;9.72984528;1.3;_
2025-11-17T09:43:47.558 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response 17;15.8723933;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89216;2460996.82207822;9.72984528;1.3;_
2025-11-17T09:43:47.558 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:43:47.558 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:43:47.558 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:43:47.559 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:47.559 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:43:47.559 [INFO] [Thread-66972 (handle)] [driver.py] [get_status()] Telra = 15.8723933, teldec = -24.256641
2025-11-17T09:43:47.559 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8723933 -24.256641
2025-11-17T09:43:47.559 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8723933 -24.256641
2025-11-17T09:43:47.559 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8723933 -24.256641
2025-11-17T09:43:47.560 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 17;15.8723933;-24.256641;50.108548;89.993115;50.08601;90.12017;12.89216;2460996.82207824;9.72984528;1.3;_15.8469754494552 -24.1787649917921
2025-11-17T09:43:47.560 [INFO] [Thread-66972 (handle)] [driver.py] [get_status()] ra_j2k = 15.8469754494552     dec_j2k = -24.1787649917921
2025-11-17T09:43:47.560 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:43:47.560 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:43:47.560 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 140;0.104314998124165;171.162351965909;_
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response 140;0.104314998124165;171.162351965909;_
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:43:47.561 [DEBUG] [Thread-66972 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:43:47.562 [DEBUG] [Thread-66972 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53317)
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:43:47.568 [DEBUG] [Thread-66972 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:43:47.575 [DEBUG] [Thread-66972 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:43:47.575 [INFO] [Thread-66972 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82207822, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314998124165, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108548, telescope_az=89.993115, telescope_ra=15.8723933, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89216, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8469754494552, telescope_dec_j2k=-24.1787649917921, observability=1)
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Status age = 13.595400094985962s
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:01.171 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:01.172 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:01.173 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 17;15.8761837;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89595;2460996.8222358;9.73362528;1.3;_
2025-11-17T09:44:01.173 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response 17;15.8761837;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89595;2460996.8222358;9.73362528;1.3;_
2025-11-17T09:44:01.173 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:01.173 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:01.173 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:01.174 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:01.174 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:01.174 [INFO] [Thread-66973 (handle)] [driver.py] [get_status()] Telra = 15.8761837, teldec = -24.256641
2025-11-17T09:44:01.174 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8761837 -24.256641
2025-11-17T09:44:01.174 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8761837 -24.256641
2025-11-17T09:44:01.174 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8761837 -24.256641
2025-11-17T09:44:01.175 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 17;15.8761837;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89595;2460996.82223582;9.73362528;1.3;_15.8507634875112 -24.1788829513598
2025-11-17T09:44:01.175 [INFO] [Thread-66973 (handle)] [driver.py] [get_status()] ra_j2k = 15.8507634875112     dec_j2k = -24.1788829513598
2025-11-17T09:44:01.175 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:01.175 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:01.175 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 140;0.104314516780851;171.162357330327;_
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response 140;0.104314516780851;171.162357330327;_
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:01.176 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:01.177 [DEBUG] [Thread-66973 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38659)
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:01.184 [DEBUG] [Thread-66973 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:01.192 [DEBUG] [Thread-66973 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:01.192 [INFO] [Thread-66973 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8222358, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314516780851, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8761837, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8507634875112, telescope_dec_j2k=-24.1788829513598, observability=1)
2025-11-17T09:44:05.668 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:05.668 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Status age = 4.4760823249816895s
2025-11-17T09:44:05.668 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:05.668 [DEBUG] [Thread-66974 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:05.669 [DEBUG] [Thread-66974 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:05.669 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:05.669 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:05.669 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:05.669 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:05.670 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:05.671 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 17;15.8774443;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89721;2460996.82228785;9.7348825;1.3;_
2025-11-17T09:44:05.671 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response 17;15.8774443;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89721;2460996.82228785;9.7348825;1.3;_
2025-11-17T09:44:05.671 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:05.671 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:05.671 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:05.672 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:05.672 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:05.672 [INFO] [Thread-66974 (handle)] [driver.py] [get_status()] Telra = 15.8774443, teldec = -24.256641
2025-11-17T09:44:05.672 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8774443 -24.256641
2025-11-17T09:44:05.672 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8774443 -24.256641
2025-11-17T09:44:05.672 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8774443 -24.256641
2025-11-17T09:44:05.673 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 17;15.8774443;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89721;2460996.82228788;9.7348825;1.3;_15.8520233026816 -24.1789221992361
2025-11-17T09:44:05.673 [INFO] [Thread-66974 (handle)] [driver.py] [get_status()] ra_j2k = 15.8520233026816     dec_j2k = -24.1789221992361
2025-11-17T09:44:05.673 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:05.673 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:05.673 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 140;0.10431435633308;171.162362694745;_
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response 140;0.10431435633308;171.162362694745;_
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:05.674 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:05.675 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:05.676 [DEBUG] [Thread-66974 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:05.676 [DEBUG] [Thread-66974 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:05.676 [DEBUG] [Thread-66974 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:05.679 [DEBUG] [Thread-66974 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48043)
2025-11-17T09:44:05.679 [DEBUG] [Thread-66974 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:05.679 [DEBUG] [Thread-66974 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:05.679 [DEBUG] [Thread-66974 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:05.679 [DEBUG] [Thread-66974 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:05.680 [DEBUG] [Thread-66974 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:05.687 [DEBUG] [Thread-66974 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:05.687 [INFO] [Thread-66974 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82228785, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431435633308, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8774443, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8520233026816, telescope_dec_j2k=-24.1789221992361, observability=1)
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.184573173522949s
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:12.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8794512;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89921;2460996.82237122;9.73688389;1.3;_
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.8794512;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89921;2460996.82237122;9.73688389;1.3;_
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:12.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:12.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:12.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:12.874 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.8794512, teldec = -24.256641
2025-11-17T09:44:12.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.8794512 -24.256641
2025-11-17T09:44:12.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.8794512 -24.256641
2025-11-17T09:44:12.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8794512 -24.256641
2025-11-17T09:44:12.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.8794512;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89921;2460996.82237124;9.73688389;1.3;_15.8540289539375 -24.1789847003585
2025-11-17T09:44:12.875 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.8540289539375     dec_j2k = -24.1789847003585
2025-11-17T09:44:12.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:12.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:12.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10431463711668;171.162357330327;_
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10431463711668;171.162357330327;_
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:12.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:12.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:12.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:12.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:12.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57809)
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:12.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:12.890 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:44:12.890 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82237122, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431463711668, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8794512, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8540289539375, telescope_dec_j2k=-24.1789847003585, observability=1)
2025-11-17T09:44:12.890 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47620439529419 seconds ago
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.864365577697754s
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:14.755 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:14.756 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8799743;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89974;2460996.82239302;9.73740556;1.3;_
2025-11-17T09:44:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.8799743;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89974;2460996.82239302;9.73740556;1.3;_
2025-11-17T09:44:14.757 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:14.758 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:14.759 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.8799743, teldec = -24.256641
2025-11-17T09:44:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8799743 -24.256641
2025-11-17T09:44:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8799743 -24.256641
2025-11-17T09:44:14.759 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8799743 -24.256641
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8799743;-24.256641;50.108547;89.993115;50.08601;90.12017;12.89974;2460996.82239306;9.73740556;1.3;_15.8545517285967 -24.1790009949
2025-11-17T09:44:14.760 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8545517285967     dec_j2k = -24.1790009949
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104314797564451;171.162362694745;_
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104314797564451;171.162362694745;_
2025-11-17T09:44:14.760 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:14.761 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:14.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:14.763 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45295)
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:14.764 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:14.771 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:14.771 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82239302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314797564451, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8799743, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.89974, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:43:19.635476', telescope_ra_j2k=15.8545517285967, telescope_dec_j2k=-24.1790009949, observability=1)
2025-11-17T09:44:19.778 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:19.778 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:19.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:19.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:19.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:19.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:19.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:19.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:19.779 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:44:19.779 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:19.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:19.781 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:19.781 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:44:19.782 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:44:19.783 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:20.783 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:44:20.784 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:20.785 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:20.786 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:20.786 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:20.786 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:20.786 [DEBUG] [ThreadPoolExecutor-2622_0] [payload.py] [to_registers()] [0]
2025-11-17T09:44:20.788 [DEBUG] [ThreadPoolExecutor-2622_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51313)
2025-11-17T09:44:20.789 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:20.789 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:20.789 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:44:20.789 [DEBUG] [ThreadPoolExecutor-2622_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:20.789 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:20.796 [DEBUG] [ThreadPoolExecutor-2622_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Status age = 8.968750476837158s
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:23.740 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:23.741 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:23.741 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:23.741 [DEBUG] [Thread-66975 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:23.741 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:23.741 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 17;15.8824884;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90225;2460996.82249701;9.73991278;1.3;_
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response 17;15.8824884;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90225;2460996.82249701;9.73991278;1.3;_
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:23.742 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:23.743 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:23.743 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:23.743 [INFO] [Thread-66975 (handle)] [driver.py] [get_status()] Telra = 15.8824884, teldec = -24.256641
2025-11-17T09:44:23.744 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8824884 -24.256641
2025-11-17T09:44:23.744 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8824884 -24.256641
2025-11-17T09:44:23.744 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8824884 -24.256641
2025-11-17T09:44:23.745 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 17;15.8824884;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90225;2460996.82249704;9.73991278;1.3;_15.8570642657972 -24.179079329625
2025-11-17T09:44:23.745 [INFO] [Thread-66975 (handle)] [driver.py] [get_status()] ra_j2k = 15.8570642657972     dec_j2k = -24.179079329625
2025-11-17T09:44:23.745 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:23.745 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:23.745 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 140;0.104314877788337;171.162357330327;_
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response 140;0.104314877788337;171.162357330327;_
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:23.746 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:23.747 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:23.748 [DEBUG] [Thread-66975 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:23.748 [DEBUG] [Thread-66975 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:23.748 [DEBUG] [Thread-66975 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55933)
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:23.750 [DEBUG] [Thread-66975 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:23.757 [DEBUG] [Thread-66975 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:23.758 [DEBUG] [Thread-66975 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:23.758 [INFO] [Thread-66975 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82249701, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314877788337, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8824884, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.90225, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8570642657972, telescope_dec_j2k=-24.179079329625, observability=1)
2025-11-17T09:44:27.495 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:44:27
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.7374837398529053s
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:27.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:27.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:27.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8835159;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90328;2460996.82254047;9.7409375;1.3;_
2025-11-17T09:44:27.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.8835159;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90328;2460996.82254047;9.7409375;1.3;_
2025-11-17T09:44:27.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:27.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:27.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:27.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:27.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:27.498 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.8835159, teldec = -24.256641
2025-11-17T09:44:27.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8835159 -24.256641
2025-11-17T09:44:27.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8835159 -24.256641
2025-11-17T09:44:27.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8835159 -24.256641
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.8835159;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90328;2460996.8225405;9.7409375;1.3;_15.8580911274888 -24.1791113544553
2025-11-17T09:44:27.499 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8580911274888     dec_j2k = -24.1791113544553
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104315038236108;171.162346601491;_
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104315038236108;171.162346601491;_
2025-11-17T09:44:27.499 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:27.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:27.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:27.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:27.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:27.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:27.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51953)
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:27.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:27.511 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:27.511 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82254047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104315038236108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8835159, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.90328, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8580911274888, telescope_dec_j2k=-24.1791113544553, observability=1)
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Status age = 14.295417070388794s
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:41.807 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:41.808 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:41.808 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:41.808 [DEBUG] [Thread-66976 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:41.808 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:41.808 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 17;15.8875024;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90727;2460996.82270612;9.74491306;1.3;_
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response 17;15.8875024;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90727;2460996.82270612;9.74491306;1.3;_
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:41.809 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:41.810 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:41.810 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:41.810 [INFO] [Thread-66976 (handle)] [driver.py] [get_status()] Telra = 15.8875024, teldec = -24.256641
2025-11-17T09:44:41.810 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8875024 -24.256641
2025-11-17T09:44:41.811 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8875024 -24.256641
2025-11-17T09:44:41.811 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8875024 -24.256641
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 17;15.8875024;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90727;2460996.82270615;9.74491306;1.3;_15.8620751531739 -24.1792356584657
2025-11-17T09:44:41.812 [INFO] [Thread-66976 (handle)] [driver.py] [get_status()] ra_j2k = 15.8620751531739     dec_j2k = -24.1792356584657
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 140;0.104315399243593;171.162368059163;_
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response 140;0.104315399243593;171.162368059163;_
2025-11-17T09:44:41.812 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:41.813 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:41.814 [DEBUG] [Thread-66976 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:41.814 [DEBUG] [Thread-66976 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:41.814 [DEBUG] [Thread-66976 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:41.815 [DEBUG] [Thread-66976 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42167)
2025-11-17T09:44:41.815 [DEBUG] [Thread-66976 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:41.815 [DEBUG] [Thread-66976 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:41.816 [DEBUG] [Thread-66976 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:41.816 [DEBUG] [Thread-66976 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:41.816 [DEBUG] [Thread-66976 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:41.823 [DEBUG] [Thread-66976 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:41.823 [INFO] [Thread-66976 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82270612, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104315399243593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.8875024, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.90727, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8620751531739, telescope_dec_j2k=-24.1792356584657, observability=1)
2025-11-17T09:44:43.227 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.4044599533081055s
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:43.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:43.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:43.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.887894;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90766;2460996.82272256;9.74530361;1.3;_
2025-11-17T09:44:43.230 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.887894;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90766;2460996.82272256;9.74530361;1.3;_
2025-11-17T09:44:43.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:43.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:43.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:43.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:43.231 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:43.231 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.887894, teldec = -24.256641
2025-11-17T09:44:43.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.887894 -24.256641
2025-11-17T09:44:43.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.887894 -24.256641
2025-11-17T09:44:43.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.887894 -24.256641
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.887894;-24.256641;50.108547;89.993115;50.08601;90.12017;12.90766;2460996.82272259;9.74530361;1.3;_15.8624665103067 -24.1792478736591
2025-11-17T09:44:43.232 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8624665103067     dec_j2k = -24.1792478736591
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104315118459993;171.162351965909;_
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104315118459993;171.162351965909;_
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:43.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:43.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:43.234 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:43.234 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:43.234 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55137)
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:43.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:43.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:43.246 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82272256, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104315118459993, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108547, telescope_az=89.993115, telescope_ra=15.887894, telescope_dec=-24.256641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.90766, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8624665103067, telescope_dec_j2k=-24.1792478736591, observability=1)
2025-11-17T09:44:45.796 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:45.796 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:45.796 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:45.796 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:45.796 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:45.797 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:44:45.798 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:44:45.799 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Status age = 16.691783905029297s
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:44:59.937 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:44:59.938 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:44:59.939 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 17;15.8925468;-24.256634;50.108546;89.993104;50.08601;90.12016;12.91231;2460996.82291596;9.74994389;1.3;_
2025-11-17T09:44:59.939 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response 17;15.8925468;-24.256634;50.108546;89.993104;50.08601;90.12016;12.91231;2460996.82291596;9.74994389;1.3;_
2025-11-17T09:44:59.939 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:44:59.939 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:44:59.939 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:44:59.940 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:59.940 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:44:59.940 [INFO] [Thread-66977 (handle)] [driver.py] [get_status()] Telra = 15.8925468, teldec = -24.256634
2025-11-17T09:44:59.940 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8925468 -24.256634
2025-11-17T09:44:59.940 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8925468 -24.256634
2025-11-17T09:44:59.940 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8925468 -24.256634
2025-11-17T09:44:59.941 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 17;15.8925468;-24.256634;50.108546;89.993104;50.08601;90.12016;12.91231;2460996.82291598;9.74994389;1.3;_15.8671164284279 -24.1793860718853
2025-11-17T09:44:59.941 [INFO] [Thread-66977 (handle)] [driver.py] [get_status()] ra_j2k = 15.8671164284279     dec_j2k = -24.1793860718853
2025-11-17T09:44:59.941 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:44:59.941 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:44:59.941 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 140;0.104314837676394;171.162351965909;_
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response 140;0.104314837676394;171.162351965909;_
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:44:59.942 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:44:59.943 [DEBUG] [Thread-66977 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:59.943 [DEBUG] [Thread-66977 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:44:59.943 [DEBUG] [Thread-66977 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36729)
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:44:59.945 [DEBUG] [Thread-66977 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:44:59.953 [DEBUG] [Thread-66977 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:44:59.953 [INFO] [Thread-66977 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82291596, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104314837676394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993104, telescope_ra=15.8925468, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.91231, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8671164284279, telescope_dec_j2k=-24.1793860718853, observability=1)
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Status age = 1.2675740718841553s
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:01.221 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 17;15.8929111;-24.25664;50.108546;89.993115;50.08601;90.12017;12.91267;2460996.82293081;9.75030694;1.3;_
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response 17;15.8929111;-24.25664;50.108546;89.993115;50.08601;90.12017;12.91267;2460996.82293081;9.75030694;1.3;_
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:01.222 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:01.223 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:01.223 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:01.223 [INFO] [Thread-66978 (handle)] [driver.py] [get_status()] Telra = 15.8929111, teldec = -24.25664
2025-11-17T09:45:01.223 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8929111 -24.25664
2025-11-17T09:45:01.223 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8929111 -24.25664
2025-11-17T09:45:01.223 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8929111 -24.25664
2025-11-17T09:45:01.224 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 17;15.8929111;-24.25664;50.108546;89.993115;50.08601;90.12017;12.91267;2460996.82293083;9.75030694;1.3;_15.8674805018944 -24.1794034452939
2025-11-17T09:45:01.224 [INFO] [Thread-66978 (handle)] [driver.py] [get_status()] ra_j2k = 15.8674805018944     dec_j2k = -24.1794034452939
2025-11-17T09:45:01.224 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:01.224 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:01.224 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 140;0.104316041034678;171.162357330327;_
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response 140;0.104316041034678;171.162357330327;_
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:01.225 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:01.226 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:01.226 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:01.226 [DEBUG] [Thread-66978 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:01.226 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:01.226 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:01.227 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:01.228 [DEBUG] [Thread-66978 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:01.228 [DEBUG] [Thread-66978 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:01.228 [DEBUG] [Thread-66978 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60729)
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:01.230 [DEBUG] [Thread-66978 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:01.237 [DEBUG] [Thread-66978 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:01.237 [DEBUG] [Thread-66978 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:01.237 [DEBUG] [Thread-66978 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:01.237 [DEBUG] [Thread-66978 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:01.238 [DEBUG] [Thread-66978 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:01.238 [DEBUG] [Thread-66978 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:01.238 [DEBUG] [Thread-66978 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:01.238 [DEBUG] [Thread-66978 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:01.238 [DEBUG] [Thread-66978 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:01.238 [INFO] [Thread-66978 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82293081, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316041034678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993115, telescope_ra=15.8929111, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.91267, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8674805018944, telescope_dec_j2k=-24.1794034452939, observability=1)
2025-11-17T09:45:12.950 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.712764978408813s
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:12.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.896197;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91596;2460996.82306657;9.75358389;1.3;_
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.896197;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91596;2460996.82306657;9.75358389;1.3;_
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:12.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:12.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:12.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:12.953 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.896197, teldec = -24.25664
2025-11-17T09:45:12.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.896197 -24.25664
2025-11-17T09:45:12.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.896197 -24.25664
2025-11-17T09:45:12.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.896197 -24.25664
2025-11-17T09:45:12.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.896197;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91596;2460996.8230666;9.75358389;1.3;_15.8707643689654 -24.1795060636739
2025-11-17T09:45:12.954 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.8707643689654     dec_j2k = -24.1795060636739
2025-11-17T09:45:12.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:12.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:12.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104315800363021;171.162357330327;_
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104315800363021;171.162357330327;_
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:12.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:12.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:12.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:12.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:12.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:12.962 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45229)
2025-11-17T09:45:12.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:12.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:12.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:12.963 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:12.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:12.970 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:45:12.970 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82306657, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104315800363021, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993114, telescope_ra=15.896197, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.91596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8707643689654, telescope_dec_j2k=-24.1795060636739, observability=1)
2025-11-17T09:45:12.970 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.47526693344116 seconds ago
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.805736780166626s
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8966917;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91646;2460996.82308771;9.75407722;1.3;_
2025-11-17T09:45:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.8966917;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91646;2460996.82308771;9.75407722;1.3;_
2025-11-17T09:45:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:14.779 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.8966917, teldec = -24.25664
2025-11-17T09:45:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8966917 -24.25664
2025-11-17T09:45:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8966917 -24.25664
2025-11-17T09:45:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8966917 -24.25664
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.8966917;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91646;2460996.82308773;9.75407722;1.3;_15.8712587631092 -24.1795215181352
2025-11-17T09:45:14.780 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8712587631092     dec_j2k = -24.1795215181352
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104315399243593;171.162351965909;_
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104315399243593;171.162351965909;_
2025-11-17T09:45:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41021)
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:14.784 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:14.792 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:14.792 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82308771, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104315399243593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993114, telescope_ra=15.8966917, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.91646, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8712587631092, telescope_dec_j2k=-24.1795215181352, observability=1)
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Status age = 3.2098541259765625s
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:18.002 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 17;15.8975889;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91735;2460996.82312503;9.75497194;1.3;_
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response 17;15.8975889;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91735;2460996.82312503;9.75497194;1.3;_
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:18.003 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:18.004 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:18.004 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:18.004 [INFO] [Thread-66979 (handle)] [driver.py] [get_status()] Telra = 15.8975889, teldec = -24.25664
2025-11-17T09:45:18.004 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] UnCookCoordinates 15.8975889 -24.25664
2025-11-17T09:45:18.005 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.8975889 -24.25664
2025-11-17T09:45:18.005 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.8975889 -24.25664
2025-11-17T09:45:18.005 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 17;15.8975889;-24.25664;50.108546;89.993114;50.08601;90.12017;12.91735;2460996.82312506;9.75497194;1.3;_15.8721554085386 -24.1795495500749
2025-11-17T09:45:18.005 [INFO] [Thread-66979 (handle)] [driver.py] [get_status()] ra_j2k = 15.8721554085386     dec_j2k = -24.1795495500749
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 140;0.104316241594392;171.162351965909;_
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response 140;0.104316241594392;171.162351965909;_
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:18.006 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:18.007 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:18.008 [DEBUG] [Thread-66979 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:18.008 [DEBUG] [Thread-66979 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:18.009 [DEBUG] [Thread-66979 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39351)
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:18.014 [DEBUG] [Thread-66979 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:18.021 [DEBUG] [Thread-66979 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:18.021 [DEBUG] [Thread-66979 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:18.021 [DEBUG] [Thread-66979 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:18.021 [DEBUG] [Thread-66979 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:18.021 [DEBUG] [Thread-66979 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:18.022 [DEBUG] [Thread-66979 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:18.022 [DEBUG] [Thread-66979 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:18.022 [DEBUG] [Thread-66979 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:18.022 [DEBUG] [Thread-66979 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:18.022 [INFO] [Thread-66979 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82312503, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316241594392, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993114, telescope_ra=15.8975889, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.91735, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:44:19.778021', telescope_ra_j2k=15.8721554085386, telescope_dec_j2k=-24.1795495500749, observability=1)
2025-11-17T09:45:19.919 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:19.919 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:19.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:19.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:19.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:19.920 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:19.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:19.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:19.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:19.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:19.921 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:45:19.921 [INFO] [ThreadPoolExecutor-2623_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:45:19.922 [INFO] [ThreadPoolExecutor-2623_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:45:27.572 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:45:27
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.550575494766235s
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:27.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:27.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:27.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:27.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:27.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9002589;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92002;2460996.82323582;9.75763472;1.3;_
2025-11-17T09:45:27.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.9002589;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92002;2460996.82323582;9.75763472;1.3;_
2025-11-17T09:45:27.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:27.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:27.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:27.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:27.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:27.576 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.9002589, teldec = -24.25664
2025-11-17T09:45:27.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9002589 -24.25664
2025-11-17T09:45:27.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9002589 -24.25664
2025-11-17T09:45:27.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9002589 -24.25664
2025-11-17T09:45:27.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9002589;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92002;2460996.82323584;9.75763472;1.3;_15.8748237592277 -24.1796329965732
2025-11-17T09:45:27.577 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8748237592277     dec_j2k = -24.1796329965732
2025-11-17T09:45:27.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:27.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:27.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104316000922735;171.162346601491;_
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104316000922735;171.162346601491;_
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:27.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:27.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:27.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:27.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:27.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40049)
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:27.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:27.593 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:27.593 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82323582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316000922735, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993114, telescope_ra=15.9002589, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.92002, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8748237592277, telescope_dec_j2k=-24.1796329965732, observability=1)
2025-11-17T09:45:36.071 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:36.071 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Status age = 8.47799015045166s
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:36.072 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:36.073 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:36.074 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 17;15.9026313;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92239;2460996.82333419;9.76000056;1.3;_
2025-11-17T09:45:36.074 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response 17;15.9026313;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92239;2460996.82333419;9.76000056;1.3;_
2025-11-17T09:45:36.074 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:36.074 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:36.074 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:36.075 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:36.075 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:36.075 [INFO] [Thread-66980 (handle)] [driver.py] [get_status()] Telra = 15.9026313, teldec = -24.25664
2025-11-17T09:45:36.075 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9026313 -24.25664
2025-11-17T09:45:36.075 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9026313 -24.25664
2025-11-17T09:45:36.075 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9026313 -24.25664
2025-11-17T09:45:36.076 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 17;15.9026313;-24.25664;50.108546;89.993114;50.08601;90.12017;12.92239;2460996.82333421;9.76000056;1.3;_15.8771946950693 -24.179707174128
2025-11-17T09:45:36.076 [INFO] [Thread-66980 (handle)] [driver.py] [get_status()] ra_j2k = 15.8771946950693     dec_j2k = -24.179707174128
2025-11-17T09:45:36.076 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:36.076 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:36.076 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 140;0.104316321818278;171.162357330327;_
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response 140;0.104316321818278;171.162357330327;_
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:36.077 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:36.078 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:36.079 [DEBUG] [Thread-66980 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:36.079 [DEBUG] [Thread-66980 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:36.079 [DEBUG] [Thread-66980 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57775)
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:36.082 [DEBUG] [Thread-66980 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:36.089 [DEBUG] [Thread-66980 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:36.089 [DEBUG] [Thread-66980 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:36.089 [DEBUG] [Thread-66980 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:36.090 [DEBUG] [Thread-66980 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:36.090 [INFO] [Thread-66980 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82333419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316321818278, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108546, telescope_az=89.993114, telescope_ra=15.9026313, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.92239, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8771946950693, telescope_dec_j2k=-24.179707174128, observability=1)
2025-11-17T09:45:40.799 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.799 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.799 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:40.799 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:40.799 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:45:40.800 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:40.801 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:40.802 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:45:40.803 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:40.804 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Park
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:45:40.805 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:45:40.806 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 29;15.9039385;-24.25664;50.108545;89.993114;50.08601;90.12017;12.9237;2460996.82338896;9.76130417;1.3;_Park Command Successful
2025-11-17T09:45:41.806 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:45:41.806 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:45:41.806 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:45:41.807 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:45:41.807 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:45:42.333 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.243664741516113s
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:42.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:42.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9043588;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92412;2460996.82340666;9.76172333;1.3;_
2025-11-17T09:45:42.335 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9043588;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92412;2460996.82340666;9.76172333;1.3;_
2025-11-17T09:45:42.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:42.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:42.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:42.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:42.336 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:42.337 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9043588, teldec = -24.25664
2025-11-17T09:45:42.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9043588 -24.25664
2025-11-17T09:45:42.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9043588 -24.25664
2025-11-17T09:45:42.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9043588 -24.25664
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9043588;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92412;2460996.82340668;9.76172333;1.3;_15.8789211297009 -24.1797612066335
2025-11-17T09:45:42.338 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8789211297009     dec_j2k = -24.1797612066335
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104316562489934;171.162357330327;_
2025-11-17T09:45:42.338 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104316562489934;171.162357330327;_
2025-11-17T09:45:42.339 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:42.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:42.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:42.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:42.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:42.340 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:42.340 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:42.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:42.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:42.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:42.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:42.341 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:42.341 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:42.348 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56377)
2025-11-17T09:45:42.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:42.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:42.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:42.348 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:42.349 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:42.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:42.357 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:42.357 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:42.357 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82340666, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316562489934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9043588, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.92412, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8789211297009, telescope_dec_j2k=-24.1797612066335, observability=1)
2025-11-17T09:45:42.807 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:45:42.807 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:45:42.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:45:42.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:45:42.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:45:43.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:45:43.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:45:43.808 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:45:43.809 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:45:43.809 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:45:44.809 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:45:44.809 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:45:44.809 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:44.810 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:45:44.811 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:45:44.812 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:45.812 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:45.812 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:45.812 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:45.812 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:45.812 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:45:45.813 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:45:45.814 [DEBUG] [ThreadPoolExecutor-2622_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:45.814 [INFO] [ThreadPoolExecutor-2622_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:45:54.186 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:45:54.186 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Status age = 11.829815864562988s
2025-11-17T09:45:54.186 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:45:54.187 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 17;15.9076739;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92744;2460996.82354384;9.76502944;1.3;_
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response 17;15.9076739;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92744;2460996.82354384;9.76502944;1.3;_
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:45:54.188 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:45:54.189 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:54.189 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:45:54.189 [INFO] [Thread-66981 (handle)] [driver.py] [get_status()] Telra = 15.9076739, teldec = -24.25664
2025-11-17T09:45:54.190 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9076739 -24.25664
2025-11-17T09:45:54.190 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9076739 -24.25664
2025-11-17T09:45:54.190 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9076739 -24.25664
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 17;15.9076739;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92744;2460996.82354387;9.76502944;1.3;_15.8822341870872 -24.1798649405877
2025-11-17T09:45:54.191 [INFO] [Thread-66981 (handle)] [driver.py] [get_status()] ra_j2k = 15.8822341870872     dec_j2k = -24.1798649405877
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 140;0.104316482266049;171.162357330327;_
2025-11-17T09:45:54.191 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response 140;0.104316482266049;171.162357330327;_
2025-11-17T09:45:54.192 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:45:54.192 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:54.192 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:54.192 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:45:54.193 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:45:54.194 [DEBUG] [Thread-66981 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:54.194 [DEBUG] [Thread-66981 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:45:54.194 [DEBUG] [Thread-66981 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55317)
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:45:54.197 [DEBUG] [Thread-66981 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:45:54.204 [DEBUG] [Thread-66981 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:45:54.204 [INFO] [Thread-66981 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82354384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316482266049, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9076739, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.92744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8822341870872, telescope_dec_j2k=-24.1798649405877, observability=1)
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Status age = 7.085598945617676s
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:01.290 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:01.291 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:01.292 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 17;15.9096541;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92942;2460996.82362606;9.76700417;1.3;_
2025-11-17T09:46:01.292 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response 17;15.9096541;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92942;2460996.82362606;9.76700417;1.3;_
2025-11-17T09:46:01.292 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:01.292 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:01.292 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:01.293 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:01.293 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:01.293 [INFO] [Thread-66982 (handle)] [driver.py] [get_status()] Telra = 15.9096541, teldec = -24.25664
2025-11-17T09:46:01.293 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9096541 -24.25664
2025-11-17T09:46:01.293 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9096541 -24.25664
2025-11-17T09:46:01.293 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9096541 -24.25664
2025-11-17T09:46:01.294 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 17;15.9096541;-24.25664;50.108545;89.993114;50.08601;90.12017;12.92942;2460996.82362609;9.76700417;1.3;_15.8842131681359 -24.179926931741
2025-11-17T09:46:01.294 [INFO] [Thread-66982 (handle)] [driver.py] [get_status()] ra_j2k = 15.8842131681359     dec_j2k = -24.179926931741
2025-11-17T09:46:01.294 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:01.294 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:01.294 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 140;0.104316161370506;171.162362694745;_
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response 140;0.104316161370506;171.162362694745;_
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:01.295 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:01.296 [DEBUG] [Thread-66982 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:01.297 [DEBUG] [Thread-66982 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44073)
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:01.301 [DEBUG] [Thread-66982 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:01.308 [DEBUG] [Thread-66982 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:01.308 [INFO] [Thread-66982 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82362606, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316161370506, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9096541, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.92942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8842131681359, telescope_dec_j2k=-24.179926931741, observability=1)
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Status age = 10.945902585983276s
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:12.254 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:12.255 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:12.256 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:12.257 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 17;15.9127136;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93248;2460996.82375297;9.77005528;1.3;_
2025-11-17T09:46:12.257 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response 17;15.9127136;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93248;2460996.82375297;9.77005528;1.3;_
2025-11-17T09:46:12.257 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:12.257 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:12.257 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:12.258 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:12.258 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:12.258 [INFO] [Thread-66983 (handle)] [driver.py] [get_status()] Telra = 15.9127136, teldec = -24.25664
2025-11-17T09:46:12.258 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9127136 -24.25664
2025-11-17T09:46:12.258 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9127136 -24.25664
2025-11-17T09:46:12.258 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9127136 -24.25664
2025-11-17T09:46:12.259 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 17;15.9127136;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93248;2460996.823753;9.77005528;1.3;_15.8872707865038 -24.1800227520816
2025-11-17T09:46:12.259 [INFO] [Thread-66983 (handle)] [driver.py] [get_status()] ra_j2k = 15.8872707865038     dec_j2k = -24.1800227520816
2025-11-17T09:46:12.259 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:12.259 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:12.259 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 140;0.104316843273534;171.162357330327;_
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response 140;0.104316843273534;171.162357330327;_
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:12.260 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:12.261 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:12.262 [DEBUG] [Thread-66983 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:12.262 [DEBUG] [Thread-66983 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:12.262 [DEBUG] [Thread-66983 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:12.263 [DEBUG] [Thread-66983 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59535)
2025-11-17T09:46:12.263 [DEBUG] [Thread-66983 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:12.263 [DEBUG] [Thread-66983 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:12.264 [DEBUG] [Thread-66983 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:12.264 [DEBUG] [Thread-66983 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:12.264 [DEBUG] [Thread-66983 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:12.271 [DEBUG] [Thread-66983 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:12.271 [INFO] [Thread-66983 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82375297, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316843273534, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9127136, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.93248, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8872707865038, telescope_dec_j2k=-24.1800227520816, observability=1)
2025-11-17T09:46:13.030 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:46:13.030 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7588739395141602s
2025-11-17T09:46:13.030 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7588739395141602
2025-11-17T09:46:13.030 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.45799517631531 seconds ago
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.507669448852539s
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9134155;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93318;2460996.82378218;9.77075528;1.3;_
2025-11-17T09:46:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9134155;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93318;2460996.82378218;9.77075528;1.3;_
2025-11-17T09:46:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:14.782 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9134155, teldec = -24.25664
2025-11-17T09:46:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9134155 -24.25664
2025-11-17T09:46:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9134155 -24.25664
2025-11-17T09:46:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9134155 -24.25664
2025-11-17T09:46:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9134155;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93318;2460996.82378221;9.77075528;1.3;_15.8879722551181 -24.1800447418978
2025-11-17T09:46:14.783 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.8879722551181     dec_j2k = -24.1800447418978
2025-11-17T09:46:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104316803161591;171.162351965909;_
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104316803161591;171.162351965909;_
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36123)
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:14.792 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:14.800 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82378218, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316803161591, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9134155, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.93318, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:45:19.918865', telescope_ra_j2k=15.8879722551181, telescope_dec_j2k=-24.1800447418978, observability=1)
2025-11-17T09:46:20.063 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:20.063 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:20.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:20.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:20.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:20.064 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:20.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:20.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:20.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:20.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:20.065 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:46:20.065 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:20.065 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:20.065 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:20.065 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:20.065 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:46:20.066 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:46:20.067 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:21.067 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:21.067 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:21.067 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:21.067 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:21.067 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:46:21.068 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:21.069 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:21.070 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:21.070 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:21.070 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:21.070 [DEBUG] [ThreadPoolExecutor-2624_0] [payload.py] [to_registers()] [0]
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59181)
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:21.075 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:21.082 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:21.083 [DEBUG] [ThreadPoolExecutor-2624_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:27.654 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:46:27
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.854644298553467s
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:27.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:27.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:27.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9169805;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93674;2460996.8239312;9.77431056;1.3;_
2025-11-17T09:46:27.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.9169805;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93674;2460996.8239312;9.77431056;1.3;_
2025-11-17T09:46:27.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:27.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:27.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:27.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:27.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:27.657 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.9169805, teldec = -24.25664
2025-11-17T09:46:27.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9169805 -24.25664
2025-11-17T09:46:27.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9169805 -24.25664
2025-11-17T09:46:27.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9169805 -24.25664
2025-11-17T09:46:27.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9169805;-24.25664;50.108545;89.993114;50.08601;90.12017;12.93674;2460996.82393123;9.77431056;1.3;_15.8915350657611 -24.1801564702727
2025-11-17T09:46:27.658 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.8915350657611     dec_j2k = -24.1801564702727
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104316602601877;171.162362694745;_
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104316602601877;171.162362694745;_
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:27.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:27.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:27.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:27.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:27.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:27.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:27.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:27.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:27.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:27.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:27.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:27.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33841)
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:27.666 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:27.673 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:27.674 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:27.674 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8239312, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316602601877, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108545, telescope_az=89.993114, telescope_ra=15.9169805, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.93674, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.8915350657611, telescope_dec_j2k=-24.1801564702727, observability=1)
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Status age = 2.655240535736084s
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:30.329 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:30.330 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:30.331 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:30.332 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 17;15.9177379;-24.25664;50.108544;89.993114;50.08601;90.12017;12.9375;2460996.82396218;9.77506583;1.3;_
2025-11-17T09:46:30.332 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response 17;15.9177379;-24.25664;50.108544;89.993114;50.08601;90.12017;12.9375;2460996.82396218;9.77506583;1.3;_
2025-11-17T09:46:30.332 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:30.332 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:30.332 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:30.333 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:30.333 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:30.333 [INFO] [Thread-66984 (handle)] [driver.py] [get_status()] Telra = 15.9177379, teldec = -24.25664
2025-11-17T09:46:30.333 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9177379 -24.25664
2025-11-17T09:46:30.333 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9177379 -24.25664
2025-11-17T09:46:30.333 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9177379 -24.25664
2025-11-17T09:46:30.334 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 17;15.9177379;-24.25664;50.108544;89.993114;50.08601;90.12017;12.9375;2460996.8239622;9.77506583;1.3;_15.8922920009846 -24.1801802161775
2025-11-17T09:46:30.334 [INFO] [Thread-66984 (handle)] [driver.py] [get_status()] ra_j2k = 15.8922920009846     dec_j2k = -24.1801802161775
2025-11-17T09:46:30.334 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:30.334 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:30.334 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 140;0.10431664271382;171.162346601491;_
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response 140;0.10431664271382;171.162346601491;_
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:30.335 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:30.336 [DEBUG] [Thread-66984 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:30.341 [DEBUG] [Thread-66984 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51313)
2025-11-17T09:46:30.341 [DEBUG] [Thread-66984 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:30.341 [DEBUG] [Thread-66984 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:30.341 [DEBUG] [Thread-66984 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:30.342 [DEBUG] [Thread-66984 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:30.342 [DEBUG] [Thread-66984 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:30.348 [DEBUG] [Thread-66984 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:30.349 [DEBUG] [Thread-66984 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:30.349 [INFO] [Thread-66984 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82396218, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431664271382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9177379, telescope_dec=-24.25664, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.9375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.8922920009846, telescope_dec_j2k=-24.1801802161775, observability=1)
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.098959684371948s
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:41.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:41.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:41.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9208283;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94059;2460996.82409086;9.77814778;1.3;_
2025-11-17T09:46:41.450 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9208283;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94059;2460996.82409086;9.77814778;1.3;_
2025-11-17T09:46:41.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:41.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:41.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:41.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:41.451 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:41.451 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9208283, teldec = -24.256639
2025-11-17T09:46:41.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9208283 -24.256639
2025-11-17T09:46:41.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9208283 -24.256639
2025-11-17T09:46:41.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9208283 -24.256639
2025-11-17T09:46:41.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9208283;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94059;2460996.82409088;9.77814778;1.3;_15.8953805060527 -24.1802761376384
2025-11-17T09:46:41.452 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.8953805060527     dec_j2k = -24.1802761376384
2025-11-17T09:46:41.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:41.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104316682825763;171.162346601491;_
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104316682825763;171.162346601491;_
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:41.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:41.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:41.454 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:41.454 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:41.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:41.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:41.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:41.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:41.456 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:41.456 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57545)
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:41.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:41.465 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:41.465 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82409086, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316682825763, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9208283, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94059, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.8953805060527, telescope_dec_j2k=-24.1802761376384, observability=1)
2025-11-17T09:46:46.083 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:46.083 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:46.083 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:46.083 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:46.083 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:46.084 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:46:46.085 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:46:46.086 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:48.443 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Status age = 6.978605031967163s
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:46:48.444 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:46:48.445 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:46:48.446 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 17;15.9227792;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94254;2460996.82417183;9.78009333;1.3;_
2025-11-17T09:46:48.446 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response 17;15.9227792;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94254;2460996.82417183;9.78009333;1.3;_
2025-11-17T09:46:48.446 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:46:48.446 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:46:48.446 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:46:48.447 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:48.447 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:46:48.447 [INFO] [Thread-66985 (handle)] [driver.py] [get_status()] Telra = 15.9227792, teldec = -24.256639
2025-11-17T09:46:48.447 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9227792 -24.256639
2025-11-17T09:46:48.447 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9227792 -24.256639
2025-11-17T09:46:48.447 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9227792 -24.256639
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 17;15.9227792;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94254;2460996.82417185;9.78009333;1.3;_15.8973302108078 -24.1803373481119
2025-11-17T09:46:48.448 [INFO] [Thread-66985 (handle)] [driver.py] [get_status()] ra_j2k = 15.8973302108078     dec_j2k = -24.1803373481119
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 140;0.104316843273534;171.162362694745;_
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response 140;0.104316843273534;171.162362694745;_
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:48.448 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:46:48.449 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:46:48.450 [DEBUG] [Thread-66985 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:48.450 [DEBUG] [Thread-66985 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:46:48.450 [DEBUG] [Thread-66985 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36391)
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:46:48.453 [DEBUG] [Thread-66985 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:46:48.460 [DEBUG] [Thread-66985 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:46:48.461 [INFO] [Thread-66985 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82417183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104316843273534, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9227792, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94254, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.8973302108078, telescope_dec_j2k=-24.1803373481119, observability=1)
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Status age = 12.882199048995972s
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:01.343 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:01.347 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:01.348 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 17;15.9263665;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94613;2460996.82432116;9.78367083;1.3;_
2025-11-17T09:47:01.348 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response 17;15.9263665;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94613;2460996.82432116;9.78367083;1.3;_
2025-11-17T09:47:01.348 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:01.348 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:01.349 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:01.351 [INFO] [Thread-66986 (handle)] [driver.py] [get_status()] Telra = 15.9263665, teldec = -24.256639
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9263665 -24.256639
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9263665 -24.256639
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9263665 -24.256639
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 17;15.9263665;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94613;2460996.82432119;9.78367083;1.3;_15.9009153152013 -24.1804499542128
2025-11-17T09:47:01.351 [INFO] [Thread-66986 (handle)] [driver.py] [get_status()] ra_j2k = 15.9009153152013     dec_j2k = -24.1804499542128
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:01.351 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 140;0.104317525176562;171.162351965909;_
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response 140;0.104317525176562;171.162351965909;_
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:01.352 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:01.353 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:01.354 [DEBUG] [Thread-66986 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:01.354 [DEBUG] [Thread-66986 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:01.354 [DEBUG] [Thread-66986 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52103)
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:01.358 [DEBUG] [Thread-66986 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:01.365 [DEBUG] [Thread-66986 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:01.365 [DEBUG] [Thread-66986 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:01.366 [DEBUG] [Thread-66986 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:01.366 [INFO] [Thread-66986 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82432116, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104317525176562, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9263665, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94613, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.9009153152013, telescope_dec_j2k=-24.1804499542128, observability=1)
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Status age = 5.146161794662476s
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:06.512 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:06.513 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:06.514 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 17;15.9278165;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94758;2460996.82438095;9.78511694;1.3;_
2025-11-17T09:47:06.514 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response 17;15.9278165;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94758;2460996.82438095;9.78511694;1.3;_
2025-11-17T09:47:06.514 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:06.514 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:06.514 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:06.515 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:06.515 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:06.515 [INFO] [Thread-66987 (handle)] [driver.py] [get_status()] Telra = 15.9278165, teldec = -24.256639
2025-11-17T09:47:06.515 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9278165 -24.256639
2025-11-17T09:47:06.515 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9278165 -24.256639
2025-11-17T09:47:06.515 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9278165 -24.256639
2025-11-17T09:47:06.516 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 17;15.9278165;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94758;2460996.82438097;9.78511694;1.3;_15.9023644285384 -24.1804954893928
2025-11-17T09:47:06.516 [INFO] [Thread-66987 (handle)] [driver.py] [get_status()] ra_j2k = 15.9023644285384     dec_j2k = -24.1804954893928
2025-11-17T09:47:06.516 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:06.516 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:06.516 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 140;0.104317565288505;171.162357330327;_
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response 140;0.104317565288505;171.162357330327;_
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:06.517 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:06.518 [DEBUG] [Thread-66987 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48543)
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:06.521 [DEBUG] [Thread-66987 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:06.528 [DEBUG] [Thread-66987 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:06.528 [INFO] [Thread-66987 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82438095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104317565288505, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9278165, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94758, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.9023644285384, telescope_dec_j2k=-24.1804954893928, observability=1)
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.561386346817017s
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:13.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:13.091 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:13.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:13.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:13.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:13.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9296594;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94942;2460996.82445708;9.78695472;1.3;_
2025-11-17T09:47:13.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.9296594;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94942;2460996.82445708;9.78695472;1.3;_
2025-11-17T09:47:13.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:13.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:13.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:13.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:13.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:13.093 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.9296594, teldec = -24.256639
2025-11-17T09:47:13.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.9296594 -24.256639
2025-11-17T09:47:13.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.9296594 -24.256639
2025-11-17T09:47:13.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9296594 -24.256639
2025-11-17T09:47:13.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9296594;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94942;2460996.82445711;9.78695472;1.3;_15.9042062022932 -24.180553379119
2025-11-17T09:47:13.094 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.9042062022932     dec_j2k = -24.180553379119
2025-11-17T09:47:13.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:13.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:13.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104317284504905;171.162357330327;_
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104317284504905;171.162357330327;_
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:13.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:13.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:13.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:13.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:13.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:13.102 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35381)
2025-11-17T09:47:13.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:13.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:13.103 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:13.103 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:13.103 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:13.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:47:13.110 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82445708, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104317284504905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9296594, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.9042062022932, telescope_dec_j2k=-24.180553379119, observability=1)
2025-11-17T09:47:13.110 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.45625376701355 seconds ago
2025-11-17T09:47:14.787 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6776156425476074s
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9301078;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94987;2460996.82447672;9.78740194;1.3;_
2025-11-17T09:47:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9301078;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94987;2460996.82447672;9.78740194;1.3;_
2025-11-17T09:47:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:14.791 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9301078, teldec = -24.256639
2025-11-17T09:47:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9301078 -24.256639
2025-11-17T09:47:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9301078 -24.256639
2025-11-17T09:47:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9301078 -24.256639
2025-11-17T09:47:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9301078;-24.256639;50.108544;89.993114;50.08601;90.12017;12.94987;2460996.82447675;9.78740194;1.3;_15.904654328378 -24.1805674671154
2025-11-17T09:47:14.792 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.904654328378     dec_j2k = -24.1805674671154
2025-11-17T09:47:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104317565288505;171.162357330327;_
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104317565288505;171.162357330327;_
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:14.799 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56507)
2025-11-17T09:47:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:14.800 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:14.807 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:14.807 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:14.808 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:14.808 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82447672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104317565288505, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108544, telescope_az=89.993114, telescope_ra=15.9301078, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.94987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:46:20.062545', telescope_ra_j2k=15.904654328378, telescope_dec_j2k=-24.1805674671154, observability=1)
2025-11-17T09:47:20.203 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:20.203 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:20.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:20.204 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:20.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:20.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:20.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:20.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:20.205 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:47:20.205 [INFO] [ThreadPoolExecutor-2625_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:47:20.206 [INFO] [ThreadPoolExecutor-2625_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:47:24.581 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Status age = 9.773657321929932s
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:24.582 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:24.583 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:24.584 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 17;15.9328353;-24.256639;50.108543;89.993114;50.08601;90.12017;12.9526;2460996.82459009;9.79012194;1.3;_
2025-11-17T09:47:24.584 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response 17;15.9328353;-24.256639;50.108543;89.993114;50.08601;90.12017;12.9526;2460996.82459009;9.79012194;1.3;_
2025-11-17T09:47:24.584 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:24.584 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:24.584 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:24.585 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:24.585 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:24.585 [INFO] [Thread-66988 (handle)] [driver.py] [get_status()] Telra = 15.9328353, teldec = -24.256639
2025-11-17T09:47:24.585 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9328353 -24.256639
2025-11-17T09:47:24.585 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9328353 -24.256639
2025-11-17T09:47:24.585 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9328353 -24.256639
2025-11-17T09:47:24.586 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 17;15.9328353;-24.256639;50.108543;89.993114;50.08601;90.12017;12.9526;2460996.82459012;9.79012194;1.3;_15.9073801631841 -24.180653183645
2025-11-17T09:47:24.586 [INFO] [Thread-66988 (handle)] [driver.py] [get_status()] ra_j2k = 15.9073801631841     dec_j2k = -24.180653183645
2025-11-17T09:47:24.586 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 140;0.104317364728791;171.162357330327;_
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response 140;0.104317364728791;171.162357330327;_
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:24.587 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:24.588 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:24.588 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:24.588 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:24.589 [DEBUG] [Thread-66988 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:24.590 [DEBUG] [Thread-66988 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:24.590 [DEBUG] [Thread-66988 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50431)
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:24.591 [DEBUG] [Thread-66988 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:24.599 [DEBUG] [Thread-66988 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:24.599 [INFO] [Thread-66988 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82459009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104317364728791, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108543, telescope_az=89.993114, telescope_ra=15.9328353, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.9526, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9073801631841, telescope_dec_j2k=-24.180653183645, observability=1)
2025-11-17T09:47:27.735 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:47:27
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.1356022357940674s
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:27.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:27.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:27.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9337308;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95349;2460996.82462659;9.791015;1.3;_
2025-11-17T09:47:27.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.9337308;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95349;2460996.82462659;9.791015;1.3;_
2025-11-17T09:47:27.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:27.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:27.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:27.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:27.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:27.738 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.9337308, teldec = -24.256639
2025-11-17T09:47:27.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9337308 -24.256639
2025-11-17T09:47:27.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9337308 -24.256639
2025-11-17T09:47:27.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9337308 -24.256639
2025-11-17T09:47:27.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9337308;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95349;2460996.82462661;9.791015;1.3;_15.9082751168233 -24.1806813349056
2025-11-17T09:47:27.739 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.9082751168233     dec_j2k = -24.1806813349056
2025-11-17T09:47:27.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:27.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:27.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104318046631818;171.162368059163;_
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104318046631818;171.162368059163;_
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:27.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:27.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:27.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:27.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:27.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53811)
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:27.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:27.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:27.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:27.753 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:27.754 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:27.754 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82462659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318046631818, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108543, telescope_az=89.993114, telescope_ra=15.9337308, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.95349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9082751168233, telescope_dec_j2k=-24.1806813349056, observability=1)
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.798998355865479s
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:40.553 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:40.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:40.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:40.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:40.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9372972;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95706;2460996.82477493;9.79457167;1.3;_
2025-11-17T09:47:40.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9372972;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95706;2460996.82477493;9.79457167;1.3;_
2025-11-17T09:47:40.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:40.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:40.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:40.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:40.556 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:40.556 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9372972, teldec = -24.256639
2025-11-17T09:47:40.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9372972 -24.256639
2025-11-17T09:47:40.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9372972 -24.256639
2025-11-17T09:47:40.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9372972 -24.256639
2025-11-17T09:47:40.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9372972;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95706;2460996.82477497;9.79457167;1.3;_15.9118393426641 -24.180793491599
2025-11-17T09:47:40.557 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9118393426641     dec_j2k = -24.180793491599
2025-11-17T09:47:40.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:40.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:40.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104318367527361;171.162368059163;_
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104318367527361;171.162368059163;_
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:40.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:40.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:40.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:40.560 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:40.560 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41065)
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:40.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:40.574 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:40.574 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82477493, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318367527361, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108543, telescope_az=89.993114, telescope_ra=15.9372972, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.95706, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9118393426641, telescope_dec_j2k=-24.180793491599, observability=1)
2025-11-17T09:47:41.086 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.086 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.086 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:41.086 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:47:41.087 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:41.088 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:41.089 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.090 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:41.091 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:41.092 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:41.092 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Park
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:47:41.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 29;15.937437;-24.256639;50.108543;89.993114;50.08601;90.12017;12.9572;2460996.82478117;9.79471111;1.3;_Park Command Successful
2025-11-17T09:47:42.093 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:47:42.094 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:47:42.094 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:47:42.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:47:42.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Status age = 2.1220409870147705s
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:42.696 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:47:42.697 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 17;15.9379041;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95767;2460996.82479975;9.79517694;1.3;_
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response 17;15.9379041;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95767;2460996.82479975;9.79517694;1.3;_
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:47:42.698 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:47:42.699 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:42.699 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:47:42.699 [INFO] [Thread-66989 (handle)] [driver.py] [get_status()] Telra = 15.9379041, teldec = -24.256639
2025-11-17T09:47:42.700 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9379041 -24.256639
2025-11-17T09:47:42.700 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9379041 -24.256639
2025-11-17T09:47:42.700 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9379041 -24.256639
2025-11-17T09:47:42.701 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 17;15.9379041;-24.256639;50.108543;89.993114;50.08601;90.12017;12.95767;2460996.82479978;9.79517694;1.3;_15.9124458729652 -24.1808125841727
2025-11-17T09:47:42.701 [INFO] [Thread-66989 (handle)] [driver.py] [get_status()] ra_j2k = 15.9124458729652     dec_j2k = -24.1808125841727
2025-11-17T09:47:42.701 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:47:42.701 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:47:42.701 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 140;0.104318207079589;171.162346601491;_
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response 140;0.104318207079589;171.162346601491;_
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:42.702 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:47:42.703 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:47:42.704 [DEBUG] [Thread-66989 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:42.704 [DEBUG] [Thread-66989 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:47:42.704 [DEBUG] [Thread-66989 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:47:42.708 [DEBUG] [Thread-66989 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41385)
2025-11-17T09:47:42.709 [DEBUG] [Thread-66989 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:47:42.709 [DEBUG] [Thread-66989 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:47:42.709 [DEBUG] [Thread-66989 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:47:42.709 [DEBUG] [Thread-66989 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:47:42.709 [DEBUG] [Thread-66989 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:47:42.716 [DEBUG] [Thread-66989 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:47:42.716 [INFO] [Thread-66989 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82479975, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318207079589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108543, telescope_az=89.993114, telescope_ra=15.9379041, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.95767, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9124458729652, telescope_dec_j2k=-24.1808125841727, observability=1)
2025-11-17T09:47:43.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:47:43.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:47:43.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:47:43.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:47:43.095 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:47:44.096 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:47:44.096 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:47:44.096 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:47:44.097 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:47:44.097 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:47:45.097 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:47:45.097 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:47:45.097 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:45.098 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:47:45.099 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:47:45.100 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:46.100 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:46.100 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:46.100 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:47:46.100 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:47:46.100 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:47:46.101 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:46.101 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:47:46.101 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:47:46.101 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:47:46.102 [DEBUG] [ThreadPoolExecutor-2624_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:47:46.102 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:47:46.102 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:47:46.102 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:47:46.102 [DEBUG] [ThreadPoolExecutor-2624_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:47:46.102 [INFO] [ThreadPoolExecutor-2624_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Status age = 18.053712844848633s
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:00.770 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 17;15.9429178;-24.256639;50.108543;89.993114;50.08601;90.12017;12.96268;2460996.82500892;9.80017694;1.3;_
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response 17;15.9429178;-24.256639;50.108543;89.993114;50.08601;90.12017;12.96268;2460996.82500892;9.80017694;1.3;_
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:00.771 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:00.772 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:00.773 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:00.773 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:00.773 [INFO] [Thread-66990 (handle)] [driver.py] [get_status()] Telra = 15.9429178, teldec = -24.256639
2025-11-17T09:48:00.773 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9429178 -24.256639
2025-11-17T09:48:00.773 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9429178 -24.256639
2025-11-17T09:48:00.773 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9429178 -24.256639
2025-11-17T09:48:00.774 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 17;15.9429178;-24.256639;50.108543;89.993114;50.08601;90.12017;12.96268;2460996.82500896;9.80017694;1.3;_15.9174565219532 -24.1809703853778
2025-11-17T09:48:00.774 [INFO] [Thread-66990 (handle)] [driver.py] [get_status()] ra_j2k = 15.9174565219532     dec_j2k = -24.1809703853778
2025-11-17T09:48:00.774 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:00.774 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:00.774 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 140;0.104318166967647;171.162362694745;_
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response 140;0.104318166967647;171.162362694745;_
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:00.775 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:00.776 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:00.777 [DEBUG] [Thread-66990 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:00.777 [DEBUG] [Thread-66990 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:00.777 [DEBUG] [Thread-66990 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55189)
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:00.782 [DEBUG] [Thread-66990 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:00.789 [DEBUG] [Thread-66990 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:00.789 [INFO] [Thread-66990 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82500892, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318166967647, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108543, telescope_az=89.993114, telescope_ra=15.9429178, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.96268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9174565219532, telescope_dec_j2k=-24.1809703853778, observability=1)
2025-11-17T09:48:01.396 [DEBUG] [Thread-66991 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:01.396 [DEBUG] [Thread-66991 (handle)] [server.py] [get_status()] Status age = 0.6067302227020264s
2025-11-17T09:48:01.396 [DEBUG] [Thread-66991 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6067302227020264
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.381019830703735s
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:13.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:13.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:13.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:13.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:13.171 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:13.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:13.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:13.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:13.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9463798;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96614;2460996.82515245;9.80362944;1.3;_
2025-11-17T09:48:13.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.9463798;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96614;2460996.82515245;9.80362944;1.3;_
2025-11-17T09:48:13.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:13.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:13.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:13.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:13.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:13.174 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.9463798, teldec = -24.256639
2025-11-17T09:48:13.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.9463798 -24.256639
2025-11-17T09:48:13.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.9463798 -24.256639
2025-11-17T09:48:13.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9463798 -24.256639
2025-11-17T09:48:13.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9463798;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96614;2460996.82515249;9.80362944;1.3;_15.920916418467 -24.1810794256816
2025-11-17T09:48:13.175 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.920916418467     dec_j2k = -24.1810794256816
2025-11-17T09:48:13.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:13.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:13.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104318848870674;171.162362694745;_
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104318848870674;171.162362694745;_
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:13.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:13.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:13.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:13.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:13.183 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42311)
2025-11-17T09:48:13.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:13.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:13.184 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:13.184 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:13.184 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:13.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:48:13.191 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82515245, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318848870674, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9463798, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.96614, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.920916418467, telescope_dec_j2k=-24.1810794256816, observability=1)
2025-11-17T09:48:13.191 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.45633363723755 seconds ago
2025-11-17T09:48:14.768 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.5774576663970947s
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:14.769 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:14.770 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:14.770 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9468191;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96658;2460996.82517095;9.8040675;1.3;_
2025-11-17T09:48:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9468191;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96658;2460996.82517095;9.8040675;1.3;_
2025-11-17T09:48:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:14.771 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:14.772 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9468191, teldec = -24.256639
2025-11-17T09:48:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9468191 -24.256639
2025-11-17T09:48:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9468191 -24.256639
2025-11-17T09:48:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9468191 -24.256639
2025-11-17T09:48:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9468191;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96658;2460996.82517098;9.8040675;1.3;_15.9213554517422 -24.1810932665305
2025-11-17T09:48:14.773 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.9213554517422     dec_j2k = -24.1810932665305
2025-11-17T09:48:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104319009318446;171.162362694745;_
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104319009318446;171.162362694745;_
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37777)
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:14.781 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:14.788 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82517095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319009318446, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9468191, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.96658, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9213554517422, telescope_dec_j2k=-24.1810932665305, observability=1)
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Status age = 4.035467624664307s
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:18.824 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:18.825 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:18.826 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 17;15.947968;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96773;2460996.82521789;9.80521333;1.3;_
2025-11-17T09:48:18.826 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response 17;15.947968;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96773;2460996.82521789;9.80521333;1.3;_
2025-11-17T09:48:18.826 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:18.826 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:18.826 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:18.827 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:18.827 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:18.827 [INFO] [Thread-66992 (handle)] [driver.py] [get_status()] Telra = 15.947968, teldec = -24.256639
2025-11-17T09:48:18.827 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] UnCookCoordinates 15.947968 -24.256639
2025-11-17T09:48:18.827 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.947968 -24.256639
2025-11-17T09:48:18.827 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.947968 -24.256639
2025-11-17T09:48:18.828 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 17;15.947968;-24.256639;50.108542;89.993114;50.08601;90.12017;12.96773;2460996.82521792;9.80521333;1.3;_15.9225036543805 -24.18112946926
2025-11-17T09:48:18.828 [INFO] [Thread-66992 (handle)] [driver.py] [get_status()] ra_j2k = 15.9225036543805     dec_j2k = -24.18112946926
2025-11-17T09:48:18.828 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:18.828 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:18.828 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 140;0.104318527975132;171.162351965909;_
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response 140;0.104318527975132;171.162351965909;_
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:18.829 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:18.830 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:18.831 [DEBUG] [Thread-66992 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:18.831 [DEBUG] [Thread-66992 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:18.831 [DEBUG] [Thread-66992 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53559)
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:18.835 [DEBUG] [Thread-66992 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:18.842 [DEBUG] [Thread-66992 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:18.842 [INFO] [Thread-66992 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82521789, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318527975132, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.947968, telescope_dec=-24.256639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.96773, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:47:20.203312', telescope_ra_j2k=15.9225036543805, telescope_dec_j2k=-24.18112946926, observability=1)
2025-11-17T09:48:20.346 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:20.346 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:20.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:20.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:20.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:20.347 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:20.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:20.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:20.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:20.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:20.348 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:48:20.348 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:20.348 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:20.348 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:20.348 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:20.348 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:48:20.349 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:48:20.350 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:21.350 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:21.350 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:21.350 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:21.350 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:21.350 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:48:21.351 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:21.352 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:21.353 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:21.353 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:21.353 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:21.353 [DEBUG] [ThreadPoolExecutor-2626_0] [payload.py] [to_registers()] [0]
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48407)
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:21.358 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:21.365 [DEBUG] [ThreadPoolExecutor-2626_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:27.815 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:48:27
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.972470998764038s
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:27.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:27.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:27.816 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:27.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:27.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:27.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:27.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9504699;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97023;2460996.82532194;9.80770833;1.3;_
2025-11-17T09:48:27.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.9504699;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97023;2460996.82532194;9.80770833;1.3;_
2025-11-17T09:48:27.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:27.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:27.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:27.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:27.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:27.818 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.9504699, teldec = -24.256638
2025-11-17T09:48:27.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9504699 -24.256638
2025-11-17T09:48:27.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9504699 -24.256638
2025-11-17T09:48:27.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9504699 -24.256638
2025-11-17T09:48:27.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9504699;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97023;2460996.82532198;9.80770833;1.3;_15.925004036957 -24.181207330088
2025-11-17T09:48:27.819 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.925004036957     dec_j2k = -24.181207330088
2025-11-17T09:48:27.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:27.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:27.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10431892909456;171.162362694745;_
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10431892909456;171.162362694745;_
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:27.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:27.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:27.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:27.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:27.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35585)
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:27.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:27.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:27.832 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:27.832 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82532194, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431892909456, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9504699, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.97023, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.925004036957, telescope_dec_j2k=-24.181207330088, observability=1)
2025-11-17T09:48:36.956 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:36.956 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Status age = 9.124570369720459s
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:36.957 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:36.958 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:36.959 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 17;15.9530093;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97277;2460996.82542777;9.81024083;1.3;_
2025-11-17T09:48:36.959 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response 17;15.9530093;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97277;2460996.82542777;9.81024083;1.3;_
2025-11-17T09:48:36.959 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:36.959 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:36.959 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:36.960 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:36.960 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:36.960 [INFO] [Thread-66993 (handle)] [driver.py] [get_status()] Telra = 15.9530093, teldec = -24.256638
2025-11-17T09:48:36.960 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9530093 -24.256638
2025-11-17T09:48:36.960 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9530093 -24.256638
2025-11-17T09:48:36.960 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9530093 -24.256638
2025-11-17T09:48:36.961 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 17;15.9530093;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97277;2460996.82542779;9.81024083;1.3;_15.9275418980439 -24.1812874065325
2025-11-17T09:48:36.961 [INFO] [Thread-66993 (handle)] [driver.py] [get_status()] ra_j2k = 15.9275418980439     dec_j2k = -24.1812874065325
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 140;0.104318768646789;171.162368059163;_
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response 140;0.104318768646789;171.162368059163;_
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:36.962 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:36.963 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:36.963 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:36.963 [DEBUG] [Thread-66993 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:36.964 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:36.964 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:36.964 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:36.965 [DEBUG] [Thread-66993 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:36.965 [DEBUG] [Thread-66993 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:36.965 [DEBUG] [Thread-66993 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37701)
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:36.969 [DEBUG] [Thread-66993 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:36.976 [DEBUG] [Thread-66993 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:36.976 [INFO] [Thread-66993 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82542777, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104318768646789, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9530093, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.97277, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.9275418980439, telescope_dec_j2k=-24.1812874065325, observability=1)
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.685563087463379s
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:39.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:39.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9537647;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97353;2460996.82545907;9.81099417;1.3;_
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9537647;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97353;2460996.82545907;9.81099417;1.3;_
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:39.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:39.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:39.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:39.665 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9537647, teldec = -24.256638
2025-11-17T09:48:39.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9537647 -24.256638
2025-11-17T09:48:39.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9537647 -24.256638
2025-11-17T09:48:39.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9537647 -24.256638
2025-11-17T09:48:39.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9537647;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97353;2460996.8254591;9.81099417;1.3;_15.9282968405378 -24.1813112335505
2025-11-17T09:48:39.667 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9282968405378     dec_j2k = -24.1813112335505
2025-11-17T09:48:39.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:39.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:39.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:39.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104319490661759;171.162351965909;_
2025-11-17T09:48:39.668 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104319490661759;171.162351965909;_
2025-11-17T09:48:39.668 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:39.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:39.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:39.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:39.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:39.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:39.670 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:39.670 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34193)
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:39.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:39.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:39.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:39.678 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:39.678 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:39.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:39.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:39.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:39.679 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:39.679 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:39.679 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82545907, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319490661759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9537647, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.97353, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.9282968405378, telescope_dec_j2k=-24.1813112335505, observability=1)
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:46.366 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:48:46.367 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:48:46.368 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Status age = 15.335102081298828s
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:48:55.014 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:48:55.015 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:48:55.017 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 17;15.9580222;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97781;2460996.82563677;9.81526778;1.3;_
2025-11-17T09:48:55.017 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response 17;15.9580222;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97781;2460996.82563677;9.81526778;1.3;_
2025-11-17T09:48:55.017 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:48:55.017 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:48:55.017 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:48:55.018 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:55.018 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:48:55.018 [INFO] [Thread-66994 (handle)] [driver.py] [get_status()] Telra = 15.9580222, teldec = -24.256638
2025-11-17T09:48:55.018 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9580222 -24.256638
2025-11-17T09:48:55.018 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9580222 -24.256638
2025-11-17T09:48:55.018 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9580222 -24.256638
2025-11-17T09:48:55.019 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 17;15.9580501;-24.256638;50.108542;89.993114;50.08601;90.12017;12.97781;2460996.82563679;9.81526778;1.3;_15.932551764372 -24.1814455806348
2025-11-17T09:48:55.019 [INFO] [Thread-66994 (handle)] [driver.py] [get_status()] ra_j2k = 15.932551764372     dec_j2k = -24.1814455806348
2025-11-17T09:48:55.019 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:48:55.019 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 140;0.104319009318446;171.162362694745;_
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response 140;0.104319009318446;171.162362694745;_
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:55.020 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:48:55.021 [DEBUG] [Thread-66994 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:55.022 [DEBUG] [Thread-66994 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:48:55.022 [DEBUG] [Thread-66994 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57385)
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:48:55.025 [DEBUG] [Thread-66994 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:48:55.032 [DEBUG] [Thread-66994 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:48:55.033 [DEBUG] [Thread-66994 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:48:55.033 [DEBUG] [Thread-66994 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:48:55.033 [INFO] [Thread-66994 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82563677, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319009318446, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9580222, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.97781, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.932551764372, telescope_dec_j2k=-24.1814455806348, observability=1)
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Status age = 6.391208648681641s
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:01.424 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:01.425 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:01.425 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:01.425 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:01.425 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 17;15.9598355;-24.256638;50.108542;89.993114;50.08601;90.12017;12.9796;2460996.82571094;9.81704833;1.3;_
2025-11-17T09:49:01.426 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response 17;15.9598355;-24.256638;50.108542;89.993114;50.08601;90.12017;12.9796;2460996.82571094;9.81704833;1.3;_
2025-11-17T09:49:01.426 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:01.426 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:01.426 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:01.427 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:01.427 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:01.427 [INFO] [Thread-66995 (handle)] [driver.py] [get_status()] Telra = 15.9598355, teldec = -24.256638
2025-11-17T09:49:01.427 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9598355 -24.256638
2025-11-17T09:49:01.427 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9598355 -24.256638
2025-11-17T09:49:01.427 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9598355 -24.256638
2025-11-17T09:49:01.428 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 17;15.9598355;-24.256638;50.108542;89.993114;50.08601;90.12017;12.9796;2460996.82571097;9.81704833;1.3;_15.9343639683915 -24.1815028288552
2025-11-17T09:49:01.428 [INFO] [Thread-66995 (handle)] [driver.py] [get_status()] ra_j2k = 15.9343639683915     dec_j2k = -24.1815028288552
2025-11-17T09:49:01.428 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:01.428 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:01.428 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 140;0.104319691221473;171.162351965909;_
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response 140;0.104319691221473;171.162351965909;_
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:01.429 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:01.430 [DEBUG] [Thread-66995 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:01.435 [DEBUG] [Thread-66995 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58043)
2025-11-17T09:49:01.436 [DEBUG] [Thread-66995 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:01.436 [DEBUG] [Thread-66995 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:01.436 [DEBUG] [Thread-66995 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:01.436 [DEBUG] [Thread-66995 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:01.436 [DEBUG] [Thread-66995 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:01.443 [DEBUG] [Thread-66995 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:01.443 [DEBUG] [Thread-66995 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:01.444 [DEBUG] [Thread-66995 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:01.444 [INFO] [Thread-66995 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82571094, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319691221473, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108542, telescope_az=89.993114, telescope_ra=15.9598355, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.9796, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.9343639683915, telescope_dec_j2k=-24.1815028288552, observability=1)
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Status age = 11.686302423477173s
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:13.130 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:13.131 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:13.132 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:13.133 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 17;15.9630936;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98286;2460996.82584645;9.8202975;1.3;_
2025-11-17T09:49:13.133 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response 17;15.9630936;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98286;2460996.82584645;9.8202975;1.3;_
2025-11-17T09:49:13.133 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:13.133 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:13.133 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:13.134 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:13.134 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:13.134 [INFO] [Thread-66996 (handle)] [driver.py] [get_status()] Telra = 15.9630936, teldec = -24.256638
2025-11-17T09:49:13.134 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9630936 -24.256638
2025-11-17T09:49:13.134 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9630936 -24.256638
2025-11-17T09:49:13.134 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9630936 -24.256638
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 17;15.9630936;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98286;2460996.82584647;9.8202975;1.3;_15.9376201009996 -24.1816057344889
2025-11-17T09:49:13.135 [INFO] [Thread-66996 (handle)] [driver.py] [get_status()] ra_j2k = 15.9376201009996     dec_j2k = -24.1816057344889
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 140;0.104320894579757;171.162357330327;_
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response 140;0.104320894579757;171.162357330327;_
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:13.135 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:13.136 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:13.137 [DEBUG] [Thread-66996 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:13.137 [DEBUG] [Thread-66996 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:13.137 [DEBUG] [Thread-66996 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57829)
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:13.139 [DEBUG] [Thread-66996 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:13.146 [DEBUG] [Thread-66996 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:13.147 [INFO] [Thread-66996 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82584645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320894579757, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993114, telescope_ra=15.9630936, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.98286, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.9376201009996, telescope_dec_j2k=-24.1816057344889, observability=1)
2025-11-17T09:49:13.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:49:13.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.1043391227722168s
2025-11-17T09:49:13.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.1043391227722168
2025-11-17T09:49:13.251 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.436307191848755 seconds ago
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6257109642028809s
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:14.772 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9635423;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98331;2460996.82586544;9.820745;1.3;_
2025-11-17T09:49:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9635423;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98331;2460996.82586544;9.820745;1.3;_
2025-11-17T09:49:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:14.775 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9635423, teldec = -24.256638
2025-11-17T09:49:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9635423 -24.256638
2025-11-17T09:49:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9635423 -24.256638
2025-11-17T09:49:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9635423 -24.256638
2025-11-17T09:49:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9635423;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98331;2460996.82586546;9.820745;1.3;_15.9380685302394 -24.1816199108246
2025-11-17T09:49:14.776 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.9380685302394     dec_j2k = -24.1816199108246
2025-11-17T09:49:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104319450549816;171.162351965909;_
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104319450549816;171.162351965909;_
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:49:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:49:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54937)
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:14.780 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:14.787 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:14.788 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:14.788 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:14.788 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82586544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319450549816, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993114, telescope_ra=15.9635423, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.98331, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:48:20.345966', telescope_ra_j2k=15.9380685302394, telescope_dec_j2k=-24.1816199108246, observability=1)
2025-11-17T09:49:20.488 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:20.488 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:20.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:20.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:20.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:20.489 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:20.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:20.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:20.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:20.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:20.490 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:49:20.490 [INFO] [ThreadPoolExecutor-2627_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:49:20.490 [INFO] [ThreadPoolExecutor-2627_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:49:27.893 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:49:27
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.105331659317017s
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:27.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:27.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9671931;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98696;2460996.8260173;9.82438583;1.3;_
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.9671931;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98696;2460996.8260173;9.82438583;1.3;_
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:27.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:27.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:27.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:27.896 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.9671931, teldec = -24.256638
2025-11-17T09:49:27.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9671931 -24.256638
2025-11-17T09:49:27.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9671931 -24.256638
2025-11-17T09:49:27.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9671931 -24.256638
2025-11-17T09:49:27.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.9671931;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98696;2460996.82601733;9.82438583;1.3;_15.9417171288978 -24.1817352941506
2025-11-17T09:49:27.897 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.9417171288978     dec_j2k = -24.1817352941506
2025-11-17T09:49:27.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:27.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:27.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10431993189313;171.162368059163;_
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10431993189313;171.162368059163;_
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:27.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:27.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59601)
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:27.906 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:27.914 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:27.914 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8260173, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10431993189313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993114, telescope_ra=15.9671931, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.98696, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9417171288978, telescope_dec_j2k=-24.1817352941506, observability=1)
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Status age = 3.2796647548675537s
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:31.194 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:31.195 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:31.196 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:31.196 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 17;15.9681073;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98787;2460996.82605551;9.8252975;1.3;_
2025-11-17T09:49:31.196 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response 17;15.9681073;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98787;2460996.82605551;9.8252975;1.3;_
2025-11-17T09:49:31.196 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:31.197 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:31.197 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:31.197 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:31.198 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:31.198 [INFO] [Thread-66997 (handle)] [driver.py] [get_status()] Telra = 15.9681073, teldec = -24.256638
2025-11-17T09:49:31.198 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9681073 -24.256638
2025-11-17T09:49:31.198 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9681073 -24.256638
2025-11-17T09:49:31.198 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9681073 -24.256638
2025-11-17T09:49:31.199 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 17;15.9681073;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98787;2460996.82605554;9.8252975;1.3;_15.942630778124 -24.1817641982772
2025-11-17T09:49:31.199 [INFO] [Thread-66997 (handle)] [driver.py] [get_status()] ra_j2k = 15.942630778124     dec_j2k = -24.1817641982772
2025-11-17T09:49:31.199 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:31.199 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:31.199 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 140;0.10432021267673;171.162351965909;_
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response 140;0.10432021267673;171.162351965909;_
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:31.200 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:31.201 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:31.202 [DEBUG] [Thread-66997 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:31.202 [DEBUG] [Thread-66997 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:31.202 [DEBUG] [Thread-66997 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:31.205 [DEBUG] [Thread-66997 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48381)
2025-11-17T09:49:31.205 [DEBUG] [Thread-66997 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:31.206 [DEBUG] [Thread-66997 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:31.206 [DEBUG] [Thread-66997 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:31.206 [DEBUG] [Thread-66997 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:31.206 [DEBUG] [Thread-66997 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:31.213 [DEBUG] [Thread-66997 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:31.213 [INFO] [Thread-66997 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82605551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432021267673, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993114, telescope_ra=15.9681073, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.98787, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.942630778124, telescope_dec_j2k=-24.1817641982772, observability=1)
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.5585243701934814s
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:38.772 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:38.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:38.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:38.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:38.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9702267;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98999;2460996.82614322;9.82741111;1.3;_
2025-11-17T09:49:38.774 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9702267;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98999;2460996.82614322;9.82741111;1.3;_
2025-11-17T09:49:38.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:38.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:38.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:38.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:38.775 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:38.775 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9702267, teldec = -24.256638
2025-11-17T09:49:38.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9702267 -24.256638
2025-11-17T09:49:38.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9702267 -24.256638
2025-11-17T09:49:38.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9702267 -24.256638
2025-11-17T09:49:38.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9702267;-24.256638;50.108541;89.993114;50.08601;90.12017;12.98999;2460996.82614324;9.82741111;1.3;_15.9447489019773 -24.1818312237925
2025-11-17T09:49:38.776 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9447489019773     dec_j2k = -24.1818312237925
2025-11-17T09:49:38.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:38.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:38.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104319851669244;171.162362694745;_
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104319851669244;171.162362694745;_
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:38.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:38.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:38.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:38.779 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:38.779 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56311)
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:38.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:38.788 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:38.788 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82614322, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319851669244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993114, telescope_ra=15.9702267, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.98999, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9447489019773, telescope_dec_j2k=-24.1818312237925, observability=1)
2025-11-17T09:49:41.368 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.368 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.368 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:41.368 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:41.368 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:41.369 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.369 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:41.369 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.370 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:41.371 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:41.371 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:41.371 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.371 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:41.372 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:49:41.373 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:41.374 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Park
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:49:41.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 29;15.9709554;-24.256638;50.108541;89.993113;50.08601;90.12017;12.99072;2460996.82617332;9.82813778;1.3;_Park Command Successful
2025-11-17T09:49:42.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:49:42.375 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:49:42.376 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:49:42.376 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:49:42.376 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:49:43.376 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:49:43.376 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:49:43.377 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:49:43.377 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:49:43.378 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:49:44.378 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:49:44.378 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:49:44.378 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:49:44.379 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:49:44.379 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:49:45.379 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:49:45.379 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:49:45.379 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:45.380 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:49:45.381 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:49:45.382 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:46.382 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:46.382 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:46.382 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:46.382 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:46.382 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:49:46.383 [DEBUG] [ThreadPoolExecutor-2626_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:46.383 [INFO] [ThreadPoolExecutor-2626_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:49:49.253 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:49:49.253 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Status age = 10.465372562408447s
2025-11-17T09:49:49.253 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:49:49.254 [DEBUG] [Thread-66998 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:49:49.254 [DEBUG] [Thread-66998 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:49:49.254 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:49:49.254 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:49:49.254 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:49:49.255 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:49:49.256 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 17;15.9731302;-24.256638;50.108541;89.993113;50.08601;90.12017;12.99289;2460996.82626454;9.83030667;1.3;_
2025-11-17T09:49:49.256 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response 17;15.9731302;-24.256638;50.108541;89.993113;50.08601;90.12017;12.99289;2460996.82626454;9.83030667;1.3;_
2025-11-17T09:49:49.256 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:49:49.256 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:49:49.256 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:49:49.257 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:49.257 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:49:49.257 [INFO] [Thread-66998 (handle)] [driver.py] [get_status()] Telra = 15.9731302, teldec = -24.256638
2025-11-17T09:49:49.257 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9731302 -24.256638
2025-11-17T09:49:49.257 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9731302 -24.256638
2025-11-17T09:49:49.257 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9731302 -24.256638
2025-11-17T09:49:49.258 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 17;15.9731302;-24.256638;50.108541;89.993113;50.08601;90.12017;12.99289;2460996.82626456;9.83030667;1.3;_15.9476506553331 -24.1819230842631
2025-11-17T09:49:49.258 [INFO] [Thread-66998 (handle)] [driver.py] [get_status()] ra_j2k = 15.9476506553331     dec_j2k = -24.1819230842631
2025-11-17T09:49:49.258 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:49:49.258 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:49:49.258 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 140;0.104319851669244;171.162351965909;_
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response 140;0.104319851669244;171.162351965909;_
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:49.259 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:49.260 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:49.260 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:49.260 [DEBUG] [Thread-66998 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:49.260 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:49:49.260 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:49:49.261 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:49:49.261 [DEBUG] [Thread-66998 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:49.261 [DEBUG] [Thread-66998 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:49:49.261 [DEBUG] [Thread-66998 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40733)
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:49:49.266 [DEBUG] [Thread-66998 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:49:49.273 [DEBUG] [Thread-66998 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:49:49.274 [DEBUG] [Thread-66998 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:49:49.274 [DEBUG] [Thread-66998 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:49:49.274 [INFO] [Thread-66998 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82626454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104319851669244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108541, telescope_az=89.993113, telescope_ra=15.9731302, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.99289, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9476506553331, telescope_dec_j2k=-24.1819230842631, observability=1)
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Status age = 12.200514554977417s
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:01.474 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:01.475 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:01.475 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:01.475 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:01.476 [DEBUG] [Thread-66999 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:01.476 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:01.476 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:01.476 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:01.476 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:01.477 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 17;15.976554;-24.256638;50.10854;89.993113;50.08601;90.12017;12.99632;2460996.82640597;9.83372111;1.3;_
2025-11-17T09:50:01.477 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response 17;15.976554;-24.256638;50.10854;89.993113;50.08601;90.12017;12.99632;2460996.82640597;9.83372111;1.3;_
2025-11-17T09:50:01.477 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:01.477 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:01.477 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:01.478 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:01.478 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:01.478 [INFO] [Thread-66999 (handle)] [driver.py] [get_status()] Telra = 15.976554, teldec = -24.256638
2025-11-17T09:50:01.478 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] UnCookCoordinates 15.976554 -24.256638
2025-11-17T09:50:01.478 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.976554 -24.256638
2025-11-17T09:50:01.478 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.976554 -24.256638
2025-11-17T09:50:01.479 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 17;15.976554;-24.256638;50.10854;89.993113;50.08601;90.12017;12.99632;2460996.82640601;9.83372111;1.3;_15.9510723981169 -24.1820314622547
2025-11-17T09:50:01.479 [INFO] [Thread-66999 (handle)] [driver.py] [get_status()] ra_j2k = 15.9510723981169     dec_j2k = -24.1820314622547
2025-11-17T09:50:01.479 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:01.479 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:01.479 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 140;0.104320814355872;171.162368059163;_
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response 140;0.104320814355872;171.162368059163;_
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:01.480 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:01.481 [DEBUG] [Thread-66999 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35155)
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:01.486 [DEBUG] [Thread-66999 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:01.493 [DEBUG] [Thread-66999 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:01.493 [INFO] [Thread-66999 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82640597, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320814355872, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.976554, telescope_dec=-24.256638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.99632, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9510723981169, telescope_dec_j2k=-24.1820314622547, observability=1)
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Status age = 5.880089282989502s
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:07.373 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:07.374 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:07.375 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 17;15.9781974;-24.256637;50.10854;89.993113;50.08601;90.12017;12.99796;2460996.82647425;9.83536;1.3;_
2025-11-17T09:50:07.375 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response 17;15.9781974;-24.256637;50.10854;89.993113;50.08601;90.12017;12.99796;2460996.82647425;9.83536;1.3;_
2025-11-17T09:50:07.375 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:07.375 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:07.375 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:07.376 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:07.376 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:07.376 [INFO] [Thread-67000 (handle)] [driver.py] [get_status()] Telra = 15.9781974, teldec = -24.256637
2025-11-17T09:50:07.376 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9781974 -24.256637
2025-11-17T09:50:07.376 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9781974 -24.256637
2025-11-17T09:50:07.376 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9781974 -24.256637
2025-11-17T09:50:07.377 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 17;15.9781974;-24.256637;50.10854;89.993113;50.08601;90.12017;12.99796;2460996.82647427;9.83536;1.3;_15.9527148117685 -24.1820825045838
2025-11-17T09:50:07.377 [INFO] [Thread-67000 (handle)] [driver.py] [get_status()] ra_j2k = 15.9527148117685     dec_j2k = -24.1820825045838
2025-11-17T09:50:07.377 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:07.377 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:07.378 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 140;0.104320854467815;171.162351965909;_
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response 140;0.104320854467815;171.162351965909;_
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:07.379 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:07.380 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:07.381 [DEBUG] [Thread-67000 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:07.381 [DEBUG] [Thread-67000 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:07.381 [DEBUG] [Thread-67000 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34215)
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:07.386 [DEBUG] [Thread-67000 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:07.394 [DEBUG] [Thread-67000 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:07.395 [DEBUG] [Thread-67000 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:07.395 [DEBUG] [Thread-67000 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:07.395 [DEBUG] [Thread-67000 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:07.395 [INFO] [Thread-67000 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82647425, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320854467815, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.9781974, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.99796, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9527148117685, telescope_dec_j2k=-24.1820825045838, observability=1)
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.916027545928955s
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:13.311 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:13.312 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:13.313 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9798402;-24.256637;50.10854;89.993113;50.08601;90.12017;12.9996;2460996.82654297;9.83699833;1.3;_
2025-11-17T09:50:13.313 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.9798402;-24.256637;50.10854;89.993113;50.08601;90.12017;12.9996;2460996.82654297;9.83699833;1.3;_
2025-11-17T09:50:13.313 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:13.313 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:13.313 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:13.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:13.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:13.314 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.9798402, teldec = -24.256637
2025-11-17T09:50:13.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.9798402 -24.256637
2025-11-17T09:50:13.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.9798402 -24.256637
2025-11-17T09:50:13.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9798402 -24.256637
2025-11-17T09:50:13.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9798402;-24.256637;50.10854;89.993113;50.08601;90.12017;12.9996;2460996.826543;9.83699833;1.3;_15.9543566262152 -24.1821345419122
2025-11-17T09:50:13.315 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.9543566262152     dec_j2k = -24.1821345419122
2025-11-17T09:50:13.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:13.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:13.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104320533572272;171.162368059163;_
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104320533572272;171.162368059163;_
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:13.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:13.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:13.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:13.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:13.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33277)
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:13.324 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:13.331 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:13.331 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:13.331 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:13.332 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:50:13.332 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82654297, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320533572272, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.9798402, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=12.9996, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9543566262152, telescope_dec_j2k=-24.1821345419122, observability=1)
2025-11-17T09:50:13.332 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43903112411499 seconds ago
2025-11-17T09:50:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.4568207263946533s
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9802611;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00002;2460996.82656008;9.83741806;1.3;_
2025-11-17T09:50:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9802611;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00002;2460996.82656008;9.83741806;1.3;_
2025-11-17T09:50:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:14.792 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9802611, teldec = -24.256637
2025-11-17T09:50:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9802611 -24.256637
2025-11-17T09:50:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9802611 -24.256637
2025-11-17T09:50:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9802611 -24.256637
2025-11-17T09:50:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9802611;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00002;2460996.8265601;9.83741806;1.3;_15.9547772738049 -24.1821478765932
2025-11-17T09:50:14.793 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.9547772738049     dec_j2k = -24.1821478765932
2025-11-17T09:50:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104321255587243;171.162346601491;_
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104321255587243;171.162346601491;_
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:50:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:50:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33465)
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:14.799 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:14.807 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:14.807 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82656008, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104321255587243, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.9802611, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.00002, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:49:20.487778', telescope_ra_j2k=15.9547772738049, telescope_dec_j2k=-24.1821478765932, observability=1)
2025-11-17T09:50:20.630 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:20.630 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:20.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:20.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:20.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:20.631 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:20.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:20.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:20.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:20.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:20.632 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:20.633 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:20.634 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:20.634 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:50:20.634 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:50:20.634 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:50:20.634 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:50:21.635 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:21.636 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:21.637 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:21.637 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:21.637 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:21.637 [DEBUG] [ThreadPoolExecutor-2628_0] [payload.py] [to_registers()] [0]
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60091)
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:21.641 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:21.648 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:21.648 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:50:21.649 [DEBUG] [ThreadPoolExecutor-2628_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:50:21.649 [DEBUG] [ThreadPoolExecutor-2628_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:50:21.649 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:21.649 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:21.649 [DEBUG] [ThreadPoolExecutor-2628_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:25.444 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Status age = 10.637964248657227s
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:25.445 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:25.446 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:25.447 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 17;15.9832114;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00297;2460996.82668341;9.84036028;1.3;_
2025-11-17T09:50:25.447 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response 17;15.9832114;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00297;2460996.82668341;9.84036028;1.3;_
2025-11-17T09:50:25.447 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:25.447 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:25.447 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:25.448 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:25.448 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:25.448 [INFO] [Thread-67001 (handle)] [driver.py] [get_status()] Telra = 15.9832114, teldec = -24.256637
2025-11-17T09:50:25.448 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9832114 -24.256637
2025-11-17T09:50:25.448 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9832114 -24.256637
2025-11-17T09:50:25.448 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9832114 -24.256637
2025-11-17T09:50:25.449 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 17;15.9832114;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00297;2460996.82668344;9.84036028;1.3;_15.9577258056477 -24.1822413718739
2025-11-17T09:50:25.449 [INFO] [Thread-67001 (handle)] [driver.py] [get_status()] ra_j2k = 15.9577258056477     dec_j2k = -24.1822413718739
2025-11-17T09:50:25.449 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:25.449 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:25.449 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 140;0.104320653908101;171.162362694745;_
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response 140;0.104320653908101;171.162362694745;_
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:25.450 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:25.451 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:25.452 [DEBUG] [Thread-67001 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:25.452 [DEBUG] [Thread-67001 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:25.452 [DEBUG] [Thread-67001 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53009)
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:25.454 [DEBUG] [Thread-67001 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:25.461 [DEBUG] [Thread-67001 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:25.461 [INFO] [Thread-67001 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82668341, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320653908101, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.9832114, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.00297, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9577258056477, telescope_dec_j2k=-24.1822413718739, observability=1)
2025-11-17T09:50:27.975 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:50:27
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.513643980026245s
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:27.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:27.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:27.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.98394;-24.256637;50.10854;89.993113;50.08601;90.12017;13.0037;2460996.8267127;9.84108694;1.3;_
2025-11-17T09:50:27.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;15.98394;-24.256637;50.10854;89.993113;50.08601;90.12017;13.0037;2460996.8267127;9.84108694;1.3;_
2025-11-17T09:50:27.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:27.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:27.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:27.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:27.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:27.978 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 15.98394, teldec = -24.256637
2025-11-17T09:50:27.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 15.98394 -24.256637
2025-11-17T09:50:27.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.98394 -24.256637
2025-11-17T09:50:27.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.98394 -24.256637
2025-11-17T09:50:27.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;15.98394;-24.256637;50.10854;89.993113;50.08601;90.12017;13.0037;2460996.82671272;9.84108694;1.3;_15.9584539692875 -24.1822644682215
2025-11-17T09:50:27.979 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.9584539692875     dec_j2k = -24.1822644682215
2025-11-17T09:50:27.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:27.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104321616594728;171.162362694745;_
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104321616594728;171.162362694745;_
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:27.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:27.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:27.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:27.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:27.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:27.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:27.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:27.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:27.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:27.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58609)
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:27.985 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:27.992 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:27.993 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:27.993 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:27.993 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:27.993 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8267127, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104321616594728, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.98394, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0037, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9584539692875, telescope_dec_j2k=-24.1822644682215, observability=1)
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.885142087936401s
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:37.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:37.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:37.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9866942;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00646;2460996.82682731;9.84383361;1.3;_
2025-11-17T09:50:37.880 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;15.9866942;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00646;2460996.82682731;9.84383361;1.3;_
2025-11-17T09:50:37.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:37.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:37.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:37.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:37.881 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:37.881 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 15.9866942, teldec = -24.256637
2025-11-17T09:50:37.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9866942 -24.256637
2025-11-17T09:50:37.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9866942 -24.256637
2025-11-17T09:50:37.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9866942 -24.256637
2025-11-17T09:50:37.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;15.9866942;-24.256637;50.10854;89.993113;50.08601;90.12017;13.00646;2460996.82682734;9.84383361;1.3;_15.9612065208657 -24.1823518001663
2025-11-17T09:50:37.883 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9612065208657     dec_j2k = -24.1823518001663
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104321496258899;171.162357330327;_
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104321496258899;171.162357330327;_
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:37.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:37.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:37.884 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:37.884 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:37.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:37.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:37.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:37.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:37.885 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:37.886 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48135)
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:37.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:37.896 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:37.896 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82682731, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104321496258899, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10854, telescope_az=89.993113, telescope_ra=15.9866942, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.00646, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9612065208657, telescope_dec_j2k=-24.1823518001663, observability=1)
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Status age = 5.614941596984863s
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:43.511 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:50:43.512 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:50:43.513 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 17;15.9882535;-24.256637;50.108539;89.993113;50.08601;90.12017;13.00802;2460996.82689251;9.84538861;1.3;_
2025-11-17T09:50:43.513 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response 17;15.9882535;-24.256637;50.108539;89.993113;50.08601;90.12017;13.00802;2460996.82689251;9.84538861;1.3;_
2025-11-17T09:50:43.513 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:50:43.513 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:50:43.513 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:50:43.514 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:43.514 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:50:43.514 [INFO] [Thread-67002 (handle)] [driver.py] [get_status()] Telra = 15.9882535, teldec = -24.256637
2025-11-17T09:50:43.514 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9882535 -24.256637
2025-11-17T09:50:43.514 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9882535 -24.256637
2025-11-17T09:50:43.514 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9882535 -24.256637
2025-11-17T09:50:43.515 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 17;15.9882535;-24.256637;50.108539;89.993113;50.08601;90.12017;13.00802;2460996.82689253;9.84538861;1.3;_15.9627648883598 -24.182401260855
2025-11-17T09:50:43.515 [INFO] [Thread-67002 (handle)] [driver.py] [get_status()] ra_j2k = 15.9627648883598     dec_j2k = -24.182401260855
2025-11-17T09:50:43.515 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:50:43.515 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:50:43.515 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 140;0.104320774243929;171.162346601491;_
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response 140;0.104320774243929;171.162346601491;_
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:43.516 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:43.517 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:43.517 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:43.517 [DEBUG] [Thread-67002 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:43.517 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:50:43.517 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:50:43.518 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:50:43.518 [DEBUG] [Thread-67002 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:43.518 [DEBUG] [Thread-67002 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:50:43.518 [DEBUG] [Thread-67002 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53441)
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:50:43.520 [DEBUG] [Thread-67002 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:50:43.527 [DEBUG] [Thread-67002 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:50:43.527 [DEBUG] [Thread-67002 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:43.527 [DEBUG] [Thread-67002 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:50:43.528 [DEBUG] [Thread-67002 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:50:43.528 [INFO] [Thread-67002 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82689251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104320774243929, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=15.9882535, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.00802, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9627648883598, telescope_dec_j2k=-24.182401260855, observability=1)
2025-11-17T09:50:46.649 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:46.649 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:46.649 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:46.649 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:46.649 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:50:46.650 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:50:46.651 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:50:46.652 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:01.532 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:01.532 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Status age = 18.004616737365723s
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:01.533 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:01.534 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:01.535 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 17;15.9932731;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01304;2460996.8271011;9.85039444;1.3;_
2025-11-17T09:51:01.535 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response 17;15.9932731;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01304;2460996.8271011;9.85039444;1.3;_
2025-11-17T09:51:01.535 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:01.535 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:01.535 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:01.536 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:01.536 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:01.536 [INFO] [Thread-67003 (handle)] [driver.py] [get_status()] Telra = 15.9932731, teldec = -24.256637
2025-11-17T09:51:01.536 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9932731 -24.256637
2025-11-17T09:51:01.536 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9932731 -24.256637
2025-11-17T09:51:01.536 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9932731 -24.256637
2025-11-17T09:51:01.537 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 17;15.9932731;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01304;2460996.82710112;9.85039444;1.3;_15.9677814901994 -24.1825605669046
2025-11-17T09:51:01.537 [INFO] [Thread-67003 (handle)] [driver.py] [get_status()] ra_j2k = 15.9677814901994     dec_j2k = -24.1825605669046
2025-11-17T09:51:01.537 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:01.537 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:01.537 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 140;0.104321456146957;171.162357330327;_
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response 140;0.104321456146957;171.162357330327;_
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:01.538 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:01.539 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:01.540 [DEBUG] [Thread-67003 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:01.540 [DEBUG] [Thread-67003 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:01.540 [DEBUG] [Thread-67003 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34885)
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:01.546 [DEBUG] [Thread-67003 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:01.553 [DEBUG] [Thread-67003 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:01.554 [DEBUG] [Thread-67003 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:01.554 [INFO] [Thread-67003 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8271011, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104321456146957, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=15.9932731, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.01304, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9677814901994, telescope_dec_j2k=-24.1825605669046, observability=1)
2025-11-17T09:51:01.644 [DEBUG] [Thread-67004 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:01.644 [DEBUG] [Thread-67004 (handle)] [server.py] [get_status()] Status age = 0.09032750129699707s
2025-11-17T09:51:01.644 [DEBUG] [Thread-67004 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.09032750129699707
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.838294982910156s
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:13.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:13.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:13.393 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:13.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:13.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:13.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:13.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9965907;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01635;2460996.82723836;9.85370306;1.3;_
2025-11-17T09:51:13.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;15.9965907;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01635;2460996.82723836;9.85370306;1.3;_
2025-11-17T09:51:13.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:13.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:13.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:13.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:13.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:13.395 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 15.9965907, teldec = -24.256637
2025-11-17T09:51:13.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 15.9965907 -24.256637
2025-11-17T09:51:13.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 15.9965907 -24.256637
2025-11-17T09:51:13.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9965907 -24.256637
2025-11-17T09:51:13.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;15.9965907;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01635;2460996.82723838;9.85370306;1.3;_15.9710971117317 -24.1826659282857
2025-11-17T09:51:13.396 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.9710971117317     dec_j2k = -24.1826659282857
2025-11-17T09:51:13.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:13.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:13.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104322338609698;171.162351965909;_
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104322338609698;171.162351965909;_
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:13.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:13.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:13.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:13.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:13.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:13.404 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41209)
2025-11-17T09:51:13.404 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:13.404 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:13.404 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:13.404 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:13.405 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:13.412 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:51:13.412 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82723836, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322338609698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=15.9965907, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.01635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9710971117317, telescope_dec_j2k=-24.1826659282857, observability=1)
2025-11-17T09:51:13.412 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43749809265137 seconds ago
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3763620853424072s
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9969545;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01672;2460996.82725451;9.85406583;1.3;_
2025-11-17T09:51:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;15.9969545;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01672;2460996.82725451;9.85406583;1.3;_
2025-11-17T09:51:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:14.792 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 15.9969545, teldec = -24.256637
2025-11-17T09:51:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9969545 -24.256637
2025-11-17T09:51:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9969545 -24.256637
2025-11-17T09:51:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9969545 -24.256637
2025-11-17T09:51:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;15.9969545;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01672;2460996.82725455;9.85406583;1.3;_15.9714606949281 -24.1826774854117
2025-11-17T09:51:14.793 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.9714606949281     dec_j2k = -24.1826774854117
2025-11-17T09:51:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104321777042499;171.162351965909;_
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104321777042499;171.162351965909;_
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39161)
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:14.802 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:14.809 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82725451, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104321777042499, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=15.9969545, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.01672, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.9714606949281, telescope_dec_j2k=-24.1826774854117, observability=1)
2025-11-17T09:51:19.705 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:19.705 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Status age = 4.896050691604614s
2025-11-17T09:51:19.705 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:19.705 [DEBUG] [Thread-67005 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:19.706 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:19.707 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 17;15.9983486;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01811;2460996.82731142;9.85545611;1.3;_
2025-11-17T09:51:19.707 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response 17;15.9983486;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01811;2460996.82731142;9.85545611;1.3;_
2025-11-17T09:51:19.707 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:19.707 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:19.708 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:19.708 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:19.708 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:19.708 [INFO] [Thread-67005 (handle)] [driver.py] [get_status()] Telra = 15.9983486, teldec = -24.256637
2025-11-17T09:51:19.709 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] UnCookCoordinates 15.9983486 -24.256637
2025-11-17T09:51:19.709 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 15.9983486 -24.256637
2025-11-17T09:51:19.709 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 15.9983486 -24.256637
2025-11-17T09:51:19.710 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 17;15.9983486;-24.256637;50.108539;89.993113;50.08601;90.12017;13.01811;2460996.82731145;9.85545611;1.3;_15.972853964401 -24.182721779214
2025-11-17T09:51:19.710 [INFO] [Thread-67005 (handle)] [driver.py] [get_status()] ra_j2k = 15.972853964401     dec_j2k = -24.182721779214
2025-11-17T09:51:19.710 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:19.710 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:19.710 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 140;0.104322659505241;171.162357330327;_
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response 140;0.104322659505241;171.162357330327;_
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:19.711 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:19.712 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:19.713 [DEBUG] [Thread-67005 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:51:19.713 [DEBUG] [Thread-67005 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:51:19.713 [DEBUG] [Thread-67005 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46821)
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:19.718 [DEBUG] [Thread-67005 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:19.725 [DEBUG] [Thread-67005 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:19.726 [DEBUG] [Thread-67005 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:19.726 [INFO] [Thread-67005 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82731142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322659505241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=15.9983486, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.01811, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:50:20.629701', telescope_ra_j2k=15.972853964401, telescope_dec_j2k=-24.182721779214, observability=1)
2025-11-17T09:51:20.773 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:20.773 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:20.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:20.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:20.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:20.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:20.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:20.775 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:20.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:20.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:20.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:20.776 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:51:20.776 [INFO] [ThreadPoolExecutor-2629_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:51:20.776 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T09:51:28.053 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:51:28
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.327023267745972s
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:28.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:28.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0006588;-24.256637;50.108539;89.993113;50.08601;90.12017;13.02042;2460996.82740804;9.85776;1.3;_
2025-11-17T09:51:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0006588;-24.256637;50.108539;89.993113;50.08601;90.12017;13.02042;2460996.82740804;9.85776;1.3;_
2025-11-17T09:51:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:28.056 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0006588, teldec = -24.256637
2025-11-17T09:51:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0006588 -24.256637
2025-11-17T09:51:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0006588 -24.256637
2025-11-17T09:51:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0006588 -24.256637
2025-11-17T09:51:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0006588;-24.256637;50.108539;89.993113;50.08601;90.12017;13.02042;2460996.82740807;9.85776;1.3;_15.9751627890739 -24.1827952016714
2025-11-17T09:51:28.057 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.9751627890739     dec_j2k = -24.1827952016714
2025-11-17T09:51:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104322579281355;171.162351965909;_
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104322579281355;171.162351965909;_
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:28.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:28.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:28.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:28.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:28.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:28.066 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50113)
2025-11-17T09:51:28.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:28.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:28.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:28.067 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:28.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:28.074 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:28.074 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82740804, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322579281355, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108539, telescope_az=89.993113, telescope_ra=16.0006588, telescope_dec=-24.256637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.02042, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9751627890739, telescope_dec_j2k=-24.1827952016714, observability=1)
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.90702223777771s
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:36.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:36.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:36.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:36.982 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:36.983 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:36.983 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:36.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:36.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:36.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:36.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0031416;-24.256643;50.108538;89.993124;50.08601;90.12018;13.0229;2460996.82751139;9.86023583;1.3;_
2025-11-17T09:51:36.984 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.0031416;-24.256643;50.108538;89.993124;50.08601;90.12018;13.0229;2460996.82751139;9.86023583;1.3;_
2025-11-17T09:51:36.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:36.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:36.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:36.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:36.985 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:36.985 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.0031416, teldec = -24.256643
2025-11-17T09:51:36.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0031416 -24.256643
2025-11-17T09:51:36.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0031416 -24.256643
2025-11-17T09:51:36.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0031416 -24.256643
2025-11-17T09:51:36.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0031416;-24.256643;50.108538;89.993124;50.08601;90.12018;13.0229;2460996.82751141;9.86023583;1.3;_15.9776441113109 -24.1828801401865
2025-11-17T09:51:36.986 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9776441113109     dec_j2k = -24.1828801401865
2025-11-17T09:51:36.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:36.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:36.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104322338609698;171.162346601491;_
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104322338609698;171.162346601491;_
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:36.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:36.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:36.988 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:36.988 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:36.990 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41195)
2025-11-17T09:51:36.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:36.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:36.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:36.991 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:36.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:36.998 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:36.998 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82751139, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322338609698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108538, telescope_az=89.993124, telescope_ra=16.0031416, telescope_dec=-24.256643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0229, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9776441113109, telescope_dec_j2k=-24.1828801401865, observability=1)
2025-11-17T09:51:37.773 [DEBUG] [Thread-67006 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:37.773 [DEBUG] [Thread-67006 (handle)] [server.py] [get_status()] Status age = 0.7749309539794922s
2025-11-17T09:51:37.773 [DEBUG] [Thread-67006 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7749309539794922
2025-11-17T09:51:41.652 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.652 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.652 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:41.652 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:41.652 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:51:41.653 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:41.654 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:41.655 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:51:41.656 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:41.657 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Park
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:51:41.658 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:51:41.659 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 29;16.0044492;-24.256637;50.108538;89.993113;50.08601;90.12017;13.02421;2460996.8275655;9.86154;1.3;_Park Command Successful
2025-11-17T09:51:42.659 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:51:42.659 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:51:42.659 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:51:42.660 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:51:42.660 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:51:43.660 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:51:43.661 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:51:43.661 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:51:43.661 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:51:43.661 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:51:44.661 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:51:44.662 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:51:44.662 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:51:44.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:51:44.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:51:45.663 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:45.664 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:45.664 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:45.664 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:45.664 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:45.664 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:51:45.665 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:51:45.666 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:46.666 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:46.666 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:46.666 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:46.666 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:46.666 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:51:46.667 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:51:46.668 [DEBUG] [ThreadPoolExecutor-2628_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:46.668 [INFO] [ThreadPoolExecutor-2628_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Status age = 18.880128622055054s
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:51:55.878 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:51:55.879 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:51:55.880 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:51:55.881 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 17;16.0084267;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02819;2460996.82773009;9.86550667;1.3;_
2025-11-17T09:51:55.881 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response 17;16.0084267;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02819;2460996.82773009;9.86550667;1.3;_
2025-11-17T09:51:55.881 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:51:55.881 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:51:55.881 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:51:55.882 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:55.882 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:51:55.882 [INFO] [Thread-67007 (handle)] [driver.py] [get_status()] Telra = 16.0084267, teldec = -24.256636
2025-11-17T09:51:55.882 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0084267 -24.256636
2025-11-17T09:51:55.882 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0084267 -24.256636
2025-11-17T09:51:55.882 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0084267 -24.256636
2025-11-17T09:51:55.883 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 17;16.0084267;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02819;2460996.82773013;9.86550667;1.3;_15.9829260735953 -24.1830412811763
2025-11-17T09:51:55.883 [INFO] [Thread-67007 (handle)] [driver.py] [get_status()] ra_j2k = 15.9829260735953     dec_j2k = -24.1830412811763
2025-11-17T09:51:55.883 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:51:55.883 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:51:55.883 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 140;0.104323140848555;171.162357330327;_
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response 140;0.104323140848555;171.162357330327;_
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:55.884 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:51:55.885 [DEBUG] [Thread-67007 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37657)
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:51:55.892 [DEBUG] [Thread-67007 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:51:55.899 [DEBUG] [Thread-67007 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:51:55.900 [INFO] [Thread-67007 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82773009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104323140848555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108538, telescope_az=89.993113, telescope_ra=16.0084267, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.02819, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9829260735953, telescope_dec_j2k=-24.1830412811763, observability=1)
2025-11-17T09:52:01.585 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:01.585 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Status age = 5.6858909130096436s
2025-11-17T09:52:01.585 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:01.586 [DEBUG] [Thread-67008 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:01.586 [DEBUG] [Thread-67008 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:01.586 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:01.586 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:01.586 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:01.587 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:01.588 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 17;16.009996;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02976;2460996.82779616;9.86707167;1.3;_
2025-11-17T09:52:01.588 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response 17;16.009996;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02976;2460996.82779616;9.86707167;1.3;_
2025-11-17T09:52:01.588 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:01.588 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:01.588 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:01.589 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:01.589 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:01.589 [INFO] [Thread-67008 (handle)] [driver.py] [get_status()] Telra = 16.009996, teldec = -24.256636
2025-11-17T09:52:01.589 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] UnCookCoordinates 16.009996 -24.256636
2025-11-17T09:52:01.589 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.009996 -24.256636
2025-11-17T09:52:01.589 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.009996 -24.256636
2025-11-17T09:52:01.590 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 17;16.009996;-24.256636;50.108538;89.993113;50.08601;90.12017;13.02976;2460996.82779618;9.86707167;1.3;_15.9844944427734 -24.1830912346825
2025-11-17T09:52:01.590 [INFO] [Thread-67008 (handle)] [driver.py] [get_status()] ra_j2k = 15.9844944427734     dec_j2k = -24.1830912346825
2025-11-17T09:52:01.590 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:01.590 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:01.590 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 140;0.104322900176898;171.162357330327;_
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response 140;0.104322900176898;171.162357330327;_
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:01.591 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:01.592 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:01.593 [DEBUG] [Thread-67008 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:01.593 [DEBUG] [Thread-67008 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:01.593 [DEBUG] [Thread-67008 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41345)
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:01.595 [DEBUG] [Thread-67008 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:01.603 [DEBUG] [Thread-67008 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:01.603 [INFO] [Thread-67008 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82779616, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322900176898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108538, telescope_az=89.993113, telescope_ra=16.009996, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.02976, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9844944427734, telescope_dec_j2k=-24.1830912346825, observability=1)
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.86883807182312s
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:13.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:13.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:13.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0133028;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03307;2460996.82793373;9.87036944;1.3;_
2025-11-17T09:52:13.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.0133028;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03307;2460996.82793373;9.87036944;1.3;_
2025-11-17T09:52:13.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:13.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:13.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:13.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:13.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:13.475 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.0133028, teldec = -24.256636
2025-11-17T09:52:13.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.0133028 -24.256636
2025-11-17T09:52:13.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.0133028 -24.256636
2025-11-17T09:52:13.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0133028 -24.256636
2025-11-17T09:52:13.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0133028;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03307;2460996.82793375;9.87036944;1.3;_15.9877992831779 -24.18319653708
2025-11-17T09:52:13.476 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 15.9877992831779     dec_j2k = -24.18319653708
2025-11-17T09:52:13.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:13.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:13.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104322860064955;171.162357330327;_
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104322860064955;171.162357330327;_
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:13.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:13.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:13.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:13.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:13.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:13.482 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52095)
2025-11-17T09:52:13.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:13.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:13.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:13.483 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:13.483 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:13.490 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:52:13.490 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82793373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322860064955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108538, telescope_az=89.993113, telescope_ra=16.0133028, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.03307, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9877992831779, telescope_dec_j2k=-24.18319653708, observability=1)
2025-11-17T09:52:13.490 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43745541572571 seconds ago
2025-11-17T09:52:13.944 [DEBUG] [Thread-67009 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:13.944 [DEBUG] [Thread-67009 (handle)] [server.py] [get_status()] Status age = 0.4536159038543701s
2025-11-17T09:52:13.944 [DEBUG] [Thread-67009 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4536159038543701
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3071067333221436s
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.013695;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03346;2460996.82794906;9.87076056;1.3;_
2025-11-17T09:52:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.013695;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03346;2460996.82794906;9.87076056;1.3;_
2025-11-17T09:52:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:14.800 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.013695, teldec = -24.256636
2025-11-17T09:52:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.013695 -24.256636
2025-11-17T09:52:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.013695 -24.256636
2025-11-17T09:52:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.013695 -24.256636
2025-11-17T09:52:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.013695;-24.256636;50.108538;89.993113;50.08601;90.12017;13.03346;2460996.82794909;9.87076056;1.3;_15.9881912509253 -24.1832090300872
2025-11-17T09:52:14.801 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 15.9881912509253     dec_j2k = -24.1832090300872
2025-11-17T09:52:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104322699617184;171.162362694745;_
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104322699617184;171.162362694745;_
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:52:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:52:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50101)
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:14.815 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:14.815 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82794906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104322699617184, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108538, telescope_az=89.993113, telescope_ra=16.013695, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.03346, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:51:20.773209', telescope_ra_j2k=15.9881912509253, telescope_dec_j2k=-24.1832090300872, observability=1)
2025-11-17T09:52:20.916 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:20.916 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:20.916 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:20.916 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:20.916 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:20.917 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:20.917 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:20.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:20.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:20.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:20.918 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:52:20.918 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:20.918 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:52:20.919 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:52:20.920 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:21.920 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:21.920 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:52:21.921 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:21.922 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:21.923 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:21.923 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:21.923 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:21.923 [DEBUG] [ThreadPoolExecutor-2630_0] [payload.py] [to_registers()] [0]
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57427)
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:21.929 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:21.936 [DEBUG] [ThreadPoolExecutor-2630_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:28.135 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:52:28
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.320024967193604s
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:28.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:28.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:28.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0174077;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03717;2460996.82810344;9.87446306;1.3;_
2025-11-17T09:52:28.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0174077;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03717;2460996.82810344;9.87446306;1.3;_
2025-11-17T09:52:28.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:28.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:28.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:28.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:28.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:28.138 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0174077, teldec = -24.256636
2025-11-17T09:52:28.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0174077 -24.256636
2025-11-17T09:52:28.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0174077 -24.256636
2025-11-17T09:52:28.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0174077 -24.256636
2025-11-17T09:52:28.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0174077;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03717;2460996.82810346;9.87446306;1.3;_15.9919017540591 -24.1833273321441
2025-11-17T09:52:28.139 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 15.9919017540591     dec_j2k = -24.1833273321441
2025-11-17T09:52:28.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10432322107244;171.162357330327;_
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10432322107244;171.162357330327;_
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:28.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:28.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:28.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:28.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:28.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:28.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:28.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:28.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:28.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:28.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:28.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57421)
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:28.144 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:28.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:28.152 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:28.152 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:28.152 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:28.152 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82810344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432322107244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.0174077, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.03717, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=15.9919017540591, telescope_dec_j2k=-24.1833273321441, observability=1)
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Status age = 3.8704254627227783s
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:32.022 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:32.023 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:32.025 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 17;16.0184915;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03825;2460996.82814843;9.87554389;1.3;_
2025-11-17T09:52:32.025 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response 17;16.0184915;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03825;2460996.82814843;9.87554389;1.3;_
2025-11-17T09:52:32.025 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:32.025 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:32.025 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:32.026 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:32.026 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:32.026 [INFO] [Thread-67010 (handle)] [driver.py] [get_status()] Telra = 16.0184915, teldec = -24.256636
2025-11-17T09:52:32.026 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0184915 -24.256636
2025-11-17T09:52:32.026 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0184915 -24.256636
2025-11-17T09:52:32.026 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0184915 -24.256636
2025-11-17T09:52:32.027 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 17;16.0184915;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03825;2460996.82814846;9.87554389;1.3;_15.9929849133426 -24.1833618797963
2025-11-17T09:52:32.027 [INFO] [Thread-67010 (handle)] [driver.py] [get_status()] ra_j2k = 15.9929849133426     dec_j2k = -24.1833618797963
2025-11-17T09:52:32.027 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:32.027 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:32.027 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:32.027 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 140;0.10432322107244;171.162362694745;_
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response 140;0.10432322107244;171.162362694745;_
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:32.028 [DEBUG] [Thread-67010 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60331)
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:32.031 [DEBUG] [Thread-67010 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:32.039 [DEBUG] [Thread-67010 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:32.039 [INFO] [Thread-67010 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82814843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432322107244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.0184915, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.03825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=15.9929849133426, telescope_dec_j2k=-24.1833618797963, observability=1)
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.047796726226807s
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:36.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.019602;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03937;2460996.82819546;9.87665139;1.3;_
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.019602;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03937;2460996.82819546;9.87665139;1.3;_
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:36.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:36.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:36.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:36.089 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:36.090 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.019602, teldec = -24.256636
2025-11-17T09:52:36.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.019602 -24.256636
2025-11-17T09:52:36.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.019602 -24.256636
2025-11-17T09:52:36.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.019602 -24.256636
2025-11-17T09:52:36.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.019602;-24.256636;50.108537;89.993113;50.08601;90.12017;13.03937;2460996.8281955;9.87665139;1.3;_15.9940947571164 -24.1833972847676
2025-11-17T09:52:36.091 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 15.9940947571164     dec_j2k = -24.1833972847676
2025-11-17T09:52:36.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:36.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:36.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104323662303811;171.162341237072;_
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104323662303811;171.162341237072;_
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:36.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:36.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:36.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:36.093 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34245)
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:36.101 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:36.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:36.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:36.109 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:36.109 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82819546, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104323662303811, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.019602, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.03937, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=15.9940947571164, telescope_dec_j2k=-24.1833972847676, observability=1)
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:46.937 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:46.938 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:52:46.939 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:52:46.940 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:50.137 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:52:50.137 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Status age = 14.028539896011353s
2025-11-17T09:52:50.137 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:52:50.138 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:52:50.139 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 17;16.023533;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0433;2460996.82835809;9.88057167;1.3;_
2025-11-17T09:52:50.139 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response 17;16.023533;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0433;2460996.82835809;9.88057167;1.3;_
2025-11-17T09:52:50.139 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:52:50.139 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:52:50.139 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:52:50.140 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:50.140 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:52:50.140 [INFO] [Thread-67011 (handle)] [driver.py] [get_status()] Telra = 16.023533, teldec = -24.256636
2025-11-17T09:52:50.140 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] UnCookCoordinates 16.023533 -24.256636
2025-11-17T09:52:50.140 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.023533 -24.256636
2025-11-17T09:52:50.140 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.023533 -24.256636
2025-11-17T09:52:50.141 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 17;16.023533;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0433;2460996.82835811;9.88057167;1.3;_15.9980234364116 -24.1835226634812
2025-11-17T09:52:50.141 [INFO] [Thread-67011 (handle)] [driver.py] [get_status()] ra_j2k = 15.9980234364116     dec_j2k = -24.1835226634812
2025-11-17T09:52:50.141 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:52:50.141 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 140;0.10432322107244;171.162362694745;_
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response 140;0.10432322107244;171.162362694745;_
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:50.142 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:50.143 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:50.143 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:50.143 [DEBUG] [Thread-67011 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:50.143 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:52:50.143 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:52:50.144 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:52:50.144 [DEBUG] [Thread-67011 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:50.144 [DEBUG] [Thread-67011 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:52:50.144 [DEBUG] [Thread-67011 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36899)
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:52:50.152 [DEBUG] [Thread-67011 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:52:50.159 [DEBUG] [Thread-67011 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:52:50.159 [INFO] [Thread-67011 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82835809, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432322107244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.023533, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0433, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=15.9980234364116, telescope_dec_j2k=-24.1835226634812, observability=1)
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Status age = 11.486918210983276s
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:01.646 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:01.647 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 17;16.0267357;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0465;2460996.8284913;9.88376556;1.3;_
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response 17;16.0267357;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0465;2460996.8284913;9.88376556;1.3;_
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:01.648 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:01.649 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:01.649 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:01.649 [INFO] [Thread-67012 (handle)] [driver.py] [get_status()] Telra = 16.0267357, teldec = -24.256636
2025-11-17T09:53:01.649 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0267357 -24.256636
2025-11-17T09:53:01.649 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0267357 -24.256636
2025-11-17T09:53:01.649 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0267357 -24.256636
2025-11-17T09:53:01.650 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 17;16.0267357;-24.256636;50.108537;89.993113;50.08601;90.12017;13.0465;2460996.82849132;9.88376556;1.3;_16.0012242482442 -24.1836248713548
2025-11-17T09:53:01.650 [INFO] [Thread-67012 (handle)] [driver.py] [get_status()] ra_j2k = 16.0012242482442     dec_j2k = -24.1836248713548
2025-11-17T09:53:01.650 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:01.650 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:01.650 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:01.651 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 140;0.104323943087411;171.162357330327;_
2025-11-17T09:53:01.651 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response 140;0.104323943087411;171.162357330327;_
2025-11-17T09:53:01.651 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:01.651 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:01.652 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:01.652 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:01.652 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:01.652 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:01.652 [DEBUG] [Thread-67012 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:01.653 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:01.653 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:01.653 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:01.653 [DEBUG] [Thread-67012 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:01.653 [DEBUG] [Thread-67012 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:01.654 [DEBUG] [Thread-67012 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34377)
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:01.655 [DEBUG] [Thread-67012 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:01.662 [DEBUG] [Thread-67012 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:01.663 [DEBUG] [Thread-67012 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:01.663 [DEBUG] [Thread-67012 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:01.663 [INFO] [Thread-67012 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8284913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104323943087411, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.0267357, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0465, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=16.0012242482442, telescope_dec_j2k=-24.1836248713548, observability=1)
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Status age = 6.548542499542236s
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:08.211 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:08.212 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:08.213 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 17;16.0285749;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04834;2460996.82856728;9.88559972;1.3;_
2025-11-17T09:53:08.213 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response 17;16.0285749;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04834;2460996.82856728;9.88559972;1.3;_
2025-11-17T09:53:08.213 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:08.213 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:08.213 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:08.214 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:08.214 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:08.214 [INFO] [Thread-67013 (handle)] [driver.py] [get_status()] Telra = 16.0285749, teldec = -24.256636
2025-11-17T09:53:08.214 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0285749 -24.256636
2025-11-17T09:53:08.214 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0285749 -24.256636
2025-11-17T09:53:08.214 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0285749 -24.256636
2025-11-17T09:53:08.215 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 17;16.0285749;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04834;2460996.8285673;9.88559972;1.3;_16.0030623649819 -24.1836835893944
2025-11-17T09:53:08.215 [INFO] [Thread-67013 (handle)] [driver.py] [get_status()] ra_j2k = 16.0030623649819     dec_j2k = -24.1836835893944
2025-11-17T09:53:08.215 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:08.216 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:08.216 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:08.216 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 140;0.10432350185604;171.162357330327;_
2025-11-17T09:53:08.216 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response 140;0.10432350185604;171.162357330327;_
2025-11-17T09:53:08.216 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:08.217 [DEBUG] [Thread-67013 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:08.218 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:08.218 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:08.218 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:08.219 [DEBUG] [Thread-67013 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:08.219 [DEBUG] [Thread-67013 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:08.219 [DEBUG] [Thread-67013 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37645)
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:08.225 [DEBUG] [Thread-67013 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:08.232 [DEBUG] [Thread-67013 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:08.233 [DEBUG] [Thread-67013 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:08.233 [DEBUG] [Thread-67013 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:08.233 [INFO] [Thread-67013 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82856728, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432350185604, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.0285749, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.04834, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=16.0030623649819, telescope_dec_j2k=-24.1836835893944, observability=1)
2025-11-17T09:53:13.550 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:53:13.550 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.3177430629730225s
2025-11-17T09:53:13.550 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:13.551 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:13.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:13.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0300503;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04981;2460996.82862907;9.88707111;1.3;_
2025-11-17T09:53:13.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.0300503;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04981;2460996.82862907;9.88707111;1.3;_
2025-11-17T09:53:13.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:13.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:13.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:13.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:13.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:13.554 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.0300503, teldec = -24.256636
2025-11-17T09:53:13.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.0300503 -24.256636
2025-11-17T09:53:13.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.0300503 -24.256636
2025-11-17T09:53:13.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0300503 -24.256636
2025-11-17T09:53:13.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0300503;-24.256636;50.108537;89.993113;50.08601;90.12017;13.04981;2460996.82862911;9.88707111;1.3;_16.0045368965449 -24.1837307052344
2025-11-17T09:53:13.555 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.0045368965449     dec_j2k = -24.1837307052344
2025-11-17T09:53:13.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:13.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:13.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104323702415754;171.162357330327;_
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104323702415754;171.162357330327;_
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:13.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:13.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:13.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:13.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:13.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35779)
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:13.564 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:13.571 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:53:13.572 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82862907, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104323702415754, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108537, telescope_az=89.993113, telescope_ra=16.0300503, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.04981, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=16.0045368965449, telescope_dec_j2k=-24.1837307052344, observability=1)
2025-11-17T09:53:13.572 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.436503648757935 seconds ago
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.2016522884368896s
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:14.773 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:14.774 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0303873;-24.256636;50.108536;89.993113;50.08601;90.12017;13.05015;2460996.82864323;9.88740722;1.3;_
2025-11-17T09:53:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.0303873;-24.256636;50.108536;89.993113;50.08601;90.12017;13.05015;2460996.82864323;9.88740722;1.3;_
2025-11-17T09:53:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:14.775 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:14.776 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.0303873, teldec = -24.256636
2025-11-17T09:53:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0303873 -24.256636
2025-11-17T09:53:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0303873 -24.256636
2025-11-17T09:53:14.776 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0303873 -24.256636
2025-11-17T09:53:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0303873;-24.256636;50.108536;89.993113;50.08601;90.12017;13.05015;2460996.82864325;9.88740722;1.3;_16.004873698252 -24.1837414686389
2025-11-17T09:53:14.777 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.004873698252     dec_j2k = -24.1837414686389
2025-11-17T09:53:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:14.777 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104324705214324;171.162357330327;_
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104324705214324;171.162357330327;_
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:14.778 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:14.779 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:14.780 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56751)
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:14.786 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:14.793 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82864323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104324705214324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993113, telescope_ra=16.0303873, telescope_dec=-24.256636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.05015, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:52:20.915718', telescope_ra_j2k=16.004873698252, telescope_dec_j2k=-24.1837414686389, observability=1)
2025-11-17T09:53:21.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:21.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:21.057 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:21.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:21.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:21.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:21.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:21.058 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:53:21.059 [INFO] [ThreadPoolExecutor-2631_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:53:21.059 [INFO] [ThreadPoolExecutor-2631_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Status age = 11.479467868804932s
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:26.273 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:26.274 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:26.275 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 17;16.0335945;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05336;2460996.82877633;9.89060556;1.3;_
2025-11-17T09:53:26.275 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response 17;16.0335945;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05336;2460996.82877633;9.89060556;1.3;_
2025-11-17T09:53:26.275 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:26.275 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:26.275 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:26.276 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:26.276 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:26.276 [INFO] [Thread-67014 (handle)] [driver.py] [get_status()] Telra = 16.0335945, teldec = -24.256635
2025-11-17T09:53:26.276 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0335945 -24.256635
2025-11-17T09:53:26.276 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0335945 -24.256635
2025-11-17T09:53:26.276 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0335945 -24.256635
2025-11-17T09:53:26.277 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 17;16.0335945;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05336;2460996.82877635;9.89060556;1.3;_16.0080790125702 -24.1838429319003
2025-11-17T09:53:26.277 [INFO] [Thread-67014 (handle)] [driver.py] [get_status()] ra_j2k = 16.0080790125702     dec_j2k = -24.1838429319003
2025-11-17T09:53:26.277 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:26.277 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:26.278 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:26.278 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 140;0.104324544766553;171.162362694745;_
2025-11-17T09:53:26.278 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response 140;0.104324544766553;171.162362694745;_
2025-11-17T09:53:26.278 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:26.278 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:26.279 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:26.279 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:26.280 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:26.281 [DEBUG] [Thread-67014 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:26.281 [DEBUG] [Thread-67014 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:26.281 [DEBUG] [Thread-67014 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:26.285 [DEBUG] [Thread-67014 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41715)
2025-11-17T09:53:26.286 [DEBUG] [Thread-67014 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:26.286 [DEBUG] [Thread-67014 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:26.286 [DEBUG] [Thread-67014 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:26.286 [DEBUG] [Thread-67014 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:26.286 [DEBUG] [Thread-67014 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:26.293 [DEBUG] [Thread-67014 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:26.294 [DEBUG] [Thread-67014 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:26.294 [INFO] [Thread-67014 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82877633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104324544766553, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993113, telescope_ra=16.0335945, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.05336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0080790125702, telescope_dec_j2k=-24.1838429319003, observability=1)
2025-11-17T09:53:28.212 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:53:28
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.918508768081665s
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:28.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:28.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:28.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0341181;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05388;2460996.82879877;9.89112778;1.3;_
2025-11-17T09:53:28.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0341181;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05388;2460996.82879877;9.89112778;1.3;_
2025-11-17T09:53:28.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:28.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:28.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:28.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:28.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:28.215 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0341181, teldec = -24.256635
2025-11-17T09:53:28.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0341181 -24.256635
2025-11-17T09:53:28.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0341181 -24.256635
2025-11-17T09:53:28.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0341181 -24.256635
2025-11-17T09:53:28.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0341462;-24.256635;50.108536;89.993113;50.08601;90.12017;13.05391;2460996.8287988;9.89115583;1.3;_16.0086023049112 -24.1838596647662
2025-11-17T09:53:28.216 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0086023049112     dec_j2k = -24.1838596647662
2025-11-17T09:53:28.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:28.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:28.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104324304094896;171.162357330327;_
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104324304094896;171.162357330327;_
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:28.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:28.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:28.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:28.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:28.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47823)
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:28.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:28.232 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:28.233 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:28.233 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82879877, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104324304094896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993113, telescope_ra=16.0341181, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.05388, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0086023049112, telescope_dec_j2k=-24.1838596647662, observability=1)
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.959888696670532s
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:35.193 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0360735;-24.256635;50.108536;89.993112;50.08601;90.12017;13.05584;2460996.82887956;9.89307778;1.3;_
2025-11-17T09:53:35.194 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.0360735;-24.256635;50.108536;89.993112;50.08601;90.12017;13.05584;2460996.82887956;9.89307778;1.3;_
2025-11-17T09:53:35.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:35.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:35.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:35.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:35.196 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:35.196 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.0360735, teldec = -24.256635
2025-11-17T09:53:35.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0360735 -24.256635
2025-11-17T09:53:35.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0360735 -24.256635
2025-11-17T09:53:35.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0360735 -24.256635
2025-11-17T09:53:35.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0360735;-24.256635;50.108536;89.993112;50.08601;90.12017;13.05584;2460996.82887959;9.89307778;1.3;_16.0105565564973 -24.1839221664452
2025-11-17T09:53:35.197 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.0105565564973     dec_j2k = -24.1839221664452
2025-11-17T09:53:35.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:35.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:35.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104324745326267;171.162351965909;_
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104324745326267;171.162351965909;_
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:35.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:35.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:35.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:53:35.200 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:53:35.200 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:53:35.206 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55997)
2025-11-17T09:53:35.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:35.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:35.207 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:35.207 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:35.207 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:35.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:35.215 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:35.215 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:35.215 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:35.215 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82887956, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104324745326267, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993112, telescope_ra=16.0360735, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.05584, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0105565564973, telescope_dec_j2k=-24.1839221664452, observability=1)
2025-11-17T09:53:41.940 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.940 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.940 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:41.940 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:41.940 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:53:41.941 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:41.942 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:41.943 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:53:41.944 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:41.945 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:41.946 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:41.946 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:41.946 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:41.947 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:41.947 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Park
2025-11-17T09:53:41.947 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:53:41.947 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:53:41.947 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 29;16.0379625;-24.256635;50.108536;89.993112;50.08601;90.12017;13.05773;2460996.82895772;9.89496167;1.3;_Park Command Successful
2025-11-17T09:53:42.948 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:53:42.948 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:53:42.948 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:53:42.948 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:53:42.948 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:53:43.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:53:43.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:53:43.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:53:43.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:53:43.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:53:44.395 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Status age = 9.180777549743652s
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:53:44.396 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:53:44.397 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 17;16.038636;-24.256635;50.108536;89.993112;50.08601;90.12017;13.0584;2460996.82898608;9.89563333;1.3;_
2025-11-17T09:53:44.397 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response 17;16.038636;-24.256635;50.108536;89.993112;50.08601;90.12017;13.0584;2460996.82898608;9.89563333;1.3;_
2025-11-17T09:53:44.397 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:53:44.398 [INFO] [Thread-67015 (handle)] [driver.py] [get_status()] Telra = 16.038636, teldec = -24.256635
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] UnCookCoordinates 16.038636 -24.256635
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.038636 -24.256635
2025-11-17T09:53:44.398 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.038636 -24.256635
2025-11-17T09:53:44.399 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 17;16.038636;-24.256635;50.108536;89.993112;50.08601;90.12017;13.0584;2460996.8289861;9.89563333;1.3;_16.0131175528408 -24.184004102565
2025-11-17T09:53:44.399 [INFO] [Thread-67015 (handle)] [driver.py] [get_status()] ra_j2k = 16.0131175528408     dec_j2k = -24.184004102565
2025-11-17T09:53:44.399 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:53:44.399 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:53:44.399 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 140;0.104325026109866;171.162362694745;_
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response 140;0.104325026109866;171.162362694745;_
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:53:44.400 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:53:44.401 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:53:44.401 [DEBUG] [Thread-67015 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:44.401 [DEBUG] [Thread-67015 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:53:44.401 [DEBUG] [Thread-67015 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39803)
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:53:44.408 [DEBUG] [Thread-67015 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:53:44.415 [DEBUG] [Thread-67015 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:53:44.416 [DEBUG] [Thread-67015 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:53:44.416 [DEBUG] [Thread-67015 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:53:44.416 [INFO] [Thread-67015 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82898608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325026109866, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993112, telescope_ra=16.038636, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0584, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0131175528408, telescope_dec_j2k=-24.184004102565, observability=1)
2025-11-17T09:53:44.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:53:44.949 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:53:44.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:53:44.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:53:44.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:53:45.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:53:45.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:53:45.950 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:45.951 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:53:45.952 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:53:45.953 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:46.953 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:46.954 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:46.954 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:53:46.954 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:53:46.954 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:53:46.955 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:53:46.956 [DEBUG] [ThreadPoolExecutor-2630_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:53:46.956 [INFO] [ThreadPoolExecutor-2630_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:54:01.706 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Status age = 17.29085683822632s
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:01.707 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:01.708 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:01.709 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 17;16.043452;-24.256635;50.108536;89.993112;50.08601;90.12017;13.06322;2460996.82918645;9.90043611;1.3;_
2025-11-17T09:54:01.709 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response 17;16.043452;-24.256635;50.108536;89.993112;50.08601;90.12017;13.06322;2460996.82918645;9.90043611;1.3;_
2025-11-17T09:54:01.709 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:01.709 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:01.709 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:01.710 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:01.710 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:01.710 [INFO] [Thread-67016 (handle)] [driver.py] [get_status()] Telra = 16.043452, teldec = -24.256635
2025-11-17T09:54:01.710 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] UnCookCoordinates 16.043452 -24.256635
2025-11-17T09:54:01.710 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.043452 -24.256635
2025-11-17T09:54:01.711 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.043452 -24.256635
2025-11-17T09:54:01.711 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 17;16.043452;-24.256635;50.108536;89.993112;50.08601;90.12017;13.06322;2460996.82918647;9.90043611;1.3;_16.0179307308685 -24.1841581843875
2025-11-17T09:54:01.711 [INFO] [Thread-67016 (handle)] [driver.py] [get_status()] ra_j2k = 16.0179307308685     dec_j2k = -24.1841581843875
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 140;0.104325908572608;171.162357330327;_
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response 140;0.104325908572608;171.162357330327;_
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:01.712 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:01.713 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:01.713 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:01.713 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:01.713 [DEBUG] [Thread-67016 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:01.713 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:01.714 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:01.714 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:01.714 [DEBUG] [Thread-67016 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:01.714 [DEBUG] [Thread-67016 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:01.715 [DEBUG] [Thread-67016 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42879)
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:01.719 [DEBUG] [Thread-67016 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:01.726 [DEBUG] [Thread-67016 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:01.727 [DEBUG] [Thread-67016 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:01.727 [INFO] [Thread-67016 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82918645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325908572608, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108536, telescope_az=89.993112, telescope_ra=16.043452, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.06322, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0179307308685, telescope_dec_j2k=-24.1841581843875, observability=1)
2025-11-17T09:54:02.461 [DEBUG] [Thread-67017 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:02.461 [DEBUG] [Thread-67017 (handle)] [server.py] [get_status()] Status age = 0.7337543964385986s
2025-11-17T09:54:02.461 [DEBUG] [Thread-67017 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7337543964385986
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.904879570007324s
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:13.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:13.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:13.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.046795;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06656;2460996.82932447;9.90377;1.3;_
2025-11-17T09:54:13.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.046795;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06656;2460996.82932447;9.90377;1.3;_
2025-11-17T09:54:13.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:13.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:13.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:13.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:13.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:13.635 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.046795, teldec = -24.256635
2025-11-17T09:54:13.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.046795 -24.256635
2025-11-17T09:54:13.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.046795 -24.256635
2025-11-17T09:54:13.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.046795 -24.256635
2025-11-17T09:54:13.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.046795;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06656;2460996.82932449;9.90377;1.3;_16.0212717751009 -24.1842652083226
2025-11-17T09:54:13.636 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.0212717751009     dec_j2k = -24.1842652083226
2025-11-17T09:54:13.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:13.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:13.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104326109132322;171.162351965909;_
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104326109132322;171.162351965909;_
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:13.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:13.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:13.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:13.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:13.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40883)
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:13.643 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:13.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:13.650 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:13.651 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:54:13.651 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82932447, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104326109132322, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.046795, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.06656, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0212717751009, telescope_dec_j2k=-24.1842652083226, observability=1)
2025-11-17T09:54:13.651 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.439053535461426 seconds ago
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1311862468719482s
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0471036;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06687;2460996.82933778;9.90407778;1.3;_
2025-11-17T09:54:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.0471036;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06687;2460996.82933778;9.90407778;1.3;_
2025-11-17T09:54:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:14.786 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.0471036, teldec = -24.256635
2025-11-17T09:54:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0471036 -24.256635
2025-11-17T09:54:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0471036 -24.256635
2025-11-17T09:54:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0471036 -24.256635
2025-11-17T09:54:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0471036;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06687;2460996.82933781;9.90407778;1.3;_16.0215801946872 -24.18427509079
2025-11-17T09:54:14.787 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.0215801946872     dec_j2k = -24.18427509079
2025-11-17T09:54:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104324905774038;171.162362694745;_
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104324905774038;171.162362694745;_
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36547)
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:14.793 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:14.800 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82933778, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104324905774038, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.0471036, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.06687, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0215801946872, telescope_dec_j2k=-24.18427509079, observability=1)
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Status age = 5.7780890464782715s
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:20.578 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:20.579 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:20.579 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:20.579 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:20.579 [DEBUG] [Thread-67018 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:20.580 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:20.580 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:20.580 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:20.580 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:20.581 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 17;16.0487191;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06848;2460996.82940486;9.90568889;1.3;_
2025-11-17T09:54:20.581 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response 17;16.0487191;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06848;2460996.82940486;9.90568889;1.3;_
2025-11-17T09:54:20.581 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:20.581 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:20.581 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:20.582 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:20.582 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:20.582 [INFO] [Thread-67018 (handle)] [driver.py] [get_status()] Telra = 16.0487191, teldec = -24.256635
2025-11-17T09:54:20.582 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0487191 -24.256635
2025-11-17T09:54:20.582 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0487191 -24.256635
2025-11-17T09:54:20.582 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0487191 -24.256635
2025-11-17T09:54:20.583 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 17;16.0487191;-24.256635;50.108535;89.993112;50.08601;90.12017;13.06848;2460996.8294049;9.90568889;1.3;_16.0231947505859 -24.1843268326687
2025-11-17T09:54:20.583 [INFO] [Thread-67018 (handle)] [driver.py] [get_status()] ra_j2k = 16.0231947505859     dec_j2k = -24.1843268326687
2025-11-17T09:54:20.583 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:20.583 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:20.583 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 140;0.104325186557638;171.162373423581;_
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response 140;0.104325186557638;171.162373423581;_
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:20.584 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:20.585 [DEBUG] [Thread-67018 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44557)
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:20.591 [DEBUG] [Thread-67018 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:20.599 [DEBUG] [Thread-67018 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:20.599 [INFO] [Thread-67018 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.82940486, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325186557638, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.0487191, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.06848, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:53:21.056369', telescope_ra_j2k=16.0231947505859, telescope_dec_j2k=-24.1843268326687, observability=1)
2025-11-17T09:54:21.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:21.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:21.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:21.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:21.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:21.200 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:21.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:21.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:21.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:21.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:21.201 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:54:21.201 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:54:21.202 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:54:21.203 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:54:21.203 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:22.203 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:54:22.204 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:22.205 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:22.206 [DEBUG] [ThreadPoolExecutor-2632_0] [payload.py] [to_registers()] [0]
2025-11-17T09:54:22.207 [DEBUG] [ThreadPoolExecutor-2632_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43361)
2025-11-17T09:54:22.207 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:22.208 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:22.208 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:54:22.208 [DEBUG] [ThreadPoolExecutor-2632_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:22.208 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:22.215 [DEBUG] [ThreadPoolExecutor-2632_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:28.294 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:54:28
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.694924592971802s
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:28.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:28.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:28.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0508664;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07063;2460996.82949417;9.90783028;1.3;_
2025-11-17T09:54:28.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0508664;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07063;2460996.82949417;9.90783028;1.3;_
2025-11-17T09:54:28.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:28.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:28.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:28.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:28.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:28.298 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0508664, teldec = -24.256635
2025-11-17T09:54:28.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0508664 -24.256635
2025-11-17T09:54:28.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0508664 -24.256635
2025-11-17T09:54:28.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0508664 -24.256635
2025-11-17T09:54:28.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0508664;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07063;2460996.82949419;9.90783028;1.3;_16.0253407966158 -24.1843956276026
2025-11-17T09:54:28.299 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0253407966158     dec_j2k = -24.1843956276026
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104325908572608;171.162346601491;_
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104325908572608;171.162346601491;_
2025-11-17T09:54:28.299 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:28.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:28.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:28.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:28.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:28.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:28.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:28.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44427)
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:28.305 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:28.312 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:28.312 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:28.312 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:28.312 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:28.312 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:28.313 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:28.313 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:28.313 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:28.313 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:28.313 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82949417, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325908572608, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.0508664, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.07063, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0253407966158, telescope_dec_j2k=-24.1843956276026, observability=1)
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.992367744445801s
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:34.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:34.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:34.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0525371;-24.256635;50.108535;89.993112;50.08601;90.12017;13.0723;2460996.82956374;9.90949639;1.3;_
2025-11-17T09:54:34.307 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.0525371;-24.256635;50.108535;89.993112;50.08601;90.12017;13.0723;2460996.82956374;9.90949639;1.3;_
2025-11-17T09:54:34.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:34.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:34.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:34.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:34.308 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:34.309 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.0525371, teldec = -24.256635
2025-11-17T09:54:34.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0525371 -24.256635
2025-11-17T09:54:34.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0525371 -24.256635
2025-11-17T09:54:34.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0525371 -24.256635
2025-11-17T09:54:34.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0525371;-24.256635;50.108535;89.993112;50.08601;90.12017;13.0723;2460996.82956376;9.90949639;1.3;_16.0270105216917 -24.1844491693392
2025-11-17T09:54:34.310 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.0270105216917     dec_j2k = -24.1844491693392
2025-11-17T09:54:34.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:34.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:34.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104325988796494;171.162362694745;_
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104325988796494;171.162362694745;_
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:34.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:34.312 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41303)
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:34.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:34.321 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:34.321 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:34.322 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:34.322 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82956374, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325988796494, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.0525371, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.0723, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0270105216917, telescope_dec_j2k=-24.1844491693392, observability=1)
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Status age = 4.33926248550415s
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:38.661 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:38.662 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:38.663 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 17;16.0537596;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07352;2460996.82961416;9.91071556;1.3;_
2025-11-17T09:54:38.663 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response 17;16.0537596;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07352;2460996.82961416;9.91071556;1.3;_
2025-11-17T09:54:38.663 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:38.663 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:38.663 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:38.664 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:38.664 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:38.664 [INFO] [Thread-67019 (handle)] [driver.py] [get_status()] Telra = 16.0537596, teldec = -24.256635
2025-11-17T09:54:38.664 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0537596 -24.256635
2025-11-17T09:54:38.664 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0537596 -24.256635
2025-11-17T09:54:38.665 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0537596 -24.256635
2025-11-17T09:54:38.665 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 17;16.0537596;-24.256635;50.108535;89.993112;50.08601;90.12017;13.07352;2460996.82961418;9.91071556;1.3;_16.0282323087125 -24.1844883562879
2025-11-17T09:54:38.665 [INFO] [Thread-67019 (handle)] [driver.py] [get_status()] ra_j2k = 16.0282323087125     dec_j2k = -24.1844883562879
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 140;0.104325828348722;171.162351965909;_
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response 140;0.104325828348722;171.162351965909;_
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:38.666 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:38.667 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:38.667 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:38.667 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:38.667 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:38.667 [DEBUG] [Thread-67019 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:38.668 [DEBUG] [Thread-67019 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37773)
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:38.671 [DEBUG] [Thread-67019 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:38.679 [DEBUG] [Thread-67019 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:38.680 [DEBUG] [Thread-67019 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:38.680 [DEBUG] [Thread-67019 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:38.680 [INFO] [Thread-67019 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82961416, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104325828348722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108535, telescope_az=89.993112, telescope_ra=16.0537596, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.07352, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0282323087125, telescope_dec_j2k=-24.1844883562879, observability=1)
2025-11-17T09:54:47.215 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:47.215 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:47.215 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:47.215 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:47.215 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:47.216 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:54:47.217 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:54:47.218 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Status age = 18.034448623657227s
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:54:56.714 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:54:56.715 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:54:56.716 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 17;16.0587828;-24.256635;50.108534;89.993112;50.08601;90.12017;13.07855;2460996.8298231;9.915725;1.3;_
2025-11-17T09:54:56.716 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response 17;16.0587828;-24.256635;50.108534;89.993112;50.08601;90.12017;13.07855;2460996.8298231;9.915725;1.3;_
2025-11-17T09:54:56.716 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:54:56.716 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:54:56.717 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:54:56.717 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:56.717 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:54:56.718 [INFO] [Thread-67020 (handle)] [driver.py] [get_status()] Telra = 16.0587828, teldec = -24.256635
2025-11-17T09:54:56.718 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0587828 -24.256635
2025-11-17T09:54:56.718 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0587828 -24.256635
2025-11-17T09:54:56.718 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0587828 -24.256635
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 17;16.0587828;-24.256635;50.108534;89.993112;50.08601;90.12017;13.07855;2460996.82982314;9.915725;1.3;_16.0332525826722 -24.1846494525938
2025-11-17T09:54:56.719 [INFO] [Thread-67020 (handle)] [driver.py] [get_status()] ra_j2k = 16.0332525826722     dec_j2k = -24.1846494525938
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 140;0.10432679103535;171.162351965909;_
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response 140;0.10432679103535;171.162351965909;_
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:56.719 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:54:56.720 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:54:56.721 [DEBUG] [Thread-67020 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:56.721 [DEBUG] [Thread-67020 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:54:56.721 [DEBUG] [Thread-67020 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:54:56.724 [DEBUG] [Thread-67020 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42789)
2025-11-17T09:54:56.725 [DEBUG] [Thread-67020 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:54:56.725 [DEBUG] [Thread-67020 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:54:56.725 [DEBUG] [Thread-67020 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:54:56.725 [DEBUG] [Thread-67020 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:54:56.725 [DEBUG] [Thread-67020 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:54:56.732 [DEBUG] [Thread-67020 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:54:56.732 [INFO] [Thread-67020 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8298231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432679103535, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.0587828, telescope_dec=-24.256635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.07855, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0332525826722, telescope_dec_j2k=-24.1846494525938, observability=1)
2025-11-17T09:55:01.761 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:01.761 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Status age = 5.029311418533325s
2025-11-17T09:55:01.761 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:01.761 [DEBUG] [Thread-67021 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:01.762 [DEBUG] [Thread-67021 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:01.762 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:01.762 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:01.762 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:01.763 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:01.764 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:01.764 [DEBUG] [Thread-67021 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:01.765 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:01.765 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:01.765 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:01.765 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:01.766 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 17;16.0602031;-24.256634;50.108534;89.993112;50.08601;90.12017;13.07997;2460996.82988155;9.91714139;1.3;_
2025-11-17T09:55:01.767 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response 17;16.0602031;-24.256634;50.108534;89.993112;50.08601;90.12017;13.07997;2460996.82988155;9.91714139;1.3;_
2025-11-17T09:55:01.767 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:01.767 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:01.768 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:01.769 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:01.769 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:01.769 [INFO] [Thread-67021 (handle)] [driver.py] [get_status()] Telra = 16.0602031, teldec = -24.256634
2025-11-17T09:55:01.769 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0602031 -24.256634
2025-11-17T09:55:01.769 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0602031 -24.256634
2025-11-17T09:55:01.769 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0602031 -24.256634
2025-11-17T09:55:01.772 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 17;16.0602031;-24.256634;50.108534;89.993112;50.08601;90.12017;13.07997;2460996.8298816;9.91714139;1.3;_16.0346720565507 -24.1846940252422
2025-11-17T09:55:01.772 [INFO] [Thread-67021 (handle)] [driver.py] [get_status()] ra_j2k = 16.0346720565507     dec_j2k = -24.1846940252422
2025-11-17T09:55:01.773 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:01.773 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:01.774 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 140;0.104327071818949;171.162351965909;_
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response 140;0.104327071818949;171.162351965909;_
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:01.775 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:01.776 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:01.776 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:01.776 [DEBUG] [Thread-67021 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:01.776 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:01.776 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:01.777 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:01.779 [DEBUG] [Thread-67021 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:01.779 [DEBUG] [Thread-67021 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:01.779 [DEBUG] [Thread-67021 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52613)
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:01.782 [DEBUG] [Thread-67021 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:01.787 [DEBUG] [Thread-67021 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:01.787 [DEBUG] [Thread-67021 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:01.787 [DEBUG] [Thread-67021 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:01.787 [DEBUG] [Thread-67021 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:01.787 [DEBUG] [Thread-67021 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:01.788 [DEBUG] [Thread-67021 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:01.788 [DEBUG] [Thread-67021 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:01.788 [DEBUG] [Thread-67021 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:01.788 [DEBUG] [Thread-67021 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:55:01.788 [INFO] [Thread-67021 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.82988155, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327071818949, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.0602031, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.07997, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0346720565507, telescope_dec_j2k=-24.1846940252422, observability=1)
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.922448873519897s
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:13.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:13.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:13.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0635135;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08328;2460996.83001983;9.92044278;1.3;_
2025-11-17T09:55:13.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.0635135;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08328;2460996.83001983;9.92044278;1.3;_
2025-11-17T09:55:13.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:13.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:13.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:13.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:13.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:13.714 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.0635135, teldec = -24.256634
2025-11-17T09:55:13.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.0635135 -24.256634
2025-11-17T09:55:13.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.0635135 -24.256634
2025-11-17T09:55:13.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0635135 -24.256634
2025-11-17T09:55:13.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0635135;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08328;2460996.83001985;9.92044278;1.3;_16.0379805324266 -24.184800284044
2025-11-17T09:55:13.715 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.0379805324266     dec_j2k = -24.184800284044
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104327152042835;171.162351965909;_
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104327152042835;171.162351965909;_
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:13.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:13.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:13.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:13.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:13.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:13.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:13.721 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58807)
2025-11-17T09:55:13.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:13.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:13.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:13.722 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:13.722 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:13.729 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:55:13.729 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83001983, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327152042835, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.0635135, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.08328, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0379805324266, telescope_dec_j2k=-24.184800284044, observability=1)
2025-11-17T09:55:13.729 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.435433864593506 seconds ago
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.0611753463745117s
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:14.791 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0638224;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08359;2460996.83003231;9.92075083;1.3;_
2025-11-17T09:55:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.0638224;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08359;2460996.83003231;9.92075083;1.3;_
2025-11-17T09:55:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:14.792 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:14.793 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.0638224, teldec = -24.256634
2025-11-17T09:55:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0638224 -24.256634
2025-11-17T09:55:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0638224 -24.256634
2025-11-17T09:55:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0638224 -24.256634
2025-11-17T09:55:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.0638224;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08359;2460996.83003234;9.92075083;1.3;_16.0382892530099 -24.1848102020633
2025-11-17T09:55:14.795 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.0382892530099     dec_j2k = -24.1848102020633
2025-11-17T09:55:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104326831147293;171.162362694745;_
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104326831147293;171.162362694745;_
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:55:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:55:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:55:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55291)
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:14.801 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:14.808 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:55:14.809 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83003231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104326831147293, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.0638224, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.08359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:54:21.199082', telescope_ra_j2k=16.0382892530099, telescope_dec_j2k=-24.1848102020633, observability=1)
2025-11-17T09:55:14.828 [DEBUG] [Thread-67022 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:14.828 [DEBUG] [Thread-67022 (handle)] [server.py] [get_status()] Status age = 0.019371747970581055s
2025-11-17T09:55:14.828 [DEBUG] [Thread-67022 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.019371747970581055
2025-11-17T09:55:21.341 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:21.342 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:21.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:21.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:21.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:21.343 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:21.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:21.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:21.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:21.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:21.344 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:55:21.344 [INFO] [ThreadPoolExecutor-2633_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:55:21.344 [INFO] [ThreadPoolExecutor-2633_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:55:28.373 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:55:28
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.564447164535522s
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:28.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:28.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:28.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0676133;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08738;2460996.83018953;9.92453139;1.3;_
2025-11-17T09:55:28.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0676133;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08738;2460996.83018953;9.92453139;1.3;_
2025-11-17T09:55:28.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:28.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:28.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:28.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:28.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:28.376 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0676133, teldec = -24.256634
2025-11-17T09:55:28.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0676133 -24.256634
2025-11-17T09:55:28.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0676133 -24.256634
2025-11-17T09:55:28.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0676133 -24.256634
2025-11-17T09:55:28.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0676133;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08738;2460996.83018955;9.92453139;1.3;_16.0420779529282 -24.1849319574144
2025-11-17T09:55:28.377 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0420779529282     dec_j2k = -24.1849319574144
2025-11-17T09:55:28.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:28.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:28.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104327432826435;171.162351965909;_
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104327432826435;171.162351965909;_
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:28.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:28.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:28.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:28.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:28.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44495)
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:28.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:28.393 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:28.393 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:28.393 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:28.394 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:55:28.394 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83018953, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327432826435, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.0676133, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.08738, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.0420779529282, telescope_dec_j2k=-24.1849319574144, observability=1)
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Status age = 4.497457265853882s
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:32.891 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:32.892 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:32.892 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:32.893 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:32.894 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 17;16.068864;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08863;2460996.83024183;9.92577861;1.3;_
2025-11-17T09:55:32.894 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response 17;16.068864;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08863;2460996.83024183;9.92577861;1.3;_
2025-11-17T09:55:32.894 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:32.894 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:32.894 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:32.895 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:32.895 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:32.895 [INFO] [Thread-67023 (handle)] [driver.py] [get_status()] Telra = 16.068864, teldec = -24.256634
2025-11-17T09:55:32.895 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] UnCookCoordinates 16.068864 -24.256634
2025-11-17T09:55:32.895 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.068864 -24.256634
2025-11-17T09:55:32.895 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.068864 -24.256634
2025-11-17T09:55:32.896 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 17;16.068864;-24.256634;50.108534;89.993112;50.08601;90.12017;13.08863;2460996.83024185;9.92577861;1.3;_16.0433279277907 -24.1849721429008
2025-11-17T09:55:32.896 [INFO] [Thread-67023 (handle)] [driver.py] [get_status()] ra_j2k = 16.0433279277907     dec_j2k = -24.1849721429008
2025-11-17T09:55:32.896 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:32.896 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:32.896 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 140;0.104327312490606;171.162357330327;_
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response 140;0.104327312490606;171.162357330327;_
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:32.897 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:32.898 [DEBUG] [Thread-67023 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33055)
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:32.900 [DEBUG] [Thread-67023 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:32.907 [DEBUG] [Thread-67023 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:32.907 [DEBUG] [Thread-67023 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:32.907 [DEBUG] [Thread-67023 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:32.907 [DEBUG] [Thread-67023 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:32.907 [DEBUG] [Thread-67023 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:32.908 [DEBUG] [Thread-67023 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:32.908 [DEBUG] [Thread-67023 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:32.908 [DEBUG] [Thread-67023 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:32.908 [DEBUG] [Thread-67023 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:55:32.908 [INFO] [Thread-67023 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83024183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327312490606, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108534, telescope_az=89.993112, telescope_ra=16.068864, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.08863, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.0433279277907, telescope_dec_j2k=-24.1849721429008, observability=1)
2025-11-17T09:55:33.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:33.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5079271793365479s
2025-11-17T09:55:33.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5079271793365479
2025-11-17T09:55:42.218 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.218 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.218 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:42.218 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:42.218 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:55:42.219 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:42.220 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:42.221 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:55:42.222 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:42.223 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Park
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:55:42.224 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:55:42.225 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 29;16.0714605;-24.256634;50.108534;89.993112;50.08601;90.12017;13.09122;2460996.83034983;9.92836806;1.3;_Park Command Successful
2025-11-17T09:55:43.226 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:55:43.226 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:55:43.226 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:55:43.226 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:55:43.227 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:55:44.227 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:55:44.227 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:55:44.227 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:55:44.228 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:55:44.228 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:55:45.228 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:55:45.228 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:55:45.228 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:55:45.229 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:55:45.229 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:55:46.229 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:55:46.230 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:55:46.230 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:46.231 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:55:46.232 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:55:46.233 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:47.233 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:47.233 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:47.233 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:47.233 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:47.233 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:55:47.234 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:55:47.235 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:55:47.235 [DEBUG] [ThreadPoolExecutor-2632_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:47.235 [INFO] [ThreadPoolExecutor-2632_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:55:50.958 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:55:50.958 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Status age = 18.05061936378479s
2025-11-17T09:55:50.958 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:55:50.959 [DEBUG] [Thread-67024 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:55:50.959 [DEBUG] [Thread-67024 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:55:50.959 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:55:50.959 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:55:50.959 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:55:50.960 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:55:50.961 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 17;16.0738866;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09365;2460996.83045094;9.9307875;1.3;_
2025-11-17T09:55:50.961 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response 17;16.0738866;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09365;2460996.83045094;9.9307875;1.3;_
2025-11-17T09:55:50.961 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:55:50.961 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:55:50.961 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:55:50.962 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:50.962 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:55:50.962 [INFO] [Thread-67024 (handle)] [driver.py] [get_status()] Telra = 16.0738866, teldec = -24.256634
2025-11-17T09:55:50.962 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0738866 -24.256634
2025-11-17T09:55:50.962 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0738866 -24.256634
2025-11-17T09:55:50.962 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0738866 -24.256634
2025-11-17T09:55:50.963 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 17;16.0738866;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09365;2460996.83045096;9.9307875;1.3;_16.0483476193467 -24.1851335996615
2025-11-17T09:55:50.963 [INFO] [Thread-67024 (handle)] [driver.py] [get_status()] ra_j2k = 16.0483476193467     dec_j2k = -24.1851335996615
2025-11-17T09:55:50.963 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 140;0.104327673498092;171.162368059163;_
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response 140;0.104327673498092;171.162368059163;_
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:50.964 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:55:50.965 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:55:50.966 [DEBUG] [Thread-67024 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:50.966 [DEBUG] [Thread-67024 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:55:50.966 [DEBUG] [Thread-67024 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58163)
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:55:50.970 [DEBUG] [Thread-67024 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:55:50.977 [DEBUG] [Thread-67024 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:55:50.977 [INFO] [Thread-67024 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83045094, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327673498092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0738866, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.09365, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.0483476193467, telescope_dec_j2k=-24.1851335996615, observability=1)
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Status age = 10.843308925628662s
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:01.821 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:01.822 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 17;16.0769246;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09669;2460996.83057664;9.93381722;1.3;_
2025-11-17T09:56:01.822 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response 17;16.0769246;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09669;2460996.83057664;9.93381722;1.3;_
2025-11-17T09:56:01.822 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:01.822 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:01.823 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:01.823 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:01.824 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:01.824 [INFO] [Thread-67025 (handle)] [driver.py] [get_status()] Telra = 16.0769246, teldec = -24.256634
2025-11-17T09:56:01.824 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0769246 -24.256634
2025-11-17T09:56:01.824 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0769246 -24.256634
2025-11-17T09:56:01.824 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0769246 -24.256634
2025-11-17T09:56:01.825 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 17;16.0769246;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09669;2460996.83057668;9.93381722;1.3;_16.051383862916 -24.1852313203971
2025-11-17T09:56:01.825 [INFO] [Thread-67025 (handle)] [driver.py] [get_status()] ra_j2k = 16.051383862916     dec_j2k = -24.1852313203971
2025-11-17T09:56:01.825 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:01.825 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:01.825 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 140;0.104327713610034;171.162357330327;_
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response 140;0.104327713610034;171.162357330327;_
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:01.826 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:01.827 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:01.827 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:01.827 [DEBUG] [Thread-67025 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:01.827 [DEBUG] [Thread-67025 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:01.827 [DEBUG] [Thread-67025 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44537)
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:01.829 [DEBUG] [Thread-67025 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:01.837 [DEBUG] [Thread-67025 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:01.837 [INFO] [Thread-67025 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83057664, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327713610034, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0769246, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.09669, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.051383862916, telescope_dec_j2k=-24.1852313203971, observability=1)
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Status age = 7.24566388130188s
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:09.083 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:09.084 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:09.085 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 17;16.0789507;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09871;2460996.83066071;9.93583778;1.3;_
2025-11-17T09:56:09.085 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response 17;16.0789507;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09871;2460996.83066071;9.93583778;1.3;_
2025-11-17T09:56:09.085 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:09.085 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:09.085 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:09.086 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:09.086 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:09.086 [INFO] [Thread-67026 (handle)] [driver.py] [get_status()] Telra = 16.0789507, teldec = -24.256634
2025-11-17T09:56:09.086 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0789507 -24.256634
2025-11-17T09:56:09.086 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0789507 -24.256634
2025-11-17T09:56:09.086 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0789507 -24.256634
2025-11-17T09:56:09.087 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 17;16.0789507;-24.256634;50.108533;89.993112;50.08601;90.12017;13.09871;2460996.83066073;9.93583778;1.3;_16.0534087926879 -24.1852965177481
2025-11-17T09:56:09.087 [INFO] [Thread-67026 (handle)] [driver.py] [get_status()] ra_j2k = 16.0534087926879     dec_j2k = -24.1852965177481
2025-11-17T09:56:09.087 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 140;0.104327753721977;171.162357330327;_
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response 140;0.104327753721977;171.162357330327;_
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:09.088 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:09.089 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:09.089 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:09.089 [DEBUG] [Thread-67026 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:09.089 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:09.090 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:09.090 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:09.090 [DEBUG] [Thread-67026 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:09.090 [DEBUG] [Thread-67026 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:09.090 [DEBUG] [Thread-67026 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:09.097 [DEBUG] [Thread-67026 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35735)
2025-11-17T09:56:09.098 [DEBUG] [Thread-67026 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:09.098 [DEBUG] [Thread-67026 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:09.098 [DEBUG] [Thread-67026 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:09.098 [DEBUG] [Thread-67026 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:09.098 [DEBUG] [Thread-67026 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:09.105 [DEBUG] [Thread-67026 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:09.105 [INFO] [Thread-67026 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83066071, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104327753721977, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0789507, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.09871, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.0534087926879, telescope_dec_j2k=-24.1852965177481, observability=1)
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.683944940567017s
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:13.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.080239;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1;2460996.83071516;9.9371225;1.3;_
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.080239;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1;2460996.83071516;9.9371225;1.3;_
2025-11-17T09:56:13.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:13.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:13.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:13.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:13.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:13.792 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.080239, teldec = -24.256634
2025-11-17T09:56:13.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.080239 -24.256634
2025-11-17T09:56:13.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.080239 -24.256634
2025-11-17T09:56:13.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.080239 -24.256634
2025-11-17T09:56:13.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.080239;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1;2460996.8307152;9.9371225;1.3;_16.0546963490826 -24.1853379842385
2025-11-17T09:56:13.793 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.0546963490826     dec_j2k = -24.1853379842385
2025-11-17T09:56:13.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:13.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:13.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104328275177234;171.162346601491;_
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104328275177234;171.162346601491;_
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:13.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:13.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:13.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:13.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:13.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43321)
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:13.799 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:13.806 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:13.807 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:56:13.807 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83071516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104328275177234, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.080239, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.1, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:55:21.341428', telescope_ra_j2k=16.0546963490826, telescope_dec_j2k=-24.1853379842385, observability=1)
2025-11-17T09:56:13.807 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43391513824463 seconds ago
2025-11-17T09:56:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.9927382469177246s
2025-11-17T09:56:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9927382469177246
2025-11-17T09:56:21.485 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:21.485 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:21.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:21.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:21.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:21.486 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:21.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:21.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:21.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:21.487 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:56:21.487 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:21.487 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:21.487 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:21.487 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:21.487 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:56:21.488 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:56:21.489 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:22.489 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:22.489 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:22.489 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:22.489 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:22.489 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:56:22.490 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:22.491 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:22.492 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:22.492 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:22.492 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:22.492 [DEBUG] [ThreadPoolExecutor-2634_0] [payload.py] [to_registers()] [0]
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57215)
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:22.495 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:22.502 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:22.502 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:56:22.502 [DEBUG] [ThreadPoolExecutor-2634_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:56:22.502 [DEBUG] [ThreadPoolExecutor-2634_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:56:22.503 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:22.503 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:22.503 [DEBUG] [ThreadPoolExecutor-2634_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Status age = 13.344356298446655s
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:27.151 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:27.152 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:27.153 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 17;16.0839672;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10373;2460996.83086983;9.94084056;1.3;_
2025-11-17T09:56:27.153 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response 17;16.0839672;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10373;2460996.83086983;9.94084056;1.3;_
2025-11-17T09:56:27.153 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:27.153 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:27.153 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:27.154 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:27.154 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:27.154 [INFO] [Thread-67027 (handle)] [driver.py] [get_status()] Telra = 16.0839672, teldec = -24.256634
2025-11-17T09:56:27.154 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0839672 -24.256634
2025-11-17T09:56:27.154 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0839672 -24.256634
2025-11-17T09:56:27.154 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0839672 -24.256634
2025-11-17T09:56:27.155 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 17;16.0839672;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10373;2460996.83086985;9.94084056;1.3;_16.0584223993019 -24.1854580301987
2025-11-17T09:56:27.155 [INFO] [Thread-67027 (handle)] [driver.py] [get_status()] ra_j2k = 16.0584223993019     dec_j2k = -24.1854580301987
2025-11-17T09:56:27.155 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:27.155 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:27.155 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 140;0.104328555960833;171.162362694745;_
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response 140;0.104328555960833;171.162362694745;_
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:27.156 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:27.157 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:27.158 [DEBUG] [Thread-67027 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:27.159 [DEBUG] [Thread-67027 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:27.159 [DEBUG] [Thread-67027 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:27.164 [DEBUG] [Thread-67027 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46893)
2025-11-17T09:56:27.165 [DEBUG] [Thread-67027 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:27.165 [DEBUG] [Thread-67027 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:27.165 [DEBUG] [Thread-67027 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:27.165 [DEBUG] [Thread-67027 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:27.165 [DEBUG] [Thread-67027 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:27.172 [DEBUG] [Thread-67027 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:27.172 [INFO] [Thread-67027 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83086983, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104328555960833, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0839672, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.10373, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0584223993019, telescope_dec_j2k=-24.1854580301987, observability=1)
2025-11-17T09:56:28.454 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:56:28
2025-11-17T09:56:28.454 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:28.454 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.282294750213623s
2025-11-17T09:56:28.454 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:28.454 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:28.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:28.456 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0843327;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1041;2460996.83088491;9.941205;1.3;_
2025-11-17T09:56:28.456 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.0843327;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1041;2460996.83088491;9.941205;1.3;_
2025-11-17T09:56:28.456 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:28.456 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:28.456 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:28.457 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:28.457 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:28.458 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.0843327, teldec = -24.256634
2025-11-17T09:56:28.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0843327 -24.256634
2025-11-17T09:56:28.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0843327 -24.256634
2025-11-17T09:56:28.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0843327 -24.256634
2025-11-17T09:56:28.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.0843327;-24.256634;50.108533;89.993112;50.08601;90.12017;13.1041;2460996.83088493;9.941205;1.3;_16.0587876887154 -24.185469802808
2025-11-17T09:56:28.459 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0587876887154     dec_j2k = -24.185469802808
2025-11-17T09:56:28.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:28.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:28.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10432851584889;171.162357330327;_
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10432851584889;171.162357330327;_
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:28.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:28.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:28.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:28.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:28.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33307)
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:28.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:28.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:28.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:28.474 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:28.474 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:28.475 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:28.475 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:28.475 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:28.475 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:28.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:28.475 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83088491, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10432851584889, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0843327, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.1041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0587876887154, telescope_dec_j2k=-24.185469802808, observability=1)
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.035320043563843s
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:32.510 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:32.511 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:32.511 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0854733;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10524;2460996.83093185;9.9423425;1.3;_
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.0854733;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10524;2460996.83093185;9.9423425;1.3;_
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:32.512 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:32.515 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:32.515 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:32.515 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.0854733, teldec = -24.256634
2025-11-17T09:56:32.515 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0854733 -24.256634
2025-11-17T09:56:32.515 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0854733 -24.256634
2025-11-17T09:56:32.515 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0854733 -24.256634
2025-11-17T09:56:32.516 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.0854733;-24.256634;50.108533;89.993112;50.08601;90.12017;13.10524;2460996.83093189;9.9423425;1.3;_16.0599276317432 -24.1855065453389
2025-11-17T09:56:32.516 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.0599276317432     dec_j2k = -24.1855065453389
2025-11-17T09:56:32.516 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:32.516 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:32.516 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104328756520547;171.162351965909;_
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104328756520547;171.162351965909;_
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:32.517 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:32.518 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:32.518 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:32.518 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:32.518 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:32.518 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:32.519 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:32.519 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:32.519 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:32.519 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54185)
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:32.522 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:32.529 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:32.530 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83093185, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104328756520547, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108533, telescope_az=89.993112, telescope_ra=16.0854733, telescope_dec=-24.256634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.10524, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0599276317432, telescope_dec_j2k=-24.1855065453389, observability=1)
2025-11-17T09:56:45.226 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:56:45.226 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Status age = 12.696805953979492s
2025-11-17T09:56:45.226 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:56:45.226 [DEBUG] [Thread-67028 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:45.226 [DEBUG] [Thread-67028 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:45.227 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:56:45.228 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:56:45.228 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:56:45.228 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:56:45.229 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 17;16.0890088;-24.256633;50.108532;89.993112;50.08601;90.12017;13.10877;2460996.83107903;9.94586833;1.3;_
2025-11-17T09:56:45.229 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response 17;16.0890088;-24.256633;50.108532;89.993112;50.08601;90.12017;13.10877;2460996.83107903;9.94586833;1.3;_
2025-11-17T09:56:45.229 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:56:45.229 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:56:45.229 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:56:45.230 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:45.230 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:56:45.230 [INFO] [Thread-67028 (handle)] [driver.py] [get_status()] Telra = 16.0890088, teldec = -24.256633
2025-11-17T09:56:45.230 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0890088 -24.256633
2025-11-17T09:56:45.230 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0890088 -24.256633
2025-11-17T09:56:45.230 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0890088 -24.256633
2025-11-17T09:56:45.231 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 17;16.0890088;-24.256633;50.108532;89.993112;50.08601;90.12017;13.10877;2460996.83107906;9.94586833;1.3;_16.0634610973958 -24.1856194765702
2025-11-17T09:56:45.231 [INFO] [Thread-67028 (handle)] [driver.py] [get_status()] ra_j2k = 16.0634610973958     dec_j2k = -24.1856194765702
2025-11-17T09:56:45.231 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:56:45.231 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:56:45.231 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 140;0.104328997192204;171.162351965909;_
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response 140;0.104328997192204;171.162351965909;_
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:56:45.232 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:56:45.233 [DEBUG] [Thread-67028 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:45.233 [DEBUG] [Thread-67028 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:56:45.233 [DEBUG] [Thread-67028 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53419)
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:56:45.234 [DEBUG] [Thread-67028 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:56:45.241 [DEBUG] [Thread-67028 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:56:45.242 [INFO] [Thread-67028 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83107903, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104328997192204, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108532, telescope_az=89.993112, telescope_ra=16.0890088, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.10877, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0634610973958, telescope_dec_j2k=-24.1856194765702, observability=1)
2025-11-17T09:56:47.503 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:47.503 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:47.503 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:47.503 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:47.503 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:56:47.504 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:56:47.505 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:56:47.506 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Status age = 16.64053773880005s
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:01.882 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:01.883 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:01.883 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:01.883 [DEBUG] [Thread-67029 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 17;16.0936387;-24.256633;50.108532;89.993111;50.08601;90.12017;13.1134;2460996.83127181;9.95048556;1.3;_
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response 17;16.0936387;-24.256633;50.108532;89.993111;50.08601;90.12017;13.1134;2460996.83127181;9.95048556;1.3;_
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:01.884 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:01.885 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:01.885 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:01.885 [INFO] [Thread-67029 (handle)] [driver.py] [get_status()] Telra = 16.0936387, teldec = -24.256633
2025-11-17T09:57:01.885 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0936387 -24.256633
2025-11-17T09:57:01.886 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0936387 -24.256633
2025-11-17T09:57:01.886 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0936387 -24.256633
2025-11-17T09:57:01.886 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 17;16.0936387;-24.256633;50.108532;89.993111;50.08601;90.12017;13.1134;2460996.83127183;9.95048556;1.3;_16.0680883374154 -24.1857687682854
2025-11-17T09:57:01.887 [INFO] [Thread-67029 (handle)] [driver.py] [get_status()] ra_j2k = 16.0680883374154     dec_j2k = -24.1857687682854
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 140;0.104330040102717;171.162357330327;_
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response 140;0.104330040102717;171.162357330327;_
2025-11-17T09:57:01.887 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:01.888 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:01.888 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:01.888 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:01.888 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:01.889 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:01.889 [DEBUG] [Thread-67029 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:01.889 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:01.889 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:01.889 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:01.890 [DEBUG] [Thread-67029 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:01.890 [DEBUG] [Thread-67029 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:01.890 [DEBUG] [Thread-67029 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:01.891 [DEBUG] [Thread-67029 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43185)
2025-11-17T09:57:01.891 [DEBUG] [Thread-67029 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:01.891 [DEBUG] [Thread-67029 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:01.891 [DEBUG] [Thread-67029 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:01.891 [DEBUG] [Thread-67029 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:01.892 [DEBUG] [Thread-67029 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:01.899 [DEBUG] [Thread-67029 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:01.899 [INFO] [Thread-67029 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83127181, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104330040102717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108532, telescope_az=89.993111, telescope_ra=16.0936387, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.1134, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0680883374154, telescope_dec_j2k=-24.1857687682854, observability=1)
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Status age = 1.4419794082641602s
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:03.341 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:03.342 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:03.343 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 17;16.0940593;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11382;2460996.83128869;9.950905;1.3;_
2025-11-17T09:57:03.343 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response 17;16.0940593;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11382;2460996.83128869;9.950905;1.3;_
2025-11-17T09:57:03.343 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:03.343 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:03.343 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:03.344 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:03.344 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:03.344 [INFO] [Thread-67030 (handle)] [driver.py] [get_status()] Telra = 16.0940593, teldec = -24.256633
2025-11-17T09:57:03.344 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] UnCookCoordinates 16.0940593 -24.256633
2025-11-17T09:57:03.344 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.0940593 -24.256633
2025-11-17T09:57:03.344 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0940593 -24.256633
2025-11-17T09:57:03.345 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 17;16.0940593;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11382;2460996.83128872;9.950905;1.3;_16.068508696014 -24.1857823358355
2025-11-17T09:57:03.345 [INFO] [Thread-67030 (handle)] [driver.py] [get_status()] ra_j2k = 16.068508696014     dec_j2k = -24.1857823358355
2025-11-17T09:57:03.345 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:03.345 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:03.345 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 140;0.104329117528033;171.162362694745;_
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response 140;0.104329117528033;171.162362694745;_
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:03.346 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:03.347 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:03.348 [DEBUG] [Thread-67030 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:03.350 [DEBUG] [Thread-67030 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37481)
2025-11-17T09:57:03.350 [DEBUG] [Thread-67030 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:03.350 [DEBUG] [Thread-67030 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:03.350 [DEBUG] [Thread-67030 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:03.350 [DEBUG] [Thread-67030 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:03.351 [DEBUG] [Thread-67030 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:03.357 [DEBUG] [Thread-67030 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:03.358 [DEBUG] [Thread-67030 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:03.358 [INFO] [Thread-67030 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83128869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104329117528033, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108532, telescope_az=89.993111, telescope_ra=16.0940593, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.11382, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.068508696014, telescope_dec_j2k=-24.1857823358355, observability=1)
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.508985042572021s
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:13.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:13.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:13.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0969839;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11675;2460996.83141052;9.95382167;1.3;_
2025-11-17T09:57:13.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.0969839;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11675;2460996.83141052;9.95382167;1.3;_
2025-11-17T09:57:13.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:13.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:13.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:13.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:13.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:13.871 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.0969839, teldec = -24.256633
2025-11-17T09:57:13.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.0969839 -24.256633
2025-11-17T09:57:13.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.0969839 -24.256633
2025-11-17T09:57:13.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.0969839 -24.256633
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.0969839;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11675;2460996.83141054;9.95382167;1.3;_16.071431618572 -24.1858767005862
2025-11-17T09:57:13.872 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.071431618572     dec_j2k = -24.1858767005862
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104329879654946;171.162357330327;_
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104329879654946;171.162357330327;_
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:13.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:13.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:13.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34197)
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:13.879 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:13.887 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:57:13.887 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83141052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104329879654946, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108532, telescope_az=89.993111, telescope_ra=16.0969839, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.11675, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.071431618572, telescope_dec_j2k=-24.1858767005862, observability=1)
2025-11-17T09:57:13.887 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.4328339099884 seconds ago
2025-11-17T09:57:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8931868076324463s
2025-11-17T09:57:14.780 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8931868076324463
2025-11-17T09:57:21.404 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:21.404 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Status age = 7.517313003540039s
2025-11-17T09:57:21.404 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:21.404 [DEBUG] [Thread-67031 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:21.405 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:21.406 [DEBUG] [Thread-67031 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:21.406 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:21.406 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:21.406 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:21.406 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:21.407 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 17;16.099095;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11886;2460996.83149777;9.95592694;1.3;_
2025-11-17T09:57:21.407 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response 17;16.099095;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11886;2460996.83149777;9.95592694;1.3;_
2025-11-17T09:57:21.407 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:21.407 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:21.407 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:21.408 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:21.408 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:21.408 [INFO] [Thread-67031 (handle)] [driver.py] [get_status()] Telra = 16.099095, teldec = -24.256633
2025-11-17T09:57:21.408 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] UnCookCoordinates 16.099095 -24.256633
2025-11-17T09:57:21.408 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.099095 -24.256633
2025-11-17T09:57:21.408 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.099095 -24.256633
2025-11-17T09:57:21.409 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 17;16.099095;-24.256633;50.108532;89.993111;50.08601;90.12017;13.11886;2460996.83149779;9.95592694;1.3;_16.0735415089387 -24.1859448432745
2025-11-17T09:57:21.409 [INFO] [Thread-67031 (handle)] [driver.py] [get_status()] ra_j2k = 16.0735415089387     dec_j2k = -24.1859448432745
2025-11-17T09:57:21.409 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:21.409 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:21.409 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 140;0.104329398311632;171.162357330327;_
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response 140;0.104329398311632;171.162357330327;_
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:21.410 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:21.411 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:21.412 [DEBUG] [Thread-67031 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:21.412 [DEBUG] [Thread-67031 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:21.412 [DEBUG] [Thread-67031 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38615)
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:21.418 [DEBUG] [Thread-67031 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:21.425 [DEBUG] [Thread-67031 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:21.426 [INFO] [Thread-67031 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83149777, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104329398311632, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108532, telescope_az=89.993111, telescope_ra=16.099095, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.11886, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:56:21.484430', telescope_ra_j2k=16.0735415089387, telescope_dec_j2k=-24.1859448432745, observability=1)
2025-11-17T09:57:21.628 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:21.628 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:21.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:21.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:21.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:21.629 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:21.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:21.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:21.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:21.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:21.630 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:57:21.630 [INFO] [ThreadPoolExecutor-2635_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:57:21.630 [INFO] [ThreadPoolExecutor-2635_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:57:28.535 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:57:28
2025-11-17T09:57:28.535 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.1100099086761475s
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:28.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:28.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1010746;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12084;2460996.8315803;9.95790111;1.3;_
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.1010746;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12084;2460996.8315803;9.95790111;1.3;_
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:28.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:28.538 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.1010746, teldec = -24.256633
2025-11-17T09:57:28.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1010746 -24.256633
2025-11-17T09:57:28.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1010746 -24.256633
2025-11-17T09:57:28.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1010746 -24.256633
2025-11-17T09:57:28.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1010746;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12084;2460996.83158031;9.95790111;1.3;_16.0755199755795 -24.1860087613196
2025-11-17T09:57:28.540 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0755199755795     dec_j2k = -24.1860087613196
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104330160438545;171.162357330327;_
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104330160438545;171.162357330327;_
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:28.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:28.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:28.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:57:28.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:57:28.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35919)
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:28.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:28.555 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:28.555 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8315803, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104330160438545, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.1010746, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.12084, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0755199755795, telescope_dec_j2k=-24.1860087613196, observability=1)
2025-11-17T09:57:31.619 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.0642573833465576s
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:31.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:31.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.101943;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12171;2460996.83161598;9.95876722;1.3;_
2025-11-17T09:57:31.621 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.101943;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12171;2460996.83161598;9.95876722;1.3;_
2025-11-17T09:57:31.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:31.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:31.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:31.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:31.622 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:31.622 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.101943, teldec = -24.256633
2025-11-17T09:57:31.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.101943 -24.256633
2025-11-17T09:57:31.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.101943 -24.256633
2025-11-17T09:57:31.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.101943 -24.256633
2025-11-17T09:57:31.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.101943;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12171;2460996.83161601;9.95876722;1.3;_16.0763878786868 -24.1860368066236
2025-11-17T09:57:31.623 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.0763878786868     dec_j2k = -24.1860368066236
2025-11-17T09:57:31.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:31.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104329438423575;171.162368059163;_
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104329438423575;171.162368059163;_
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:31.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:31.625 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:31.625 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:31.625 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:31.625 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:31.625 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:31.626 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:31.626 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:31.626 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:31.626 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40559)
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:31.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:31.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:31.637 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:31.637 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:31.637 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:31.637 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83161598, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104329438423575, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.101943, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.12171, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0763878786868, telescope_dec_j2k=-24.1860368066236, observability=1)
2025-11-17T09:57:39.472 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:39.472 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Status age = 7.835697174072266s
2025-11-17T09:57:39.472 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:39.472 [DEBUG] [Thread-67032 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:39.473 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 17;16.1041187;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12388;2460996.83170688;9.96093694;1.3;_
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response 17;16.1041187;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12388;2460996.83170688;9.96093694;1.3;_
2025-11-17T09:57:39.474 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:39.475 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:39.475 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:39.475 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:39.476 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:39.476 [INFO] [Thread-67032 (handle)] [driver.py] [get_status()] Telra = 16.1041187, teldec = -24.256633
2025-11-17T09:57:39.476 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1041187 -24.256633
2025-11-17T09:57:39.476 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1041187 -24.256633
2025-11-17T09:57:39.476 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1041187 -24.256633
2025-11-17T09:57:39.477 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 17;16.1041187;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12388;2460996.83170691;9.96093694;1.3;_16.0785623345234 -24.1861070879651
2025-11-17T09:57:39.477 [INFO] [Thread-67032 (handle)] [driver.py] [get_status()] ra_j2k = 16.0785623345234     dec_j2k = -24.1861070879651
2025-11-17T09:57:39.477 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:39.477 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:39.477 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 140;0.104329638983289;171.162357330327;_
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response 140;0.104329638983289;171.162357330327;_
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:39.478 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:39.479 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:39.480 [DEBUG] [Thread-67032 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:39.480 [DEBUG] [Thread-67032 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:39.480 [DEBUG] [Thread-67032 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:39.484 [DEBUG] [Thread-67032 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55443)
2025-11-17T09:57:39.484 [DEBUG] [Thread-67032 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:39.484 [DEBUG] [Thread-67032 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:39.485 [DEBUG] [Thread-67032 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:39.485 [DEBUG] [Thread-67032 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:39.485 [DEBUG] [Thread-67032 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:39.492 [DEBUG] [Thread-67032 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:39.492 [INFO] [Thread-67032 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83170688, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104329638983289, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.1041187, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.12388, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0785623345234, telescope_dec_j2k=-24.1861070879651, observability=1)
2025-11-17T09:57:42.506 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.506 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.506 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:42.506 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:42.506 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:57:42.507 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:42.508 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:42.509 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:57:42.510 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:42.511 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Park
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:57:42.512 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:57:42.513 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 29;16.104978;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12474;2460996.83174205;9.96179389;1.3;_Park Command Successful
2025-11-17T09:57:43.513 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:57:43.513 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:57:43.513 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:57:43.514 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:57:43.514 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:57:44.514 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:57:44.514 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:57:44.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:57:44.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:57:44.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:57:45.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:57:45.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:57:45.515 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:57:45.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:57:45.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:46.516 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:46.517 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:46.517 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:46.517 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:57:46.518 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:57:46.519 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:47.519 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:47.519 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:47.519 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:47.519 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:47.519 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:57:47.520 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:57:47.521 [DEBUG] [ThreadPoolExecutor-2634_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:47.521 [INFO] [ThreadPoolExecutor-2634_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:57:57.589 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:57:57.589 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Status age = 18.09746265411377s
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:57:57.590 [DEBUG] [Thread-67033 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 17;16.1091539;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12892;2460996.83191656;9.96595833;1.3;_
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response 17;16.1091539;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12892;2460996.83191656;9.96595833;1.3;_
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:57:57.591 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:57:57.592 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:57.592 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:57:57.592 [INFO] [Thread-67033 (handle)] [driver.py] [get_status()] Telra = 16.1091539, teldec = -24.256633
2025-11-17T09:57:57.592 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1091539 -24.256633
2025-11-17T09:57:57.592 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1091539 -24.256633
2025-11-17T09:57:57.592 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1091539 -24.256633
2025-11-17T09:57:57.593 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 17;16.1091539;-24.256633;50.108531;89.993111;50.08601;90.12017;13.12892;2460996.83191659;9.96595833;1.3;_16.0835946593262 -24.1862698285599
2025-11-17T09:57:57.593 [INFO] [Thread-67033 (handle)] [driver.py] [get_status()] ra_j2k = 16.0835946593262     dec_j2k = -24.1862698285599
2025-11-17T09:57:57.593 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:57:57.593 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:57:57.593 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 140;0.104330481334088;171.162351965909;_
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response 140;0.104330481334088;171.162351965909;_
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:57.594 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:57.595 [DEBUG] [Thread-67033 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:57:57.596 [DEBUG] [Thread-67033 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58665)
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:57:57.600 [DEBUG] [Thread-67033 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:57:57.607 [DEBUG] [Thread-67033 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:57:57.607 [DEBUG] [Thread-67033 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:57.607 [DEBUG] [Thread-67033 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:57:57.608 [DEBUG] [Thread-67033 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:57:57.608 [INFO] [Thread-67033 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83191656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104330481334088, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.1091539, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.12892, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0835946593262, telescope_dec_j2k=-24.1862698285599, observability=1)
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Status age = 4.327329397201538s
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:01.935 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:01.936 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:01.937 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 17;16.1103884;-24.256633;50.108531;89.993111;50.08601;90.12017;13.13015;2460996.83196685;9.96718944;1.3;_
2025-11-17T09:58:01.937 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response 17;16.1103884;-24.256633;50.108531;89.993111;50.08601;90.12017;13.13015;2460996.83196685;9.96718944;1.3;_
2025-11-17T09:58:01.937 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:01.937 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:01.937 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:01.938 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:01.938 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:01.938 [INFO] [Thread-67034 (handle)] [driver.py] [get_status()] Telra = 16.1103884, teldec = -24.256633
2025-11-17T09:58:01.938 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1103884 -24.256633
2025-11-17T09:58:01.938 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1103884 -24.256633
2025-11-17T09:58:01.938 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1103884 -24.256633
2025-11-17T09:58:01.939 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 17;16.1103884;-24.256633;50.108531;89.993111;50.08601;90.12017;13.13015;2460996.83196689;9.96718944;1.3;_16.0848284552893 -24.1863097473122
2025-11-17T09:58:01.939 [INFO] [Thread-67034 (handle)] [driver.py] [get_status()] ra_j2k = 16.0848284552893     dec_j2k = -24.1863097473122
2025-11-17T09:58:01.939 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:01.939 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:01.939 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 140;0.104330561557974;171.162357330327;_
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response 140;0.104330561557974;171.162357330327;_
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:01.940 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:01.941 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:01.942 [DEBUG] [Thread-67034 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:01.942 [DEBUG] [Thread-67034 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:01.942 [DEBUG] [Thread-67034 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32821)
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:01.943 [DEBUG] [Thread-67034 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:01.950 [DEBUG] [Thread-67034 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:01.951 [DEBUG] [Thread-67034 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:01.951 [INFO] [Thread-67034 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83196685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104330561557974, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.1103884, telescope_dec=-24.256633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13015, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0848284552893, telescope_dec_j2k=-24.1863097473122, observability=1)
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.996135711669922s
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:13.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1137269;-24.256632;50.108531;89.993111;50.08601;90.12017;13.13349;2460996.83210588;9.97051889;1.3;_
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1137269;-24.256632;50.108531;89.993111;50.08601;90.12017;13.13349;2460996.83210588;9.97051889;1.3;_
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:13.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:13.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:13.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:13.949 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1137269, teldec = -24.256632
2025-11-17T09:58:13.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1137269 -24.256632
2025-11-17T09:58:13.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1137269 -24.256632
2025-11-17T09:58:13.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1137269 -24.256632
2025-11-17T09:58:13.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1137269;-24.256632;50.108531;89.993111;50.08601;90.12017;13.13349;2460996.8321059;9.97051889;1.3;_16.0881650532612 -24.1864167383699
2025-11-17T09:58:13.950 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.0881650532612     dec_j2k = -24.1864167383699
2025-11-17T09:58:13.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:13.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:13.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:13.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104330481334088;171.162357330327;_
2025-11-17T09:58:13.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104330481334088;171.162357330327;_
2025-11-17T09:58:13.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:13.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:13.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:13.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:13.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:13.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:13.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35151)
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:13.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:13.967 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:58:13.968 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83210588, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104330481334088, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108531, telescope_az=89.993111, telescope_ra=16.1137269, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0881650532612, telescope_dec_j2k=-24.1864167383699, observability=1)
2025-11-17T09:58:13.968 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43225145339966 seconds ago
2025-11-17T09:58:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8262827396392822s
2025-11-17T09:58:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8262827396392822
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Status age = 1.7065441608428955s
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:15.674 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:15.675 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:15.676 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 17;16.1142035;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13397;2460996.83212587;9.97099417;1.3;_
2025-11-17T09:58:15.676 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response 17;16.1142035;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13397;2460996.83212587;9.97099417;1.3;_
2025-11-17T09:58:15.676 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:15.676 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:15.676 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:15.677 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:15.677 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:15.677 [INFO] [Thread-67035 (handle)] [driver.py] [get_status()] Telra = 16.1142035, teldec = -24.256632
2025-11-17T09:58:15.677 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1142035 -24.256632
2025-11-17T09:58:15.677 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1142035 -24.256632
2025-11-17T09:58:15.677 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1142035 -24.256632
2025-11-17T09:58:15.678 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 17;16.1142035;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13397;2460996.8321259;9.97099417;1.3;_16.0886413819139 -24.1864321594851
2025-11-17T09:58:15.678 [INFO] [Thread-67035 (handle)] [driver.py] [get_status()] ra_j2k = 16.0886413819139     dec_j2k = -24.1864321594851
2025-11-17T09:58:15.678 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:15.678 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:15.678 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 140;0.104331163237116;171.162362694745;_
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response 140;0.104331163237116;171.162362694745;_
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:15.679 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:15.680 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:15.681 [DEBUG] [Thread-67035 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:15.681 [DEBUG] [Thread-67035 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:15.681 [DEBUG] [Thread-67035 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38351)
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:15.685 [DEBUG] [Thread-67035 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:15.692 [DEBUG] [Thread-67035 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:15.692 [INFO] [Thread-67035 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83212587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331163237116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1142035, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13397, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:57:21.627496', telescope_ra_j2k=16.0886413819139, telescope_dec_j2k=-24.1864321594851, observability=1)
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:21.772 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:21.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:21.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:21.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:21.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:21.773 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T09:58:21.774 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T09:58:21.775 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T09:58:21.775 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:22.775 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:58:22.776 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:22.777 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:22.778 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:22.778 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:22.778 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:22.778 [DEBUG] [ThreadPoolExecutor-2636_0] [payload.py] [to_registers()] [0]
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36989)
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:22.782 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:22.789 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:22.790 [DEBUG] [ThreadPoolExecutor-2636_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:28.616 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:58:28
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.92365574836731s
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:28.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1177984;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13756;2460996.83227566;9.97457917;1.3;_
2025-11-17T09:58:28.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.1177984;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13756;2460996.83227566;9.97457917;1.3;_
2025-11-17T09:58:28.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:28.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:28.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:28.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:28.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:28.619 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.1177984, teldec = -24.256632
2025-11-17T09:58:28.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1177984 -24.256632
2025-11-17T09:58:28.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1177984 -24.256632
2025-11-17T09:58:28.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1177984 -24.256632
2025-11-17T09:58:28.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1177984;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13756;2460996.83227569;9.97457917;1.3;_16.0922342368734 -24.1865485137211
2025-11-17T09:58:28.620 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.0922342368734     dec_j2k = -24.1865485137211
2025-11-17T09:58:28.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:28.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:28.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104331243461001;171.162357330327;_
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104331243461001;171.162357330327;_
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:28.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:28.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:28.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:28.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:28.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34737)
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:28.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:28.635 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:28.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:28.636 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83227566, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331243461001, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1177984, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13756, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.0922342368734, telescope_dec_j2k=-24.1865485137211, observability=1)
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.0927507877349854s
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:30.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:30.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:30.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1184042;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13817;2460996.83230012;9.97518333;1.3;_
2025-11-17T09:58:30.730 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.1184042;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13817;2460996.83230012;9.97518333;1.3;_
2025-11-17T09:58:30.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:30.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:30.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:30.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:30.731 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:30.731 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.1184042, teldec = -24.256632
2025-11-17T09:58:30.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1184042 -24.256632
2025-11-17T09:58:30.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1184042 -24.256632
2025-11-17T09:58:30.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1184042 -24.256632
2025-11-17T09:58:30.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1184042;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13817;2460996.83230014;9.97518333;1.3;_16.0928396925423 -24.1865681275506
2025-11-17T09:58:30.733 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.0928396925423     dec_j2k = -24.1865681275506
2025-11-17T09:58:30.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:30.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:30.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10433108301323;171.162351965909;_
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10433108301323;171.162351965909;_
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:30.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:30.735 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:30.735 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:30.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:30.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:30.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:30.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:30.736 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:30.736 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:30.736 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36859)
2025-11-17T09:58:30.737 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:30.737 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:30.737 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:30.737 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:30.737 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:30.744 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:30.744 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83230012, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433108301323, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1184042, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13817, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.0928396925423, telescope_dec_j2k=-24.1865681275506, observability=1)
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Status age = 2.981065034866333s
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:33.725 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:33.726 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:33.727 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 17;16.1192451;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13901;2460996.8323348;9.97602194;1.3;_
2025-11-17T09:58:33.727 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response 17;16.1192451;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13901;2460996.8323348;9.97602194;1.3;_
2025-11-17T09:58:33.727 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:33.727 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:33.727 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:33.728 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:33.728 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:33.728 [INFO] [Thread-67036 (handle)] [driver.py] [get_status()] Telra = 16.1192451, teldec = -24.256632
2025-11-17T09:58:33.728 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1192451 -24.256632
2025-11-17T09:58:33.728 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1192451 -24.256632
2025-11-17T09:58:33.728 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1192451 -24.256632
2025-11-17T09:58:33.729 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 17;16.1192451;-24.256632;50.10853;89.993111;50.08601;90.12017;13.13901;2460996.83233483;9.97602194;1.3;_16.0936801147221 -24.1865953561229
2025-11-17T09:58:33.729 [INFO] [Thread-67036 (handle)] [driver.py] [get_status()] ra_j2k = 16.0936801147221     dec_j2k = -24.1865953561229
2025-11-17T09:58:33.729 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:33.729 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:33.729 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 140;0.10433108301323;171.162362694745;_
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response 140;0.10433108301323;171.162362694745;_
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:33.730 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:33.731 [DEBUG] [Thread-67036 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47597)
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:33.736 [DEBUG] [Thread-67036 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:33.743 [DEBUG] [Thread-67036 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:33.744 [DEBUG] [Thread-67036 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:33.744 [DEBUG] [Thread-67036 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:33.744 [INFO] [Thread-67036 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8323348, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433108301323, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1192451, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.13901, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.0936801147221, telescope_dec_j2k=-24.1865953561229, observability=1)
2025-11-17T09:58:47.790 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:47.790 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:47.790 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:47.790 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:47.790 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:47.791 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:47.791 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:47.791 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:47.791 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:47.791 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:47.792 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:47.792 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:47.792 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:47.792 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:47.792 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] CloseShutters
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T09:58:47.793 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Status age = 18.105573892593384s
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:58:51.849 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 17;16.1242858;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14405;2460996.83254456;9.98104889;1.3;_
2025-11-17T09:58:51.850 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response 17;16.1242858;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14405;2460996.83254456;9.98104889;1.3;_
2025-11-17T09:58:51.851 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:58:51.851 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:58:51.851 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:58:51.852 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:51.852 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:58:51.852 [INFO] [Thread-67037 (handle)] [driver.py] [get_status()] Telra = 16.1242858, teldec = -24.256632
2025-11-17T09:58:51.852 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1242858 -24.256632
2025-11-17T09:58:51.852 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1242858 -24.256632
2025-11-17T09:58:51.852 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1242858 -24.256632
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 17;16.1242858;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14405;2460996.8325446;9.98104889;1.3;_16.0987179538752 -24.1867586477049
2025-11-17T09:58:51.853 [INFO] [Thread-67037 (handle)] [driver.py] [get_status()] ra_j2k = 16.0987179538752     dec_j2k = -24.1867586477049
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 140;0.104331845140143;171.162351965909;_
2025-11-17T09:58:51.853 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response 140;0.104331845140143;171.162351965909;_
2025-11-17T09:58:51.854 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:58:51.854 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:51.854 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:51.854 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:51.854 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:51.855 [DEBUG] [Thread-67037 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:58:51.856 [DEBUG] [Thread-67037 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37525)
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:58:51.857 [DEBUG] [Thread-67037 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:58:51.865 [DEBUG] [Thread-67037 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:58:51.865 [INFO] [Thread-67037 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83254456, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331845140143, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1242858, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.14405, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.0987179538752, telescope_dec_j2k=-24.1867586477049, observability=1)
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Status age = 10.127433776855469s
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:01.993 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:01.994 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:01.995 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:01.995 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 17;16.1271013;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14686;2460996.83266198;9.98385667;1.3;_
2025-11-17T09:59:01.995 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response 17;16.1271013;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14686;2460996.83266198;9.98385667;1.3;_
2025-11-17T09:59:01.996 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:01.996 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:01.996 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:01.997 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:01.997 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:01.997 [INFO] [Thread-67038 (handle)] [driver.py] [get_status()] Telra = 16.1271013, teldec = -24.256632
2025-11-17T09:59:01.997 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1271013 -24.256632
2025-11-17T09:59:01.997 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1271013 -24.256632
2025-11-17T09:59:01.997 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1271013 -24.256632
2025-11-17T09:59:01.998 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 17;16.1271013;-24.256632;50.10853;89.993111;50.08601;90.12017;13.14686;2460996.83266201;9.98385667;1.3;_16.1015318584801 -24.1868499086659
2025-11-17T09:59:01.998 [INFO] [Thread-67038 (handle)] [driver.py] [get_status()] ra_j2k = 16.1015318584801     dec_j2k = -24.1868499086659
2025-11-17T09:59:01.998 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:01.998 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:01.998 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 140;0.104331764916258;171.162362694745;_
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response 140;0.104331764916258;171.162362694745;_
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:01.999 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:02.000 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:02.001 [DEBUG] [Thread-67038 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:02.001 [DEBUG] [Thread-67038 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:02.001 [DEBUG] [Thread-67038 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46889)
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:02.005 [DEBUG] [Thread-67038 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:02.012 [DEBUG] [Thread-67038 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:02.012 [DEBUG] [Thread-67038 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:02.012 [DEBUG] [Thread-67038 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:02.012 [DEBUG] [Thread-67038 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:02.013 [DEBUG] [Thread-67038 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:02.013 [DEBUG] [Thread-67038 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:02.013 [DEBUG] [Thread-67038 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:02.013 [DEBUG] [Thread-67038 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:02.013 [DEBUG] [Thread-67038 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:59:02.013 [INFO] [Thread-67038 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83266198, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331764916258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10853, telescope_az=89.993111, telescope_ra=16.1271013, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.14686, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.1015318584801, telescope_dec_j2k=-24.1868499086659, observability=1)
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Status age = 7.907083511352539s
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:09.920 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:09.921 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:09.922 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 17;16.1293051;-24.256632;50.108529;89.993111;50.08601;90.12017;13.14907;2460996.83275373;9.98605444;1.3;_
2025-11-17T09:59:09.922 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response 17;16.1293051;-24.256632;50.108529;89.993111;50.08601;90.12017;13.14907;2460996.83275373;9.98605444;1.3;_
2025-11-17T09:59:09.922 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:09.922 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:09.922 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:09.923 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:09.923 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:09.923 [INFO] [Thread-67039 (handle)] [driver.py] [get_status()] Telra = 16.1293051, teldec = -24.256632
2025-11-17T09:59:09.923 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1293051 -24.256632
2025-11-17T09:59:09.923 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1293051 -24.256632
2025-11-17T09:59:09.923 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1293051 -24.256632
2025-11-17T09:59:09.924 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 17;16.1293051;-24.256632;50.108529;89.993111;50.08601;90.12017;13.14907;2460996.83275375;9.98605444;1.3;_16.1037344109743 -24.1869213690376
2025-11-17T09:59:09.924 [INFO] [Thread-67039 (handle)] [driver.py] [get_status()] ra_j2k = 16.1037344109743     dec_j2k = -24.1869213690376
2025-11-17T09:59:09.924 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:09.924 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:09.924 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 140;0.1043320858118;171.162368059163;_
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response 140;0.1043320858118;171.162368059163;_
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:09.925 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:09.926 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:09.927 [DEBUG] [Thread-67039 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:09.927 [DEBUG] [Thread-67039 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:09.927 [DEBUG] [Thread-67039 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:09.932 [DEBUG] [Thread-67039 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57271)
2025-11-17T09:59:09.932 [DEBUG] [Thread-67039 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:09.932 [DEBUG] [Thread-67039 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:09.932 [DEBUG] [Thread-67039 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:09.932 [DEBUG] [Thread-67039 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:09.933 [DEBUG] [Thread-67039 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:09.940 [DEBUG] [Thread-67039 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:09.941 [DEBUG] [Thread-67039 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:09.941 [DEBUG] [Thread-67039 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:59:09.941 [INFO] [Thread-67039 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83275373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1043320858118, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108529, telescope_az=89.993111, telescope_ra=16.1293051, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.14907, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.1037344109743, telescope_dec_j2k=-24.1869213690376, observability=1)
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.0870442390441895s
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:14.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:14.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:14.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1304441;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15021;2460996.83280127;9.98719028;1.3;_
2025-11-17T09:59:14.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1304441;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15021;2460996.83280127;9.98719028;1.3;_
2025-11-17T09:59:14.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:14.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:14.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:14.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:14.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:14.031 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1304441, teldec = -24.256632
2025-11-17T09:59:14.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1304441 -24.256632
2025-11-17T09:59:14.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1304441 -24.256632
2025-11-17T09:59:14.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1304441 -24.256632
2025-11-17T09:59:14.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1304441;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15021;2460996.8328013;9.98719028;1.3;_16.104872766658 -24.1869583114818
2025-11-17T09:59:14.033 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.104872766658     dec_j2k = -24.1869583114818
2025-11-17T09:59:14.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:14.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:14.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:14.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104331684692372;171.162351965909;_
2025-11-17T09:59:14.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104331684692372;171.162351965909;_
2025-11-17T09:59:14.034 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:14.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:14.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:14.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:14.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:14.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:14.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:14.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56405)
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:14.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:14.049 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T09:59:14.050 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83280127, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331684692372, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108529, telescope_az=89.993111, telescope_ra=16.1304441, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.15021, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:58:21.771472', telescope_ra_j2k=16.104872766658, telescope_dec_j2k=-24.1869583114818, observability=1)
2025-11-17T09:59:14.050 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.433841705322266 seconds ago
2025-11-17T09:59:14.792 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:14.792 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.742206335067749s
2025-11-17T09:59:14.792 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.742206335067749
2025-11-17T09:59:21.913 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:21.913 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:21.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:21.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:21.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:21.914 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:21.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:21.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:21.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:21.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:21.915 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T09:59:21.915 [INFO] [ThreadPoolExecutor-2637_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T09:59:21.915 [INFO] [ThreadPoolExecutor-2637_0] [server.py] [done()] Shutdown complete...
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Status age = 13.994666337966919s
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:28.044 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:28.045 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:28.046 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 17;16.1343467;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15411;2460996.8329635;9.99108222;1.3;_
2025-11-17T09:59:28.046 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response 17;16.1343467;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15411;2460996.8329635;9.99108222;1.3;_
2025-11-17T09:59:28.046 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:28.046 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:28.046 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:28.047 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:28.047 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:28.047 [INFO] [Thread-67040 (handle)] [driver.py] [get_status()] Telra = 16.1343467, teldec = -24.256632
2025-11-17T09:59:28.047 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1343467 -24.256632
2025-11-17T09:59:28.047 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1343467 -24.256632
2025-11-17T09:59:28.047 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1343467 -24.256632
2025-11-17T09:59:28.048 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 17;16.1343467;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15411;2460996.83296352;9.99108222;1.3;_16.1087731612748 -24.1870849365866
2025-11-17T09:59:28.048 [INFO] [Thread-67040 (handle)] [driver.py] [get_status()] ra_j2k = 16.1087731612748     dec_j2k = -24.1870849365866
2025-11-17T09:59:28.048 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:28.048 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:28.048 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 140;0.104331764916258;171.162357330327;_
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response 140;0.104331764916258;171.162357330327;_
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:28.049 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:28.050 [DEBUG] [Thread-67040 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32825)
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:28.057 [DEBUG] [Thread-67040 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:28.064 [DEBUG] [Thread-67040 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:28.064 [DEBUG] [Thread-67040 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:28.064 [DEBUG] [Thread-67040 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:28.064 [DEBUG] [Thread-67040 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:28.064 [DEBUG] [Thread-67040 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:28.065 [DEBUG] [Thread-67040 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:28.065 [DEBUG] [Thread-67040 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:28.065 [DEBUG] [Thread-67040 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:28.065 [DEBUG] [Thread-67040 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:59:28.065 [INFO] [Thread-67040 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8329635, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104331764916258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108529, telescope_az=89.993111, telescope_ra=16.1343467, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.15411, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.1087731612748, telescope_dec_j2k=-24.1870849365866, observability=1)
2025-11-17T09:59:28.696 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T09:59:28
2025-11-17T09:59:28.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:28.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.6319220066070557s
2025-11-17T09:59:28.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6319220066070557
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.768601655960083s
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:29.833 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1348505;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15461;2460996.83298419;9.99158472;1.3;_
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.1348505;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15461;2460996.83298419;9.99158472;1.3;_
2025-11-17T09:59:29.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:29.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:29.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:29.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:29.836 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:29.836 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.1348505, teldec = -24.256632
2025-11-17T09:59:29.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1348505 -24.256632
2025-11-17T09:59:29.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1348505 -24.256632
2025-11-17T09:59:29.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1348505 -24.256632
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1348505;-24.256632;50.108529;89.993111;50.08601;90.12017;13.15461;2460996.83298422;9.99158472;1.3;_16.1092766768297 -24.1871012884405
2025-11-17T09:59:29.837 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.1092766768297     dec_j2k = -24.1871012884405
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104332286371514;171.162362694745;_
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104332286371514;171.162362694745;_
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:29.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:29.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:29.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:29.839 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T09:59:29.839 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34391)
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:29.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:29.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:29.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:29.850 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:59:29.850 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83298419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104332286371514, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108529, telescope_az=89.993111, telescope_ra=16.1348505, telescope_dec=-24.256632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.15461, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.1092766768297, telescope_dec_j2k=-24.1871012884405, observability=1)
2025-11-17T09:59:42.794 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.794 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.794 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:42.794 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:42.794 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T09:59:42.795 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:42.796 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:42.797 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T09:59:42.798 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:42.799 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Park
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command Park
2025-11-17T09:59:42.800 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to Park
2025-11-17T09:59:42.801 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 29;16.1384743;-24.256631;50.108529;89.993111;50.08601;90.12017;13.15824;2460996.83313427;9.99519861;1.3;_Park Command Successful
2025-11-17T09:59:43.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:59:43.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:59:43.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:59:43.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:59:43.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T09:59:44.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:59:44.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:59:44.802 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:59:44.803 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:59:44.803 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:59:45.804 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T09:59:45.804 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T09:59:45.804 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T09:59:45.804 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:59:45.804 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Getting status
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Status age = 16.26898503303528s
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:46.119 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 17;16.1393916;-24.256631;50.108529;89.993111;50.08601;90.12017;13.15915;2460996.83317268;9.99611333;1.3;_
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response 17;16.1393916;-24.256631;50.108529;89.993111;50.08601;90.12017;13.15915;2460996.83317268;9.99611333;1.3;_
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T09:59:46.120 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T09:59:46.121 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:46.121 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T09:59:46.121 [INFO] [Thread-67041 (handle)] [driver.py] [get_status()] Telra = 16.1393916, teldec = -24.256631
2025-11-17T09:59:46.121 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1393916 -24.256631
2025-11-17T09:59:46.121 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1393916 -24.256631
2025-11-17T09:59:46.121 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1393916 -24.256631
2025-11-17T09:59:46.122 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 17;16.1393916;-24.256631;50.108529;89.993111;50.08601;90.12017;13.15915;2460996.83317271;9.99611333;1.3;_16.113815215739 -24.1872477345983
2025-11-17T09:59:46.122 [INFO] [Thread-67041 (handle)] [driver.py] [get_status()] ra_j2k = 16.113815215739     dec_j2k = -24.1872477345983
2025-11-17T09:59:46.122 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T09:59:46.122 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T09:59:46.122 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 140;0.104332888050656;171.162357330327;_
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response 140;0.104332888050656;171.162357330327;_
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:46.123 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T09:59:46.124 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T09:59:46.125 [DEBUG] [Thread-67041 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:46.125 [DEBUG] [Thread-67041 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T09:59:46.125 [DEBUG] [Thread-67041 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45117)
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T09:59:46.129 [DEBUG] [Thread-67041 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T09:59:46.136 [DEBUG] [Thread-67041 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T09:59:46.136 [INFO] [Thread-67041 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83317268, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104332888050656, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108529, telescope_az=89.993111, telescope_ra=16.1393916, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.15915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.113815215739, telescope_dec_j2k=-24.1872477345983, observability=1)
2025-11-17T09:59:46.805 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] ParkRotator
2025-11-17T09:59:46.805 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T09:59:46.805 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:46.806 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T09:59:46.807 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T09:59:46.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] GetDomeData
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle requested
2025-11-17T09:59:47.808 [DEBUG] [ThreadPoolExecutor-2636_0] [server.py] [dome()] Dome handle being returned
2025-11-17T09:59:47.809 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T09:59:47.809 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T09:59:47.809 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T09:59:47.809 [DEBUG] [ThreadPoolExecutor-2636_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T09:59:47.809 [INFO] [ThreadPoolExecutor-2636_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:00:02.043 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Status age = 15.907113790512085s
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:02.044 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:02.045 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 17;16.1438229;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16359;2460996.833357;10.0005325;1.3;_
2025-11-17T10:00:02.045 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response 17;16.1438229;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16359;2460996.833357;10.0005325;1.3;_
2025-11-17T10:00:02.045 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:02.045 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:02.045 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:02.046 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:02.046 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:02.046 [INFO] [Thread-67042 (handle)] [driver.py] [get_status()] Telra = 16.1438229, teldec = -24.256631
2025-11-17T10:00:02.046 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1438229 -24.256631
2025-11-17T10:00:02.046 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1438229 -24.256631
2025-11-17T10:00:02.047 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1438229 -24.256631
2025-11-17T10:00:02.047 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 17;16.1438229;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16359;2460996.83335703;10.0005325;1.3;_16.1182440209832 -24.1873917117951
2025-11-17T10:00:02.047 [INFO] [Thread-67042 (handle)] [driver.py] [get_status()] ra_j2k = 16.1182440209832     dec_j2k = -24.1873917117951
2025-11-17T10:00:02.047 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:02.048 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:02.048 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:02.048 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 140;0.104333008386485;171.162357330327;_
2025-11-17T10:00:02.048 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response 140;0.104333008386485;171.162357330327;_
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:02.049 [DEBUG] [Thread-67042 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:02.050 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:02.050 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:02.050 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:02.051 [DEBUG] [Thread-67042 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:02.051 [DEBUG] [Thread-67042 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:02.051 [DEBUG] [Thread-67042 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:02.053 [DEBUG] [Thread-67042 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57763)
2025-11-17T10:00:02.053 [DEBUG] [Thread-67042 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:02.054 [DEBUG] [Thread-67042 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:02.054 [DEBUG] [Thread-67042 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:02.054 [DEBUG] [Thread-67042 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:02.054 [DEBUG] [Thread-67042 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:02.061 [DEBUG] [Thread-67042 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:02.061 [INFO] [Thread-67042 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.833357, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104333008386485, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1438229, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.16359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.1182440209832, telescope_dec_j2k=-24.1873917117951, observability=1)
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Status age = 2.1240994930267334s
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:04.185 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:04.186 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:04.187 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 17;16.1444292;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16419;2460996.83338179;10.00113722;1.3;_
2025-11-17T10:00:04.187 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response 17;16.1444292;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16419;2460996.83338179;10.00113722;1.3;_
2025-11-17T10:00:04.187 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:04.187 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:04.187 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:04.188 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:04.188 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:04.188 [INFO] [Thread-67043 (handle)] [driver.py] [get_status()] Telra = 16.1444292, teldec = -24.256631
2025-11-17T10:00:04.188 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1444292 -24.256631
2025-11-17T10:00:04.188 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1444292 -24.256631
2025-11-17T10:00:04.188 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1444292 -24.256631
2025-11-17T10:00:04.189 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 17;16.1444292;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16419;2460996.83338182;10.00113722;1.3;_16.1188499799973 -24.1874114184428
2025-11-17T10:00:04.189 [INFO] [Thread-67043 (handle)] [driver.py] [get_status()] ra_j2k = 16.1188499799973     dec_j2k = -24.1874114184428
2025-11-17T10:00:04.189 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:04.189 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:04.189 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 140;0.104333529841741;171.162362694745;_
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response 140;0.104333529841741;171.162362694745;_
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:04.190 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:04.191 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:04.192 [DEBUG] [Thread-67043 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:04.192 [DEBUG] [Thread-67043 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:04.192 [DEBUG] [Thread-67043 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60817)
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:04.195 [DEBUG] [Thread-67043 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:04.202 [DEBUG] [Thread-67043 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:04.202 [DEBUG] [Thread-67043 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:04.202 [DEBUG] [Thread-67043 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:04.203 [DEBUG] [Thread-67043 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:04.203 [INFO] [Thread-67043 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83338179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104333529841741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1444292, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.16419, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.1188499799973, telescope_dec_j2k=-24.1874114184428, observability=1)
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.906963586807251s
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:14.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:14.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:14.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1471943;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16696;2460996.83349667;10.00389472;1.3;_
2025-11-17T10:00:14.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1471943;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16696;2460996.83349667;10.00389472;1.3;_
2025-11-17T10:00:14.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:14.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:14.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:14.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:14.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:14.113 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1471943, teldec = -24.256631
2025-11-17T10:00:14.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1471943 -24.256631
2025-11-17T10:00:14.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1471943 -24.256631
2025-11-17T10:00:14.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1471943 -24.256631
2025-11-17T10:00:14.114 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1471943;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16696;2460996.83349669;10.00389472;1.3;_16.1216135259671 -24.1875013153387
2025-11-17T10:00:14.114 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.1216135259671     dec_j2k = -24.1875013153387
2025-11-17T10:00:14.114 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:14.114 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:14.114 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104332647378999;171.162351965909;_
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104332647378999;171.162351965909;_
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:14.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:14.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:14.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:14.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:14.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50607)
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:14.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:14.131 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:00:14.131 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83349667, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104332647378999, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1471943, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.16696, lcu_permission=False, lcu_permission_timestamp='2025-11-17T09:59:21.912976', telescope_ra_j2k=16.1216135259671, telescope_dec_j2k=-24.1875013153387, observability=1)
2025-11-17T10:00:14.131 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.43475031852722 seconds ago
2025-11-17T10:00:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6311023235321045s
2025-11-17T10:00:14.762 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6311023235321045
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:22.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:22.057 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:22.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:22.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:22.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:22.058 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:00:22.058 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:22.058 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:22.058 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:22.058 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:22.058 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:00:22.059 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:00:22.060 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Status age = 8.182899475097656s
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:22.314 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 17;16.1494739;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16924;2460996.83359161;10.00616806;1.3;_
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response 17;16.1494739;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16924;2460996.83359161;10.00616806;1.3;_
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:22.315 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:22.316 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:22.316 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:22.316 [INFO] [Thread-67044 (handle)] [driver.py] [get_status()] Telra = 16.1494739, teldec = -24.256631
2025-11-17T10:00:22.316 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1494739 -24.256631
2025-11-17T10:00:22.316 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1494739 -24.256631
2025-11-17T10:00:22.316 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1494739 -24.256631
2025-11-17T10:00:22.317 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 17;16.1494739;-24.256631;50.108528;89.99311;50.08601;90.12017;13.16924;2460996.83359163;10.00616806;1.3;_16.1238918461218 -24.1875754557373
2025-11-17T10:00:22.317 [INFO] [Thread-67044 (handle)] [driver.py] [get_status()] ra_j2k = 16.1238918461218     dec_j2k = -24.1875754557373
2025-11-17T10:00:22.317 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:22.318 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:22.318 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 140;0.104333048498427;171.162351965909;_
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response 140;0.104333048498427;171.162351965909;_
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:22.319 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:22.320 [DEBUG] [Thread-67044 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:22.320 [DEBUG] [Thread-67044 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:22.320 [DEBUG] [Thread-67044 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36671)
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:22.323 [DEBUG] [Thread-67044 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:22.330 [DEBUG] [Thread-67044 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:22.330 [INFO] [Thread-67044 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83359161, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104333048498427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1494739, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.16924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1238918461218, telescope_dec_j2k=-24.1875754557373, observability=1)
2025-11-17T10:00:23.060 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:23.060 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:23.060 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:23.060 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:23.060 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:00:23.061 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:23.062 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:23.063 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:23.063 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:23.063 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:23.063 [DEBUG] [ThreadPoolExecutor-2638_0] [payload.py] [to_registers()] [0]
2025-11-17T10:00:23.069 [DEBUG] [ThreadPoolExecutor-2638_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46285)
2025-11-17T10:00:23.070 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:23.070 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:23.070 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:00:23.070 [DEBUG] [ThreadPoolExecutor-2638_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:23.070 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:23.076 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:23.076 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:00:23.076 [DEBUG] [ThreadPoolExecutor-2638_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:00:23.077 [DEBUG] [ThreadPoolExecutor-2638_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:00:23.077 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:23.077 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:23.077 [DEBUG] [ThreadPoolExecutor-2638_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:28.758 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:00:28
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.427507638931274s
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:28.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:28.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:28.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1512849;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17105;2460996.83366619;10.00797417;1.3;_
2025-11-17T10:00:28.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.1512849;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17105;2460996.83366619;10.00797417;1.3;_
2025-11-17T10:00:28.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:28.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:28.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:28.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:28.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:28.760 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.1512849, teldec = -24.256631
2025-11-17T10:00:28.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1512849 -24.256631
2025-11-17T10:00:28.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1512849 -24.256631
2025-11-17T10:00:28.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1512849 -24.256631
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1512849;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17105;2460996.83366622;10.00797417;1.3;_16.1257018302192 -24.187634373498
2025-11-17T10:00:28.762 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.1257018302192     dec_j2k = -24.187634373498
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104333930961169;171.162357330327;_
2025-11-17T10:00:28.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104333930961169;171.162357330327;_
2025-11-17T10:00:28.763 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:28.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:28.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:28.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:28.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:28.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:28.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:28.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:28.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:28.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:28.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:28.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:28.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37797)
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:28.769 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:28.776 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:28.776 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:28.776 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:28.776 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:28.776 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:28.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:28.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:28.777 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:28.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:28.777 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83366619, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104333930961169, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1512849, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.17105, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1257018302192, telescope_dec_j2k=-24.187634373498, observability=1)
2025-11-17T10:00:28.939 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:28.940 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.16277790069580078s
2025-11-17T10:00:28.940 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.16277790069580078
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Status age = 11.601044416427612s
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:40.378 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:40.379 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:40.380 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 17;16.1545168;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17428;2460996.83380069;10.01119722;1.3;_
2025-11-17T10:00:40.380 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response 17;16.1545168;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17428;2460996.83380069;10.01119722;1.3;_
2025-11-17T10:00:40.380 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:40.380 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:40.380 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:40.381 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:40.381 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:40.381 [INFO] [Thread-67045 (handle)] [driver.py] [get_status()] Telra = 16.1545168, teldec = -24.256631
2025-11-17T10:00:40.381 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1545168 -24.256631
2025-11-17T10:00:40.381 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1545168 -24.256631
2025-11-17T10:00:40.381 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1545168 -24.256631
2025-11-17T10:00:40.382 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 17;16.1545168;-24.256631;50.108528;89.99311;50.08601;90.12017;13.17428;2460996.83380072;10.01119722;1.3;_16.1289319191263 -24.1877395569908
2025-11-17T10:00:40.382 [INFO] [Thread-67045 (handle)] [driver.py] [get_status()] ra_j2k = 16.1289319191263     dec_j2k = -24.1877395569908
2025-11-17T10:00:40.382 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:40.382 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:40.382 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 140;0.104334051296998;171.162368059163;_
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response 140;0.104334051296998;171.162368059163;_
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:40.383 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:40.384 [DEBUG] [Thread-67045 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:40.390 [DEBUG] [Thread-67045 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33915)
2025-11-17T10:00:40.390 [DEBUG] [Thread-67045 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:40.391 [DEBUG] [Thread-67045 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:40.391 [DEBUG] [Thread-67045 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:40.391 [DEBUG] [Thread-67045 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:40.391 [DEBUG] [Thread-67045 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:40.398 [DEBUG] [Thread-67045 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:40.398 [INFO] [Thread-67045 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83380069, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334051296998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108528, telescope_az=89.99311, telescope_ra=16.1545168, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.17428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1289319191263, telescope_dec_j2k=-24.1877395569908, observability=1)
2025-11-17T10:00:48.077 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:48.077 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:48.077 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:48.077 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:48.077 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:48.078 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:00:48.079 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:00:48.080 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:58.451 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:00:58.451 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Status age = 18.05304217338562s
2025-11-17T10:00:58.451 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:00:58.451 [DEBUG] [Thread-67046 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:00:58.451 [DEBUG] [Thread-67046 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:00:58.452 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:00:58.453 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 17;16.1595389;-24.256631;50.108527;89.99311;50.08601;90.12017;13.1793;2460996.83400987;10.01620556;1.3;_
2025-11-17T10:00:58.453 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response 17;16.1595389;-24.256631;50.108527;89.99311;50.08601;90.12017;13.1793;2460996.83400987;10.01620556;1.3;_
2025-11-17T10:00:58.453 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:00:58.453 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:00:58.454 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:00:58.454 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:58.454 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:00:58.455 [INFO] [Thread-67046 (handle)] [driver.py] [get_status()] Telra = 16.1595389, teldec = -24.256631
2025-11-17T10:00:58.455 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1595389 -24.256631
2025-11-17T10:00:58.455 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1595389 -24.256631
2025-11-17T10:00:58.455 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1595389 -24.256631
2025-11-17T10:00:58.456 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 17;16.1595389;-24.256631;50.108527;89.99311;50.08601;90.12017;13.1793;2460996.83400991;10.01620556;1.3;_16.1339512096276 -24.1879031028178
2025-11-17T10:00:58.456 [INFO] [Thread-67046 (handle)] [driver.py] [get_status()] ra_j2k = 16.1339512096276     dec_j2k = -24.1879031028178
2025-11-17T10:00:58.456 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:00:58.456 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:00:58.456 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 140;0.104334572752254;171.162346601491;_
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response 140;0.104334572752254;171.162346601491;_
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:58.457 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:00:58.458 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:00:58.459 [DEBUG] [Thread-67046 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:58.459 [DEBUG] [Thread-67046 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:00:58.459 [DEBUG] [Thread-67046 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59099)
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:00:58.461 [DEBUG] [Thread-67046 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:00:58.468 [DEBUG] [Thread-67046 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:00:58.468 [INFO] [Thread-67046 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83400987, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334572752254, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.1595389, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.1793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1339512096276, telescope_dec_j2k=-24.1879031028178, observability=1)
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Status age = 3.625450611114502s
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:02.094 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:02.095 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 17;16.160567;-24.256631;50.108527;89.99311;50.08601;90.12017;13.18033;2460996.83405203;10.01723083;1.3;_
2025-11-17T10:01:02.095 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response 17;16.160567;-24.256631;50.108527;89.99311;50.08601;90.12017;13.18033;2460996.83405203;10.01723083;1.3;_
2025-11-17T10:01:02.095 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:02.096 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:02.096 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:02.096 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:02.097 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:02.097 [INFO] [Thread-67047 (handle)] [driver.py] [get_status()] Telra = 16.160567, teldec = -24.256631
2025-11-17T10:01:02.097 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] UnCookCoordinates 16.160567 -24.256631
2025-11-17T10:01:02.097 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.160567 -24.256631
2025-11-17T10:01:02.097 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.160567 -24.256631
2025-11-17T10:01:02.098 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 17;16.160567;-24.256631;50.108527;89.99311;50.08601;90.12017;13.18033;2460996.83405206;10.01723083;1.3;_16.1349787351993 -24.1879365980446
2025-11-17T10:01:02.098 [INFO] [Thread-67047 (handle)] [driver.py] [get_status()] ra_j2k = 16.1349787351993     dec_j2k = -24.1879365980446
2025-11-17T10:01:02.098 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:02.098 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:02.098 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 140;0.104334051296998;171.162351965909;_
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response 140;0.104334051296998;171.162351965909;_
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:02.099 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:02.100 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:02.101 [DEBUG] [Thread-67047 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:02.101 [DEBUG] [Thread-67047 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:02.101 [DEBUG] [Thread-67047 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38177)
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:02.102 [DEBUG] [Thread-67047 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:02.109 [DEBUG] [Thread-67047 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:02.110 [DEBUG] [Thread-67047 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:01:02.110 [INFO] [Thread-67047 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83405203, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334051296998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.160567, telescope_dec=-24.256631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.18033, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1349787351993, telescope_dec_j2k=-24.1879365980446, observability=1)
2025-11-17T10:01:14.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:01:14.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.081448793411255s
2025-11-17T10:01:14.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:14.191 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:14.191 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:14.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:14.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:14.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:14.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:14.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:14.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:14.193 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:14.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:14.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:14.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:14.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1639373;-24.25663;50.108527;89.99311;50.08601;90.12017;13.1837;2460996.83419205;10.02059194;1.3;_
2025-11-17T10:01:14.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1639373;-24.25663;50.108527;89.99311;50.08601;90.12017;13.1837;2460996.83419205;10.02059194;1.3;_
2025-11-17T10:01:14.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:14.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:14.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:14.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:14.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:14.195 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1639373, teldec = -24.25663
2025-11-17T10:01:14.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1639373 -24.25663
2025-11-17T10:01:14.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1639373 -24.25663
2025-11-17T10:01:14.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1639373 -24.25663
2025-11-17T10:01:14.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1639373;-24.25663;50.108527;89.99311;50.08601;90.12017;13.1837;2460996.83419208;10.02059194;1.3;_16.1383471540061 -24.1880454370467
2025-11-17T10:01:14.196 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.1383471540061     dec_j2k = -24.1880454370467
2025-11-17T10:01:14.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:14.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:14.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104334332080597;171.162357330327;_
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104334332080597;171.162357330327;_
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:14.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:14.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36371)
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:14.202 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:14.209 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:01:14.209 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83419205, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334332080597, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.1639373, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.1837, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1383471540061, telescope_dec_j2k=-24.1880454370467, observability=1)
2025-11-17T10:01:14.210 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.45199203491211 seconds ago
2025-11-17T10:01:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5784115791320801s
2025-11-17T10:01:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5784115791320801
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Status age = 2.3514161109924316s
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:16.561 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:16.562 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:16.563 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 17;16.1645827;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18435;2460996.83421948;10.02123556;1.3;_
2025-11-17T10:01:16.563 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response 17;16.1645827;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18435;2460996.83421948;10.02123556;1.3;_
2025-11-17T10:01:16.563 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:16.563 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:16.563 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:16.564 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:16.564 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:16.564 [INFO] [Thread-67048 (handle)] [driver.py] [get_status()] Telra = 16.1645827, teldec = -24.25663
2025-11-17T10:01:16.564 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1645827 -24.25663
2025-11-17T10:01:16.564 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1645827 -24.25663
2025-11-17T10:01:16.564 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1645827 -24.25663
2025-11-17T10:01:16.565 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 17;16.1645827;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18435;2460996.8342195;10.02123556;1.3;_16.1389921940309 -24.1880664770075
2025-11-17T10:01:16.565 [INFO] [Thread-67048 (handle)] [driver.py] [get_status()] ra_j2k = 16.1389921940309     dec_j2k = -24.1880664770075
2025-11-17T10:01:16.565 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:16.565 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:16.565 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 140;0.104334773311968;171.162357330327;_
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response 140;0.104334773311968;171.162357330327;_
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:16.566 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:16.567 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:16.568 [DEBUG] [Thread-67048 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:16.568 [DEBUG] [Thread-67048 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:16.568 [DEBUG] [Thread-67048 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47245)
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:16.571 [DEBUG] [Thread-67048 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:16.578 [DEBUG] [Thread-67048 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:16.578 [DEBUG] [Thread-67048 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:16.578 [DEBUG] [Thread-67048 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:16.578 [DEBUG] [Thread-67048 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:16.578 [DEBUG] [Thread-67048 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:16.579 [DEBUG] [Thread-67048 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:16.579 [DEBUG] [Thread-67048 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:16.579 [DEBUG] [Thread-67048 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:16.579 [DEBUG] [Thread-67048 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:01:16.579 [INFO] [Thread-67048 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83421948, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334773311968, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.1645827, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.18435, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:00:22.055762', telescope_ra_j2k=16.1389921940309, telescope_dec_j2k=-24.1880664770075, observability=1)
2025-11-17T10:01:22.196 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:22.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:22.198 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:22.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:22.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:22.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:22.199 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:01:22.199 [INFO] [ThreadPoolExecutor-2639_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:01:22.199 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T10:01:28.028 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:28.028 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.44951343536377s
2025-11-17T10:01:28.028 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:28.028 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:28.029 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:28.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.167787;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18755;2460996.8343522;10.02443111;1.3;_
2025-11-17T10:01:28.031 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.167787;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18755;2460996.8343522;10.02443111;1.3;_
2025-11-17T10:01:28.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:28.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:28.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:28.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:28.032 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:28.032 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.167787, teldec = -24.25663
2025-11-17T10:01:28.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.167787 -24.25663
2025-11-17T10:01:28.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.167787 -24.25663
2025-11-17T10:01:28.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.167787 -24.25663
2025-11-17T10:01:28.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.167787;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18755;2460996.83435223;10.02443111;1.3;_16.1421947082428 -24.1881709662772
2025-11-17T10:01:28.033 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.1421947082428     dec_j2k = -24.1881709662772
2025-11-17T10:01:28.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:28.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:28.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104334733200025;171.162357330327;_
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104334733200025;171.162357330327;_
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:28.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:28.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:28.035 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:28.035 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:28.038 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38327)
2025-11-17T10:01:28.038 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:28.038 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:28.038 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:28.038 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:28.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:28.046 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:01:28.046 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8343522, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334733200025, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.167787, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.18755, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1421947082428, telescope_dec_j2k=-24.1881709662772, observability=1)
2025-11-17T10:01:28.837 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:01:28
2025-11-17T10:01:28.837 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:28.837 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.7908961772918701s
2025-11-17T10:01:28.837 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7908961772918701
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Status age = 6.590858459472656s
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:34.637 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 17;16.1696262;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18939;2460996.83442868;10.02626528;1.3;_
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response 17;16.1696262;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18939;2460996.83442868;10.02626528;1.3;_
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:34.638 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:34.639 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:34.639 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:34.639 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:34.640 [INFO] [Thread-67049 (handle)] [driver.py] [get_status()] Telra = 16.1696262, teldec = -24.25663
2025-11-17T10:01:34.640 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1696262 -24.25663
2025-11-17T10:01:34.640 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1696262 -24.25663
2025-11-17T10:01:34.640 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1696262 -24.25663
2025-11-17T10:01:34.641 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 17;16.1696262;-24.25663;50.108527;89.99311;50.08601;90.12017;13.18939;2460996.83442872;10.02626528;1.3;_16.1440328843118 -24.1882309630447
2025-11-17T10:01:34.641 [INFO] [Thread-67049 (handle)] [driver.py] [get_status()] ra_j2k = 16.1440328843118     dec_j2k = -24.1882309630447
2025-11-17T10:01:34.641 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:34.641 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:34.641 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 140;0.104335054095568;171.162351965909;_
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response 140;0.104335054095568;171.162351965909;_
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:34.642 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:34.643 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:34.644 [DEBUG] [Thread-67049 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:34.644 [DEBUG] [Thread-67049 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:34.644 [DEBUG] [Thread-67049 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57455)
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:34.650 [DEBUG] [Thread-67049 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:34.657 [DEBUG] [Thread-67049 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:34.657 [DEBUG] [Thread-67049 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:34.657 [DEBUG] [Thread-67049 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:34.658 [DEBUG] [Thread-67049 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:01:34.658 [INFO] [Thread-67049 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83442868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104335054095568, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108527, telescope_az=89.99311, telescope_ra=16.1696262, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.18939, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1440328843118, telescope_dec_j2k=-24.1882309630447, observability=1)
2025-11-17T10:01:43.080 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.080 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.080 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:43.080 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:43.080 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.081 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:43.082 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:43.083 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.083 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:43.083 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:43.083 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:43.084 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:01:43.085 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.086 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:43.086 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:43.086 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:43.086 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:43.086 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Park
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:01:43.087 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:01:43.088 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 29;16.1719882;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19175;2460996.83452648;10.02862083;1.3;_Park Command Successful
2025-11-17T10:01:44.088 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:01:44.088 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:01:44.088 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:01:44.089 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:01:44.089 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:01:45.089 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:01:45.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:01:45.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:01:45.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:01:45.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:01:46.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:01:46.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:01:46.090 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:01:46.091 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:01:46.091 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:01:47.091 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:01:47.091 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:01:47.091 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:47.092 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:01:47.093 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:01:47.094 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:48.094 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:01:48.095 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:01:48.096 [DEBUG] [ThreadPoolExecutor-2638_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:48.096 [INFO] [ThreadPoolExecutor-2638_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Status age = 18.053852081298828s
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:01:52.712 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:01:52.713 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:01:52.714 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 17;16.1746672;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19443;2460996.83463789;10.0312925;1.3;_
2025-11-17T10:01:52.714 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response 17;16.1746672;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19443;2460996.83463789;10.0312925;1.3;_
2025-11-17T10:01:52.714 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:01:52.714 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:01:52.714 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:01:52.715 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:52.715 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:01:52.715 [INFO] [Thread-67050 (handle)] [driver.py] [get_status()] Telra = 16.1746672, teldec = -24.25663
2025-11-17T10:01:52.715 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1746672 -24.25663
2025-11-17T10:01:52.715 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1746672 -24.25663
2025-11-17T10:01:52.715 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1746672 -24.25663
2025-11-17T10:01:52.716 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 17;16.1746672;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19443;2460996.83463792;10.0312925;1.3;_16.1490710818703 -24.1883954888119
2025-11-17T10:01:52.716 [INFO] [Thread-67050 (handle)] [driver.py] [get_status()] ra_j2k = 16.1490710818703     dec_j2k = -24.1883954888119
2025-11-17T10:01:52.716 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:01:52.716 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:01:52.716 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 140;0.104335735998595;171.162357330327;_
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response 140;0.104335735998595;171.162357330327;_
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:52.717 [DEBUG] [Thread-67050 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:01:52.718 [DEBUG] [Thread-67050 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36359)
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:01:52.723 [DEBUG] [Thread-67050 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:01:52.730 [DEBUG] [Thread-67050 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:01:52.731 [INFO] [Thread-67050 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83463789, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104335735998595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108526, telescope_az=89.99311, telescope_ra=16.1746672, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.19443, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1490710818703, telescope_dec_j2k=-24.1883954888119, observability=1)
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Status age = 9.423810243606567s
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:02.154 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:02.155 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:02.156 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 17;16.1772824;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19704;2460996.83474718;10.03390056;1.3;_
2025-11-17T10:02:02.156 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response 17;16.1772824;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19704;2460996.83474718;10.03390056;1.3;_
2025-11-17T10:02:02.156 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:02.156 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:02.156 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:02.157 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:02.157 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:02.157 [INFO] [Thread-67051 (handle)] [driver.py] [get_status()] Telra = 16.1772824, teldec = -24.25663
2025-11-17T10:02:02.157 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1772824 -24.25663
2025-11-17T10:02:02.157 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1772824 -24.25663
2025-11-17T10:02:02.157 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1772824 -24.25663
2025-11-17T10:02:02.158 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 17;16.1772824;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19704;2460996.8347472;10.03390056;1.3;_16.1516848303224 -24.1884808901359
2025-11-17T10:02:02.159 [INFO] [Thread-67051 (handle)] [driver.py] [get_status()] ra_j2k = 16.1516848303224     dec_j2k = -24.1884808901359
2025-11-17T10:02:02.159 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:02.159 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:02.159 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:02.159 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 140;0.104334973871682;171.162357330327;_
2025-11-17T10:02:02.159 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response 140;0.104334973871682;171.162357330327;_
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:02:02.160 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:02.161 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:02.161 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:02.161 [DEBUG] [Thread-67051 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:02.162 [DEBUG] [Thread-67051 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:02.162 [DEBUG] [Thread-67051 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59073)
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:02.168 [DEBUG] [Thread-67051 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:02.175 [DEBUG] [Thread-67051 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:02.176 [DEBUG] [Thread-67051 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:02.176 [INFO] [Thread-67051 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83474718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104334973871682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108526, telescope_az=89.99311, telescope_ra=16.1772824, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.19704, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1516848303224, telescope_dec_j2k=-24.1884808901359, observability=1)
2025-11-17T10:02:10.833 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:10.833 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Status age = 8.657841205596924s
2025-11-17T10:02:10.833 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:10.834 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 17;16.1797099;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19947;2460996.83484763;10.03632139;1.3;_
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response 17;16.1797099;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19947;2460996.83484763;10.03632139;1.3;_
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:10.835 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:10.836 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:10.836 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:10.836 [INFO] [Thread-67052 (handle)] [driver.py] [get_status()] Telra = 16.1797099, teldec = -24.25663
2025-11-17T10:02:10.836 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1797099 -24.25663
2025-11-17T10:02:10.836 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1797099 -24.25663
2025-11-17T10:02:10.836 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1797099 -24.25663
2025-11-17T10:02:10.837 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 17;16.1797099;-24.25663;50.108526;89.99311;50.08601;90.12017;13.19947;2460996.83484765;10.03632139;1.3;_16.1541109843748 -24.1885601910713
2025-11-17T10:02:10.837 [INFO] [Thread-67052 (handle)] [driver.py] [get_status()] ra_j2k = 16.1541109843748     dec_j2k = -24.1885601910713
2025-11-17T10:02:10.837 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:10.837 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:10.837 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 140;0.104335535438881;171.162357330327;_
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response 140;0.104335535438881;171.162357330327;_
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:10.838 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:10.839 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:10.840 [DEBUG] [Thread-67052 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:10.840 [DEBUG] [Thread-67052 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:10.840 [DEBUG] [Thread-67052 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:10.845 [DEBUG] [Thread-67052 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52593)
2025-11-17T10:02:10.846 [DEBUG] [Thread-67052 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:10.846 [DEBUG] [Thread-67052 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:10.846 [DEBUG] [Thread-67052 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:10.846 [DEBUG] [Thread-67052 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:10.846 [DEBUG] [Thread-67052 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:10.853 [DEBUG] [Thread-67052 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:10.853 [INFO] [Thread-67052 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83484763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104335535438881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108526, telescope_az=89.99311, telescope_ra=16.1797099, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.19947, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1541109843748, telescope_dec_j2k=-24.1885601910713, observability=1)
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.4165382385253906s
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:14.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:14.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1806522;-24.25663;50.108526;89.99311;50.08601;90.12017;13.20041;2460996.8348874;10.03726111;1.3;_
2025-11-17T10:02:14.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1806522;-24.25663;50.108526;89.99311;50.08601;90.12017;13.20041;2460996.8348874;10.03726111;1.3;_
2025-11-17T10:02:14.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:14.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:14.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:14.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:14.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:14.273 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1806522, teldec = -24.25663
2025-11-17T10:02:14.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1806522 -24.25663
2025-11-17T10:02:14.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1806522 -24.25663
2025-11-17T10:02:14.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1806522 -24.25663
2025-11-17T10:02:14.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1806522;-24.25663;50.108526;89.99311;50.08601;90.12017;13.20041;2460996.83488743;10.03726111;1.3;_16.1550527622769 -24.1885909814218
2025-11-17T10:02:14.274 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.1550527622769     dec_j2k = -24.1885909814218
2025-11-17T10:02:14.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:14.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:14.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:14.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104336056894138;171.162346601491;_
2025-11-17T10:02:14.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104336056894138;171.162346601491;_
2025-11-17T10:02:14.275 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:14.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:14.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:14.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:14.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:14.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:14.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:14.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46627)
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:14.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:14.285 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:02:14.285 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8348874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104336056894138, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108526, telescope_az=89.99311, telescope_ra=16.1806522, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.20041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:01:22.196433', telescope_ra_j2k=16.1550527622769, telescope_dec_j2k=-24.1885909814218, observability=1)
2025-11-17T10:02:14.285 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.44843125343323 seconds ago
2025-11-17T10:02:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5057978630065918s
2025-11-17T10:02:14.791 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5057978630065918
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:22.339 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:22.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:22.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:22.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:22.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:22.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:22.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:22.340 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:22.341 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:22.342 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:22.342 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:02:22.342 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:02:22.342 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:02:22.342 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:02:23.343 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:23.344 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:23.345 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:23.345 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:23.345 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:23.346 [DEBUG] [ThreadPoolExecutor-2640_0] [payload.py] [to_registers()] [0]
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43747)
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:23.349 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:23.356 [DEBUG] [ThreadPoolExecutor-2640_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.853963375091553s
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:27.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:27.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1842509;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20401;2460996.83503635;10.04085;1.3;_
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.1842509;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20401;2460996.83503635;10.04085;1.3;_
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:27.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:27.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:27.142 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:27.142 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:27.143 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.1842509, teldec = -24.25663
2025-11-17T10:02:27.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1842509 -24.25663
2025-11-17T10:02:27.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1842509 -24.25663
2025-11-17T10:02:27.143 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1842509 -24.25663
2025-11-17T10:02:27.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.1842509;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20401;2460996.83503639;10.04085;1.3;_16.1586494702493 -24.1887086103739
2025-11-17T10:02:27.144 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.1586494702493     dec_j2k = -24.1887086103739
2025-11-17T10:02:27.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:27.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:27.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104336297565795;171.162357330327;_
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104336297565795;171.162357330327;_
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:27.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:27.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:27.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:27.147 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:27.147 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57823)
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:27.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:27.157 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:27.157 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83503635, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104336297565795, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.99311, telescope_ra=16.1842509, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.20401, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1586494702493, telescope_dec_j2k=-24.1887086103739, observability=1)
2025-11-17T10:02:28.898 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:02:28
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.740654468536377s
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:28.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:28.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:28.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:28.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:28.899 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:28.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:28.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:28.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:28.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505671;10.04132444;1.3;_
2025-11-17T10:02:28.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505671;10.04132444;1.3;_
2025-11-17T10:02:28.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:28.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:28.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:28.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:28.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:28.902 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.1847267, teldec = -24.25663
2025-11-17T10:02:28.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.902 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:28.902 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Status age = 1.744948148727417s
2025-11-17T10:02:28.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.902 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:28.903 [DEBUG] [Thread-67053 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:28.903 [DEBUG] [Thread-67053 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:28.903 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:28.903 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:28.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505675;10.04132444;1.3;_16.1591250070995 -24.1887241672115
2025-11-17T10:02:28.903 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.1591250070995     dec_j2k = -24.1887241672115
2025-11-17T10:02:28.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:28.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:28.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104336738797166;171.162357330327;_
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104336738797166;171.162357330327;_
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:28.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:28.904 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:28.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:28.905 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505677;10.04132444;1.3;_
2025-11-17T10:02:28.905 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505677;10.04132444;1.3;_
2025-11-17T10:02:28.905 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:28.905 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:28.905 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:28.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:28.906 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:28.906 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:28.906 [INFO] [Thread-67053 (handle)] [driver.py] [get_status()] Telra = 16.1847267, teldec = -24.25663
2025-11-17T10:02:28.906 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.906 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.906 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1847267 -24.25663
2025-11-17T10:02:28.907 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 17;16.1847267;-24.25663;50.108525;89.99311;50.08601;90.12017;13.20449;2460996.83505679;10.04132444;1.3;_16.1591250070995 -24.1887241672115
2025-11-17T10:02:28.907 [INFO] [Thread-67053 (handle)] [driver.py] [get_status()] ra_j2k = 16.1591250070995     dec_j2k = -24.1887241672115
2025-11-17T10:02:28.907 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:28.907 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:28.907 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 140;0.104336738797166;171.162357330327;_
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response 140;0.104336738797166;171.162357330327;_
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:28.908 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59847)
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:28.909 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.909 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.909 [DEBUG] [Thread-67053 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:28.909 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:28.909 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:28.910 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:28.910 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:28.910 [DEBUG] [Thread-67053 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.910 [DEBUG] [Thread-67053 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:28.910 [DEBUG] [Thread-67053 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49495)
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:28.916 [DEBUG] [Thread-67053 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:28.917 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:28.917 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83505671, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104336738797166, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.99311, telescope_ra=16.1847267, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.20449, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1591250070995, telescope_dec_j2k=-24.1887241672115, observability=1)
2025-11-17T10:02:28.924 [DEBUG] [Thread-67053 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:28.924 [DEBUG] [Thread-67053 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:28.924 [DEBUG] [Thread-67053 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:28.924 [DEBUG] [Thread-67053 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:28.924 [DEBUG] [Thread-67053 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:28.925 [DEBUG] [Thread-67053 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:28.925 [DEBUG] [Thread-67053 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:28.925 [DEBUG] [Thread-67053 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:28.925 [DEBUG] [Thread-67053 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:28.925 [INFO] [Thread-67053 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83505677, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104336738797166, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.99311, telescope_ra=16.1847267, telescope_dec=-24.25663, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.20449, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1591250070995, telescope_dec_j2k=-24.1887241672115, observability=1)
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Status age = 18.05913257598877s
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:46.984 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:02:46.985 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:02:46.986 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 17;16.1897713;-24.256629;50.108525;89.99311;50.08601;90.12017;13.20953;2460996.83526604;10.04635528;1.3;_
2025-11-17T10:02:46.986 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response 17;16.1897713;-24.256629;50.108525;89.99311;50.08601;90.12017;13.20953;2460996.83526604;10.04635528;1.3;_
2025-11-17T10:02:46.986 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:02:46.986 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:02:46.986 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:02:46.987 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:46.987 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:02:46.987 [INFO] [Thread-67054 (handle)] [driver.py] [get_status()] Telra = 16.1897713, teldec = -24.256629
2025-11-17T10:02:46.987 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1897713 -24.256629
2025-11-17T10:02:46.987 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1897713 -24.256629
2025-11-17T10:02:46.987 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1897713 -24.256629
2025-11-17T10:02:46.988 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 17;16.1897713;-24.256629;50.108525;89.99311;50.08601;90.12017;13.20953;2460996.83526606;10.04635528;1.3;_16.1641668204994 -24.1888881722412
2025-11-17T10:02:46.988 [INFO] [Thread-67054 (handle)] [driver.py] [get_status()] ra_j2k = 16.1641668204994     dec_j2k = -24.1888881722412
2025-11-17T10:02:46.988 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:02:46.988 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:02:46.988 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 140;0.104335816222481;171.162351965909;_
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response 140;0.104335816222481;171.162351965909;_
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:02:46.989 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:02:46.990 [DEBUG] [Thread-67054 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:46.990 [DEBUG] [Thread-67054 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:02:46.990 [DEBUG] [Thread-67054 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60903)
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:02:46.996 [DEBUG] [Thread-67054 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:02:47.003 [DEBUG] [Thread-67054 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:02:47.003 [DEBUG] [Thread-67054 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:02:47.004 [DEBUG] [Thread-67054 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:02:47.004 [INFO] [Thread-67054 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83526604, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104335816222481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.99311, telescope_ra=16.1897713, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.20953, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1641668204994, telescope_dec_j2k=-24.1888881722412, observability=1)
2025-11-17T10:02:48.357 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:48.357 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:48.357 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:48.357 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:48.357 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:02:48.358 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:02:48.359 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:02:48.360 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:02.228 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:02.228 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Status age = 15.2245352268219s
2025-11-17T10:03:02.228 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:02.228 [DEBUG] [Thread-67055 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:02.229 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:02.230 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 17;16.1940344;-24.256629;50.108525;89.993109;50.08601;90.12017;13.2138;2460996.83544248;10.05060667;1.3;_
2025-11-17T10:03:02.230 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response 17;16.1940344;-24.256629;50.108525;89.993109;50.08601;90.12017;13.2138;2460996.83544248;10.05060667;1.3;_
2025-11-17T10:03:02.230 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:02.230 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:02.230 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:02.231 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:02.231 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:02.231 [INFO] [Thread-67055 (handle)] [driver.py] [get_status()] Telra = 16.1940344, teldec = -24.256629
2025-11-17T10:03:02.231 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1940344 -24.256629
2025-11-17T10:03:02.231 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1940344 -24.256629
2025-11-17T10:03:02.231 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1940344 -24.256629
2025-11-17T10:03:02.232 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 17;16.1940344;-24.256629;50.108525;89.993109;50.08601;90.12017;13.2138;2460996.8354425;10.05060667;1.3;_16.1684275700549 -24.1890277087527
2025-11-17T10:03:02.232 [INFO] [Thread-67055 (handle)] [driver.py] [get_status()] ra_j2k = 16.1684275700549     dec_j2k = -24.1890277087527
2025-11-17T10:03:02.232 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:02.232 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:02.232 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 140;0.104337420700193;171.162362694745;_
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response 140;0.104337420700193;171.162362694745;_
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:02.233 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:02.234 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:02.235 [DEBUG] [Thread-67055 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:02.235 [DEBUG] [Thread-67055 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:02.235 [DEBUG] [Thread-67055 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59207)
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:02.240 [DEBUG] [Thread-67055 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:02.248 [DEBUG] [Thread-67055 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:02.248 [INFO] [Thread-67055 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83544248, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104337420700193, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.993109, telescope_ra=16.1940344, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1684275700549, telescope_dec_j2k=-24.1890277087527, observability=1)
2025-11-17T10:03:05.098 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:05.098 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Status age = 2.8503024578094482s
2025-11-17T10:03:05.098 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:05.098 [DEBUG] [Thread-67056 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:05.098 [DEBUG] [Thread-67056 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:05.099 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 17;16.1948093;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21457;2460996.83547569;10.05137944;1.3;_
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response 17;16.1948093;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21457;2460996.83547569;10.05137944;1.3;_
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:05.100 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:05.101 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:05.101 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:05.101 [INFO] [Thread-67056 (handle)] [driver.py] [get_status()] Telra = 16.1948093, teldec = -24.256629
2025-11-17T10:03:05.101 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1948093 -24.256629
2025-11-17T10:03:05.101 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1948093 -24.256629
2025-11-17T10:03:05.102 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1948093 -24.256629
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 17;16.1948093;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21457;2460996.83547572;10.05137944;1.3;_16.1692020432703 -24.1890530813947
2025-11-17T10:03:05.103 [INFO] [Thread-67056 (handle)] [driver.py] [get_status()] ra_j2k = 16.1692020432703     dec_j2k = -24.1890530813947
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 140;0.104336899244937;171.162346601491;_
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response 140;0.104336899244937;171.162346601491;_
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:05.103 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:05.104 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:05.104 [DEBUG] [Thread-67056 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:05.104 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:05.104 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:05.104 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:05.105 [DEBUG] [Thread-67056 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:05.105 [DEBUG] [Thread-67056 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:05.105 [DEBUG] [Thread-67056 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:05.109 [DEBUG] [Thread-67056 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60271)
2025-11-17T10:03:05.109 [DEBUG] [Thread-67056 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:05.109 [DEBUG] [Thread-67056 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:05.110 [DEBUG] [Thread-67056 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:05.110 [DEBUG] [Thread-67056 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:05.110 [DEBUG] [Thread-67056 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:05.117 [DEBUG] [Thread-67056 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:05.117 [INFO] [Thread-67056 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83547569, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104336899244937, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.993109, telescope_ra=16.1948093, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.21457, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1692020432703, telescope_dec_j2k=-24.1890530813947, observability=1)
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.227530717849731s
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:14.345 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:14.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:14.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:14.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:14.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1974047;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21717;2460996.83558272;10.05396778;1.3;_
2025-11-17T10:03:14.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.1974047;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21717;2460996.83558272;10.05396778;1.3;_
2025-11-17T10:03:14.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:14.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:14.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:14.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:14.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:14.348 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.1974047, teldec = -24.256629
2025-11-17T10:03:14.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.1974047 -24.256629
2025-11-17T10:03:14.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.1974047 -24.256629
2025-11-17T10:03:14.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1974047 -24.256629
2025-11-17T10:03:14.349 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.1974047;-24.256629;50.108525;89.993109;50.08601;90.12017;13.21717;2460996.83558274;10.05396778;1.3;_16.1717960148425 -24.1891380834959
2025-11-17T10:03:14.349 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.1717960148425     dec_j2k = -24.1891380834959
2025-11-17T10:03:14.349 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:14.349 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:14.349 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104337019580765;171.162362694745;_
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104337019580765;171.162362694745;_
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:14.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:14.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:14.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:14.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:14.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44217)
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:14.356 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:14.364 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:03:14.364 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83558272, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104337019580765, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108525, telescope_az=89.993109, telescope_ra=16.1974047, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.21717, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:02:22.338586', telescope_ra_j2k=16.1717960148425, telescope_dec_j2k=-24.1891380834959, observability=1)
2025-11-17T10:03:14.364 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.466291427612305 seconds ago
2025-11-17T10:03:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.42995357513427734s
2025-11-17T10:03:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.42995357513427734
2025-11-17T10:03:22.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:22.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:22.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:22.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:22.481 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:22.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:22.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:22.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:22.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:22.482 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:03:22.482 [INFO] [ThreadPoolExecutor-2641_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:03:22.483 [INFO] [ThreadPoolExecutor-2641_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Status age = 8.791609764099121s
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:23.156 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 17;16.1998508;-24.256629;50.108524;89.993109;50.08601;90.12017;13.21961;2460996.83568469;10.05640722;1.3;_
2025-11-17T10:03:23.157 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response 17;16.1998508;-24.256629;50.108524;89.993109;50.08601;90.12017;13.21961;2460996.83568469;10.05640722;1.3;_
2025-11-17T10:03:23.158 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:23.158 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:23.158 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:23.159 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:23.159 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:23.159 [INFO] [Thread-67057 (handle)] [driver.py] [get_status()] Telra = 16.1998508, teldec = -24.256629
2025-11-17T10:03:23.159 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] UnCookCoordinates 16.1998508 -24.256629
2025-11-17T10:03:23.159 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.1998508 -24.256629
2025-11-17T10:03:23.159 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.1998508 -24.256629
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 17;16.1998508;-24.256629;50.108524;89.993109;50.08601;90.12017;13.21961;2460996.83568472;10.05640722;1.3;_16.174240770019 -24.1892182248981
2025-11-17T10:03:23.160 [INFO] [Thread-67057 (handle)] [driver.py] [get_status()] ra_j2k = 16.174240770019     dec_j2k = -24.1892182248981
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 140;0.104337581147964;171.162362694745;_
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response 140;0.104337581147964;171.162362694745;_
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:23.160 [DEBUG] [Thread-67057 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:23.161 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:23.161 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:23.161 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:23.162 [DEBUG] [Thread-67057 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:23.162 [DEBUG] [Thread-67057 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:23.162 [DEBUG] [Thread-67057 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:23.168 [DEBUG] [Thread-67057 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43357)
2025-11-17T10:03:23.168 [DEBUG] [Thread-67057 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:23.168 [DEBUG] [Thread-67057 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:23.169 [DEBUG] [Thread-67057 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:23.169 [DEBUG] [Thread-67057 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:23.169 [DEBUG] [Thread-67057 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:23.175 [DEBUG] [Thread-67057 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:23.176 [DEBUG] [Thread-67057 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:23.176 [INFO] [Thread-67057 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83568469, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104337581147964, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.1998508, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.21961, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.174240770019, telescope_dec_j2k=-24.1892182248981, observability=1)
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.0781757831573486s
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:26.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:26.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:26.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2007196;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22048;2460996.83572056;10.05727361;1.3;_
2025-11-17T10:03:26.256 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2007196;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22048;2460996.83572056;10.05727361;1.3;_
2025-11-17T10:03:26.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:26.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:26.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:26.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:26.257 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:26.257 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2007196, teldec = -24.256629
2025-11-17T10:03:26.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2007196 -24.256629
2025-11-17T10:03:26.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2007196 -24.256629
2025-11-17T10:03:26.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2007196 -24.256629
2025-11-17T10:03:26.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2007196;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22048;2460996.83572058;10.05727361;1.3;_16.1751090927027 -24.1892466961056
2025-11-17T10:03:26.258 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.1751090927027     dec_j2k = -24.1892466961056
2025-11-17T10:03:26.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:26.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10433794215545;171.162357330327;_
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10433794215545;171.162357330327;_
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:26.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:26.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:26.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:26.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:26.261 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:26.265 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52339)
2025-11-17T10:03:26.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:26.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:26.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:26.266 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:26.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:26.273 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:26.273 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83572056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433794215545, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.2007196, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.22048, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1751090927027, telescope_dec_j2k=-24.1892466961056, observability=1)
2025-11-17T10:03:28.978 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:03:28
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.704711437225342s
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:28.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:28.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:28.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2014753;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22124;2460996.83575208;10.05802722;1.3;_
2025-11-17T10:03:28.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.2014753;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22124;2460996.83575208;10.05802722;1.3;_
2025-11-17T10:03:28.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:28.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:28.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:28.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:28.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:28.981 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.2014753, teldec = -24.256629
2025-11-17T10:03:28.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2014753 -24.256629
2025-11-17T10:03:28.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2014753 -24.256629
2025-11-17T10:03:28.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2014753 -24.256629
2025-11-17T10:03:28.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2014753;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22124;2460996.83575211;10.05802722;1.3;_16.1758643776662 -24.1892714638296
2025-11-17T10:03:28.982 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.1758643776662     dec_j2k = -24.1892714638296
2025-11-17T10:03:28.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:28.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:28.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104337420700193;171.162357330327;_
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104337420700193;171.162357330327;_
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:28.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:28.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:28.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:28.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:28.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40373)
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:28.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:28.994 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:28.994 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83575208, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104337420700193, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.2014753, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.22124, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1758643776662, telescope_dec_j2k=-24.1892714638296, observability=1)
2025-11-17T10:03:41.225 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:41.225 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Status age = 12.23096227645874s
2025-11-17T10:03:41.225 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:41.225 [DEBUG] [Thread-67058 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:41.226 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:41.227 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 17;16.2048737;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22464;2460996.83589383;10.06141639;1.3;_
2025-11-17T10:03:41.227 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response 17;16.2048737;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22464;2460996.83589383;10.06141639;1.3;_
2025-11-17T10:03:41.227 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:41.227 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:41.227 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:41.228 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:41.228 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:41.228 [INFO] [Thread-67058 (handle)] [driver.py] [get_status()] Telra = 16.2048737, teldec = -24.256629
2025-11-17T10:03:41.228 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2048737 -24.256629
2025-11-17T10:03:41.228 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2048737 -24.256629
2025-11-17T10:03:41.228 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2048737 -24.256629
2025-11-17T10:03:41.229 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 17;16.2048737;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22464;2460996.83589385;10.06141639;1.3;_16.1792609128804 -24.189382878003
2025-11-17T10:03:41.229 [INFO] [Thread-67058 (handle)] [driver.py] [get_status()] ra_j2k = 16.1792609128804     dec_j2k = -24.189382878003
2025-11-17T10:03:41.229 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:41.229 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:41.229 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 140;0.104338022379335;171.162357330327;_
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response 140;0.104338022379335;171.162357330327;_
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:41.230 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:41.231 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:41.232 [DEBUG] [Thread-67058 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:41.232 [DEBUG] [Thread-67058 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:41.232 [DEBUG] [Thread-67058 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42601)
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:41.235 [DEBUG] [Thread-67058 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:41.242 [DEBUG] [Thread-67058 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:41.242 [INFO] [Thread-67058 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83589383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104338022379335, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.2048737, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.22464, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1792609128804, telescope_dec_j2k=-24.189382878003, observability=1)
2025-11-17T10:03:43.360 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.360 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:03:43.361 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:43.362 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:43.363 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:43.363 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.363 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:43.363 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:43.363 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.364 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:03:43.365 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.366 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:43.366 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:43.366 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:43.366 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:43.366 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Park
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:03:43.367 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:03:43.368 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 29;16.2054807;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22524;2460996.83591861;10.06202167;1.3;_Park Command Successful
2025-11-17T10:03:44.368 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:03:44.368 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:03:44.368 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:03:44.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:03:44.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:03:45.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:03:45.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:03:45.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:03:45.369 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:03:45.370 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:03:46.370 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:03:46.370 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:03:46.370 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:03:46.371 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:03:46.371 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:03:47.371 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:03:47.371 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:03:47.371 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:47.372 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:47.373 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:47.373 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:03:47.374 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:48.375 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:48.375 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:48.375 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:48.375 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:48.375 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:03:48.376 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:03:48.377 [DEBUG] [ThreadPoolExecutor-2640_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:48.377 [INFO] [ThreadPoolExecutor-2640_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:03:59.343 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Status age = 18.101068019866943s
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:03:59.344 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 17;16.2099156;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22968;2460996.83610353;10.06644444;1.3;_
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response 17;16.2099156;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22968;2460996.83610353;10.06644444;1.3;_
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:03:59.345 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:03:59.346 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:59.346 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:03:59.346 [INFO] [Thread-67059 (handle)] [driver.py] [get_status()] Telra = 16.2099156, teldec = -24.256629
2025-11-17T10:03:59.346 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2099156 -24.256629
2025-11-17T10:03:59.346 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2099156 -24.256629
2025-11-17T10:03:59.347 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2099156 -24.256629
2025-11-17T10:03:59.347 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 17;16.2099156;-24.256629;50.108524;89.993109;50.08601;90.12017;13.22968;2460996.83610355;10.06644444;1.3;_16.1843000512212 -24.1895482729834
2025-11-17T10:03:59.347 [INFO] [Thread-67059 (handle)] [driver.py] [get_status()] ra_j2k = 16.1843000512212     dec_j2k = -24.1895482729834
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 140;0.104337701483793;171.162351965909;_
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response 140;0.104337701483793;171.162351965909;_
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:59.348 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:03:59.349 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:03:59.350 [DEBUG] [Thread-67059 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:59.350 [DEBUG] [Thread-67059 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:03:59.350 [DEBUG] [Thread-67059 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34157)
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:03:59.351 [DEBUG] [Thread-67059 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:03:59.359 [DEBUG] [Thread-67059 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:03:59.359 [INFO] [Thread-67059 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83610353, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104337701483793, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.2099156, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.22968, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1843000512212, telescope_dec_j2k=-24.1895482729834, observability=1)
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Status age = 2.9198801517486572s
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:02.279 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:02.280 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:02.281 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:02.281 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 17;16.2107473;-24.256629;50.108524;89.993109;50.08601;90.12017;13.23051;2460996.83613751;10.06727389;1.3;_
2025-11-17T10:04:02.281 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response 17;16.2107473;-24.256629;50.108524;89.993109;50.08601;90.12017;13.23051;2460996.83613751;10.06727389;1.3;_
2025-11-17T10:04:02.281 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:02.281 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:02.282 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:02.282 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:02.282 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:02.283 [INFO] [Thread-67060 (handle)] [driver.py] [get_status()] Telra = 16.2107473, teldec = -24.256629
2025-11-17T10:04:02.283 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2107473 -24.256629
2025-11-17T10:04:02.283 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2107473 -24.256629
2025-11-17T10:04:02.283 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2107473 -24.256629
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 17;16.2107473;-24.256629;50.108524;89.993109;50.08601;90.12017;13.23051;2460996.83613755;10.06727389;1.3;_16.1851312962335 -24.1895755675916
2025-11-17T10:04:02.284 [INFO] [Thread-67060 (handle)] [driver.py] [get_status()] ra_j2k = 16.1851312962335     dec_j2k = -24.1895755675916
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 140;0.104338062491278;171.162351965909;_
2025-11-17T10:04:02.284 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response 140;0.104338062491278;171.162351965909;_
2025-11-17T10:04:02.285 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:02.285 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:02.285 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:02.285 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:02.286 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:02.287 [DEBUG] [Thread-67060 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:02.287 [DEBUG] [Thread-67060 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:02.287 [DEBUG] [Thread-67060 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44843)
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:02.288 [DEBUG] [Thread-67060 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:02.295 [DEBUG] [Thread-67060 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:02.295 [INFO] [Thread-67060 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83613751, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104338062491278, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108524, telescope_az=89.993109, telescope_ra=16.2107473, telescope_dec=-24.256629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23051, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1851312962335, telescope_dec_j2k=-24.1895755675916, observability=1)
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.1286039352417s
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:14.424 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:14.425 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2141171;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23388;2460996.83627807;10.07063444;1.3;_
2025-11-17T10:04:14.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.2141171;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23388;2460996.83627807;10.07063444;1.3;_
2025-11-17T10:04:14.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:14.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:14.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:14.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:14.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:14.427 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.2141171, teldec = -24.256628
2025-11-17T10:04:14.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.2141171 -24.256628
2025-11-17T10:04:14.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.2141171 -24.256628
2025-11-17T10:04:14.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2141171 -24.256628
2025-11-17T10:04:14.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2141171;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23388;2460996.8362781;10.07063444;1.3;_16.188499254585 -24.1896851903203
2025-11-17T10:04:14.428 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.188499254585     dec_j2k = -24.1896851903203
2025-11-17T10:04:14.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:14.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:14.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10433866417042;171.162357330327;_
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10433866417042;171.162357330327;_
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:14.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:14.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:14.431 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41623)
2025-11-17T10:04:14.431 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:14.431 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:14.431 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:14.431 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:14.432 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:14.439 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:04:14.439 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83627807, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433866417042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.2141171, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23388, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.188499254585, telescope_dec_j2k=-24.1896851903203, observability=1)
2025-11-17T10:04:14.439 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.46147704124451 seconds ago
2025-11-17T10:04:14.813 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:14.813 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.374065637588501s
2025-11-17T10:04:14.813 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.374065637588501
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Status age = 2.974937915802002s
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:17.414 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:17.415 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:17.415 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:17.415 [DEBUG] [Thread-67061 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 17;16.2149582;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23472;2460996.83631269;10.07147333;1.3;_
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response 17;16.2149582;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23472;2460996.83631269;10.07147333;1.3;_
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:17.416 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:17.417 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:17.417 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:17.417 [INFO] [Thread-67061 (handle)] [driver.py] [get_status()] Telra = 16.2149582, teldec = -24.256628
2025-11-17T10:04:17.417 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2149582 -24.256628
2025-11-17T10:04:17.417 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2149582 -24.256628
2025-11-17T10:04:17.418 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2149582 -24.256628
2025-11-17T10:04:17.418 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 17;16.2149582;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23472;2460996.83631271;10.07147333;1.3;_16.1893398952799 -24.1897128099555
2025-11-17T10:04:17.418 [INFO] [Thread-67061 (handle)] [driver.py] [get_status()] ra_j2k = 16.1893398952799     dec_j2k = -24.1897128099555
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 140;0.104339105401791;171.162368059163;_
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response 140;0.104339105401791;171.162368059163;_
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:17.419 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:17.420 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:17.420 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:17.421 [DEBUG] [Thread-67061 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:17.422 [DEBUG] [Thread-67061 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:17.422 [DEBUG] [Thread-67061 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58963)
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:17.427 [DEBUG] [Thread-67061 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:17.434 [DEBUG] [Thread-67061 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:17.434 [DEBUG] [Thread-67061 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:17.434 [DEBUG] [Thread-67061 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:17.434 [DEBUG] [Thread-67061 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:17.434 [DEBUG] [Thread-67061 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:17.435 [DEBUG] [Thread-67061 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:17.435 [DEBUG] [Thread-67061 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:17.435 [DEBUG] [Thread-67061 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:17.435 [DEBUG] [Thread-67061 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:17.435 [INFO] [Thread-67061 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83631269, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104339105401791, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.2149582, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23472, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:03:22.480301', telescope_ra_j2k=16.1893398952799, telescope_dec_j2k=-24.1897128099555, observability=1)
2025-11-17T10:04:22.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:22.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:22.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:22.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:22.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:22.624 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:22.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:22.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:22.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:22.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:22.625 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:04:22.625 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:04:22.626 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:04:22.627 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:23.627 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:04:23.628 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:23.629 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:23.630 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:23.630 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:23.630 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:23.630 [DEBUG] [ThreadPoolExecutor-2642_0] [payload.py] [to_registers()] [0]
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54723)
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:23.634 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:23.641 [DEBUG] [ThreadPoolExecutor-2642_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.933948516845703s
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:25.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:25.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:25.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2171891;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23695;2460996.83640476;10.07369806;1.3;_
2025-11-17T10:04:25.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2171891;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23695;2460996.83640476;10.07369806;1.3;_
2025-11-17T10:04:25.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:25.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:25.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:25.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:25.372 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:25.372 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2171891, teldec = -24.256628
2025-11-17T10:04:25.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2171891 -24.256628
2025-11-17T10:04:25.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2171891 -24.256628
2025-11-17T10:04:25.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2171891 -24.256628
2025-11-17T10:04:25.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2171891;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23695;2460996.83640478;10.07369806;1.3;_16.1915695778367 -24.1897860831673
2025-11-17T10:04:25.373 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.1915695778367     dec_j2k = -24.1897860831673
2025-11-17T10:04:25.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:25.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:25.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10433894495402;171.162351965909;_
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10433894495402;171.162351965909;_
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:25.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:25.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:25.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:25.376 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:25.376 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40705)
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:25.382 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:25.389 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:25.390 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:25.390 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:25.390 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83640476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433894495402, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.2171891, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.1915695778367, telescope_dec_j2k=-24.1897860831673, observability=1)
2025-11-17T10:04:29.055 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:04:29
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.665374755859375s
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:29.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:29.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:29.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.218216;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23798;2460996.83644742;10.07472222;1.3;_
2025-11-17T10:04:29.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.218216;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23798;2460996.83644742;10.07472222;1.3;_
2025-11-17T10:04:29.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:29.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:29.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:29.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:29.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:29.058 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.218216, teldec = -24.256628
2025-11-17T10:04:29.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.218216 -24.256628
2025-11-17T10:04:29.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.218216 -24.256628
2025-11-17T10:04:29.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.218216 -24.256628
2025-11-17T10:04:29.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.218216;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23798;2460996.83644744;10.07472222;1.3;_16.1925959178287 -24.1898198191797
2025-11-17T10:04:29.059 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.1925959178287     dec_j2k = -24.1898198191797
2025-11-17T10:04:29.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:29.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:29.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104339145513734;171.162368059163;_
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104339145513734;171.162368059163;_
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:29.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:29.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:29.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:29.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59183)
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:29.067 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:29.075 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:29.075 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83644742, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104339145513734, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.218216, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23798, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.1925959178287, telescope_dec_j2k=-24.1898198191797, observability=1)
2025-11-17T10:04:35.526 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Status age = 6.451353073120117s
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:35.527 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:35.528 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 17;16.2199987;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23976;2460996.83652231;10.0765;1.3;_
2025-11-17T10:04:35.528 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response 17;16.2199987;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23976;2460996.83652231;10.0765;1.3;_
2025-11-17T10:04:35.528 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:35.528 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:35.528 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:35.529 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:35.529 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:35.529 [INFO] [Thread-67062 (handle)] [driver.py] [get_status()] Telra = 16.2199987, teldec = -24.256628
2025-11-17T10:04:35.530 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2199987 -24.256628
2025-11-17T10:04:35.530 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2199987 -24.256628
2025-11-17T10:04:35.530 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2199987 -24.256628
2025-11-17T10:04:35.531 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 17;16.2199987;-24.256628;50.108523;89.993109;50.08601;90.12017;13.23976;2460996.83652234;10.0765;1.3;_16.1943776462385 -24.1898783966233
2025-11-17T10:04:35.531 [INFO] [Thread-67062 (handle)] [driver.py] [get_status()] ra_j2k = 16.1943776462385     dec_j2k = -24.1898783966233
2025-11-17T10:04:35.531 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:35.531 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:35.531 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 140;0.104339025177905;171.162357330327;_
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response 140;0.104339025177905;171.162357330327;_
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:35.532 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:35.533 [DEBUG] [Thread-67062 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:35.534 [DEBUG] [Thread-67062 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:35.534 [DEBUG] [Thread-67062 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47335)
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:35.541 [DEBUG] [Thread-67062 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:35.548 [DEBUG] [Thread-67062 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:35.549 [INFO] [Thread-67062 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83652231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104339025177905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.2199987, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.23976, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.1943776462385, telescope_dec_j2k=-24.1898783966233, observability=1)
2025-11-17T10:04:48.642 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:48.642 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:48.642 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:48.642 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:48.642 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:48.643 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:04:48.644 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:04:48.645 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Status age = 18.044708967208862s
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:04:53.593 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:04:53.594 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:04:53.595 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 17;16.2250403;-24.256628;50.108523;89.993109;50.08601;90.12017;13.2448;2460996.83673142;10.08152778;1.3;_
2025-11-17T10:04:53.595 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response 17;16.2250403;-24.256628;50.108523;89.993109;50.08601;90.12017;13.2448;2460996.83673142;10.08152778;1.3;_
2025-11-17T10:04:53.595 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:04:53.595 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:04:53.595 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:04:53.596 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:53.596 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:04:53.596 [INFO] [Thread-67063 (handle)] [driver.py] [get_status()] Telra = 16.2250403, teldec = -24.256628
2025-11-17T10:04:53.596 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2250403 -24.256628
2025-11-17T10:04:53.596 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2250403 -24.256628
2025-11-17T10:04:53.596 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2250403 -24.256628
2025-11-17T10:04:53.597 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 17;16.2250403;-24.256628;50.108523;89.993109;50.08601;90.12017;13.2448;2460996.83673145;10.08152778;1.3;_16.1994165025302 -24.190044137808
2025-11-17T10:04:53.597 [INFO] [Thread-67063 (handle)] [driver.py] [get_status()] ra_j2k = 16.1994165025302     dec_j2k = -24.190044137808
2025-11-17T10:04:53.597 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:04:53.597 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:04:53.597 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 140;0.10433966696899;171.162362694745;_
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response 140;0.10433966696899;171.162362694745;_
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:53.598 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:04:53.600 [DEBUG] [Thread-67063 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49165)
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:04:53.606 [DEBUG] [Thread-67063 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:04:53.613 [DEBUG] [Thread-67063 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:04:53.613 [INFO] [Thread-67063 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83673142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433966696899, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108523, telescope_az=89.993109, telescope_ra=16.2250403, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2448, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.1994165025302, telescope_dec_j2k=-24.190044137808, observability=1)
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Status age = 8.712353467941284s
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:02.326 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 17;16.2274683;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24723;2460996.83683249;10.08394917;1.3;_
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response 17;16.2274683;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24723;2460996.83683249;10.08394917;1.3;_
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:02.327 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:02.328 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:02.328 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:02.328 [INFO] [Thread-67064 (handle)] [driver.py] [get_status()] Telra = 16.2274683, teldec = -24.256628
2025-11-17T10:05:02.328 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2274683 -24.256628
2025-11-17T10:05:02.328 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2274683 -24.256628
2025-11-17T10:05:02.328 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2274683 -24.256628
2025-11-17T10:05:02.329 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 17;16.2274683;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24723;2460996.83683251;10.08394917;1.3;_16.2018431832975 -24.1901239997796
2025-11-17T10:05:02.329 [INFO] [Thread-67064 (handle)] [driver.py] [get_status()] ra_j2k = 16.2018431832975     dec_j2k = -24.1901239997796
2025-11-17T10:05:02.329 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:02.329 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:02.329 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 140;0.104339025177905;171.162351965909;_
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response 140;0.104339025177905;171.162351965909;_
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:02.330 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:02.331 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:02.332 [DEBUG] [Thread-67064 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:02.332 [DEBUG] [Thread-67064 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:02.333 [DEBUG] [Thread-67064 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59901)
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:02.338 [DEBUG] [Thread-67064 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:02.346 [DEBUG] [Thread-67064 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:05:02.346 [INFO] [Thread-67064 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83683249, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104339025177905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108522, telescope_az=89.993109, telescope_ra=16.2274683, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.24723, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.2018431832975, telescope_dec_j2k=-24.1901239997796, observability=1)
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Status age = 9.311148166656494s
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:11.657 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:11.658 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:11.659 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 17;16.2300827;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24984;2460996.8369405;10.08655639;1.3;_
2025-11-17T10:05:11.659 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response 17;16.2300827;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24984;2460996.8369405;10.08655639;1.3;_
2025-11-17T10:05:11.659 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:11.659 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:11.659 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:11.660 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:11.660 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:11.660 [INFO] [Thread-67065 (handle)] [driver.py] [get_status()] Telra = 16.2300827, teldec = -24.256628
2025-11-17T10:05:11.660 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2300827 -24.256628
2025-11-17T10:05:11.660 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2300827 -24.256628
2025-11-17T10:05:11.661 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2300827 -24.256628
2025-11-17T10:05:11.662 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 17;16.2300827;-24.256628;50.108522;89.993109;50.08601;90.12017;13.24984;2460996.83694053;10.08655639;1.3;_16.2044561643266 -24.1902100234257
2025-11-17T10:05:11.662 [INFO] [Thread-67065 (handle)] [driver.py] [get_status()] ra_j2k = 16.2044561643266     dec_j2k = -24.1902100234257
2025-11-17T10:05:11.662 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:11.662 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 140;0.104340108200361;171.162357330327;_
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response 140;0.104340108200361;171.162357330327;_
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:11.663 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:11.664 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:11.665 [DEBUG] [Thread-67065 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:11.665 [DEBUG] [Thread-67065 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:11.665 [DEBUG] [Thread-67065 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38487)
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:11.671 [DEBUG] [Thread-67065 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:11.678 [DEBUG] [Thread-67065 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:11.679 [DEBUG] [Thread-67065 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:05:11.679 [INFO] [Thread-67065 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8369405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340108200361, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108522, telescope_az=89.993109, telescope_ra=16.2300827, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.24984, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.2044561643266, telescope_dec_j2k=-24.1902100234257, observability=1)
2025-11-17T10:05:14.499 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:05:14.499 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.820793867111206s
2025-11-17T10:05:14.499 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:14.499 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:14.499 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.230867;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25063;2460996.83697338;10.08733861;1.3;_
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.230867;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25063;2460996.83697338;10.08733861;1.3;_
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:14.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:14.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:14.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:14.502 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:14.502 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.230867, teldec = -24.256628
2025-11-17T10:05:14.502 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.230867 -24.256628
2025-11-17T10:05:14.502 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.230867 -24.256628
2025-11-17T10:05:14.502 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.230867 -24.256628
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.230867;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25063;2460996.83697341;10.08733861;1.3;_16.2052400389578 -24.1902358360411
2025-11-17T10:05:14.503 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.2052400389578     dec_j2k = -24.1902358360411
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104339907640647;171.162351965909;_
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104339907640647;171.162351965909;_
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:14.503 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:14.504 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:14.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:14.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:14.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:14.510 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33687)
2025-11-17T10:05:14.510 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:14.510 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:14.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:14.511 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:14.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:14.518 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:05:14.518 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83697338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104339907640647, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108522, telescope_az=89.993109, telescope_ra=16.230867, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.25063, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:04:22.622754', telescope_ra_j2k=16.2052400389578, telescope_dec_j2k=-24.1902358360411, observability=1)
2025-11-17T10:05:14.518 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.46322703361511 seconds ago
2025-11-17T10:05:14.784 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.266582727432251s
2025-11-17T10:05:14.785 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.266582727432251
2025-11-17T10:05:22.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:22.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:22.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:22.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:22.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:22.768 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:22.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:22.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:22.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:22.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:22.769 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:05:22.769 [INFO] [ThreadPoolExecutor-2643_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:05:22.769 [INFO] [ThreadPoolExecutor-2643_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.965641975402832s
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:24.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2336496;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25341;2460996.83708895;10.09011361;1.3;_
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2336496;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25341;2460996.83708895;10.09011361;1.3;_
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:24.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:24.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:24.486 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:24.486 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2336496, teldec = -24.256628
2025-11-17T10:05:24.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2336496 -24.256628
2025-11-17T10:05:24.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2336496 -24.256628
2025-11-17T10:05:24.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2336496 -24.256628
2025-11-17T10:05:24.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2336496;-24.256628;50.108522;89.993109;50.08601;90.12017;13.25341;2460996.83708897;10.09011361;1.3;_16.2080211309622 -24.1903274390144
2025-11-17T10:05:24.487 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.2080211309622     dec_j2k = -24.1903274390144
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10433994775259;171.162368059163;_
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10433994775259;171.162368059163;_
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:24.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:24.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:24.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:24.490 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:24.490 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:24.496 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58757)
2025-11-17T10:05:24.496 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:24.497 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:24.497 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:24.497 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:24.497 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:24.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:24.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:24.505 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:05:24.505 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83708895, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10433994775259, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108522, telescope_az=89.993109, telescope_ra=16.2336496, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.25341, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.2080211309622, telescope_dec_j2k=-24.1903274390144, observability=1)
2025-11-17T10:05:29.136 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:05:29
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.631255388259888s
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:29.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:29.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:29.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2349382;-24.256628;50.108522;89.993109;50.08601;90.12017;13.2547;2460996.8371428;10.09139861;1.3;_
2025-11-17T10:05:29.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.2349382;-24.256628;50.108522;89.993109;50.08601;90.12017;13.2547;2460996.8371428;10.09139861;1.3;_
2025-11-17T10:05:29.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:29.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:29.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:29.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:29.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:29.139 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.2349382, teldec = -24.256628
2025-11-17T10:05:29.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2349382 -24.256628
2025-11-17T10:05:29.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2349382 -24.256628
2025-11-17T10:05:29.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2349382 -24.256628
2025-11-17T10:05:29.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2349382;-24.256628;50.108522;89.993109;50.08601;90.12017;13.2547;2460996.83714282;10.09139861;1.3;_16.209309033235 -24.1903698717655
2025-11-17T10:05:29.140 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.209309033235     dec_j2k = -24.1903698717655
2025-11-17T10:05:29.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:29.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104340629655618;171.162357330327;_
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104340629655618;171.162357330327;_
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:29.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:29.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:29.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:29.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:29.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:29.150 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54697)
2025-11-17T10:05:29.150 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:29.150 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:29.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:29.151 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:29.151 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:29.158 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:05:29.158 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8371428, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340629655618, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108522, telescope_az=89.993109, telescope_ra=16.2349382, telescope_dec=-24.256628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2547, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.209309033235, telescope_dec_j2k=-24.1903698717655, observability=1)
2025-11-17T10:05:29.783 [DEBUG] [Thread-67066 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:29.783 [DEBUG] [Thread-67066 (handle)] [server.py] [get_status()] Status age = 0.6250545978546143s
2025-11-17T10:05:29.783 [DEBUG] [Thread-67066 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6250545978546143
2025-11-17T10:05:43.645 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.645 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.645 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:43.645 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:43.645 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:05:43.646 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:43.647 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:43.648 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.649 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:43.650 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:43.651 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:43.651 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:43.651 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:43.651 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:43.652 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:43.652 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:43.652 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Park
2025-11-17T10:05:43.652 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:05:43.652 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:05:43.653 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 29;16.2389803;-24.256627;50.108522;89.993108;50.08601;90.12017;13.25874;2460996.8373108;10.09542972;1.3;_Park Command Successful
2025-11-17T10:05:44.653 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:05:44.653 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:05:44.653 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:05:44.654 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:05:44.654 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:05:45.654 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:05:45.654 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:05:45.655 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:05:45.656 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:05:45.656 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:05:46.656 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:05:46.656 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:05:46.656 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:05:46.657 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:05:46.657 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:05:47.657 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:05:47.657 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:05:47.657 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:47.658 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:05:47.659 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:05:47.660 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Status age = 18.699926137924194s
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:47.858 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:05:47.859 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:05:47.860 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 17;16.240148;-24.256627;50.108521;89.993108;50.08601;90.12017;13.25991;2460996.83735948;10.09659417;1.3;_
2025-11-17T10:05:47.860 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response 17;16.240148;-24.256627;50.108521;89.993108;50.08601;90.12017;13.25991;2460996.83735948;10.09659417;1.3;_
2025-11-17T10:05:47.860 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:05:47.860 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:05:47.860 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:05:47.861 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:47.861 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:05:47.861 [INFO] [Thread-67067 (handle)] [driver.py] [get_status()] Telra = 16.240148, teldec = -24.256627
2025-11-17T10:05:47.861 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] UnCookCoordinates 16.240148 -24.256627
2025-11-17T10:05:47.861 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.240148 -24.256627
2025-11-17T10:05:47.861 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.240148 -24.256627
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 17;16.240148;-24.256627;50.108521;89.993108;50.08601;90.12017;13.25991;2460996.83735951;10.09659417;1.3;_16.2145160164677 -24.1905405053052
2025-11-17T10:05:47.862 [INFO] [Thread-67067 (handle)] [driver.py] [get_status()] ra_j2k = 16.2145160164677     dec_j2k = -24.1905405053052
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 140;0.104340429095904;171.162368059163;_
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response 140;0.104340429095904;171.162368059163;_
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:47.862 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:05:47.863 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:05:47.864 [DEBUG] [Thread-67067 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:47.864 [DEBUG] [Thread-67067 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:05:47.864 [DEBUG] [Thread-67067 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:05:47.869 [DEBUG] [Thread-67067 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36199)
2025-11-17T10:05:47.870 [DEBUG] [Thread-67067 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:05:47.870 [DEBUG] [Thread-67067 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:05:47.870 [DEBUG] [Thread-67067 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:05:47.870 [DEBUG] [Thread-67067 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:05:47.870 [DEBUG] [Thread-67067 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:05:47.877 [DEBUG] [Thread-67067 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:05:47.877 [INFO] [Thread-67067 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83735948, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340429095904, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.240148, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.25991, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.2145160164677, telescope_dec_j2k=-24.1905405053052, observability=1)
2025-11-17T10:05:48.660 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:48.660 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:48.660 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:05:48.660 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:05:48.660 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:05:48.661 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:05:48.662 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:05:48.662 [DEBUG] [ThreadPoolExecutor-2642_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:05:48.662 [INFO] [ThreadPoolExecutor-2642_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Status age = 14.507918119430542s
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:02.385 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:02.386 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:02.387 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 17;16.244211;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26397;2460996.83752763;10.10064611;1.3;_
2025-11-17T10:06:02.387 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response 17;16.244211;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26397;2460996.83752763;10.10064611;1.3;_
2025-11-17T10:06:02.387 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:02.387 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:02.387 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:02.388 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:02.388 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:02.388 [INFO] [Thread-67068 (handle)] [driver.py] [get_status()] Telra = 16.244211, teldec = -24.256627
2025-11-17T10:06:02.388 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] UnCookCoordinates 16.244211 -24.256627
2025-11-17T10:06:02.388 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.244211 -24.256627
2025-11-17T10:06:02.388 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.244211 -24.256627
2025-11-17T10:06:02.389 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 17;16.244211;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26397;2460996.83752765;10.10064611;1.3;_16.2185768240117 -24.1906744451391
2025-11-17T10:06:02.389 [INFO] [Thread-67068 (handle)] [driver.py] [get_status()] ra_j2k = 16.2185768240117     dec_j2k = -24.1906744451391
2025-11-17T10:06:02.389 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:02.389 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:02.389 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 140;0.104340910439217;171.162351965909;_
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response 140;0.104340910439217;171.162351965909;_
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:02.390 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:02.391 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:02.392 [DEBUG] [Thread-67068 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:02.392 [DEBUG] [Thread-67068 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:02.392 [DEBUG] [Thread-67068 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:02.399 [DEBUG] [Thread-67068 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46935)
2025-11-17T10:06:02.399 [DEBUG] [Thread-67068 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:02.399 [DEBUG] [Thread-67068 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:02.399 [DEBUG] [Thread-67068 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:02.400 [DEBUG] [Thread-67068 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:02.400 [DEBUG] [Thread-67068 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:02.407 [DEBUG] [Thread-67068 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:02.407 [DEBUG] [Thread-67068 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:02.407 [DEBUG] [Thread-67068 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:02.407 [DEBUG] [Thread-67068 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:02.408 [DEBUG] [Thread-67068 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:02.408 [DEBUG] [Thread-67068 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:02.408 [DEBUG] [Thread-67068 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:02.408 [DEBUG] [Thread-67068 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:02.408 [DEBUG] [Thread-67068 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:06:02.408 [INFO] [Thread-67068 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83752763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340910439217, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.244211, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.26397, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.2185768240117, telescope_dec_j2k=-24.1906744451391, observability=1)
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Status age = 3.5029778480529785s
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:05.911 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:05.912 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:05.913 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 17;16.2451923;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26495;2460996.83756844;10.10162472;1.3;_
2025-11-17T10:06:05.913 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response 17;16.2451923;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26495;2460996.83756844;10.10162472;1.3;_
2025-11-17T10:06:05.913 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:05.913 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:05.913 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:05.914 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:05.914 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:05.914 [INFO] [Thread-67069 (handle)] [driver.py] [get_status()] Telra = 16.2451923, teldec = -24.256627
2025-11-17T10:06:05.914 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2451923 -24.256627
2025-11-17T10:06:05.914 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2451923 -24.256627
2025-11-17T10:06:05.914 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2451923 -24.256627
2025-11-17T10:06:05.915 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 17;16.2451923;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26495;2460996.83756846;10.10162472;1.3;_16.2195575950674 -24.1907068058266
2025-11-17T10:06:05.915 [INFO] [Thread-67069 (handle)] [driver.py] [get_status()] ra_j2k = 16.2195575950674     dec_j2k = -24.1907068058266
2025-11-17T10:06:05.915 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:05.915 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:05.916 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:05.916 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 140;0.104340870327275;171.162357330327;_
2025-11-17T10:06:05.916 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response 140;0.104340870327275;171.162357330327;_
2025-11-17T10:06:05.917 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:05.917 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:05.917 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:05.917 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:05.918 [DEBUG] [Thread-67069 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:05.925 [DEBUG] [Thread-67069 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54881)
2025-11-17T10:06:05.925 [DEBUG] [Thread-67069 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:05.925 [DEBUG] [Thread-67069 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:05.926 [DEBUG] [Thread-67069 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:05.926 [DEBUG] [Thread-67069 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:05.926 [DEBUG] [Thread-67069 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:05.933 [DEBUG] [Thread-67069 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:06:05.933 [INFO] [Thread-67069 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83756844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340870327275, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.2451923, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.26495, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.2195575950674, telescope_dec_j2k=-24.1907068058266, observability=1)
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.644990921020508s
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:14.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:14.579 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:14.580 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2475827;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26734;2460996.83766875;10.10400861;1.3;_
2025-11-17T10:06:14.580 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.2475827;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26734;2460996.83766875;10.10400861;1.3;_
2025-11-17T10:06:14.580 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:14.580 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:14.580 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:14.581 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:14.581 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:14.581 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.2475827, teldec = -24.256627
2025-11-17T10:06:14.581 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.2475827 -24.256627
2025-11-17T10:06:14.581 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.2475827 -24.256627
2025-11-17T10:06:14.581 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2475827 -24.256627
2025-11-17T10:06:14.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2475827;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26734;2460996.83766877;10.10400861;1.3;_16.221946707529 -24.1907856534556
2025-11-17T10:06:14.585 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.221946707529     dec_j2k = -24.1907856534556
2025-11-17T10:06:14.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:14.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:14.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104340790103389;171.162357330327;_
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104340790103389;171.162357330327;_
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:14.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:14.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34239)
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:14.590 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:14.598 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:06:14.599 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83766875, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340790103389, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.2475827, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.26734, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:05:22.766662', telescope_ra_j2k=16.221946707529, telescope_dec_j2k=-24.1907856534556, observability=1)
2025-11-17T10:06:14.599 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.46260643005371 seconds ago
2025-11-17T10:06:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.1895437240600586s
2025-11-17T10:06:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.1895437240600586
2025-11-17T10:06:22.908 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:22.908 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:22.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:22.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:22.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:22.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:22.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:22.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:22.909 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:06:22.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:22.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:22.911 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:22.911 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:06:22.912 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:23.591 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:23.591 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.992982864379883s
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:23.592 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:23.593 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:23.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2500946;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26986;2460996.83777308;10.10651361;1.3;_
2025-11-17T10:06:23.594 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2500946;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26986;2460996.83777308;10.10651361;1.3;_
2025-11-17T10:06:23.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:23.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:23.594 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:23.595 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:23.595 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:23.595 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2500946, teldec = -24.256627
2025-11-17T10:06:23.595 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2500946 -24.256627
2025-11-17T10:06:23.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2500946 -24.256627
2025-11-17T10:06:23.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2500946 -24.256627
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2500946;-24.256627;50.108521;89.993108;50.08601;90.12017;13.26986;2460996.83777311;10.10651361;1.3;_16.2244572559908 -24.1908685370724
2025-11-17T10:06:23.597 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.2244572559908     dec_j2k = -24.1908685370724
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104341592342245;171.162357330327;_
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104341592342245;171.162357330327;_
2025-11-17T10:06:23.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:23.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:23.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:23.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:23.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:23.598 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:23.599 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:23.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:23.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:23.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:23.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:23.600 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:23.600 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39191)
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:23.601 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:23.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:23.609 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:23.609 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:23.609 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:06:23.609 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83777308, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104341592342245, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.2500946, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.26986, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2244572559908, telescope_dec_j2k=-24.1908685370724, observability=1)
2025-11-17T10:06:23.913 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:23.913 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:23.913 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:23.913 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:23.913 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:06:23.914 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:23.915 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:23.916 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:23.916 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:23.916 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:23.916 [DEBUG] [ThreadPoolExecutor-2644_0] [payload.py] [to_registers()] [0]
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60379)
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:23.923 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:23.931 [DEBUG] [ThreadPoolExecutor-2644_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:24.035 [DEBUG] [Thread-67070 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:24.035 [DEBUG] [Thread-67070 (handle)] [server.py] [get_status()] Status age = 0.42595982551574707s
2025-11-17T10:06:24.035 [DEBUG] [Thread-67070 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.42595982551574707
2025-11-17T10:06:29.219 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:06:29
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.610435247421265s
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:29.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:29.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:29.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2516823;-24.256627;50.108521;89.993108;50.08601;90.12017;13.27144;2460996.83783821;10.10809694;1.3;_
2025-11-17T10:06:29.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.2516823;-24.256627;50.108521;89.993108;50.08601;90.12017;13.27144;2460996.83783821;10.10809694;1.3;_
2025-11-17T10:06:29.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:29.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:29.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:29.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:29.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:29.222 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.2516823, teldec = -24.256627
2025-11-17T10:06:29.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2516823 -24.256627
2025-11-17T10:06:29.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2516823 -24.256627
2025-11-17T10:06:29.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2516823 -24.256627
2025-11-17T10:06:29.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2516823;-24.256627;50.108521;89.993108;50.08601;90.12017;13.27144;2460996.83783823;10.10809694;1.3;_16.2260441024857 -24.1909209403716
2025-11-17T10:06:29.223 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.2260441024857     dec_j2k = -24.1909209403716
2025-11-17T10:06:29.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:29.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104340990663103;171.162368059163;_
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104340990663103;171.162368059163;_
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:29.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:29.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:29.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:29.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:29.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:29.231 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41811)
2025-11-17T10:06:29.232 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:29.232 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:29.232 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:29.232 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:29.232 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:29.239 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:06:29.239 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83783821, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104340990663103, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108521, telescope_az=89.993108, telescope_ra=16.2516823, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.27144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2260441024857, telescope_dec_j2k=-24.1909209403716, observability=1)
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Status age = 12.86125373840332s
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:06:42.101 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:06:42.102 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 17;16.2552484;-24.256627;50.10852;89.993108;50.08601;90.12017;13.27501;2460996.83798729;10.11165333;1.3;_
2025-11-17T10:06:42.102 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response 17;16.2552484;-24.256627;50.10852;89.993108;50.08601;90.12017;13.27501;2460996.83798729;10.11165333;1.3;_
2025-11-17T10:06:42.102 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:06:42.102 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:06:42.103 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:06:42.103 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:42.103 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:06:42.103 [INFO] [Thread-67071 (handle)] [driver.py] [get_status()] Telra = 16.2552484, teldec = -24.256627
2025-11-17T10:06:42.104 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2552484 -24.256627
2025-11-17T10:06:42.104 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2552484 -24.256627
2025-11-17T10:06:42.104 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2552484 -24.256627
2025-11-17T10:06:42.105 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 17;16.2552484;-24.256627;50.10852;89.993108;50.08601;90.12017;13.27501;2460996.83798732;10.11165333;1.3;_16.2296082876021 -24.1910386844677
2025-11-17T10:06:42.105 [INFO] [Thread-67071 (handle)] [driver.py] [get_status()] ra_j2k = 16.2296082876021     dec_j2k = -24.1910386844677
2025-11-17T10:06:42.105 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:06:42.105 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:06:42.105 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 140;0.104341672566131;171.162357330327;_
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response 140;0.104341672566131;171.162357330327;_
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:42.106 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:06:42.107 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:06:42.108 [DEBUG] [Thread-67071 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:42.108 [DEBUG] [Thread-67071 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:06:42.108 [DEBUG] [Thread-67071 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39203)
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:06:42.115 [DEBUG] [Thread-67071 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:06:42.122 [DEBUG] [Thread-67071 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:06:42.122 [INFO] [Thread-67071 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83798729, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104341672566131, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.2552484, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.27501, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2296082876021, telescope_dec_j2k=-24.1910386844677, observability=1)
2025-11-17T10:06:48.932 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:48.933 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:48.933 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:48.933 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:48.933 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:06:48.934 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:06:48.935 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:06:48.938 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:06:48.939 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Status age = 18.04447317123413s
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:00.167 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:00.168 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:00.169 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 17;16.2602897;-24.256627;50.10852;89.993108;50.08601;90.12017;13.28005;2460996.8381964;10.11668083;1.3;_
2025-11-17T10:07:00.169 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response 17;16.2602897;-24.256627;50.10852;89.993108;50.08601;90.12017;13.28005;2460996.8381964;10.11668083;1.3;_
2025-11-17T10:07:00.169 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:00.169 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:00.170 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:00.170 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:00.170 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:00.171 [INFO] [Thread-67072 (handle)] [driver.py] [get_status()] Telra = 16.2602897, teldec = -24.256627
2025-11-17T10:07:00.171 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2602897 -24.256627
2025-11-17T10:07:00.171 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2602897 -24.256627
2025-11-17T10:07:00.171 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2602897 -24.256627
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 17;16.2602897;-24.256627;50.10852;89.993108;50.08601;90.12017;13.28005;2460996.83819644;10.11668083;1.3;_16.2346468856764 -24.1912052354517
2025-11-17T10:07:00.172 [INFO] [Thread-67072 (handle)] [driver.py] [get_status()] ra_j2k = 16.2346468856764     dec_j2k = -24.1912052354517
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 140;0.104342474804987;171.162357330327;_
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response 140;0.104342474804987;171.162357330327;_
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:00.172 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:00.173 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:00.174 [DEBUG] [Thread-67072 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:00.174 [DEBUG] [Thread-67072 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:00.174 [DEBUG] [Thread-67072 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39573)
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:00.180 [DEBUG] [Thread-67072 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:00.187 [DEBUG] [Thread-67072 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:00.188 [INFO] [Thread-67072 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8381964, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104342474804987, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.2602897, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.28005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2346468856764, telescope_dec_j2k=-24.1912052354517, observability=1)
2025-11-17T10:07:02.439 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Status age = 2.2520687580108643s
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:02.440 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:02.441 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:02.442 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 17;16.2609345;-24.256627;50.10852;89.993108;50.08601;90.12017;13.2807;2460996.8382227;10.11732389;1.3;_
2025-11-17T10:07:02.442 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response 17;16.2609345;-24.256627;50.10852;89.993108;50.08601;90.12017;13.2807;2460996.8382227;10.11732389;1.3;_
2025-11-17T10:07:02.442 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:02.442 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:02.442 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:02.443 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:02.443 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:02.443 [INFO] [Thread-67073 (handle)] [driver.py] [get_status()] Telra = 16.2609345, teldec = -24.256627
2025-11-17T10:07:02.443 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2609345 -24.256627
2025-11-17T10:07:02.443 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2609345 -24.256627
2025-11-17T10:07:02.443 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2609345 -24.256627
2025-11-17T10:07:02.444 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 17;16.2609345;-24.256627;50.10852;89.993108;50.08601;90.12017;13.2807;2460996.83822273;10.11732389;1.3;_16.2352913405213 -24.1912265462867
2025-11-17T10:07:02.444 [INFO] [Thread-67073 (handle)] [driver.py] [get_status()] ra_j2k = 16.2352913405213     dec_j2k = -24.1912265462867
2025-11-17T10:07:02.444 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:02.444 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:02.444 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 140;0.104342354469158;171.162351965909;_
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response 140;0.104342354469158;171.162351965909;_
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:02.445 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:02.446 [DEBUG] [Thread-67073 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42327)
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:02.453 [DEBUG] [Thread-67073 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:02.460 [DEBUG] [Thread-67073 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:02.461 [DEBUG] [Thread-67073 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:02.461 [DEBUG] [Thread-67073 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:02.461 [DEBUG] [Thread-67073 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:02.461 [INFO] [Thread-67073 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8382227, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104342354469158, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.2609345, telescope_dec=-24.256627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2807, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2352913405213, telescope_dec_j2k=-24.1912265462867, observability=1)
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.198160409927368s
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:14.659 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.264335;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2841;2460996.83836412;10.120715;1.3;_
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.264335;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2841;2460996.83836412;10.120715;1.3;_
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:14.660 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:14.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:14.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:14.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:14.662 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.264335, teldec = -24.256626
2025-11-17T10:07:14.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.264335 -24.256626
2025-11-17T10:07:14.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.264335 -24.256626
2025-11-17T10:07:14.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.264335 -24.256626
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.264335;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2841;2460996.83836416;10.120715;1.3;_16.2386900220599 -24.1913379652496
2025-11-17T10:07:14.663 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.2386900220599     dec_j2k = -24.1913379652496
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104342835812472;171.162346601491;_
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104342835812472;171.162346601491;_
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:14.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:14.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:14.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:14.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:14.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60391)
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:14.672 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:14.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:14.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:14.680 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:14.680 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:07:14.680 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83836412, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104342835812472, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.264335, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2841, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2386900220599, telescope_dec_j2k=-24.1913379652496, observability=1)
2025-11-17T10:07:14.680 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.46081900596619 seconds ago
2025-11-17T10:07:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.12158823013305664s
2025-11-17T10:07:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.12158823013305664
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Status age = 3.6263792514801025s
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:18.306 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:18.307 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:18.308 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 17;16.2653357;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2851;2460996.83840634;10.12171306;1.3;_
2025-11-17T10:07:18.308 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response 17;16.2653357;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2851;2460996.83840634;10.12171306;1.3;_
2025-11-17T10:07:18.308 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:18.308 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:18.308 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:18.309 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:18.309 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:18.309 [INFO] [Thread-67074 (handle)] [driver.py] [get_status()] Telra = 16.2653357, teldec = -24.256626
2025-11-17T10:07:18.309 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2653357 -24.256626
2025-11-17T10:07:18.309 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2653357 -24.256626
2025-11-17T10:07:18.309 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2653357 -24.256626
2025-11-17T10:07:18.310 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 17;16.2653357;-24.256626;50.10852;89.993108;50.08601;90.12017;13.2851;2460996.83840637;10.12171306;1.3;_16.2396901873883 -24.1913710579652
2025-11-17T10:07:18.310 [INFO] [Thread-67074 (handle)] [driver.py] [get_status()] ra_j2k = 16.2396901873883     dec_j2k = -24.1913710579652
2025-11-17T10:07:18.310 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:18.310 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:18.310 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:18.311 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 140;0.104343076484129;171.162346601491;_
2025-11-17T10:07:18.311 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response 140;0.104343076484129;171.162346601491;_
2025-11-17T10:07:18.312 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:18.312 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:18.312 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:18.312 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:18.313 [DEBUG] [Thread-67074 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:07:18.316 [DEBUG] [Thread-67074 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38137)
2025-11-17T10:07:18.316 [DEBUG] [Thread-67074 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:18.316 [DEBUG] [Thread-67074 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:18.317 [DEBUG] [Thread-67074 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:18.317 [DEBUG] [Thread-67074 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:18.317 [DEBUG] [Thread-67074 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:18.324 [DEBUG] [Thread-67074 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:18.324 [INFO] [Thread-67074 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83840634, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104343076484129, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.2653357, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.2851, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.2396901873883, telescope_dec_j2k=-24.1913710579652, observability=1)
2025-11-17T10:07:22.694 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.370436191558838s
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:22.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:22.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:22.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2665608;-24.256626;50.10852;89.993108;50.08601;90.12017;13.28632;2460996.83845714;10.12293472;1.3;_
2025-11-17T10:07:22.697 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2665608;-24.256626;50.10852;89.993108;50.08601;90.12017;13.28632;2460996.83845714;10.12293472;1.3;_
2025-11-17T10:07:22.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:22.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:22.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:22.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:22.698 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:22.698 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2665608, teldec = -24.256626
2025-11-17T10:07:22.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2665608 -24.256626
2025-11-17T10:07:22.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2665608 -24.256626
2025-11-17T10:07:22.698 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2665608 -24.256626
2025-11-17T10:07:22.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2665608;-24.256626;50.10852;89.993108;50.08601;90.12017;13.28632;2460996.83845716;10.12293472;1.3;_16.240914633141 -24.1914115777025
2025-11-17T10:07:22.699 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.240914633141     dec_j2k = -24.1914115777025
2025-11-17T10:07:22.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:22.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:22.699 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:22.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104342474804987;171.162368059163;_
2025-11-17T10:07:22.700 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104342474804987;171.162368059163;_
2025-11-17T10:07:22.700 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:22.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:22.700 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:22.701 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:22.702 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36099)
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:22.704 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:22.711 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:22.711 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83845714, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104342474804987, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10852, telescope_az=89.993108, telescope_ra=16.2665608, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.28632, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:06:22.907954', telescope_ra_j2k=16.240914633141, telescope_dec_j2k=-24.1914115777025, observability=1)
2025-11-17T10:07:23.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:23.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:23.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:23.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:23.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:23.051 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:23.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:23.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:23.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:23.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:23.052 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:07:23.052 [INFO] [ThreadPoolExecutor-2645_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:07:23.052 [INFO] [ThreadPoolExecutor-2645_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:07:29.300 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:07:29
2025-11-17T10:07:29.300 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:29.300 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.588928461074829s
2025-11-17T10:07:29.300 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:29.300 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:29.300 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:29.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:29.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2684008;-24.256626;50.108519;89.993108;50.08601;90.12017;13.28816;2460996.83853359;10.12476972;1.3;_
2025-11-17T10:07:29.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.2684008;-24.256626;50.108519;89.993108;50.08601;90.12017;13.28816;2460996.83853359;10.12476972;1.3;_
2025-11-17T10:07:29.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:29.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:29.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:29.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:29.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:29.303 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.2684008, teldec = -24.256626
2025-11-17T10:07:29.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2684008 -24.256626
2025-11-17T10:07:29.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2684008 -24.256626
2025-11-17T10:07:29.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2684008 -24.256626
2025-11-17T10:07:29.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2684008;-24.256626;50.108519;89.993108;50.08601;90.12017;13.28816;2460996.83853361;10.12476972;1.3;_16.2427536511782 -24.1914724478711
2025-11-17T10:07:29.304 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.2427536511782     dec_j2k = -24.1914724478711
2025-11-17T10:07:29.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.1043429561483;171.162362694745;_
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.1043429561483;171.162362694745;_
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:29.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:29.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:29.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:07:29.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:07:29.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:29.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:29.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:29.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:29.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:29.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54497)
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:29.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:29.321 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:29.321 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:29.322 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:29.322 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83853359, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1043429561483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993108, telescope_ra=16.2684008, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.28816, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2427536511782, telescope_dec_j2k=-24.1914724478711, observability=1)
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Status age = 7.051238775253296s
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:36.373 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 17;16.2703804;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29014;2460996.83861544;10.12674389;1.3;_
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response 17;16.2703804;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29014;2460996.83861544;10.12674389;1.3;_
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:36.374 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:36.375 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:36.375 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:36.375 [INFO] [Thread-67075 (handle)] [driver.py] [get_status()] Telra = 16.2703804, teldec = -24.256626
2025-11-17T10:07:36.375 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2703804 -24.256626
2025-11-17T10:07:36.375 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2703804 -24.256626
2025-11-17T10:07:36.375 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2703804 -24.256626
2025-11-17T10:07:36.376 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 17;16.2703804;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29014;2460996.83861546;10.12674389;1.3;_16.2447321956038 -24.1915379534295
2025-11-17T10:07:36.376 [INFO] [Thread-67075 (handle)] [driver.py] [get_status()] ra_j2k = 16.2447321956038     dec_j2k = -24.1915379534295
2025-11-17T10:07:36.376 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:36.376 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:36.376 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 140;0.104342835812472;171.162362694745;_
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response 140;0.104342835812472;171.162362694745;_
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:36.377 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:36.378 [DEBUG] [Thread-67075 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60221)
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:36.383 [DEBUG] [Thread-67075 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:36.390 [DEBUG] [Thread-67075 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:36.390 [DEBUG] [Thread-67075 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:36.390 [DEBUG] [Thread-67075 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:36.390 [DEBUG] [Thread-67075 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:36.390 [DEBUG] [Thread-67075 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:36.391 [DEBUG] [Thread-67075 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:36.391 [DEBUG] [Thread-67075 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:36.391 [DEBUG] [Thread-67075 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:36.391 [DEBUG] [Thread-67075 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:36.391 [INFO] [Thread-67075 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83861544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104342835812472, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993108, telescope_ra=16.2703804, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.29014, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2447321956038, telescope_dec_j2k=-24.1915379534295, observability=1)
2025-11-17T10:07:43.939 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.939 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.939 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:43.939 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:43.939 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:07:43.940 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:43.941 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:43.942 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:07:43.943 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:43.944 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:43.945 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:43.945 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:43.945 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:43.946 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:43.946 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Park
2025-11-17T10:07:43.946 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:07:43.946 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:07:43.947 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 29;16.2724998;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29226;2460996.83870309;10.1288575;1.3;_Park Command Successful
2025-11-17T10:07:44.947 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:07:44.947 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:07:44.947 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:07:44.948 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:07:44.948 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:07:45.948 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:07:45.949 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:07:45.949 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:07:45.949 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:07:45.949 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:07:46.950 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:07:46.950 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:07:46.950 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:07:46.951 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:07:46.951 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:07:47.951 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:07:47.951 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:07:47.951 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:47.952 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:07:47.953 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:07:47.954 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:48.954 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:48.954 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:48.954 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:48.954 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:48.954 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:07:48.955 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:07:48.956 [DEBUG] [ThreadPoolExecutor-2644_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:48.956 [INFO] [ThreadPoolExecutor-2644_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Status age = 18.050224781036377s
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:07:54.441 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:07:54.442 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:07:54.443 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 17;16.2754231;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29519;2460996.83882457;10.13177278;1.3;_
2025-11-17T10:07:54.443 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response 17;16.2754231;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29519;2460996.83882457;10.13177278;1.3;_
2025-11-17T10:07:54.443 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:07:54.443 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:07:54.443 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:07:54.444 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:54.444 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:07:54.444 [INFO] [Thread-67076 (handle)] [driver.py] [get_status()] Telra = 16.2754231, teldec = -24.256626
2025-11-17T10:07:54.444 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2754231 -24.256626
2025-11-17T10:07:54.444 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2754231 -24.256626
2025-11-17T10:07:54.444 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2754231 -24.256626
2025-11-17T10:07:54.445 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 17;16.2754231;-24.256626;50.108519;89.993108;50.08601;90.12017;13.29519;2460996.8388246;10.13177278;1.3;_16.249772210872 -24.1917048983039
2025-11-17T10:07:54.445 [INFO] [Thread-67076 (handle)] [driver.py] [get_status()] ra_j2k = 16.249772210872     dec_j2k = -24.1917048983039
2025-11-17T10:07:54.445 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:07:54.445 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:07:54.445 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 140;0.104343397379671;171.162362694745;_
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response 140;0.104343397379671;171.162362694745;_
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:54.446 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:54.447 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:54.447 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:54.447 [DEBUG] [Thread-67076 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:54.447 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:07:54.447 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:07:54.448 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:07:54.448 [DEBUG] [Thread-67076 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:54.449 [DEBUG] [Thread-67076 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:07:54.449 [DEBUG] [Thread-67076 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:07:54.453 [DEBUG] [Thread-67076 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51755)
2025-11-17T10:07:54.453 [DEBUG] [Thread-67076 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:07:54.453 [DEBUG] [Thread-67076 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:07:54.454 [DEBUG] [Thread-67076 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:07:54.454 [DEBUG] [Thread-67076 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:07:54.454 [DEBUG] [Thread-67076 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:07:54.461 [DEBUG] [Thread-67076 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:07:54.461 [INFO] [Thread-67076 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83882457, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104343397379671, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993108, telescope_ra=16.2754231, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.29519, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.249772210872, telescope_dec_j2k=-24.1917048983039, observability=1)
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Status age = 8.038689613342285s
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:02.500 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:02.501 [DEBUG] [Thread-67077 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:02.501 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:02.501 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:02.501 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:02.501 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:02.502 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 17;16.2776544;-24.256626;50.108519;89.993107;50.08601;90.12017;13.29742;2460996.83891785;10.13399806;1.3;_
2025-11-17T10:08:02.502 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response 17;16.2776544;-24.256626;50.108519;89.993107;50.08601;90.12017;13.29742;2460996.83891785;10.13399806;1.3;_
2025-11-17T10:08:02.502 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:02.502 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:02.502 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:02.503 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:02.503 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:02.503 [INFO] [Thread-67077 (handle)] [driver.py] [get_status()] Telra = 16.2776544, teldec = -24.256626
2025-11-17T10:08:02.503 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2776544 -24.256626
2025-11-17T10:08:02.503 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2776544 -24.256626
2025-11-17T10:08:02.503 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2776544 -24.256626
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 17;16.2776544;-24.256626;50.108519;89.993107;50.08601;90.12017;13.29742;2460996.83891787;10.13399806;1.3;_16.2520023248397 -24.1917788050758
2025-11-17T10:08:02.504 [INFO] [Thread-67077 (handle)] [driver.py] [get_status()] ra_j2k = 16.2520023248397     dec_j2k = -24.1917788050758
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 140;0.104343838611042;171.162341237072;_
2025-11-17T10:08:02.504 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response 140;0.104343838611042;171.162341237072;_
2025-11-17T10:08:02.505 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:02.505 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:02.505 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:02.505 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:02.506 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:02.507 [DEBUG] [Thread-67077 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:02.507 [DEBUG] [Thread-67077 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:02.507 [DEBUG] [Thread-67077 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45639)
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:02.510 [DEBUG] [Thread-67077 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:02.517 [DEBUG] [Thread-67077 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:02.518 [INFO] [Thread-67077 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83891785, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104343838611042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993107, telescope_ra=16.2776544, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.29742, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2520023248397, telescope_dec_j2k=-24.1917788050758, observability=1)
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Status age = 10.051560401916504s
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:12.569 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:12.570 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:12.571 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 17;16.2804643;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30023;2460996.83903439;10.13680028;1.3;_
2025-11-17T10:08:12.571 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response 17;16.2804643;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30023;2460996.83903439;10.13680028;1.3;_
2025-11-17T10:08:12.571 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:12.571 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:12.572 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:12.572 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:12.572 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:12.573 [INFO] [Thread-67078 (handle)] [driver.py] [get_status()] Telra = 16.2804643, teldec = -24.256626
2025-11-17T10:08:12.573 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2804643 -24.256626
2025-11-17T10:08:12.573 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2804643 -24.256626
2025-11-17T10:08:12.573 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2804643 -24.256626
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 17;16.2804643;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30023;2460996.83903442;10.13680028;1.3;_16.2548107329252 -24.1918719087308
2025-11-17T10:08:12.574 [INFO] [Thread-67078 (handle)] [driver.py] [get_status()] ra_j2k = 16.2548107329252     dec_j2k = -24.1918719087308
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 140;0.104344119394642;171.162373423581;_
2025-11-17T10:08:12.574 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response 140;0.104344119394642;171.162373423581;_
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:12.575 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:12.576 [DEBUG] [Thread-67078 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40685)
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:12.577 [DEBUG] [Thread-67078 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:12.585 [DEBUG] [Thread-67078 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:12.585 [INFO] [Thread-67078 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83903439, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104344119394642, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993107, telescope_ra=16.2804643, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.30023, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2548107329252, telescope_dec_j2k=-24.1918719087308, observability=1)
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.154630661010742s
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:14.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:14.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:14.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2810529;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30081;2460996.8390595;10.13738722;1.3;_
2025-11-17T10:08:14.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.2810529;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30081;2460996.8390595;10.13738722;1.3;_
2025-11-17T10:08:14.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:14.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:14.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:14.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:14.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:14.743 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.2810529, teldec = -24.256626
2025-11-17T10:08:14.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.2810529 -24.256626
2025-11-17T10:08:14.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.2810529 -24.256626
2025-11-17T10:08:14.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2810529 -24.256626
2025-11-17T10:08:14.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.2810529;-24.256626;50.108519;89.993107;50.08601;90.12017;13.30081;2460996.83905954;10.13738722;1.3;_16.2553990206441 -24.1918914160167
2025-11-17T10:08:14.744 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.2553990206441     dec_j2k = -24.1918914160167
2025-11-17T10:08:14.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:14.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:14.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104344159506585;171.162357330327;_
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104344159506585;171.162357330327;_
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:14.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:14.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:14.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:14.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:14.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51707)
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:14.752 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:14.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:14.759 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:14.759 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:14.760 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:08:14.760 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8390595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104344159506585, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108519, telescope_az=89.993107, telescope_ra=16.2810529, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.30081, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2553990206441, telescope_dec_j2k=-24.1918914160167, observability=1)
2025-11-17T10:08:14.760 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.45977425575256 seconds ago
2025-11-17T10:08:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.061051130294799805s
2025-11-17T10:08:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.061051130294799805
2025-11-17T10:08:21.801 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.041720390319824s
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:21.803 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2830325;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30279;2460996.83914125;10.13936139;1.3;_
2025-11-17T10:08:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2830325;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30279;2460996.83914125;10.13936139;1.3;_
2025-11-17T10:08:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:21.805 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2830325, teldec = -24.256626
2025-11-17T10:08:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2830325 -24.256626
2025-11-17T10:08:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2830325 -24.256626
2025-11-17T10:08:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2830325 -24.256626
2025-11-17T10:08:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2830325;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30279;2460996.83914127;10.13936139;1.3;_16.2573775709689 -24.1919570350868
2025-11-17T10:08:21.806 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.2573775709689     dec_j2k = -24.1919570350868
2025-11-17T10:08:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104343838611042;171.162368059163;_
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104343838611042;171.162368059163;_
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:21.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:21.809 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:21.809 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58987)
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:21.812 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:21.819 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:21.820 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.83914125, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104343838611042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108518, telescope_az=89.993107, telescope_ra=16.2830325, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.30279, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:07:23.049834', telescope_ra_j2k=16.2573775709689, telescope_dec_j2k=-24.1919570350868, observability=1)
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:23.194 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:23.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:23.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:23.195 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:23.196 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:08:23.197 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:08:23.198 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:24.198 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:24.198 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:24.198 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:24.198 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:24.198 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:08:24.199 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:24.200 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:24.201 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:24.201 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:24.201 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:24.201 [DEBUG] [ThreadPoolExecutor-2646_0] [payload.py] [to_registers()] [0]
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32909)
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:24.207 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:24.214 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:24.214 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:08:24.214 [DEBUG] [ThreadPoolExecutor-2646_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:08:24.214 [DEBUG] [ThreadPoolExecutor-2646_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:08:24.215 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:24.215 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:24.215 [DEBUG] [ThreadPoolExecutor-2646_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:29.383 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:08:29
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.563201904296875s
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:29.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:29.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:29.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2851513;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30491;2460996.83922899;10.14147444;1.3;_
2025-11-17T10:08:29.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.2851513;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30491;2460996.83922899;10.14147444;1.3;_
2025-11-17T10:08:29.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:29.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:29.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:29.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:29.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:29.386 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.2851513, teldec = -24.256626
2025-11-17T10:08:29.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2851513 -24.256626
2025-11-17T10:08:29.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2851513 -24.256626
2025-11-17T10:08:29.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2851513 -24.256626
2025-11-17T10:08:29.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.2851513;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30491;2460996.83922902;10.14147444;1.3;_16.2594952485073 -24.1920272879138
2025-11-17T10:08:29.387 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.2594952485073     dec_j2k = -24.1920272879138
2025-11-17T10:08:29.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:29.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:29.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104344279842413;171.162362694745;_
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104344279842413;171.162362694745;_
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:29.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:29.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:29.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:29.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:29.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37441)
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:29.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:29.402 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:29.403 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83922899, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104344279842413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108518, telescope_az=89.993107, telescope_ra=16.2851513, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.30491, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2594952485073, telescope_dec_j2k=-24.1920272879138, observability=1)
2025-11-17T10:08:30.641 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:30.641 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Status age = 1.2389166355133057s
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:30.642 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:30.643 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:30.644 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 17;16.2855056;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30527;2460996.83924356;10.14182778;1.3;_
2025-11-17T10:08:30.644 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response 17;16.2855056;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30527;2460996.83924356;10.14182778;1.3;_
2025-11-17T10:08:30.644 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:30.644 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:30.644 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:30.645 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:30.645 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:30.645 [INFO] [Thread-67079 (handle)] [driver.py] [get_status()] Telra = 16.2855056, teldec = -24.256626
2025-11-17T10:08:30.645 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2855056 -24.256626
2025-11-17T10:08:30.645 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2855056 -24.256626
2025-11-17T10:08:30.645 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2855056 -24.256626
2025-11-17T10:08:30.646 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 17;16.2855056;-24.256626;50.108518;89.993107;50.08601;90.12017;13.30527;2460996.83924359;10.14182778;1.3;_16.2598493609156 -24.1920390373781
2025-11-17T10:08:30.646 [INFO] [Thread-67079 (handle)] [driver.py] [get_status()] ra_j2k = 16.2598493609156     dec_j2k = -24.1920390373781
2025-11-17T10:08:30.646 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:30.646 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:30.646 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:30.647 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 140;0.104344440290184;171.162362694745;_
2025-11-17T10:08:30.647 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response 140;0.104344440290184;171.162362694745;_
2025-11-17T10:08:30.647 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:30.647 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:30.647 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:30.648 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:30.649 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:30.649 [DEBUG] [Thread-67079 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:30.650 [DEBUG] [Thread-67079 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:30.650 [DEBUG] [Thread-67079 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48977)
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:30.653 [DEBUG] [Thread-67079 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:30.660 [DEBUG] [Thread-67079 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:30.661 [INFO] [Thread-67079 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83924356, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104344440290184, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108518, telescope_az=89.993107, telescope_ra=16.2855056, telescope_dec=-24.256626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.30527, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2598493609156, telescope_dec_j2k=-24.1920390373781, observability=1)
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Status age = 18.048712730407715s
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:48.709 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:08:48.710 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:08:48.711 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 17;16.2905285;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31029;2460996.83945267;10.14683694;1.3;_
2025-11-17T10:08:48.711 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response 17;16.2905285;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31029;2460996.83945267;10.14683694;1.3;_
2025-11-17T10:08:48.711 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:08:48.711 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:08:48.711 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:08:48.712 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:48.712 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:08:48.712 [INFO] [Thread-67080 (handle)] [driver.py] [get_status()] Telra = 16.2905285, teldec = -24.256625
2025-11-17T10:08:48.712 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2905285 -24.256625
2025-11-17T10:08:48.713 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2905285 -24.256625
2025-11-17T10:08:48.713 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2905285 -24.256625
2025-11-17T10:08:48.713 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 17;16.2905285;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31029;2460996.8394527;10.14683694;1.3;_16.2648696047983 -24.1922046700448
2025-11-17T10:08:48.714 [INFO] [Thread-67080 (handle)] [driver.py] [get_status()] ra_j2k = 16.2648696047983     dec_j2k = -24.1922046700448
2025-11-17T10:08:48.714 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:08:48.714 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:08:48.714 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 140;0.104345041969326;171.162357330327;_
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response 140;0.104345041969326;171.162357330327;_
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:48.715 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:08:48.716 [DEBUG] [Thread-67080 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:08:48.722 [DEBUG] [Thread-67080 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40071)
2025-11-17T10:08:48.722 [DEBUG] [Thread-67080 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:08:48.722 [DEBUG] [Thread-67080 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:08:48.722 [DEBUG] [Thread-67080 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:08:48.723 [DEBUG] [Thread-67080 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:08:48.723 [DEBUG] [Thread-67080 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:08:48.730 [DEBUG] [Thread-67080 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:08:48.730 [INFO] [Thread-67080 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83945267, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104345041969326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108518, telescope_az=89.993107, telescope_ra=16.2905285, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.31029, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2648696047983, telescope_dec_j2k=-24.1922046700448, observability=1)
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:49.215 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:08:49.216 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:08:49.217 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:08:49.217 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Status age = 13.816061735153198s
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:02.546 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:02.547 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:02.548 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 17;16.2943944;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31416;2460996.83961282;10.15069222;1.3;_
2025-11-17T10:09:02.548 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response 17;16.2943944;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31416;2460996.83961282;10.15069222;1.3;_
2025-11-17T10:09:02.548 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:02.548 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:02.548 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:02.549 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:02.549 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:02.549 [INFO] [Thread-67081 (handle)] [driver.py] [get_status()] Telra = 16.2943944, teldec = -24.256625
2025-11-17T10:09:02.549 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2943944 -24.256625
2025-11-17T10:09:02.549 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2943944 -24.256625
2025-11-17T10:09:02.549 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2943944 -24.256625
2025-11-17T10:09:02.550 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 17;16.2943944;-24.256625;50.108518;89.993107;50.08601;90.12017;13.31416;2460996.83961285;10.15069222;1.3;_16.2687334644239 -24.1923329969961
2025-11-17T10:09:02.550 [INFO] [Thread-67081 (handle)] [driver.py] [get_status()] ra_j2k = 16.2687334644239     dec_j2k = -24.1923329969961
2025-11-17T10:09:02.550 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:02.550 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:02.550 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 140;0.104345322752926;171.162357330327;_
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response 140;0.104345322752926;171.162357330327;_
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:02.551 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:02.552 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:02.553 [DEBUG] [Thread-67081 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:02.553 [DEBUG] [Thread-67081 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:02.553 [DEBUG] [Thread-67081 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:09:02.558 [DEBUG] [Thread-67081 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33391)
2025-11-17T10:09:02.559 [DEBUG] [Thread-67081 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:02.559 [DEBUG] [Thread-67081 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:02.559 [DEBUG] [Thread-67081 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:02.559 [DEBUG] [Thread-67081 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:02.559 [DEBUG] [Thread-67081 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:02.566 [DEBUG] [Thread-67081 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:02.566 [INFO] [Thread-67081 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83961282, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104345322752926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108518, telescope_az=89.993107, telescope_ra=16.2943944, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.31416, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2687334644239, telescope_dec_j2k=-24.1923329969961, observability=1)
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Status age = 4.281454086303711s
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:06.848 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:06.849 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:06.850 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 17;16.2955712;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31533;2460996.83966262;10.15186583;1.3;_
2025-11-17T10:09:06.850 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response 17;16.2955712;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31533;2460996.83966262;10.15186583;1.3;_
2025-11-17T10:09:06.850 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:06.850 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:06.850 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:06.851 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:06.851 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:06.851 [INFO] [Thread-67082 (handle)] [driver.py] [get_status()] Telra = 16.2955712, teldec = -24.256625
2025-11-17T10:09:06.851 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2955712 -24.256625
2025-11-17T10:09:06.851 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2955712 -24.256625
2025-11-17T10:09:06.852 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2955712 -24.256625
2025-11-17T10:09:06.852 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 17;16.2955712;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31533;2460996.83966264;10.15186583;1.3;_16.2699096440241 -24.1923720737129
2025-11-17T10:09:06.852 [INFO] [Thread-67082 (handle)] [driver.py] [get_status()] ra_j2k = 16.2699096440241     dec_j2k = -24.1923720737129
2025-11-17T10:09:06.853 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:06.853 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:06.853 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 140;0.104344841409612;171.162351965909;_
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response 140;0.104344841409612;171.162351965909;_
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:06.854 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:06.855 [DEBUG] [Thread-67082 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:06.856 [DEBUG] [Thread-67082 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:09:06.856 [DEBUG] [Thread-67082 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42787)
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:06.861 [DEBUG] [Thread-67082 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:06.868 [DEBUG] [Thread-67082 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:06.868 [DEBUG] [Thread-67082 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:06.868 [DEBUG] [Thread-67082 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:06.868 [DEBUG] [Thread-67082 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:06.869 [DEBUG] [Thread-67082 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:06.869 [DEBUG] [Thread-67082 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:06.869 [DEBUG] [Thread-67082 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:06.869 [DEBUG] [Thread-67082 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:06.869 [DEBUG] [Thread-67082 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:06.869 [INFO] [Thread-67082 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83966262, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104344841409612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.2955712, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.31533, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2699096440241, telescope_dec_j2k=-24.1923720737129, observability=1)
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.912226915359497s
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:14.781 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:14.782 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.2978018;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31756;2460996.83975443;10.15409028;1.3;_
2025-11-17T10:09:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.2978018;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31756;2460996.83975443;10.15409028;1.3;_
2025-11-17T10:09:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:14.784 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.2978018, teldec = -24.256625
2025-11-17T10:09:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2978018 -24.256625
2025-11-17T10:09:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2978018 -24.256625
2025-11-17T10:09:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2978018 -24.256625
2025-11-17T10:09:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.2978018;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31756;2460996.83975446;10.15409028;1.3;_16.2721390689672 -24.1924461598684
2025-11-17T10:09:14.785 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.2721390689672     dec_j2k = -24.1924461598684
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104345122193212;171.162351965909;_
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104345122193212;171.162351965909;_
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57305)
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:14.790 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:14.797 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:14.797 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:14.797 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:14.798 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:14.798 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:14.798 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83975443, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104345122193212, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.2978018, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.31756, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2721390689672, telescope_dec_j2k=-24.1924461598684, observability=1)
2025-11-17T10:09:14.820 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:09:14.820 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.022150278091430664s
2025-11-17T10:09:14.820 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.022150278091430664
2025-11-17T10:09:14.820 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.437456369400024 seconds ago
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.113100051879883s
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2995011;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31926;2460996.83982538;10.155785;1.3;_
2025-11-17T10:09:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.2995011;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31926;2460996.83982538;10.155785;1.3;_
2025-11-17T10:09:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:20.914 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.2995011, teldec = -24.256625
2025-11-17T10:09:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.2995011 -24.256625
2025-11-17T10:09:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.2995011 -24.256625
2025-11-17T10:09:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.2995011 -24.256625
2025-11-17T10:09:20.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.2995011;-24.256625;50.108517;89.993107;50.08601;90.12017;13.31926;2460996.83982541;10.155785;1.3;_16.2738374745827 -24.192502614629
2025-11-17T10:09:20.915 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.2738374745827     dec_j2k = -24.192502614629
2025-11-17T10:09:20.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:20.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:20.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104345924432068;171.162357330327;_
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104345924432068;171.162357330327;_
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55921)
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:20.921 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:20.928 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:20.929 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:20.929 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83982538, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104345924432068, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.2995011, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.31926, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:08:23.193799', telescope_ra_j2k=16.2738374745827, telescope_dec_j2k=-24.192502614629, observability=1)
2025-11-17T10:09:23.336 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:23.336 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:23.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:23.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:23.337 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:23.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:23.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:23.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:23.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:23.338 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:09:23.338 [INFO] [ThreadPoolExecutor-2647_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:09:23.338 [INFO] [ThreadPoolExecutor-2647_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Status age = 3.9921367168426514s
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:24.921 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 17;16.3006128;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32037;2460996.83987178;10.15689361;1.3;_
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response 17;16.3006128;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32037;2460996.83987178;10.15689361;1.3;_
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:24.922 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:24.923 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:24.923 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:24.923 [INFO] [Thread-67083 (handle)] [driver.py] [get_status()] Telra = 16.3006128, teldec = -24.256625
2025-11-17T10:09:24.923 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3006128 -24.256625
2025-11-17T10:09:24.923 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3006128 -24.256625
2025-11-17T10:09:24.924 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3006128 -24.256625
2025-11-17T10:09:24.924 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 17;16.3006128;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32037;2460996.83987181;10.15689361;1.3;_16.2749485898364 -24.1925395549271
2025-11-17T10:09:24.924 [INFO] [Thread-67083 (handle)] [driver.py] [get_status()] ra_j2k = 16.2749485898364     dec_j2k = -24.1925395549271
2025-11-17T10:09:24.925 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:24.925 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:24.925 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 140;0.104346084879839;171.162351965909;_
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response 140;0.104346084879839;171.162351965909;_
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:24.926 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:24.927 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:24.928 [DEBUG] [Thread-67083 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:24.928 [DEBUG] [Thread-67083 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:24.928 [DEBUG] [Thread-67083 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49603)
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:24.930 [DEBUG] [Thread-67083 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:24.937 [DEBUG] [Thread-67083 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:24.938 [DEBUG] [Thread-67083 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:24.938 [INFO] [Thread-67083 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83987178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104346084879839, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.3006128, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.32037, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2749485898364, telescope_dec_j2k=-24.1925395549271, observability=1)
2025-11-17T10:09:29.463 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:09:29
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.525602340698242s
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:29.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:29.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:29.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.301891;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32165;2460996.83992438;10.15816833;1.3;_
2025-11-17T10:09:29.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.301891;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32165;2460996.83992438;10.15816833;1.3;_
2025-11-17T10:09:29.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:29.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:29.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:29.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:29.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:29.468 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.301891, teldec = -24.256625
2025-11-17T10:09:29.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.301891 -24.256625
2025-11-17T10:09:29.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.301891 -24.256625
2025-11-17T10:09:29.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.301891 -24.256625
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.301891;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32165;2460996.83992441;10.15816833;1.3;_16.2762261178733 -24.1925820346325
2025-11-17T10:09:29.469 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.2762261178733     dec_j2k = -24.1925820346325
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104345563424583;171.162357330327;_
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104345563424583;171.162357330327;_
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:29.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:29.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:29.476 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53217)
2025-11-17T10:09:29.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:29.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:29.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:29.477 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:29.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:29.484 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:29.484 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.83992438, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104345563424583, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.301891, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.32165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2762261178733, telescope_dec_j2k=-24.1925820346325, observability=1)
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Status age = 13.549530744552612s
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:43.034 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:09:43.035 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:09:43.036 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 17;16.3056535;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32542;2460996.84008144;10.16192056;1.3;_
2025-11-17T10:09:43.036 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response 17;16.3056535;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32542;2460996.84008144;10.16192056;1.3;_
2025-11-17T10:09:43.036 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:09:43.036 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:09:43.036 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:09:43.037 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:43.037 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:09:43.037 [INFO] [Thread-67084 (handle)] [driver.py] [get_status()] Telra = 16.3056535, teldec = -24.256625
2025-11-17T10:09:43.037 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3056535 -24.256625
2025-11-17T10:09:43.037 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3056535 -24.256625
2025-11-17T10:09:43.037 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3056535 -24.256625
2025-11-17T10:09:43.038 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 17;16.3056535;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32542;2460996.84008146;10.16192056;1.3;_16.2799866421308 -24.1927071199725
2025-11-17T10:09:43.038 [INFO] [Thread-67084 (handle)] [driver.py] [get_status()] ra_j2k = 16.2799866421308     dec_j2k = -24.1927071199725
2025-11-17T10:09:43.038 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:09:43.038 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:09:43.038 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 140;0.104346165103725;171.162351965909;_
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response 140;0.104346165103725;171.162351965909;_
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:43.039 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:09:43.040 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:09:43.041 [DEBUG] [Thread-67084 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:43.041 [DEBUG] [Thread-67084 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:09:43.041 [DEBUG] [Thread-67084 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33471)
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:09:43.042 [DEBUG] [Thread-67084 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:09:43.049 [DEBUG] [Thread-67084 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:09:43.050 [DEBUG] [Thread-67084 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:09:43.050 [INFO] [Thread-67084 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84008144, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104346165103725, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108517, telescope_az=89.993107, telescope_ra=16.3056535, telescope_dec=-24.256625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.32542, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2799866421308, telescope_dec_j2k=-24.1927071199725, observability=1)
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:09:44.218 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:44.219 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:44.220 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.221 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:44.222 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:44.223 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:44.223 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:44.223 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:44.223 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:44.224 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:44.224 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:44.224 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Park
2025-11-17T10:09:44.224 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:09:44.224 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:09:44.225 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 29;16.3059905;-24.256625;50.108517;89.993107;50.08601;90.12017;13.32575;2460996.8400952;10.16225667;1.3;_Park Command Successful
2025-11-17T10:09:45.225 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:09:45.225 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:09:45.225 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:09:45.226 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:09:45.226 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:09:46.226 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:09:46.226 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:09:46.226 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:09:46.227 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:09:46.227 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:09:47.227 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:09:47.227 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:09:47.227 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:09:47.228 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:09:47.228 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:09:48.228 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:09:48.228 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:09:48.228 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:48.229 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:09:48.230 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:09:48.231 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:49.231 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:49.231 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:49.231 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:09:49.231 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:09:49.231 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:09:49.232 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:09:49.233 [DEBUG] [ThreadPoolExecutor-2646_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:09:49.233 [INFO] [ThreadPoolExecutor-2646_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Status age = 18.050215482711792s
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:01.100 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:01.101 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:01.102 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 17;16.3107004;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33046;2460996.84029053;10.16695361;1.3;_
2025-11-17T10:10:01.102 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response 17;16.3107004;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33046;2460996.84029053;10.16695361;1.3;_
2025-11-17T10:10:01.102 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:01.102 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:01.102 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:01.103 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:01.103 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:01.103 [INFO] [Thread-67085 (handle)] [driver.py] [get_status()] Telra = 16.3107004, teldec = -24.256624
2025-11-17T10:10:01.103 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3107004 -24.256624
2025-11-17T10:10:01.103 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3107004 -24.256624
2025-11-17T10:10:01.104 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3107004 -24.256624
2025-11-17T10:10:01.104 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 17;16.3107004;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33046;2460996.84029056;10.16695361;1.3;_16.2850308973701 -24.1928740047803
2025-11-17T10:10:01.104 [INFO] [Thread-67085 (handle)] [driver.py] [get_status()] ra_j2k = 16.2850308973701     dec_j2k = -24.1928740047803
2025-11-17T10:10:01.105 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:01.105 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:01.105 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:01.105 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 140;0.10434652611121;171.162351965909;_
2025-11-17T10:10:01.105 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response 140;0.10434652611121;171.162351965909;_
2025-11-17T10:10:01.106 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:01.106 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:01.106 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:01.106 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:01.106 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:01.107 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:01.107 [DEBUG] [Thread-67085 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:01.107 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:01.107 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:01.107 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:01.108 [DEBUG] [Thread-67085 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:01.108 [DEBUG] [Thread-67085 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:01.108 [DEBUG] [Thread-67085 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46603)
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:01.111 [DEBUG] [Thread-67085 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:01.118 [DEBUG] [Thread-67085 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:01.118 [DEBUG] [Thread-67085 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:01.118 [DEBUG] [Thread-67085 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:01.118 [DEBUG] [Thread-67085 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:01.118 [DEBUG] [Thread-67085 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:01.119 [DEBUG] [Thread-67085 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:01.119 [DEBUG] [Thread-67085 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:01.119 [DEBUG] [Thread-67085 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:01.119 [DEBUG] [Thread-67085 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:01.119 [INFO] [Thread-67085 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84029053, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10434652611121, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993107, telescope_ra=16.3107004, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.33046, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2850308973701, telescope_dec_j2k=-24.1928740047803, observability=1)
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Status age = 1.4801392555236816s
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:02.599 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:02.600 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:02.601 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 17;16.311121;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33088;2460996.84030788;10.16737306;1.3;_
2025-11-17T10:10:02.601 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response 17;16.311121;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33088;2460996.84030788;10.16737306;1.3;_
2025-11-17T10:10:02.601 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:02.601 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:02.601 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:02.602 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:02.602 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:02.602 [INFO] [Thread-67086 (handle)] [driver.py] [get_status()] Telra = 16.311121, teldec = -24.256624
2025-11-17T10:10:02.602 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] UnCookCoordinates 16.311121 -24.256624
2025-11-17T10:10:02.602 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.311121 -24.256624
2025-11-17T10:10:02.602 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.311121 -24.256624
2025-11-17T10:10:02.603 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 17;16.311121;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33088;2460996.8403079;10.16737306;1.3;_16.2854512772177 -24.1928880011345
2025-11-17T10:10:02.603 [INFO] [Thread-67086 (handle)] [driver.py] [get_status()] ra_j2k = 16.2854512772177     dec_j2k = -24.1928880011345
2025-11-17T10:10:02.603 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:02.603 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:02.603 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 140;0.10434624532761;171.162362694745;_
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response 140;0.10434624532761;171.162362694745;_
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:02.604 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:02.605 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:02.606 [DEBUG] [Thread-67086 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:02.607 [DEBUG] [Thread-67086 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:02.607 [DEBUG] [Thread-67086 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59009)
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:02.613 [DEBUG] [Thread-67086 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:02.620 [DEBUG] [Thread-67086 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:02.621 [DEBUG] [Thread-67086 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:02.621 [INFO] [Thread-67086 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84030788, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10434624532761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993107, telescope_ra=16.311121, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.33088, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2854512772177, telescope_dec_j2k=-24.1928880011345, observability=1)
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.176728963851929s
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.31452;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33428;2460996.84044907;10.17076278;1.3;_
2025-11-17T10:10:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.31452;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33428;2460996.84044907;10.17076278;1.3;_
2025-11-17T10:10:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:14.801 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.31452, teldec = -24.256624
2025-11-17T10:10:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.31452 -24.256624
2025-11-17T10:10:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.31452 -24.256624
2025-11-17T10:10:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.31452 -24.256624
2025-11-17T10:10:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.31452;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33428;2460996.8404491;10.17076278;1.3;_16.2888484996349 -24.1930011389277
2025-11-17T10:10:14.802 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.2888484996349     dec_j2k = -24.1930011389277
2025-11-17T10:10:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104346325551496;171.162346601491;_
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104346325551496;171.162346601491;_
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55509)
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:14.809 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:14.817 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84044907, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104346325551496, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993107, telescope_ra=16.31452, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.33428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2888484996349, telescope_dec_j2k=-24.1930011389277, observability=1)
2025-11-17T10:10:14.880 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:10:14.880 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.06336045265197754s
2025-11-17T10:10:14.880 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.06336045265197754
2025-11-17T10:10:14.880 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.41652274131775 seconds ago
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Status age = 4.356354713439941s
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:19.173 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:19.174 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:19.174 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:19.174 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:19.174 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 17;16.3157166;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33548;2460996.8404997;10.17195611;1.3;_
2025-11-17T10:10:19.175 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response 17;16.3157166;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33548;2460996.8404997;10.17195611;1.3;_
2025-11-17T10:10:19.175 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:19.175 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:19.175 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:19.176 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:19.176 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:19.176 [INFO] [Thread-67087 (handle)] [driver.py] [get_status()] Telra = 16.3157166, teldec = -24.256624
2025-11-17T10:10:19.176 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3157166 -24.256624
2025-11-17T10:10:19.176 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3157166 -24.256624
2025-11-17T10:10:19.176 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3157166 -24.256624
2025-11-17T10:10:19.177 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 17;16.3157166;-24.256624;50.108516;89.993107;50.08601;90.12017;13.33548;2460996.84049973;10.17195611;1.3;_16.2900444744978 -24.1930409807138
2025-11-17T10:10:19.177 [INFO] [Thread-67087 (handle)] [driver.py] [get_status()] ra_j2k = 16.2900444744978     dec_j2k = -24.1930409807138
2025-11-17T10:10:19.177 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:19.177 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:19.177 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 140;0.104347127790352;171.162357330327;_
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response 140;0.104347127790352;171.162357330327;_
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:19.178 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:19.179 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:19.180 [DEBUG] [Thread-67087 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:19.180 [DEBUG] [Thread-67087 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:19.180 [DEBUG] [Thread-67087 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34643)
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:19.182 [DEBUG] [Thread-67087 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:19.189 [DEBUG] [Thread-67087 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:19.190 [INFO] [Thread-67087 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8404997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104347127790352, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993107, telescope_ra=16.3157166, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.33548, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:09:23.336245', telescope_ra_j2k=16.2900444744978, telescope_dec_j2k=-24.1930409807138, observability=1)
2025-11-17T10:10:20.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:20.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.8329422473907471s
2025-11-17T10:10:20.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8329422473907471
2025-11-17T10:10:23.479 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:23.479 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:23.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:23.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:23.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:23.480 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:23.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:23.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:23.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:23.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:23.481 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:10:23.481 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:23.481 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:23.481 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:23.481 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:23.481 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:10:23.482 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:10:23.483 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:24.483 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:24.483 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:24.483 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:24.483 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:24.483 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:10:24.484 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:24.485 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:24.486 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:24.486 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:24.486 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:24.486 [DEBUG] [ThreadPoolExecutor-2648_0] [payload.py] [to_registers()] [0]
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49041)
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:24.492 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:24.499 [DEBUG] [ThreadPoolExecutor-2648_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:29.545 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:10:29
2025-11-17T10:10:29.545 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:29.545 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.355957508087158s
2025-11-17T10:10:29.545 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:29.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:29.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3186159;-24.256624;50.108516;89.993106;50.08601;90.12017;13.33838;2460996.84061976;10.1748475;1.3;_
2025-11-17T10:10:29.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.3186159;-24.256624;50.108516;89.993106;50.08601;90.12017;13.33838;2460996.84061976;10.1748475;1.3;_
2025-11-17T10:10:29.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:29.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:29.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:29.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:29.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:29.548 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.3186159, teldec = -24.256624
2025-11-17T10:10:29.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3186159 -24.256624
2025-11-17T10:10:29.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3186159 -24.256624
2025-11-17T10:10:29.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3186159 -24.256624
2025-11-17T10:10:29.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3186159;-24.256624;50.108516;89.993106;50.08601;90.12017;13.33838;2460996.84061978;10.1748475;1.3;_16.29294226123 -24.1931375416662
2025-11-17T10:10:29.549 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.29294226123     dec_j2k = -24.1931375416662
2025-11-17T10:10:29.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:29.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104347047566467;171.162357330327;_
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104347047566467;171.162357330327;_
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:29.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:29.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:29.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:29.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:29.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34213)
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:29.555 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:29.563 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:29.563 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84061976, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104347047566467, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993106, telescope_ra=16.3186159, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.33838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.29294226123, telescope_dec_j2k=-24.1931375416662, observability=1)
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Status age = 7.722532272338867s
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:37.286 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 17;16.3207579;-24.256624;50.108516;89.993106;50.08601;90.12017;13.34052;2460996.84070934;10.17698361;1.3;_
2025-11-17T10:10:37.287 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response 17;16.3207579;-24.256624;50.108516;89.993106;50.08601;90.12017;13.34052;2460996.84070934;10.17698361;1.3;_
2025-11-17T10:10:37.288 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:37.288 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:37.288 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:37.288 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:37.289 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:37.289 [INFO] [Thread-67088 (handle)] [driver.py] [get_status()] Telra = 16.3207579, teldec = -24.256624
2025-11-17T10:10:37.289 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3207579 -24.256624
2025-11-17T10:10:37.289 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3207579 -24.256624
2025-11-17T10:10:37.289 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3207579 -24.256624
2025-11-17T10:10:37.290 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 17;16.3207579;-24.256624;50.108516;89.993106;50.08601;90.12017;13.34052;2460996.84070938;10.17698361;1.3;_16.2950831445095 -24.1932089047499
2025-11-17T10:10:37.290 [INFO] [Thread-67088 (handle)] [driver.py] [get_status()] ra_j2k = 16.2950831445095     dec_j2k = -24.1932089047499
2025-11-17T10:10:37.290 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:37.290 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:37.290 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 140;0.104347970141151;171.162351965909;_
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response 140;0.104347970141151;171.162351965909;_
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:37.291 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:37.292 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:37.293 [DEBUG] [Thread-67088 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:37.293 [DEBUG] [Thread-67088 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:37.293 [DEBUG] [Thread-67088 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37047)
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:37.294 [DEBUG] [Thread-67088 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:37.301 [DEBUG] [Thread-67088 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:37.301 [DEBUG] [Thread-67088 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:37.301 [DEBUG] [Thread-67088 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:37.301 [DEBUG] [Thread-67088 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:37.301 [DEBUG] [Thread-67088 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:37.302 [DEBUG] [Thread-67088 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:37.302 [DEBUG] [Thread-67088 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:37.302 [DEBUG] [Thread-67088 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:37.302 [DEBUG] [Thread-67088 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:37.302 [INFO] [Thread-67088 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84070934, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104347970141151, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108516, telescope_az=89.993106, telescope_ra=16.3207579, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.34052, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.2950831445095, telescope_dec_j2k=-24.1932089047499, observability=1)
2025-11-17T10:10:49.499 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:49.499 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:49.499 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:49.500 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:10:49.501 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:10:49.502 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Status age = 18.05192470550537s
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:10:55.354 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:10:55.355 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:10:55.356 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 17;16.3258045;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34557;2460996.84091847;10.18201639;1.3;_
2025-11-17T10:10:55.356 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response 17;16.3258045;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34557;2460996.84091847;10.18201639;1.3;_
2025-11-17T10:10:55.356 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:10:55.356 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:10:55.356 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:10:55.357 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:55.357 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:10:55.357 [INFO] [Thread-67089 (handle)] [driver.py] [get_status()] Telra = 16.3258045, teldec = -24.256624
2025-11-17T10:10:55.357 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3258045 -24.256624
2025-11-17T10:10:55.357 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3258045 -24.256624
2025-11-17T10:10:55.357 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3258045 -24.256624
2025-11-17T10:10:55.358 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 17;16.3258045;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34557;2460996.8409185;10.18201639;1.3;_16.3001271177937 -24.1933771180846
2025-11-17T10:10:55.358 [INFO] [Thread-67089 (handle)] [driver.py] [get_status()] ra_j2k = 16.3001271177937     dec_j2k = -24.1933771180846
2025-11-17T10:10:55.358 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:10:55.358 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:10:55.358 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 140;0.104347609133666;171.162351965909;_
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response 140;0.104347609133666;171.162351965909;_
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:55.359 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:10:55.360 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:10:55.361 [DEBUG] [Thread-67089 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:55.361 [DEBUG] [Thread-67089 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:10:55.361 [DEBUG] [Thread-67089 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43145)
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:10:55.366 [DEBUG] [Thread-67089 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:10:55.373 [DEBUG] [Thread-67089 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:10:55.373 [INFO] [Thread-67089 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84091847, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104347609133666, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3258045, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.34557, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.3001271177937, telescope_dec_j2k=-24.1933771180846, observability=1)
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Status age = 7.277709007263184s
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:02.651 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:02.652 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:02.653 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 17;16.3278311;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34759;2460996.84100293;10.1840375;1.3;_
2025-11-17T10:11:02.653 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response 17;16.3278311;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34759;2460996.84100293;10.1840375;1.3;_
2025-11-17T10:11:02.653 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:02.653 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:02.653 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:02.654 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:02.654 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:02.654 [INFO] [Thread-67090 (handle)] [driver.py] [get_status()] Telra = 16.3278311, teldec = -24.256624
2025-11-17T10:11:02.654 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3278311 -24.256624
2025-11-17T10:11:02.654 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3278311 -24.256624
2025-11-17T10:11:02.654 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3278311 -24.256624
2025-11-17T10:11:02.655 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 17;16.3278311;-24.256624;50.108515;89.993106;50.08601;90.12017;13.34759;2460996.84100295;10.1840375;1.3;_16.3021526646652 -24.1934447004242
2025-11-17T10:11:02.655 [INFO] [Thread-67090 (handle)] [driver.py] [get_status()] ra_j2k = 16.3021526646652     dec_j2k = -24.1934447004242
2025-11-17T10:11:02.655 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:02.656 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:02.656 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:02.656 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 140;0.104347889917266;171.162362694745;_
2025-11-17T10:11:02.656 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response 140;0.104347889917266;171.162362694745;_
2025-11-17T10:11:02.657 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:02.657 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:02.657 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:02.657 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:02.657 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:02.658 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:02.658 [DEBUG] [Thread-67090 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:02.658 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:02.658 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:02.658 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:02.659 [DEBUG] [Thread-67090 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:02.659 [DEBUG] [Thread-67090 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:02.659 [DEBUG] [Thread-67090 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50917)
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:02.663 [DEBUG] [Thread-67090 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:02.670 [DEBUG] [Thread-67090 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:02.670 [DEBUG] [Thread-67090 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:02.670 [DEBUG] [Thread-67090 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:02.671 [DEBUG] [Thread-67090 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:02.671 [INFO] [Thread-67090 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84100293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104347889917266, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3278311, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.34759, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.3021526646652, telescope_dec_j2k=-24.1934447004242, observability=1)
2025-11-17T10:11:13.422 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:13.422 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Status age = 10.751498699188232s
2025-11-17T10:11:13.422 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:13.422 [DEBUG] [Thread-67091 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:13.423 [DEBUG] [Thread-67091 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:13.423 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:13.423 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:13.423 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:13.424 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:13.425 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 17;16.3308402;-24.256624;50.108515;89.993106;50.08601;90.12017;13.3506;2460996.84112759;10.18703833;1.3;_
2025-11-17T10:11:13.425 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response 17;16.3308402;-24.256624;50.108515;89.993106;50.08601;90.12017;13.3506;2460996.84112759;10.18703833;1.3;_
2025-11-17T10:11:13.425 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:13.425 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:13.425 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:13.426 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:13.426 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:13.426 [INFO] [Thread-67091 (handle)] [driver.py] [get_status()] Telra = 16.3308402, teldec = -24.256624
2025-11-17T10:11:13.426 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3308402 -24.256624
2025-11-17T10:11:13.426 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3308402 -24.256624
2025-11-17T10:11:13.426 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3308402 -24.256624
2025-11-17T10:11:13.427 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 17;16.3308402;-24.256624;50.108515;89.993106;50.08601;90.12017;13.3506;2460996.84112763;10.18703833;1.3;_16.3051602027769 -24.1935450802599
2025-11-17T10:11:13.427 [INFO] [Thread-67091 (handle)] [driver.py] [get_status()] ra_j2k = 16.3051602027769     dec_j2k = -24.1935450802599
2025-11-17T10:11:13.427 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:13.427 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:13.427 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 140;0.104348250924751;171.162357330327;_
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response 140;0.104348250924751;171.162357330327;_
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:13.428 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:13.429 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:13.430 [DEBUG] [Thread-67091 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:13.430 [DEBUG] [Thread-67091 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:13.430 [DEBUG] [Thread-67091 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:13.436 [DEBUG] [Thread-67091 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41195)
2025-11-17T10:11:13.436 [DEBUG] [Thread-67091 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:13.436 [DEBUG] [Thread-67091 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:13.436 [DEBUG] [Thread-67091 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:13.436 [DEBUG] [Thread-67091 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:13.437 [DEBUG] [Thread-67091 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:13.444 [DEBUG] [Thread-67091 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:13.445 [DEBUG] [Thread-67091 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:13.445 [DEBUG] [Thread-67091 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:13.445 [DEBUG] [Thread-67091 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:13.445 [INFO] [Thread-67091 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84112759, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104348250924751, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3308402, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.3506, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.3051602027769, telescope_dec_j2k=-24.1935450802599, observability=1)
2025-11-17T10:11:14.808 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.363863468170166s
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3312329;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35099;2460996.84114363;10.18743;1.3;_
2025-11-17T10:11:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.3312329;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35099;2460996.84114363;10.18743;1.3;_
2025-11-17T10:11:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:14.811 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.3312329, teldec = -24.256624
2025-11-17T10:11:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3312329 -24.256624
2025-11-17T10:11:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3312329 -24.256624
2025-11-17T10:11:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3312329 -24.256624
2025-11-17T10:11:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3312329;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35099;2460996.84114367;10.18743;1.3;_16.3055526991027 -24.1935581831885
2025-11-17T10:11:14.813 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.3055526991027     dec_j2k = -24.1935581831885
2025-11-17T10:11:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104348331148636;171.162351965909;_
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104348331148636;171.162351965909;_
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:11:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:11:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35417)
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:14.826 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84114363, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104348331148636, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3312329, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.35099, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.3055526991027, telescope_dec_j2k=-24.1935581831885, observability=1)
2025-11-17T10:11:14.940 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:11:14.940 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.11425375938415527s
2025-11-17T10:11:14.940 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.11425375938415527
2025-11-17T10:11:14.940 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.394500494003296 seconds ago
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.286418199539185s
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:19.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:19.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:19.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.332429;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35219;2460996.84119345;10.18862278;1.3;_
2025-11-17T10:11:19.114 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.332429;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35219;2460996.84119345;10.18862278;1.3;_
2025-11-17T10:11:19.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:19.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:19.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:19.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:19.115 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:19.115 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.332429, teldec = -24.256624
2025-11-17T10:11:19.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.332429 -24.256624
2025-11-17T10:11:19.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.332429 -24.256624
2025-11-17T10:11:19.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.332429 -24.256624
2025-11-17T10:11:19.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.332429;-24.256624;50.108515;89.993106;50.08601;90.12017;13.35219;2460996.84119347;10.18862278;1.3;_16.30674817897 -24.1935980967527
2025-11-17T10:11:19.116 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.30674817897     dec_j2k = -24.1935980967527
2025-11-17T10:11:19.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:19.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:19.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104348611932236;171.162351965909;_
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104348611932236;171.162351965909;_
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:19.118 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:19.119 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39975)
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:19.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:19.134 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:19.135 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:19.135 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84119345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104348611932236, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.332429, telescope_dec=-24.256624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.35219, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:10:23.478986', telescope_ra_j2k=16.30674817897, telescope_dec_j2k=-24.1935980967527, observability=1)
2025-11-17T10:11:23.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:23.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:23.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:23.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:23.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:23.622 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:23.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:23.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:23.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:23.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:23.623 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:11:23.623 [INFO] [ThreadPoolExecutor-2649_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:11:23.623 [INFO] [ThreadPoolExecutor-2649_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:11:29.624 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:11:29
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.48948335647583s
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:29.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3353623;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35512;2460996.8413151;10.19154806;1.3;_
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.3353623;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35512;2460996.8413151;10.19154806;1.3;_
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:29.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:29.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:29.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:29.626 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.3353623, teldec = -24.256623
2025-11-17T10:11:29.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3353623 -24.256623
2025-11-17T10:11:29.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3353623 -24.256623
2025-11-17T10:11:29.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3353623 -24.256623
2025-11-17T10:11:29.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3353623;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35512;2460996.84131513;10.19154806;1.3;_16.3096799597823 -24.193695006938
2025-11-17T10:11:29.627 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3096799597823     dec_j2k = -24.193695006938
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104348692156122;171.162351965909;_
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104348692156122;171.162351965909;_
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:29.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:29.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:29.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:29.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:29.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58451)
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:29.631 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:29.639 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:29.640 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:29.640 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:29.640 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:29.640 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8413151, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104348692156122, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3353623, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.35512, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3096799597823, telescope_dec_j2k=-24.193695006938, observability=1)
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Status age = 1.9114999771118164s
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:31.551 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:31.552 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:31.553 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 17;16.3358848;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35565;2460996.84133742;10.19206917;1.3;_
2025-11-17T10:11:31.553 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response 17;16.3358848;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35565;2460996.84133742;10.19206917;1.3;_
2025-11-17T10:11:31.553 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:31.553 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:31.553 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:31.554 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:31.554 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:31.554 [INFO] [Thread-67092 (handle)] [driver.py] [get_status()] Telra = 16.3358848, teldec = -24.256623
2025-11-17T10:11:31.554 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3358848 -24.256623
2025-11-17T10:11:31.554 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3358848 -24.256623
2025-11-17T10:11:31.554 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3358848 -24.256623
2025-11-17T10:11:31.555 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 17;16.3358848;-24.256623;50.108515;89.993106;50.08601;90.12017;13.35565;2460996.84133744;10.19206917;1.3;_16.3102021893567 -24.1937124513546
2025-11-17T10:11:31.555 [INFO] [Thread-67092 (handle)] [driver.py] [get_status()] ra_j2k = 16.3102021893567     dec_j2k = -24.1937124513546
2025-11-17T10:11:31.555 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:31.555 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:31.555 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:31.556 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 140;0.104348652044179;171.162351965909;_
2025-11-17T10:11:31.556 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response 140;0.104348652044179;171.162351965909;_
2025-11-17T10:11:31.556 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:31.556 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:31.556 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:31.557 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:31.558 [DEBUG] [Thread-67092 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:31.558 [DEBUG] [Thread-67092 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:31.558 [DEBUG] [Thread-67092 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:31.559 [DEBUG] [Thread-67092 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39799)
2025-11-17T10:11:31.560 [DEBUG] [Thread-67092 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:31.560 [DEBUG] [Thread-67092 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:31.560 [DEBUG] [Thread-67092 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:31.560 [DEBUG] [Thread-67092 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:31.560 [DEBUG] [Thread-67092 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:31.567 [DEBUG] [Thread-67092 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:31.567 [INFO] [Thread-67092 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84133742, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104348652044179, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108515, telescope_az=89.993106, telescope_ra=16.3358848, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.35565, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3102021893567, telescope_dec_j2k=-24.1937124513546, observability=1)
2025-11-17T10:11:44.502 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.502 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.502 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:44.502 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:11:44.503 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:44.504 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:44.505 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:11:44.506 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:44.507 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:44.508 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:44.508 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:44.508 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:44.508 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Park
2025-11-17T10:11:44.509 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:11:44.509 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:11:44.509 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 29;16.3394813;-24.256623;50.108514;89.993106;50.08601;90.12017;13.35924;2460996.84148737;10.19565583;1.3;_Park Command Successful
2025-11-17T10:11:45.510 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:11:45.510 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:11:45.510 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:11:45.510 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:11:45.510 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:11:46.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:11:46.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:11:46.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:11:46.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:11:46.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:11:47.511 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:11:47.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:11:47.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:11:47.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:11:47.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:11:48.512 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:48.513 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:11:48.514 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:49.515 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:49.515 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:49.515 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:49.515 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:49.515 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:11:49.516 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:11:49.517 [DEBUG] [ThreadPoolExecutor-2648_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:49.517 [INFO] [ThreadPoolExecutor-2648_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:11:49.623 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Status age = 18.056358575820923s
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:11:49.624 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:11:49.625 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:11:49.625 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:11:49.626 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 17;16.3409305;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36069;2460996.84154659;10.19710111;1.3;_
2025-11-17T10:11:49.626 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response 17;16.3409305;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36069;2460996.84154659;10.19710111;1.3;_
2025-11-17T10:11:49.626 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:11:49.626 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:11:49.626 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:11:49.627 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:49.627 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:11:49.627 [INFO] [Thread-67093 (handle)] [driver.py] [get_status()] Telra = 16.3409305, teldec = -24.256623
2025-11-17T10:11:49.627 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3409305 -24.256623
2025-11-17T10:11:49.627 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3409305 -24.256623
2025-11-17T10:11:49.627 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3409305 -24.256623
2025-11-17T10:11:49.628 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 17;16.3409305;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36069;2460996.84154662;10.19710111;1.3;_16.31524528124 -24.1938809710253
2025-11-17T10:11:49.628 [INFO] [Thread-67093 (handle)] [driver.py] [get_status()] ra_j2k = 16.31524528124     dec_j2k = -24.1938809710253
2025-11-17T10:11:49.628 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:11:49.628 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:11:49.628 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 140;0.104349494394978;171.162346601491;_
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response 140;0.104349494394978;171.162346601491;_
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:49.629 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:11:49.630 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:11:49.631 [DEBUG] [Thread-67093 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:49.631 [DEBUG] [Thread-67093 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:11:49.631 [DEBUG] [Thread-67093 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:11:49.636 [DEBUG] [Thread-67093 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51819)
2025-11-17T10:11:49.636 [DEBUG] [Thread-67093 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:11:49.636 [DEBUG] [Thread-67093 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:11:49.636 [DEBUG] [Thread-67093 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:11:49.636 [DEBUG] [Thread-67093 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:11:49.637 [DEBUG] [Thread-67093 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:11:49.644 [DEBUG] [Thread-67093 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:11:49.644 [INFO] [Thread-67093 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84154659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349494394978, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108514, telescope_az=89.993106, telescope_ra=16.3409305, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.36069, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.31524528124, telescope_dec_j2k=-24.1938809710253, observability=1)
2025-11-17T10:12:02.727 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:02.727 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Status age = 13.082957983016968s
2025-11-17T10:12:02.727 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:02.727 [DEBUG] [Thread-67094 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:02.728 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:02.729 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 17;16.344556;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36432;2460996.84169825;10.20071667;1.3;_
2025-11-17T10:12:02.730 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response 17;16.344556;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36432;2460996.84169825;10.20071667;1.3;_
2025-11-17T10:12:02.730 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:02.730 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:02.730 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:02.731 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:02.731 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:02.731 [INFO] [Thread-67094 (handle)] [driver.py] [get_status()] Telra = 16.344556, teldec = -24.256623
2025-11-17T10:12:02.731 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] UnCookCoordinates 16.344556 -24.256623
2025-11-17T10:12:02.731 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.344556 -24.256623
2025-11-17T10:12:02.731 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.344556 -24.256623
2025-11-17T10:12:02.732 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 17;16.3445841;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36435;2460996.84169829;10.20074472;1.3;_16.3188689109625 -24.1940021268269
2025-11-17T10:12:02.732 [INFO] [Thread-67094 (handle)] [driver.py] [get_status()] ra_j2k = 16.3188689109625     dec_j2k = -24.1940021268269
2025-11-17T10:12:02.732 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:02.732 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:02.732 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 140;0.104349775178577;171.162368059163;_
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response 140;0.104349775178577;171.162368059163;_
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:02.733 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:02.734 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:02.735 [DEBUG] [Thread-67094 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:12:02.735 [DEBUG] [Thread-67094 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:12:02.735 [DEBUG] [Thread-67094 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42053)
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:02.737 [DEBUG] [Thread-67094 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:02.744 [DEBUG] [Thread-67094 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:02.744 [DEBUG] [Thread-67094 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:02.744 [DEBUG] [Thread-67094 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:02.744 [DEBUG] [Thread-67094 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:02.744 [DEBUG] [Thread-67094 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:02.745 [DEBUG] [Thread-67094 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:02.745 [DEBUG] [Thread-67094 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:02.745 [DEBUG] [Thread-67094 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:02.745 [DEBUG] [Thread-67094 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:02.745 [INFO] [Thread-67094 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84169825, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349775178577, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108514, telescope_az=89.993106, telescope_ra=16.344556, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.36432, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3188689109625, telescope_dec_j2k=-24.1940021268269, observability=1)
2025-11-17T10:12:07.674 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:07.674 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Status age = 4.929677963256836s
2025-11-17T10:12:07.674 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:07.674 [DEBUG] [Thread-67095 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:07.675 [DEBUG] [Thread-67095 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:07.675 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:07.675 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:07.675 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:07.676 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:07.677 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 17;16.3459493;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36571;2460996.84175552;10.20210611;1.3;_
2025-11-17T10:12:07.677 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response 17;16.3459493;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36571;2460996.84175552;10.20210611;1.3;_
2025-11-17T10:12:07.677 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:07.677 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:07.677 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:07.678 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:07.678 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:07.678 [INFO] [Thread-67095 (handle)] [driver.py] [get_status()] Telra = 16.3459493, teldec = -24.256623
2025-11-17T10:12:07.678 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3459493 -24.256623
2025-11-17T10:12:07.678 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3459493 -24.256623
2025-11-17T10:12:07.679 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3459493 -24.256623
2025-11-17T10:12:07.679 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 17;16.3459493;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36571;2460996.84175554;10.20210611;1.3;_16.3202614930366 -24.1940487029852
2025-11-17T10:12:07.679 [INFO] [Thread-67095 (handle)] [driver.py] [get_status()] ra_j2k = 16.3202614930366     dec_j2k = -24.1940487029852
2025-11-17T10:12:07.679 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:07.679 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 140;0.104349975738291;171.162362694745;_
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response 140;0.104349975738291;171.162362694745;_
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:07.680 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:07.681 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:07.681 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:07.681 [DEBUG] [Thread-67095 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:07.682 [DEBUG] [Thread-67095 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47821)
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:07.687 [DEBUG] [Thread-67095 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:07.694 [DEBUG] [Thread-67095 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:07.694 [INFO] [Thread-67095 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84175552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349975738291, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108514, telescope_az=89.993106, telescope_ra=16.3459493, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.36571, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3202614930366, telescope_dec_j2k=-24.1940487029852, observability=1)
2025-11-17T10:12:14.782 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.088275194168091s
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:14.783 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3479288;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36769;2460996.84183778;10.20408028;1.3;_
2025-11-17T10:12:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.3479288;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36769;2460996.84183778;10.20408028;1.3;_
2025-11-17T10:12:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:14.784 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:14.785 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:14.785 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.3479288, teldec = -24.256623
2025-11-17T10:12:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3479288 -24.256623
2025-11-17T10:12:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3479288 -24.256623
2025-11-17T10:12:14.786 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3479288 -24.256623
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3479288;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36769;2460996.8418378;10.20408028;1.3;_16.3222399738541 -24.1941148896205
2025-11-17T10:12:14.787 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.3222399738541     dec_j2k = -24.1941148896205
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104349454283035;171.162362694745;_
2025-11-17T10:12:14.787 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104349454283035;171.162362694745;_
2025-11-17T10:12:14.788 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:14.788 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:14.789 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:14.790 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:14.795 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43849)
2025-11-17T10:12:14.795 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:14.796 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:14.796 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:14.803 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:14.803 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84183778, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349454283035, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108514, telescope_az=89.993106, telescope_ra=16.3479288, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.36769, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3222399738541, telescope_dec_j2k=-24.1941148896205, observability=1)
2025-11-17T10:12:15.000 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:12:15.000 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.19655394554138184s
2025-11-17T10:12:15.000 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.19655394554138184
2025-11-17T10:12:15.000 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.37588143348694 seconds ago
2025-11-17T10:12:18.227 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.4243969917297363s
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:18.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:18.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.3488737;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36864;2460996.84187765;10.2050225;1.3;_
2025-11-17T10:12:18.229 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.3488737;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36864;2460996.84187765;10.2050225;1.3;_
2025-11-17T10:12:18.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:18.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:18.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:18.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:18.230 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:18.230 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.3488737, teldec = -24.256623
2025-11-17T10:12:18.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3488737 -24.256623
2025-11-17T10:12:18.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3488737 -24.256623
2025-11-17T10:12:18.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3488737 -24.256623
2025-11-17T10:12:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.3489015;-24.256623;50.108514;89.993106;50.08601;90.12017;13.36866;2460996.84187767;10.20505028;1.3;_16.3231843876837 -24.1941464893675
2025-11-17T10:12:18.231 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.3231843876837     dec_j2k = -24.1941464893675
2025-11-17T10:12:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104350176298005;171.162351965909;_
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104350176298005;171.162351965909;_
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:18.233 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41103)
2025-11-17T10:12:18.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:18.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:18.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:18.234 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:18.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:18.241 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:18.241 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84187765, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104350176298005, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108514, telescope_az=89.993106, telescope_ra=16.3488737, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.36864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:11:23.620723', telescope_ra_j2k=16.3231843876837, telescope_dec_j2k=-24.1941464893675, observability=1)
2025-11-17T10:12:23.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:23.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:23.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:23.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:23.768 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:23.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:23.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:23.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:23.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:23.769 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:12:23.769 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:23.769 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:12:23.770 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:12:23.771 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:24.771 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:24.771 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:24.771 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:24.771 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:24.772 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:24.772 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:12:24.773 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:24.774 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:24.775 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:24.775 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:24.775 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:24.775 [DEBUG] [ThreadPoolExecutor-2650_0] [payload.py] [to_registers()] [0]
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45943)
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:24.777 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:24.784 [DEBUG] [ThreadPoolExecutor-2650_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Status age = 7.555725336074829s
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:25.797 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 17;16.3509936;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37076;2460996.84196526;10.20713667;1.3;_
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response 17;16.3509936;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37076;2460996.84196526;10.20713667;1.3;_
2025-11-17T10:12:25.798 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:25.799 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:25.799 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:25.799 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:25.800 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:25.800 [INFO] [Thread-67096 (handle)] [driver.py] [get_status()] Telra = 16.3509936, teldec = -24.256623
2025-11-17T10:12:25.800 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3509936 -24.256623
2025-11-17T10:12:25.800 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3509936 -24.256623
2025-11-17T10:12:25.800 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3509936 -24.256623
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 17;16.3509936;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37076;2460996.84196529;10.20713667;1.3;_16.3253031977257 -24.1942173981418
2025-11-17T10:12:25.801 [INFO] [Thread-67096 (handle)] [driver.py] [get_status()] ra_j2k = 16.3253031977257     dec_j2k = -24.1942173981418
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 140;0.10435009607412;171.162351965909;_
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response 140;0.10435009607412;171.162351965909;_
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:25.801 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:25.802 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:25.803 [DEBUG] [Thread-67096 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:25.803 [DEBUG] [Thread-67096 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:25.803 [DEBUG] [Thread-67096 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:25.808 [DEBUG] [Thread-67096 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39593)
2025-11-17T10:12:25.808 [DEBUG] [Thread-67096 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:25.808 [DEBUG] [Thread-67096 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:25.808 [DEBUG] [Thread-67096 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:25.808 [DEBUG] [Thread-67096 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:25.809 [DEBUG] [Thread-67096 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:25.815 [DEBUG] [Thread-67096 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:25.816 [DEBUG] [Thread-67096 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:25.816 [INFO] [Thread-67096 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84196526, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10435009607412, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108513, telescope_az=89.993106, telescope_ra=16.3509936, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.37076, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3253031977257, telescope_dec_j2k=-24.1942173981418, observability=1)
2025-11-17T10:12:29.700 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:12:29
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.8841099739074707s
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:29.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:29.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:29.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3520766;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37184;2460996.84201044;10.20821667;1.3;_
2025-11-17T10:12:29.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.3520766;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37184;2460996.84201044;10.20821667;1.3;_
2025-11-17T10:12:29.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:29.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:29.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:29.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:29.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:29.703 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.3520766, teldec = -24.256623
2025-11-17T10:12:29.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3520766 -24.256623
2025-11-17T10:12:29.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3520766 -24.256623
2025-11-17T10:12:29.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3520766 -24.256623
2025-11-17T10:12:29.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3520766;-24.256623;50.108513;89.993106;50.08601;90.12017;13.37184;2460996.84201046;10.20821667;1.3;_16.3263856413087 -24.1942536310953
2025-11-17T10:12:29.704 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3263856413087     dec_j2k = -24.1942536310953
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104349975738291;171.162357330327;_
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104349975738291;171.162357330327;_
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:29.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:29.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:29.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:29.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42165)
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:29.711 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:29.718 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:29.719 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:29.719 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84201044, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349975738291, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108513, telescope_az=89.993106, telescope_ra=16.3520766, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.37184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3263856413087, telescope_dec_j2k=-24.1942536310953, observability=1)
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Status age = 14.127071142196655s
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:43.846 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:12:43.847 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:12:43.848 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 17;16.3560355;-24.256623;50.108513;89.993105;50.08601;90.12017;13.3758;2460996.84217417;10.21216472;1.3;_
2025-11-17T10:12:43.848 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response 17;16.3560355;-24.256623;50.108513;89.993105;50.08601;90.12017;13.3758;2460996.84217417;10.21216472;1.3;_
2025-11-17T10:12:43.848 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:12:43.848 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:12:43.848 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:12:43.849 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:43.849 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:12:43.849 [INFO] [Thread-67097 (handle)] [driver.py] [get_status()] Telra = 16.3560355, teldec = -24.256623
2025-11-17T10:12:43.849 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3560355 -24.256623
2025-11-17T10:12:43.849 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3560355 -24.256623
2025-11-17T10:12:43.849 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3560355 -24.256623
2025-11-17T10:12:43.850 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 17;16.3560355;-24.256623;50.108513;89.993105;50.08601;90.12017;13.3758;2460996.84217419;10.21216472;1.3;_16.3303425097082 -24.1943861239127
2025-11-17T10:12:43.850 [INFO] [Thread-67097 (handle)] [driver.py] [get_status()] ra_j2k = 16.3303425097082     dec_j2k = -24.1943861239127
2025-11-17T10:12:43.850 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:12:43.850 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:12:43.850 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 140;0.104349935626349;171.162351965909;_
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response 140;0.104349935626349;171.162351965909;_
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:43.851 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:12:43.852 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:12:43.853 [DEBUG] [Thread-67097 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:43.853 [DEBUG] [Thread-67097 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:12:43.853 [DEBUG] [Thread-67097 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34449)
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:12:43.855 [DEBUG] [Thread-67097 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:12:43.862 [DEBUG] [Thread-67097 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:12:43.862 [INFO] [Thread-67097 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84217417, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104349935626349, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108513, telescope_az=89.993105, telescope_ra=16.3560355, telescope_dec=-24.256623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.3758, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3303425097082, telescope_dec_j2k=-24.1943861239127, observability=1)
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:12:49.785 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:12:49.786 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:12:49.787 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Status age = 18.06441640853882s
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:01.927 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:01.928 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:01.928 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:01.928 [DEBUG] [Thread-67098 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 17;16.3610534;-24.256622;50.108513;89.993105;50.08601;90.12017;13.38081;2460996.84238345;10.21716889;1.3;_
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response 17;16.3610534;-24.256622;50.108513;89.993105;50.08601;90.12017;13.38081;2460996.84238345;10.21716889;1.3;_
2025-11-17T10:13:01.930 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:01.931 [INFO] [Thread-67098 (handle)] [driver.py] [get_status()] Telra = 16.3610534, teldec = -24.256622
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3610534 -24.256622
2025-11-17T10:13:01.931 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3610534 -24.256622
2025-11-17T10:13:01.932 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3610534 -24.256622
2025-11-17T10:13:01.933 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 17;16.3610534;-24.256622;50.108513;89.993105;50.08601;90.12017;13.38081;2460996.84238347;10.21716889;1.3;_16.3353578402074 -24.1945531563238
2025-11-17T10:13:01.933 [INFO] [Thread-67098 (handle)] [driver.py] [get_status()] ra_j2k = 16.3353578402074     dec_j2k = -24.1945531563238
2025-11-17T10:13:01.933 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:01.934 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:01.934 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:01.935 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 140;0.104351138984633;171.162357330327;_
2025-11-17T10:13:01.936 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response 140;0.104351138984633;171.162357330327;_
2025-11-17T10:13:01.936 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:01.936 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:01.936 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:01.936 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:01.939 [DEBUG] [Thread-67098 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37807)
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:01.942 [DEBUG] [Thread-67098 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:01.950 [DEBUG] [Thread-67098 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:01.950 [INFO] [Thread-67098 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84238345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104351138984633, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108513, telescope_az=89.993105, telescope_ra=16.3610534, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.38081, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3353578402074, telescope_dec_j2k=-24.1945531563238, observability=1)
2025-11-17T10:13:02.778 [DEBUG] [Thread-67099 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:02.778 [DEBUG] [Thread-67099 (handle)] [server.py] [get_status()] Status age = 0.8283753395080566s
2025-11-17T10:13:02.779 [DEBUG] [Thread-67099 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8283753395080566
2025-11-17T10:13:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.919299364089966s
2025-11-17T10:13:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3646707;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38443;2460996.84253323;10.22077639;1.3;_
2025-11-17T10:13:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.3646707;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38443;2460996.84253323;10.22077639;1.3;_
2025-11-17T10:13:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:14.872 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.3646707, teldec = -24.256622
2025-11-17T10:13:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3646707 -24.256622
2025-11-17T10:13:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3646707 -24.256622
2025-11-17T10:13:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3646707 -24.256622
2025-11-17T10:13:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3646707;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38443;2460996.84253325;10.22077639;1.3;_16.3389732915053 -24.1946743551467
2025-11-17T10:13:14.873 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.3389732915053     dec_j2k = -24.1946743551467
2025-11-17T10:13:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10435137965629;171.162362694745;_
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10435137965629;171.162362694745;_
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:14.878 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60391)
2025-11-17T10:13:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:14.878 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:14.886 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:14.886 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84253323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10435137965629, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3646707, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.38443, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3389732915053, telescope_dec_j2k=-24.1946743551467, observability=1)
2025-11-17T10:13:15.060 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:13:15.060 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.17374539375305176s
2025-11-17T10:13:15.060 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.17374539375305176
2025-11-17T10:13:15.060 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.36004972457886 seconds ago
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.450843095779419s
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:17.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:17.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:17.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.365344;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38511;2460996.84256179;10.22144778;1.3;_
2025-11-17T10:13:17.339 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.365344;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38511;2460996.84256179;10.22144778;1.3;_
2025-11-17T10:13:17.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:17.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:17.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:17.340 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.365344, teldec = -24.256622
2025-11-17T10:13:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.365344 -24.256622
2025-11-17T10:13:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.365344 -24.256622
2025-11-17T10:13:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.365344 -24.256622
2025-11-17T10:13:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.365344;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38511;2460996.84256182;10.22144778;1.3;_16.3396462477451 -24.1946969205406
2025-11-17T10:13:17.341 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.3396462477451     dec_j2k = -24.1946969205406
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10435182088766;171.162357330327;_
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10435182088766;171.162357330327;_
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:13:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:13:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:13:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38887)
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:17.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:17.355 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:17.355 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84256179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10435182088766, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.365344, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.38511, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3396462477451, telescope_dec_j2k=-24.1946969205406, observability=1)
2025-11-17T10:13:20.050 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:20.050 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Status age = 2.695361375808716s
2025-11-17T10:13:20.050 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:20.051 [DEBUG] [Thread-67100 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:20.051 [DEBUG] [Thread-67100 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:20.051 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:20.051 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:20.051 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:20.052 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:20.053 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 17;16.3661214;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38588;2460996.84259321;10.22222306;1.3;_
2025-11-17T10:13:20.053 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response 17;16.3661214;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38588;2460996.84259321;10.22222306;1.3;_
2025-11-17T10:13:20.053 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:20.053 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:20.053 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:20.054 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:20.054 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:20.054 [INFO] [Thread-67100 (handle)] [driver.py] [get_status()] Telra = 16.3661214, teldec = -24.256622
2025-11-17T10:13:20.054 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3661214 -24.256622
2025-11-17T10:13:20.054 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3661214 -24.256622
2025-11-17T10:13:20.054 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3661214 -24.256622
2025-11-17T10:13:20.055 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 17;16.3661214;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38588;2460996.84259323;10.22222306;1.3;_16.3404232509702 -24.1947229772468
2025-11-17T10:13:20.055 [INFO] [Thread-67100 (handle)] [driver.py] [get_status()] ra_j2k = 16.3404232509702     dec_j2k = -24.1947229772468
2025-11-17T10:13:20.056 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:20.056 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:20.056 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 140;0.104351860999603;171.162346601491;_
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response 140;0.104351860999603;171.162346601491;_
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:20.057 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:20.058 [DEBUG] [Thread-67100 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42859)
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:20.060 [DEBUG] [Thread-67100 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:20.067 [DEBUG] [Thread-67100 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:20.068 [INFO] [Thread-67100 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84259321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104351860999603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3661214, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.38588, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:12:23.767263', telescope_ra_j2k=16.3404232509702, telescope_dec_j2k=-24.1947229772468, observability=1)
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:23.910 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:23.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:23.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:23.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:23.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:23.911 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:13:23.911 [INFO] [ThreadPoolExecutor-2651_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:13:23.912 [INFO] [ThreadPoolExecutor-2651_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:13:29.780 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:13:29
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.712532758712769s
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:29.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:29.781 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:29.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:29.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:29.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:29.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3688246;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38859;2460996.8427058;10.22491889;1.3;_
2025-11-17T10:13:29.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.3688246;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38859;2460996.8427058;10.22491889;1.3;_
2025-11-17T10:13:29.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:29.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:29.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:29.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:29.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:29.783 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.3688246, teldec = -24.256622
2025-11-17T10:13:29.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3688246 -24.256622
2025-11-17T10:13:29.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3688246 -24.256622
2025-11-17T10:13:29.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3688246 -24.256622
2025-11-17T10:13:29.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3688246;-24.256622;50.108512;89.993105;50.08601;90.12017;13.38859;2460996.84270583;10.22491889;1.3;_16.3431250724156 -24.1948136027983
2025-11-17T10:13:29.784 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3431250724156     dec_j2k = -24.1948136027983
2025-11-17T10:13:29.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:29.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:29.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104351901111546;171.162351965909;_
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104351901111546;171.162351965909;_
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:29.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:29.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:29.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:13:29.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:13:29.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57585)
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:29.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:29.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:29.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:29.795 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:29.796 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:29.796 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8427058, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104351901111546, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3688246, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.38859, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3431250724156, telescope_dec_j2k=-24.1948136027983, observability=1)
2025-11-17T10:13:38.137 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Status age = 8.341742515563965s
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:38.138 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 17;16.3711348;-24.256622;50.108512;89.993105;50.08601;90.12017;13.3909;2460996.84280253;10.22722278;1.3;_
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response 17;16.3711348;-24.256622;50.108512;89.993105;50.08601;90.12017;13.3909;2460996.84280253;10.22722278;1.3;_
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:38.139 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:38.140 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:38.140 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:38.141 [INFO] [Thread-67101 (handle)] [driver.py] [get_status()] Telra = 16.3711348, teldec = -24.256622
2025-11-17T10:13:38.141 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3711348 -24.256622
2025-11-17T10:13:38.141 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3711348 -24.256622
2025-11-17T10:13:38.141 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3711348 -24.256622
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 17;16.3711348;-24.256622;50.108512;89.993105;50.08601;90.12017;13.3909;2460996.84280256;10.22722278;1.3;_16.3454340956632 -24.1948910779299
2025-11-17T10:13:38.142 [INFO] [Thread-67101 (handle)] [driver.py] [get_status()] ra_j2k = 16.3454340956632     dec_j2k = -24.1948910779299
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 140;0.104351941223489;171.162351965909;_
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response 140;0.104351941223489;171.162351965909;_
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:38.142 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:38.143 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:38.143 [DEBUG] [Thread-67101 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:38.143 [DEBUG] [Thread-67101 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:38.143 [DEBUG] [Thread-67101 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34165)
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:38.148 [DEBUG] [Thread-67101 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:38.155 [DEBUG] [Thread-67101 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:38.155 [DEBUG] [Thread-67101 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:38.155 [DEBUG] [Thread-67101 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:38.155 [DEBUG] [Thread-67101 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:38.155 [DEBUG] [Thread-67101 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:38.156 [DEBUG] [Thread-67101 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:38.156 [DEBUG] [Thread-67101 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:38.156 [DEBUG] [Thread-67101 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:38.156 [DEBUG] [Thread-67101 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:38.156 [INFO] [Thread-67101 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84280253, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104351941223489, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3711348, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.3909, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3454340956632, telescope_dec_j2k=-24.1948910779299, observability=1)
2025-11-17T10:13:44.787 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.787 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:44.788 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:13:44.789 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.790 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.790 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.790 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:44.790 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:44.790 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:44.791 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:13:44.792 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:44.793 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Park
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:13:44.794 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:13:44.795 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 29;16.3730063;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39277;2460996.84287957;10.22908917;1.3;_Park Command Successful
2025-11-17T10:13:45.795 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:13:45.795 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:13:45.795 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:13:45.796 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:13:45.796 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:13:46.796 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:13:46.796 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:13:46.796 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:13:46.797 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:13:46.797 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:13:47.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:13:47.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:13:47.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:13:47.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:13:47.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:13:48.798 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:13:48.799 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:13:48.799 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:13:48.799 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:13:48.799 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:13:48.799 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:48.800 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:48.801 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:13:48.801 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:13:48.801 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:13:48.801 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:13:49.802 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:13:49.803 [DEBUG] [ThreadPoolExecutor-2650_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:49.803 [INFO] [ThreadPoolExecutor-2650_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Status age = 18.03251814842224s
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:13:56.188 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 17;16.3761778;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39594;2460996.84301145;10.23225194;1.3;_
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response 17;16.3761778;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39594;2460996.84301145;10.23225194;1.3;_
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:13:56.189 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:13:56.190 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:56.190 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:13:56.190 [INFO] [Thread-67102 (handle)] [driver.py] [get_status()] Telra = 16.3761778, teldec = -24.256622
2025-11-17T10:13:56.190 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3761778 -24.256622
2025-11-17T10:13:56.191 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3761778 -24.256622
2025-11-17T10:13:56.191 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3761778 -24.256622
2025-11-17T10:13:56.191 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 17;16.3761778;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39594;2460996.84301147;10.23225194;1.3;_16.3504745313294 -24.1950602805112
2025-11-17T10:13:56.192 [INFO] [Thread-67102 (handle)] [driver.py] [get_status()] ra_j2k = 16.3504745313294     dec_j2k = -24.1950602805112
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 140;0.104352583014574;171.162357330327;_
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response 140;0.104352583014574;171.162357330327;_
2025-11-17T10:13:56.192 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:13:56.193 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:56.193 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:56.193 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:56.193 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:56.194 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:56.194 [DEBUG] [Thread-67102 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:56.194 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:13:56.194 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:13:56.194 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:13:56.195 [DEBUG] [Thread-67102 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:56.195 [DEBUG] [Thread-67102 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:13:56.195 [DEBUG] [Thread-67102 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35997)
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:13:56.200 [DEBUG] [Thread-67102 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:13:56.207 [DEBUG] [Thread-67102 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:13:56.208 [DEBUG] [Thread-67102 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:13:56.208 [INFO] [Thread-67102 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84301145, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104352583014574, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3761778, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.39594, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3504745313294, telescope_dec_j2k=-24.1950602805112, observability=1)
2025-11-17T10:14:02.820 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Status age = 6.6128928661346436s
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:02.821 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:02.822 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 17;16.3780147;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39778;2460996.84308822;10.23408389;1.3;_
2025-11-17T10:14:02.822 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response 17;16.3780147;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39778;2460996.84308822;10.23408389;1.3;_
2025-11-17T10:14:02.822 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:02.822 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:02.823 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:02.823 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:02.823 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:02.824 [INFO] [Thread-67103 (handle)] [driver.py] [get_status()] Telra = 16.3780147, teldec = -24.256622
2025-11-17T10:14:02.824 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3780147 -24.256622
2025-11-17T10:14:02.824 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3780147 -24.256622
2025-11-17T10:14:02.824 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3780147 -24.256622
2025-11-17T10:14:02.825 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 17;16.3780147;-24.256622;50.108512;89.993105;50.08601;90.12017;13.39778;2460996.84308825;10.23408389;1.3;_16.3523104987884 -24.1951219393283
2025-11-17T10:14:02.825 [INFO] [Thread-67103 (handle)] [driver.py] [get_status()] ra_j2k = 16.3523104987884     dec_j2k = -24.1951219393283
2025-11-17T10:14:02.825 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:02.825 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:02.825 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 140;0.104352181895146;171.162346601491;_
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response 140;0.104352181895146;171.162346601491;_
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:02.826 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:02.827 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:02.828 [DEBUG] [Thread-67103 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:02.828 [DEBUG] [Thread-67103 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:02.828 [DEBUG] [Thread-67103 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50667)
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:02.833 [DEBUG] [Thread-67103 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:02.841 [DEBUG] [Thread-67103 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:02.841 [INFO] [Thread-67103 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84308822, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104352181895146, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108512, telescope_az=89.993105, telescope_ra=16.3780147, telescope_dec=-24.256622, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.39778, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3523104987884, telescope_dec_j2k=-24.1951219393283, observability=1)
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Status age = 11.476941108703613s
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:14.318 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:14.319 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:14.319 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:14.319 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 17;16.381223;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40098;2460996.8432213;10.23728333;1.3;_
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response 17;16.381223;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40098;2460996.8432213;10.23728333;1.3;_
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:14.320 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:14.321 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:14.321 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:14.321 [INFO] [Thread-67104 (handle)] [driver.py] [get_status()] Telra = 16.381223, teldec = -24.256621
2025-11-17T10:14:14.321 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] UnCookCoordinates 16.381223 -24.256621
2025-11-17T10:14:14.321 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.381223 -24.256621
2025-11-17T10:14:14.321 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.381223 -24.256621
2025-11-17T10:14:14.322 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 17;16.381223;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40098;2460996.84322132;10.23728333;1.3;_16.3555171721429 -24.195228666433
2025-11-17T10:14:14.322 [INFO] [Thread-67104 (handle)] [driver.py] [get_status()] ra_j2k = 16.3555171721429     dec_j2k = -24.195228666433
2025-11-17T10:14:14.322 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:14.322 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:14.323 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 140;0.104353144581773;171.162362694745;_
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response 140;0.104353144581773;171.162362694745;_
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:14.324 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:14.325 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:14.326 [DEBUG] [Thread-67104 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:14.326 [DEBUG] [Thread-67104 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:14.326 [DEBUG] [Thread-67104 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37637)
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:14.329 [DEBUG] [Thread-67104 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:14.336 [DEBUG] [Thread-67104 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:14.336 [INFO] [Thread-67104 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8432213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104353144581773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108511, telescope_az=89.993105, telescope_ra=16.381223, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.40098, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3555171721429, telescope_dec_j2k=-24.195228666433, observability=1)
2025-11-17T10:14:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.4598965644836426s
2025-11-17T10:14:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4598965644836426
2025-11-17T10:14:15.120 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:14:15.120 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7834010124206543s
2025-11-17T10:14:15.120 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7834010124206543
2025-11-17T10:14:15.120 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.33994221687317 seconds ago
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.1083977222442627s
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:16.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:16.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.3818123;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40157;2460996.8432459;10.23787111;1.3;_
2025-11-17T10:14:16.446 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.3818123;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40157;2460996.8432459;10.23787111;1.3;_
2025-11-17T10:14:16.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:16.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:16.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:16.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:16.448 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:16.448 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.3818123, teldec = -24.256621
2025-11-17T10:14:16.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3818123 -24.256621
2025-11-17T10:14:16.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3818123 -24.256621
2025-11-17T10:14:16.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3818123 -24.256621
2025-11-17T10:14:16.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.3818123;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40157;2460996.84324594;10.23787111;1.3;_16.3561061735958 -24.1952484585289
2025-11-17T10:14:16.449 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.3561061735958     dec_j2k = -24.1952484585289
2025-11-17T10:14:16.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:16.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:16.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:16.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104352783574288;171.162351965909;_
2025-11-17T10:14:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104352783574288;171.162351965909;_
2025-11-17T10:14:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51915)
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:16.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:16.461 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:16.461 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8432459, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104352783574288, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108511, telescope_az=89.993105, telescope_ra=16.3818123, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.40157, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:13:23.909524', telescope_ra_j2k=16.3561061735958, telescope_dec_j2k=-24.1952484585289, observability=1)
2025-11-17T10:14:24.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:24.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:24.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:24.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:24.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:24.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:24.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:24.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:24.053 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:14:24.053 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:24.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:24.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:24.055 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:14:24.055 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:24.055 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:24.055 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:24.055 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:24.055 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:14:24.056 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:14:24.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:25.057 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:25.058 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:25.059 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:25.059 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:25.059 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:25.059 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:25.060 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:25.060 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:25.060 [DEBUG] [ThreadPoolExecutor-2652_0] [payload.py] [to_registers()] [0]
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56495)
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:25.063 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:25.070 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:25.071 [DEBUG] [ThreadPoolExecutor-2652_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:29.856 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:14:29
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.394775629043579s
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:29.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:29.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:29.857 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:29.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:29.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:29.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:29.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3855445;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40531;2460996.84340113;10.24159306;1.3;_
2025-11-17T10:14:29.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.3855445;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40531;2460996.84340113;10.24159306;1.3;_
2025-11-17T10:14:29.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:29.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:29.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:29.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:29.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:29.859 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.3855445, teldec = -24.256621
2025-11-17T10:14:29.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3855445 -24.256621
2025-11-17T10:14:29.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3855445 -24.256621
2025-11-17T10:14:29.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3855445 -24.256621
2025-11-17T10:14:29.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.3855445;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40531;2460996.84340116;10.24159306;1.3;_16.3598364847449 -24.1953738419258
2025-11-17T10:14:29.860 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3598364847449     dec_j2k = -24.1953738419258
2025-11-17T10:14:29.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:29.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:29.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104353144581773;171.162362694745;_
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104353144581773;171.162362694745;_
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:29.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:29.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:29.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:29.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:29.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:29.866 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51425)
2025-11-17T10:14:29.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:29.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:29.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:29.867 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:29.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:29.874 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:29.874 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84340113, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104353144581773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108511, telescope_az=89.993105, telescope_ra=16.3855445, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.40531, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3598364847449, telescope_dec_j2k=-24.1953738419258, observability=1)
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Status age = 2.514045238494873s
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:32.388 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:32.389 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:32.390 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 17;16.386264;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40603;2460996.84343044;10.24231056;1.3;_
2025-11-17T10:14:32.390 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response 17;16.386264;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40603;2460996.84343044;10.24231056;1.3;_
2025-11-17T10:14:32.390 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:32.390 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:32.390 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:32.391 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:32.391 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:32.391 [INFO] [Thread-67105 (handle)] [driver.py] [get_status()] Telra = 16.386264, teldec = -24.256621
2025-11-17T10:14:32.391 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] UnCookCoordinates 16.386264 -24.256621
2025-11-17T10:14:32.391 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.386264 -24.256621
2025-11-17T10:14:32.391 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.386264 -24.256621
2025-11-17T10:14:32.392 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 17;16.386264;-24.256621;50.108511;89.993105;50.08601;90.12017;13.40603;2460996.84343046;10.24231056;1.3;_16.3605556209925 -24.1953980204151
2025-11-17T10:14:32.392 [INFO] [Thread-67105 (handle)] [driver.py] [get_status()] ra_j2k = 16.3605556209925     dec_j2k = -24.1953980204151
2025-11-17T10:14:32.392 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:32.392 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:32.393 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 140;0.104353264917601;171.162362694745;_
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response 140;0.104353264917601;171.162362694745;_
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:32.394 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:32.395 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:32.396 [DEBUG] [Thread-67105 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:32.396 [DEBUG] [Thread-67105 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:32.396 [DEBUG] [Thread-67105 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40385)
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:32.397 [DEBUG] [Thread-67105 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:32.404 [DEBUG] [Thread-67105 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:32.405 [INFO] [Thread-67105 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84343044, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104353264917601, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108511, telescope_az=89.993105, telescope_ra=16.386264, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.40603, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3605556209925, telescope_dec_j2k=-24.1953980204151, observability=1)
2025-11-17T10:14:50.071 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:50.071 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:50.072 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:50.072 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:50.072 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:14:50.075 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:14:50.076 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:14:50.077 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Status age = 18.09756898880005s
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:14:50.502 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:14:50.503 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:14:50.503 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 17;16.3913055;-24.256621;50.108511;89.993104;50.08601;90.12017;13.41107;2460996.84364009;10.24733833;1.3;_
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response 17;16.3913055;-24.256621;50.108511;89.993104;50.08601;90.12017;13.41107;2460996.84364009;10.24733833;1.3;_
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:14:50.504 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:14:50.505 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:14:50.505 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:50.506 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:14:50.506 [INFO] [Thread-67106 (handle)] [driver.py] [get_status()] Telra = 16.3913055, teldec = -24.256621
2025-11-17T10:14:50.506 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3913055 -24.256621
2025-11-17T10:14:50.506 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3913055 -24.256621
2025-11-17T10:14:50.506 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3913055 -24.256621
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 17;16.3913055;-24.256621;50.108511;89.993104;50.08601;90.12017;13.41107;2460996.84364013;10.24733833;1.3;_16.3655945756766 -24.1955674999652
2025-11-17T10:14:50.507 [INFO] [Thread-67106 (handle)] [driver.py] [get_status()] ra_j2k = 16.3655945756766     dec_j2k = -24.1955674999652
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 140;0.104353906708686;171.162357330327;_
2025-11-17T10:14:50.507 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response 140;0.104353906708686;171.162357330327;_
2025-11-17T10:14:50.508 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:14:50.508 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:50.508 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:50.508 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:14:50.509 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:14:50.510 [DEBUG] [Thread-67106 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:50.510 [DEBUG] [Thread-67106 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:14:50.510 [DEBUG] [Thread-67106 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38989)
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:14:50.514 [DEBUG] [Thread-67106 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:14:50.522 [DEBUG] [Thread-67106 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:14:50.522 [INFO] [Thread-67106 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84364009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104353906708686, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108511, telescope_az=89.993104, telescope_ra=16.3913055, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.41107, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3655945756766, telescope_dec_j2k=-24.1955674999652, observability=1)
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Status age = 12.353652715682983s
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:02.876 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:02.877 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:02.878 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 17;16.3947357;-24.256621;50.10851;89.993104;50.08601;90.12017;13.4145;2460996.84378331;10.25075917;1.3;_
2025-11-17T10:15:02.878 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response 17;16.3947357;-24.256621;50.10851;89.993104;50.08601;90.12017;13.4145;2460996.84378331;10.25075917;1.3;_
2025-11-17T10:15:02.878 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:02.878 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:02.878 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:02.879 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:02.879 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:02.879 [INFO] [Thread-67107 (handle)] [driver.py] [get_status()] Telra = 16.3947357, teldec = -24.256621
2025-11-17T10:15:02.880 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3947357 -24.256621
2025-11-17T10:15:02.880 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3947357 -24.256621
2025-11-17T10:15:02.880 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3947357 -24.256621
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 17;16.3947357;-24.256621;50.10851;89.993104;50.08601;90.12017;13.4145;2460996.84378333;10.25075917;1.3;_16.3690230473448 -24.1956828746532
2025-11-17T10:15:02.881 [INFO] [Thread-67107 (handle)] [driver.py] [get_status()] ra_j2k = 16.3690230473448     dec_j2k = -24.1956828746532
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 140;0.104354749059485;171.162351965909;_
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response 140;0.104354749059485;171.162351965909;_
2025-11-17T10:15:02.881 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:02.882 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:02.882 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:02.882 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:02.883 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:02.884 [DEBUG] [Thread-67107 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:02.884 [DEBUG] [Thread-67107 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:02.884 [DEBUG] [Thread-67107 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:02.889 [DEBUG] [Thread-67107 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43355)
2025-11-17T10:15:02.889 [DEBUG] [Thread-67107 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:02.890 [DEBUG] [Thread-67107 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:02.890 [DEBUG] [Thread-67107 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:02.890 [DEBUG] [Thread-67107 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:02.890 [DEBUG] [Thread-67107 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:02.897 [DEBUG] [Thread-67107 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:02.897 [DEBUG] [Thread-67107 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:02.897 [DEBUG] [Thread-67107 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:02.898 [DEBUG] [Thread-67107 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:02.898 [INFO] [Thread-67107 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84378331, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104354749059485, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10851, telescope_az=89.993104, telescope_ra=16.3947357, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.4145, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3690230473448, telescope_dec_j2k=-24.1956828746532, observability=1)
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Status age = 5.669369697570801s
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:08.567 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:08.568 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:08.569 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 17;16.3963229;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41608;2460996.84384918;10.25234194;1.3;_
2025-11-17T10:15:08.569 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response 17;16.3963229;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41608;2460996.84384918;10.25234194;1.3;_
2025-11-17T10:15:08.569 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:08.569 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:08.570 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:08.570 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:08.570 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:08.571 [INFO] [Thread-67108 (handle)] [driver.py] [get_status()] Telra = 16.3963229, teldec = -24.256621
2025-11-17T10:15:08.571 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3963229 -24.256621
2025-11-17T10:15:08.571 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3963229 -24.256621
2025-11-17T10:15:08.571 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3963229 -24.256621
2025-11-17T10:15:08.572 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 17;16.3963229;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41608;2460996.84384921;10.25234194;1.3;_16.3706094485771 -24.195736277053
2025-11-17T10:15:08.572 [INFO] [Thread-67108 (handle)] [driver.py] [get_status()] ra_j2k = 16.3706094485771     dec_j2k = -24.195736277053
2025-11-17T10:15:08.572 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:08.572 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:08.572 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 140;0.104354468275886;171.162357330327;_
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response 140;0.104354468275886;171.162357330327;_
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:08.573 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:08.574 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:08.575 [DEBUG] [Thread-67108 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:08.575 [DEBUG] [Thread-67108 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:08.575 [DEBUG] [Thread-67108 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45805)
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:08.582 [DEBUG] [Thread-67108 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:08.589 [DEBUG] [Thread-67108 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:08.590 [INFO] [Thread-67108 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84384918, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104354468275886, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10851, telescope_az=89.993104, telescope_ra=16.3963229, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.41608, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3706094485771, telescope_dec_j2k=-24.195736277053, observability=1)
2025-11-17T10:15:14.810 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.221002578735352s
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3980779;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41784;2460996.84392146;10.25409222;1.3;_
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.3980779;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41784;2460996.84392146;10.25409222;1.3;_
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:14.814 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.3980779, teldec = -24.256621
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.3980779 -24.256621
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.3980779 -24.256621
2025-11-17T10:15:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.3980779 -24.256621
2025-11-17T10:15:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.3980779;-24.256621;50.10851;89.993104;50.08601;90.12017;13.41784;2460996.84392147;10.25409222;1.3;_16.3723635660666 -24.1957953376785
2025-11-17T10:15:14.815 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.3723635660666     dec_j2k = -24.1957953376785
2025-11-17T10:15:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104355430962513;171.162357330327;_
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104355430962513;171.162357330327;_
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56271)
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:14.834 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84392146, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104355430962513, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10851, telescope_az=89.993104, telescope_ra=16.3980779, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.41784, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:14:24.051875', telescope_ra_j2k=16.3723635660666, telescope_dec_j2k=-24.1957953376785, observability=1)
2025-11-17T10:15:15.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:15:15.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3466157913208008s
2025-11-17T10:15:15.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3466157913208008
2025-11-17T10:15:15.180 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.32439565658569 seconds ago
2025-11-17T10:15:15.581 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:15.581 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.7474558353424072s
2025-11-17T10:15:15.581 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7474558353424072
2025-11-17T10:15:24.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:24.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:24.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:24.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:24.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:24.199 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:24.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:24.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:24.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:24.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:24.200 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:15:24.200 [INFO] [ThreadPoolExecutor-2653_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:15:24.200 [INFO] [ThreadPoolExecutor-2653_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Status age = 11.799572467803955s
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:26.633 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:26.634 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:26.634 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:26.635 [DEBUG] [Thread-67109 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:26.635 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:26.635 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:26.635 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:26.635 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:26.636 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 17;16.4013639;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42113;2460996.84405829;10.25736917;1.3;_
2025-11-17T10:15:26.636 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response 17;16.4013639;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42113;2460996.84405829;10.25736917;1.3;_
2025-11-17T10:15:26.636 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:26.636 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:26.636 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:26.637 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:26.637 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:26.637 [INFO] [Thread-67109 (handle)] [driver.py] [get_status()] Telra = 16.4013639, teldec = -24.256621
2025-11-17T10:15:26.637 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4013639 -24.256621
2025-11-17T10:15:26.637 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4013639 -24.256621
2025-11-17T10:15:26.637 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4013639 -24.256621
2025-11-17T10:15:26.638 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 17;16.4013639;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42113;2460996.84405831;10.25736917;1.3;_16.3756479156725 -24.1959059559182
2025-11-17T10:15:26.638 [INFO] [Thread-67109 (handle)] [driver.py] [get_status()] ra_j2k = 16.3756479156725     dec_j2k = -24.1959059559182
2025-11-17T10:15:26.638 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:26.638 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:26.638 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 140;0.104355270514742;171.162362694745;_
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response 140;0.104355270514742;171.162362694745;_
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:26.639 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:26.640 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:26.641 [DEBUG] [Thread-67109 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:26.641 [DEBUG] [Thread-67109 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:26.641 [DEBUG] [Thread-67109 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59955)
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:26.646 [DEBUG] [Thread-67109 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:26.653 [DEBUG] [Thread-67109 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:26.653 [INFO] [Thread-67109 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84405829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104355270514742, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10851, telescope_az=89.993104, telescope_ra=16.4013639, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.42113, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.3756479156725, telescope_dec_j2k=-24.1959059559182, observability=1)
2025-11-17T10:15:29.935 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:15:29
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.281615734100342s
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:29.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:29.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:29.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:29.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4022886;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42205;2460996.84409649;10.25829139;1.3;_
2025-11-17T10:15:29.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4022886;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42205;2460996.84409649;10.25829139;1.3;_
2025-11-17T10:15:29.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:29.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:29.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:29.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:29.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:29.939 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4022886, teldec = -24.256621
2025-11-17T10:15:29.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4022886 -24.256621
2025-11-17T10:15:29.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4022886 -24.256621
2025-11-17T10:15:29.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4022886 -24.256621
2025-11-17T10:15:29.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4022886;-24.256621;50.10851;89.993104;50.08601;90.12017;13.42205;2460996.84409653;10.25829139;1.3;_16.3765721517091 -24.1959370928183
2025-11-17T10:15:29.940 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3765721517091     dec_j2k = -24.1959370928183
2025-11-17T10:15:29.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:29.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:29.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:29.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104355711746113;171.162357330327;_
2025-11-17T10:15:29.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104355711746113;171.162357330327;_
2025-11-17T10:15:29.941 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:29.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:29.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:29.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:29.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:29.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:29.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:29.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42415)
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:29.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:29.952 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:29.952 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84409649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104355711746113, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10851, telescope_az=89.993104, telescope_ra=16.4022886, telescope_dec=-24.256621, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.42205, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.3765721517091, telescope_dec_j2k=-24.1959370928183, observability=1)
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Status age = 14.799225807189941s
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:44.751 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 17;16.4064146;-24.25662;50.108509;89.993104;50.08601;90.12017;13.42618;2460996.84426796;10.26240611;1.3;_
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response 17;16.4064146;-24.25662;50.108509;89.993104;50.08601;90.12017;13.42618;2460996.84426796;10.26240611;1.3;_
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:15:44.752 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:15:44.753 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:44.753 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:15:44.753 [INFO] [Thread-67110 (handle)] [driver.py] [get_status()] Telra = 16.4064146, teldec = -24.25662
2025-11-17T10:15:44.753 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4064146 -24.25662
2025-11-17T10:15:44.753 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4064146 -24.25662
2025-11-17T10:15:44.754 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4064146 -24.25662
2025-11-17T10:15:44.754 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 17;16.4064146;-24.25662;50.108509;89.993104;50.08601;90.12017;13.42618;2460996.84426799;10.26240611;1.3;_16.380696084192 -24.1960750694904
2025-11-17T10:15:44.755 [INFO] [Thread-67110 (handle)] [driver.py] [get_status()] ra_j2k = 16.380696084192     dec_j2k = -24.1960750694904
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 140;0.104355430962513;171.162362694745;_
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response 140;0.104355430962513;171.162362694745;_
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:44.755 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:15:44.756 [DEBUG] [Thread-67110 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43059)
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:15:44.761 [DEBUG] [Thread-67110 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:15:44.768 [DEBUG] [Thread-67110 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:15:44.768 [DEBUG] [Thread-67110 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:15:44.769 [DEBUG] [Thread-67110 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:15:44.769 [INFO] [Thread-67110 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84426796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104355430962513, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108509, telescope_az=89.993104, telescope_ra=16.4064146, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.42618, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.380696084192, telescope_dec_j2k=-24.1960750694904, observability=1)
2025-11-17T10:15:45.077 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:15:45.078 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:45.079 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:45.080 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:45.081 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:45.081 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.081 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:45.081 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:45.081 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.082 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:45.083 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:45.083 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:45.083 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:45.083 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:45.083 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Park
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:15:45.084 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 29;16.4064985;-24.25662;50.108509;89.993104;50.08601;90.12017;13.42626;2460996.84427181;10.26248972;1.3;_Park Command Successful
2025-11-17T10:15:46.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:15:46.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:15:46.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:15:46.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:15:46.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:15:47.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:15:47.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:15:47.085 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:15:47.086 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:15:47.086 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:15:48.086 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:15:48.086 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:15:48.086 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:15:48.087 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:15:48.087 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:15:49.087 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:15:49.087 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:49.088 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:15:49.089 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:15:49.090 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:50.090 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:50.090 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:50.090 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:15:50.090 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:15:50.090 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:15:50.091 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:15:50.092 [DEBUG] [ThreadPoolExecutor-2652_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:15:50.092 [INFO] [ThreadPoolExecutor-2652_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Status age = 18.04188370704651s
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:02.811 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:02.812 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 17;16.4114295;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43119;2460996.844477;10.26740722;1.3;_
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response 17;16.4114295;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43119;2460996.844477;10.26740722;1.3;_
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:02.813 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:02.814 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:02.814 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:02.814 [INFO] [Thread-67111 (handle)] [driver.py] [get_status()] Telra = 16.4114295, teldec = -24.25662
2025-11-17T10:16:02.814 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4114295 -24.25662
2025-11-17T10:16:02.814 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4114295 -24.25662
2025-11-17T10:16:02.814 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4114295 -24.25662
2025-11-17T10:16:02.815 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 17;16.4114295;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43119;2460996.84447703;10.26740722;1.3;_16.3857084765395 -24.1962440840957
2025-11-17T10:16:02.815 [INFO] [Thread-67111 (handle)] [driver.py] [get_status()] ra_j2k = 16.3857084765395     dec_j2k = -24.1962440840957
2025-11-17T10:16:02.815 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:02.815 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:02.815 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:02.815 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 140;0.104355751858055;171.162346601491;_
2025-11-17T10:16:02.816 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response 140;0.104355751858055;171.162346601491;_
2025-11-17T10:16:02.816 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:02.816 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:02.816 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:02.816 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:02.817 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:02.818 [DEBUG] [Thread-67111 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:02.818 [DEBUG] [Thread-67111 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:02.818 [DEBUG] [Thread-67111 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:02.821 [DEBUG] [Thread-67111 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44539)
2025-11-17T10:16:02.821 [DEBUG] [Thread-67111 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:02.821 [DEBUG] [Thread-67111 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:02.821 [DEBUG] [Thread-67111 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:02.822 [DEBUG] [Thread-67111 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:02.822 [DEBUG] [Thread-67111 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:02.828 [DEBUG] [Thread-67111 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:02.829 [DEBUG] [Thread-67111 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:02.829 [INFO] [Thread-67111 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.844477, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104355751858055, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108509, telescope_az=89.993104, telescope_ra=16.4114295, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.43119, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.3857084765395, telescope_dec_j2k=-24.1962440840957, observability=1)
2025-11-17T10:16:02.932 [DEBUG] [Thread-67112 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:02.932 [DEBUG] [Thread-67112 (handle)] [server.py] [get_status()] Status age = 0.10335469245910645s
2025-11-17T10:16:02.932 [DEBUG] [Thread-67112 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.10335469245910645
2025-11-17T10:16:14.675 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:14.675 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.846526622772217s
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:14.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:14.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:14.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4147438;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43451;2460996.84461433;10.2707125;1.3;_
2025-11-17T10:16:14.678 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4147438;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43451;2460996.84461433;10.2707125;1.3;_
2025-11-17T10:16:14.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:14.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:14.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:14.679 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:14.679 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:14.679 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4147438, teldec = -24.25662
2025-11-17T10:16:14.679 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4147438 -24.25662
2025-11-17T10:16:14.679 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4147438 -24.25662
2025-11-17T10:16:14.679 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4147438 -24.25662
2025-11-17T10:16:14.680 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4147438;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43451;2460996.84461435;10.2707125;1.3;_16.3890211225737 -24.1963558425399
2025-11-17T10:16:14.680 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.3890211225737     dec_j2k = -24.1963558425399
2025-11-17T10:16:14.681 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:14.681 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:14.681 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:14.681 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104356714544683;171.162351965909;_
2025-11-17T10:16:14.681 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104356714544683;171.162351965909;_
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:14.682 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:14.683 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:14.683 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:14.683 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:14.689 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52285)
2025-11-17T10:16:14.689 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:14.690 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:14.690 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:14.690 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:14.690 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:14.697 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:14.697 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:14.697 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:14.697 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:14.697 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:14.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:14.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:14.698 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:14.698 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:14.698 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84461433, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104356714544683, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108509, telescope_az=89.993104, telescope_ra=16.4147438, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.43451, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.3890211225737, telescope_dec_j2k=-24.1963558425399, observability=1)
2025-11-17T10:16:14.813 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.1159524917602539s
2025-11-17T10:16:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.1159524917602539
2025-11-17T10:16:15.240 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:16:15.240 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.54239821434021s
2025-11-17T10:16:15.240 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.54239821434021
2025-11-17T10:16:15.240 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.30533695220947 seconds ago
2025-11-17T10:16:20.876 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Status age = 6.178827524185181s
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:20.877 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:20.878 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 17;16.4164719;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43623;2460996.84468609;10.27243583;1.3;_
2025-11-17T10:16:20.878 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response 17;16.4164719;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43623;2460996.84468609;10.27243583;1.3;_
2025-11-17T10:16:20.879 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:20.879 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:20.879 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:20.880 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:20.880 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:20.880 [INFO] [Thread-67113 (handle)] [driver.py] [get_status()] Telra = 16.4164719, teldec = -24.25662
2025-11-17T10:16:20.880 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4164719 -24.25662
2025-11-17T10:16:20.880 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4164719 -24.25662
2025-11-17T10:16:20.880 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4164719 -24.25662
2025-11-17T10:16:20.881 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 17;16.4164719;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43623;2460996.84468612;10.27243583;1.3;_16.3907483612319 -24.1964141325668
2025-11-17T10:16:20.881 [INFO] [Thread-67113 (handle)] [driver.py] [get_status()] ra_j2k = 16.3907483612319     dec_j2k = -24.1964141325668
2025-11-17T10:16:20.881 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:20.881 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:20.881 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:20.881 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 140;0.104356273313312;171.162362694745;_
2025-11-17T10:16:20.882 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response 140;0.104356273313312;171.162362694745;_
2025-11-17T10:16:20.882 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:20.882 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:20.882 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:20.882 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:20.883 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:20.884 [DEBUG] [Thread-67113 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:20.884 [DEBUG] [Thread-67113 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:20.884 [DEBUG] [Thread-67113 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52541)
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:20.885 [DEBUG] [Thread-67113 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:20.892 [DEBUG] [Thread-67113 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:20.893 [DEBUG] [Thread-67113 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:20.893 [INFO] [Thread-67113 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84468609, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104356273313312, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108509, telescope_az=89.993104, telescope_ra=16.4164719, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.43623, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:15:24.198232', telescope_ra_j2k=16.3907483612319, telescope_dec_j2k=-24.1964141325668, observability=1)
2025-11-17T10:16:24.340 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:24.340 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:24.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:24.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:24.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:24.342 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:24.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:24.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:24.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:24.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:24.343 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:16:24.343 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:24.343 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:24.343 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:24.343 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:24.343 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:16:24.344 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:16:24.345 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:25.345 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:25.345 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:25.345 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:25.345 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:25.345 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:16:25.346 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:25.347 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:25.348 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:25.348 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:25.348 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:25.348 [DEBUG] [ThreadPoolExecutor-2654_0] [payload.py] [to_registers()] [0]
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43401)
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:25.351 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:25.359 [DEBUG] [ThreadPoolExecutor-2654_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:30.013 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:16:30
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.120190858840942s
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:30.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:30.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:30.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:30.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:30.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:30.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:30.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:30.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:30.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4190302;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43879;2460996.84479184;10.27498722;1.3;_
2025-11-17T10:16:30.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4190302;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43879;2460996.84479184;10.27498722;1.3;_
2025-11-17T10:16:30.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:30.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:30.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:30.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:30.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:30.017 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4190302, teldec = -24.25662
2025-11-17T10:16:30.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4190302 -24.25662
2025-11-17T10:16:30.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4190302 -24.25662
2025-11-17T10:16:30.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4190302 -24.25662
2025-11-17T10:16:30.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4190302;-24.25662;50.108509;89.993104;50.08601;90.12017;13.43879;2460996.84479188;10.27498722;1.3;_16.3933053874101 -24.196500448903
2025-11-17T10:16:30.018 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.3933053874101     dec_j2k = -24.196500448903
2025-11-17T10:16:30.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:30.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:30.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104357035440225;171.162373423581;_
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104357035440225;171.162373423581;_
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:30.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:30.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:30.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:30.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:30.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46003)
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:30.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:30.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:30.034 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:30.034 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:30.034 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84479184, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104357035440225, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108509, telescope_az=89.993104, telescope_ra=16.4190302, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.43879, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.3933053874101, telescope_dec_j2k=-24.196500448903, observability=1)
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Status age = 8.94957709312439s
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:38.983 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:38.984 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:38.985 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 17;16.4215154;-24.25662;50.108508;89.993104;50.08601;90.12017;13.44128;2460996.84489566;10.27746556;1.3;_
2025-11-17T10:16:38.985 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response 17;16.4215154;-24.25662;50.108508;89.993104;50.08601;90.12017;13.44128;2460996.84489566;10.27746556;1.3;_
2025-11-17T10:16:38.985 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:38.985 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:38.986 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:38.986 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:38.987 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:38.987 [INFO] [Thread-67114 (handle)] [driver.py] [get_status()] Telra = 16.4215154, teldec = -24.25662
2025-11-17T10:16:38.987 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4215154 -24.25662
2025-11-17T10:16:38.987 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4215154 -24.25662
2025-11-17T10:16:38.987 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4215154 -24.25662
2025-11-17T10:16:38.988 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 17;16.4215154;-24.25662;50.108508;89.993104;50.08601;90.12017;13.44128;2460996.84489569;10.27746556;1.3;_16.3957893514945 -24.1965843252136
2025-11-17T10:16:38.988 [INFO] [Thread-67114 (handle)] [driver.py] [get_status()] ra_j2k = 16.3957893514945     dec_j2k = -24.1965843252136
2025-11-17T10:16:38.988 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:38.988 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:38.988 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 140;0.104357556895482;171.162362694745;_
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response 140;0.104357556895482;171.162362694745;_
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:38.989 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:38.990 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:38.991 [DEBUG] [Thread-67114 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:16:38.991 [DEBUG] [Thread-67114 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:16:38.991 [DEBUG] [Thread-67114 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:16:38.992 [DEBUG] [Thread-67114 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33261)
2025-11-17T10:16:38.992 [DEBUG] [Thread-67114 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:38.992 [DEBUG] [Thread-67114 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:38.993 [DEBUG] [Thread-67114 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:38.993 [DEBUG] [Thread-67114 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:38.993 [DEBUG] [Thread-67114 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:39.000 [DEBUG] [Thread-67114 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:39.000 [INFO] [Thread-67114 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84489566, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104357556895482, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108508, telescope_az=89.993104, telescope_ra=16.4215154, telescope_dec=-24.25662, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.44128, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.3957893514945, telescope_dec_j2k=-24.1965843252136, observability=1)
2025-11-17T10:16:50.359 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:50.359 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:50.359 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:50.359 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:50.360 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:16:50.361 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:16:50.362 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Status age = 18.056673765182495s
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:16:57.057 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:16:57.058 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:16:57.059 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 17;16.4265578;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44632;2460996.84510485;10.28249417;1.3;_
2025-11-17T10:16:57.059 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response 17;16.4265578;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44632;2460996.84510485;10.28249417;1.3;_
2025-11-17T10:16:57.059 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:16:57.059 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:16:57.059 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:16:57.060 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:57.060 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:16:57.060 [INFO] [Thread-67115 (handle)] [driver.py] [get_status()] Telra = 16.4265578, teldec = -24.256619
2025-11-17T10:16:57.060 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4265578 -24.256619
2025-11-17T10:16:57.060 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4265578 -24.256619
2025-11-17T10:16:57.061 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4265578 -24.256619
2025-11-17T10:16:57.061 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 17;16.4265578;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44632;2460996.84510487;10.28249417;1.3;_16.4008292486072 -24.1967535875267
2025-11-17T10:16:57.061 [INFO] [Thread-67115 (handle)] [driver.py] [get_status()] ra_j2k = 16.4008292486072     dec_j2k = -24.1967535875267
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 140;0.10435767723131;171.162362694745;_
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response 140;0.10435767723131;171.162362694745;_
2025-11-17T10:16:57.062 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:16:57.063 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:16:57.064 [DEBUG] [Thread-67115 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:57.064 [DEBUG] [Thread-67115 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:16:57.064 [DEBUG] [Thread-67115 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50047)
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:16:57.070 [DEBUG] [Thread-67115 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:16:57.077 [DEBUG] [Thread-67115 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:16:57.077 [INFO] [Thread-67115 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84510485, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10435767723131, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108508, telescope_az=89.993103, telescope_ra=16.4265578, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.44632, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.4008292486072, telescope_dec_j2k=-24.1967535875267, observability=1)
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Status age = 5.8873772621154785s
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:02.965 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:02.966 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:02.967 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 17;16.4282014;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44796;2460996.84517323;10.28413333;1.3;_
2025-11-17T10:17:02.967 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response 17;16.4282014;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44796;2460996.84517323;10.28413333;1.3;_
2025-11-17T10:17:02.967 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:02.967 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:02.967 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:02.968 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:02.968 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:02.968 [INFO] [Thread-67116 (handle)] [driver.py] [get_status()] Telra = 16.4282014, teldec = -24.256619
2025-11-17T10:17:02.968 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4282014 -24.256619
2025-11-17T10:17:02.968 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4282014 -24.256619
2025-11-17T10:17:02.968 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4282014 -24.256619
2025-11-17T10:17:02.969 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 17;16.4282014;-24.256619;50.108508;89.993103;50.08601;90.12017;13.44796;2460996.84517325;10.28413333;1.3;_16.4024720340411 -24.1968091085418
2025-11-17T10:17:02.969 [INFO] [Thread-67116 (handle)] [driver.py] [get_status()] ra_j2k = 16.4024720340411     dec_j2k = -24.1968091085418
2025-11-17T10:17:02.969 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:02.969 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:02.969 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 140;0.104357877791024;171.162362694745;_
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response 140;0.104357877791024;171.162362694745;_
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:02.970 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:02.971 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:02.972 [DEBUG] [Thread-67116 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:02.972 [DEBUG] [Thread-67116 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:02.972 [DEBUG] [Thread-67116 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45609)
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:02.979 [DEBUG] [Thread-67116 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:02.986 [DEBUG] [Thread-67116 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:02.986 [INFO] [Thread-67116 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84517323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104357877791024, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108508, telescope_az=89.993103, telescope_ra=16.4282014, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.44796, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.4024720340411, telescope_dec_j2k=-24.1968091085418, observability=1)
2025-11-17T10:17:13.791 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:13.791 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.805137395858765s
2025-11-17T10:17:13.791 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:13.791 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:13.792 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:13.792 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:13.792 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:13.792 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:13.793 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:13.794 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4312099;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45097;2460996.84529854;10.28713361;1.3;_
2025-11-17T10:17:13.794 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4312099;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45097;2460996.84529854;10.28713361;1.3;_
2025-11-17T10:17:13.794 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:13.794 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:13.794 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:13.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:13.795 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:13.795 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4312099, teldec = -24.256619
2025-11-17T10:17:13.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4312099 -24.256619
2025-11-17T10:17:13.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4312099 -24.256619
2025-11-17T10:17:13.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4312099 -24.256619
2025-11-17T10:17:13.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4312099;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45097;2460996.84529856;10.28713361;1.3;_16.4054790447189 -24.1969107653155
2025-11-17T10:17:13.796 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.4054790447189     dec_j2k = -24.1969107653155
2025-11-17T10:17:13.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:13.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:13.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104357998126852;171.162346601491;_
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104357998126852;171.162346601491;_
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:13.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:13.798 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:13.798 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:13.798 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:13.798 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58577)
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:13.801 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:13.808 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:13.809 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84529854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104357998126852, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108508, telescope_az=89.993103, telescope_ra=16.4312099, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.45097, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.4054790447189, telescope_dec_j2k=-24.1969107653155, observability=1)
2025-11-17T10:17:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.9812521934509277s
2025-11-17T10:17:14.790 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9812521934509277
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Status age = 1.3073961734771729s
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:15.116 [DEBUG] [Thread-67117 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 17;16.4315743;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45134;2460996.84531385;10.28749694;1.3;_
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response 17;16.4315743;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45134;2460996.84531385;10.28749694;1.3;_
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:15.117 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:15.118 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:15.118 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:15.118 [INFO] [Thread-67117 (handle)] [driver.py] [get_status()] Telra = 16.4315743, teldec = -24.256619
2025-11-17T10:17:15.118 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4315743 -24.256619
2025-11-17T10:17:15.118 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4315743 -24.256619
2025-11-17T10:17:15.118 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4315743 -24.256619
2025-11-17T10:17:15.119 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 17;16.4315743;-24.256619;50.108508;89.993103;50.08601;90.12017;13.45134;2460996.84531388;10.28749694;1.3;_16.4058432644751 -24.1969230809057
2025-11-17T10:17:15.119 [INFO] [Thread-67117 (handle)] [driver.py] [get_status()] ra_j2k = 16.4058432644751     dec_j2k = -24.1969230809057
2025-11-17T10:17:15.119 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:15.119 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:15.119 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 140;0.104358278910452;171.162357330327;_
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response 140;0.104358278910452;171.162357330327;_
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:15.120 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:15.121 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:15.121 [DEBUG] [Thread-67117 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:15.121 [DEBUG] [Thread-67117 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:15.121 [DEBUG] [Thread-67117 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:15.123 [DEBUG] [Thread-67117 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54841)
2025-11-17T10:17:15.123 [DEBUG] [Thread-67117 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:15.123 [DEBUG] [Thread-67117 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:15.123 [DEBUG] [Thread-67117 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:15.123 [DEBUG] [Thread-67117 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:15.124 [DEBUG] [Thread-67117 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:15.131 [DEBUG] [Thread-67117 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:15.131 [INFO] [Thread-67117 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84531385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104358278910452, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108508, telescope_az=89.993103, telescope_ra=16.4315743, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.45134, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:16:24.340206', telescope_ra_j2k=16.4058432644751, telescope_dec_j2k=-24.1969230809057, observability=1)
2025-11-17T10:17:15.300 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:17:15.300 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.16898703575134277s
2025-11-17T10:17:15.300 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.16898703575134277
2025-11-17T10:17:15.300 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.28720569610596 seconds ago
2025-11-17T10:17:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:24.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:24.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:24.484 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:24.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:24.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:24.485 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:17:24.485 [INFO] [ThreadPoolExecutor-2655_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:17:24.486 [INFO] [ThreadPoolExecutor-2655_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:17:30.094 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:17:30
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.963530540466309s
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:30.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:30.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:30.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4357487;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45551;2460996.84548723;10.29166;1.3;_
2025-11-17T10:17:30.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4357487;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45551;2460996.84548723;10.29166;1.3;_
2025-11-17T10:17:30.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:30.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:30.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:30.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:30.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:30.098 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4357487, teldec = -24.256619
2025-11-17T10:17:30.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4357487 -24.256619
2025-11-17T10:17:30.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4357487 -24.256619
2025-11-17T10:17:30.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4357487 -24.256619
2025-11-17T10:17:30.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4357487;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45551;2460996.84548726;10.29166;1.3;_16.4100156019695 -24.1970642022078
2025-11-17T10:17:30.099 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4100156019695     dec_j2k = -24.1970642022078
2025-11-17T10:17:30.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:30.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:30.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104358519582109;171.162357330327;_
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104358519582109;171.162357330327;_
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:30.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:30.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:30.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:30.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:30.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47311)
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:30.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:30.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:30.112 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84548723, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104358519582109, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108507, telescope_az=89.993103, telescope_ra=16.4357487, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.45551, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4100156019695, telescope_dec_j2k=-24.1970642022078, observability=1)
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Status age = 3.1317033767700195s
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:33.244 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:33.245 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:33.246 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 17;16.4366454;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45641;2460996.84552368;10.29255417;1.3;_
2025-11-17T10:17:33.246 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response 17;16.4366454;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45641;2460996.84552368;10.29255417;1.3;_
2025-11-17T10:17:33.246 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:33.246 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:33.246 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:33.247 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:33.247 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:33.247 [INFO] [Thread-67118 (handle)] [driver.py] [get_status()] Telra = 16.4366454, teldec = -24.256619
2025-11-17T10:17:33.247 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4366454 -24.256619
2025-11-17T10:17:33.247 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4366454 -24.256619
2025-11-17T10:17:33.247 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4366454 -24.256619
2025-11-17T10:17:33.248 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 17;16.4366454;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45641;2460996.8455237;10.29255417;1.3;_16.4109118594725 -24.1970945258545
2025-11-17T10:17:33.248 [INFO] [Thread-67118 (handle)] [driver.py] [get_status()] ra_j2k = 16.4109118594725     dec_j2k = -24.1970945258545
2025-11-17T10:17:33.248 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:33.248 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:33.248 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:33.249 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 140;0.10435868002988;171.162357330327;_
2025-11-17T10:17:33.249 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response 140;0.10435868002988;171.162357330327;_
2025-11-17T10:17:33.249 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:33.249 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:33.249 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:33.250 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:33.250 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:33.250 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:33.250 [DEBUG] [Thread-67118 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:33.251 [DEBUG] [Thread-67118 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39367)
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:33.257 [DEBUG] [Thread-67118 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:33.264 [DEBUG] [Thread-67118 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:33.265 [DEBUG] [Thread-67118 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:33.265 [INFO] [Thread-67118 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84552368, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10435868002988, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108507, telescope_az=89.993103, telescope_ra=16.4366454, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.45641, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4109118594725, telescope_dec_j2k=-24.1970945258545, observability=1)
2025-11-17T10:17:45.362 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.362 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.362 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:45.362 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:45.362 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:17:45.363 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:45.364 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:45.365 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:45.366 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:45.366 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.366 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:45.366 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:17:45.367 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.368 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:45.368 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:45.368 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:45.368 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:45.368 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Park
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:17:45.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 29;16.4400174;-24.256619;50.108507;89.993103;50.08601;90.12017;13.45978;2460996.84566399;10.29591694;1.3;_Park Command Successful
2025-11-17T10:17:46.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:17:46.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:17:46.369 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:17:46.370 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:17:46.371 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:17:47.371 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:17:47.371 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:17:47.371 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:17:47.372 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:17:47.373 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:17:48.373 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:17:48.373 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:17:48.373 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:17:48.374 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:17:48.374 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:17:49.374 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:17:49.374 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:17:49.374 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:49.375 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:17:49.376 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:17:49.377 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:50.377 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:50.377 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:50.377 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:50.377 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:50.377 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:17:50.378 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:17:50.379 [DEBUG] [ThreadPoolExecutor-2654_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:50.379 [INFO] [ThreadPoolExecutor-2654_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Status age = 18.04047203063965s
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:17:51.305 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:17:51.306 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:17:51.307 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 17;16.4416602;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46142;2460996.84573272;10.29755528;1.3;_
2025-11-17T10:17:51.307 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response 17;16.4416602;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46142;2460996.84573272;10.29755528;1.3;_
2025-11-17T10:17:51.307 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:17:51.307 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:17:51.307 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:17:51.308 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:51.308 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:17:51.308 [INFO] [Thread-67119 (handle)] [driver.py] [get_status()] Telra = 16.4416602, teldec = -24.256619
2025-11-17T10:17:51.308 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4416602 -24.256619
2025-11-17T10:17:51.308 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4416602 -24.256619
2025-11-17T10:17:51.308 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4416602 -24.256619
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 17;16.4416602;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46142;2460996.84573274;10.29755528;1.3;_16.4159241883826 -24.1972641726917
2025-11-17T10:17:51.309 [INFO] [Thread-67119 (handle)] [driver.py] [get_status()] ra_j2k = 16.4159241883826     dec_j2k = -24.1972641726917
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 140;0.104359321820965;171.162368059163;_
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response 140;0.104359321820965;171.162368059163;_
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:51.309 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:51.310 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:51.310 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:51.310 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:51.310 [DEBUG] [Thread-67119 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:51.311 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:17:51.311 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:17:51.311 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:17:51.311 [DEBUG] [Thread-67119 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:51.312 [DEBUG] [Thread-67119 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:17:51.312 [DEBUG] [Thread-67119 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:17:51.315 [DEBUG] [Thread-67119 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44541)
2025-11-17T10:17:51.315 [DEBUG] [Thread-67119 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:17:51.315 [DEBUG] [Thread-67119 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:17:51.315 [DEBUG] [Thread-67119 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:17:51.316 [DEBUG] [Thread-67119 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:17:51.316 [DEBUG] [Thread-67119 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:17:51.323 [DEBUG] [Thread-67119 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:17:51.323 [INFO] [Thread-67119 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84573272, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104359321820965, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108507, telescope_az=89.993103, telescope_ra=16.4416602, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.46142, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4159241883826, telescope_dec_j2k=-24.1972641726917, observability=1)
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Status age = 11.691847085952759s
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:03.015 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 17;16.4449188;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46468;2460996.84586824;10.300805;1.3;_
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response 17;16.4449188;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46468;2460996.84586824;10.300805;1.3;_
2025-11-17T10:18:03.016 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:03.017 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:03.017 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:03.018 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:03.018 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:03.018 [INFO] [Thread-67120 (handle)] [driver.py] [get_status()] Telra = 16.4449188, teldec = -24.256619
2025-11-17T10:18:03.018 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4449188 -24.256619
2025-11-17T10:18:03.018 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4449188 -24.256619
2025-11-17T10:18:03.018 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4449188 -24.256619
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 17;16.4449188;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46468;2460996.84586828;10.300805;1.3;_16.4191811859313 -24.1973744646144
2025-11-17T10:18:03.019 [INFO] [Thread-67120 (handle)] [driver.py] [get_status()] ra_j2k = 16.4191811859313     dec_j2k = -24.1973744646144
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 140;0.104359482268736;171.162357330327;_
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response 140;0.104359482268736;171.162357330327;_
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:03.019 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:03.020 [DEBUG] [Thread-67120 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47851)
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:03.023 [DEBUG] [Thread-67120 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:03.031 [DEBUG] [Thread-67120 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:03.032 [INFO] [Thread-67120 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84586824, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104359482268736, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108507, telescope_az=89.993103, telescope_ra=16.4449188, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.46468, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4191811859313, telescope_dec_j2k=-24.1973744646144, observability=1)
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Status age = 6.345666170120239s
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:09.377 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:09.378 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:09.378 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:09.379 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 17;16.4467029;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46646;2460996.84594189;10.30258417;1.3;_
2025-11-17T10:18:09.380 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response 17;16.4467029;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46646;2460996.84594189;10.30258417;1.3;_
2025-11-17T10:18:09.380 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:09.380 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:09.380 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:09.381 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:09.381 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:09.381 [INFO] [Thread-67121 (handle)] [driver.py] [get_status()] Telra = 16.4467029, teldec = -24.256619
2025-11-17T10:18:09.381 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4467029 -24.256619
2025-11-17T10:18:09.381 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4467029 -24.256619
2025-11-17T10:18:09.381 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4467029 -24.256619
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 17;16.4467029;-24.256619;50.108507;89.993103;50.08601;90.12017;13.46646;2460996.84594192;10.30258417;1.3;_16.4209644096677 -24.197434868648
2025-11-17T10:18:09.382 [INFO] [Thread-67121 (handle)] [driver.py] [get_status()] ra_j2k = 16.4209644096677     dec_j2k = -24.197434868648
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 140;0.104359241597079;171.162351965909;_
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response 140;0.104359241597079;171.162351965909;_
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:09.382 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:09.383 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:09.384 [DEBUG] [Thread-67121 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:09.384 [DEBUG] [Thread-67121 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:09.384 [DEBUG] [Thread-67121 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58947)
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:09.385 [DEBUG] [Thread-67121 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:09.392 [DEBUG] [Thread-67121 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:09.392 [DEBUG] [Thread-67121 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:09.392 [DEBUG] [Thread-67121 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:09.392 [DEBUG] [Thread-67121 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:09.392 [DEBUG] [Thread-67121 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:09.393 [DEBUG] [Thread-67121 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:09.393 [DEBUG] [Thread-67121 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:09.393 [DEBUG] [Thread-67121 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:09.393 [DEBUG] [Thread-67121 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:09.393 [INFO] [Thread-67121 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84594189, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104359241597079, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108507, telescope_az=89.993103, telescope_ra=16.4467029, telescope_dec=-24.256619, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.46646, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4209644096677, telescope_dec_j2k=-24.197434868648, observability=1)
2025-11-17T10:18:12.900 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.50784969329834s
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:12.901 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:12.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4476744;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46744;2460996.84598266;10.30355306;1.3;_
2025-11-17T10:18:12.902 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4476744;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46744;2460996.84598266;10.30355306;1.3;_
2025-11-17T10:18:12.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:12.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:12.902 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:12.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:12.903 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:12.903 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4476744, teldec = -24.256618
2025-11-17T10:18:12.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4476744 -24.256618
2025-11-17T10:18:12.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4476744 -24.256618
2025-11-17T10:18:12.903 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4476744 -24.256618
2025-11-17T10:18:12.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4476744;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46744;2460996.84598269;10.30355306;1.3;_16.4219354330183 -24.1974667661616
2025-11-17T10:18:12.904 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.4219354330183     dec_j2k = -24.1974667661616
2025-11-17T10:18:12.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:12.904 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104360485067306;171.162351965909;_
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104360485067306;171.162351965909;_
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:12.905 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:12.906 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60355)
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:12.907 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:12.914 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:12.915 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:12.915 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84598266, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104360485067306, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108506, telescope_az=89.993103, telescope_ra=16.4476744, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.46744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4219354330183, telescope_dec_j2k=-24.1974667661616, observability=1)
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.877704381942749s
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:14.793 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:14.794 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4482073;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46797;2460996.84600457;10.30408444;1.3;_
2025-11-17T10:18:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.4482073;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46797;2460996.84600457;10.30408444;1.3;_
2025-11-17T10:18:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:14.795 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:14.796 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.4482073, teldec = -24.256618
2025-11-17T10:18:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4482073 -24.256618
2025-11-17T10:18:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4482073 -24.256618
2025-11-17T10:18:14.796 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4482073 -24.256618
2025-11-17T10:18:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4482073;-24.256618;50.108506;89.993103;50.08601;90.12017;13.46797;2460996.8460046;10.30408444;1.3;_16.4224680715578 -24.1974848131843
2025-11-17T10:18:14.797 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.4224680715578     dec_j2k = -24.1974848131843
2025-11-17T10:18:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104359321820965;171.162357330327;_
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104359321820965;171.162357330327;_
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58635)
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:14.806 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:14.813 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:14.814 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84600457, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104359321820965, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108506, telescope_az=89.993103, telescope_ra=16.4482073, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.46797, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:17:24.482992', telescope_ra_j2k=16.4224680715578, telescope_dec_j2k=-24.1974848131843, observability=1)
2025-11-17T10:18:15.360 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:18:15.360 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.545783519744873s
2025-11-17T10:18:15.360 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.545783519744873
2025-11-17T10:18:15.360 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.26539850234985 seconds ago
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:24.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:24.627 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:24.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:24.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:24.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:24.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:24.628 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:18:24.628 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:24.628 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:24.628 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:24.628 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:24.628 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:18:24.629 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:18:24.630 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:25.630 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:25.630 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:25.630 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:25.630 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:25.630 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:25.631 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:25.631 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:25.632 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:25.633 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:25.633 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:25.633 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:25.633 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:25.634 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:25.634 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:25.634 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:25.634 [DEBUG] [ThreadPoolExecutor-2656_0] [payload.py] [to_registers()] [0]
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41697)
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:25.638 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:25.646 [DEBUG] [ThreadPoolExecutor-2656_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Status age = 12.674027919769287s
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:27.488 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:27.489 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:27.490 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 17;16.4517458;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47151;2460996.8461515;10.30761333;1.3;_
2025-11-17T10:18:27.490 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response 17;16.4517458;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47151;2460996.8461515;10.30761333;1.3;_
2025-11-17T10:18:27.490 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:27.490 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:27.490 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:27.491 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:27.491 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:27.491 [INFO] [Thread-67122 (handle)] [driver.py] [get_status()] Telra = 16.4517458, teldec = -24.256618
2025-11-17T10:18:27.491 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4517458 -24.256618
2025-11-17T10:18:27.491 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4517458 -24.256618
2025-11-17T10:18:27.491 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4517458 -24.256618
2025-11-17T10:18:27.492 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 17;16.4517458;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47151;2460996.84615153;10.30761333;1.3;_16.4260048371802 -24.1976046766861
2025-11-17T10:18:27.492 [INFO] [Thread-67122 (handle)] [driver.py] [get_status()] ra_j2k = 16.4260048371802     dec_j2k = -24.1976046766861
2025-11-17T10:18:27.492 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:27.492 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:27.492 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 140;0.104360605403135;171.162362694745;_
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response 140;0.104360605403135;171.162362694745;_
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:27.493 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:27.494 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:18:27.494 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:18:27.494 [DEBUG] [Thread-67122 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:18:27.494 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:27.494 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:27.495 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:27.495 [DEBUG] [Thread-67122 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:18:27.495 [DEBUG] [Thread-67122 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:18:27.495 [DEBUG] [Thread-67122 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:18:27.496 [DEBUG] [Thread-67122 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41251)
2025-11-17T10:18:27.496 [DEBUG] [Thread-67122 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:27.496 [DEBUG] [Thread-67122 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:27.497 [DEBUG] [Thread-67122 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:27.497 [DEBUG] [Thread-67122 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:27.497 [DEBUG] [Thread-67122 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:27.504 [DEBUG] [Thread-67122 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:27.504 [DEBUG] [Thread-67122 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:27.504 [DEBUG] [Thread-67122 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:27.504 [DEBUG] [Thread-67122 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:27.505 [DEBUG] [Thread-67122 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:27.505 [DEBUG] [Thread-67122 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:27.505 [DEBUG] [Thread-67122 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:27.505 [DEBUG] [Thread-67122 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:27.505 [DEBUG] [Thread-67122 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:27.505 [INFO] [Thread-67122 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8461515, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104360605403135, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108506, telescope_az=89.993103, telescope_ra=16.4517458, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.47151, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4260048371802, telescope_dec_j2k=-24.1976046766861, observability=1)
2025-11-17T10:18:30.173 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:18:30
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.6685895919799805s
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:30.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:30.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:30.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4524739;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47224;2460996.84618258;10.30833944;1.3;_
2025-11-17T10:18:30.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4524739;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47224;2460996.84618258;10.30833944;1.3;_
2025-11-17T10:18:30.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:30.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:30.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:30.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:30.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:30.176 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4524739, teldec = -24.256618
2025-11-17T10:18:30.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4524739 -24.256618
2025-11-17T10:18:30.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4524739 -24.256618
2025-11-17T10:18:30.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4524739 -24.256618
2025-11-17T10:18:30.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4525018;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47226;2460996.8461826;10.30836722;1.3;_16.4267325806812 -24.197629346834
2025-11-17T10:18:30.177 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4267325806812     dec_j2k = -24.197629346834
2025-11-17T10:18:30.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:30.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:30.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:30.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104360404843421;171.162357330327;_
2025-11-17T10:18:30.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104360404843421;171.162357330327;_
2025-11-17T10:18:30.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:30.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:30.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:30.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:30.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:30.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:30.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59689)
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:30.187 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:30.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:30.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:30.194 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:30.195 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:30.195 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84618258, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104360404843421, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108506, telescope_az=89.993103, telescope_ra=16.4524739, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.47224, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4267325806812, telescope_dec_j2k=-24.197629346834, observability=1)
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Status age = 15.361480712890625s
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:45.556 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:18:45.557 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:18:45.558 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 17;16.4567863;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47655;2460996.84636062;10.31264;1.3;_
2025-11-17T10:18:45.558 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response 17;16.4567863;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47655;2460996.84636062;10.31264;1.3;_
2025-11-17T10:18:45.558 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:18:45.558 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:18:45.558 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:18:45.559 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:45.559 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:18:45.559 [INFO] [Thread-67123 (handle)] [driver.py] [get_status()] Telra = 16.4567863, teldec = -24.256618
2025-11-17T10:18:45.560 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4567863 -24.256618
2025-11-17T10:18:45.560 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4567863 -24.256618
2025-11-17T10:18:45.560 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4567863 -24.256618
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 17;16.4567863;-24.256618;50.108506;89.993103;50.08601;90.12017;13.47655;2460996.84636066;10.31264;1.3;_16.4310428718332 -24.1977755083228
2025-11-17T10:18:45.561 [INFO] [Thread-67123 (handle)] [driver.py] [get_status()] ra_j2k = 16.4310428718332     dec_j2k = -24.1977755083228
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 140;0.104360204283707;171.162351965909;_
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response 140;0.104360204283707;171.162351965909;_
2025-11-17T10:18:45.561 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:18:45.562 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:18:45.563 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:18:45.563 [DEBUG] [Thread-67123 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:45.563 [DEBUG] [Thread-67123 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:18:45.564 [DEBUG] [Thread-67123 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35021)
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:18:45.566 [DEBUG] [Thread-67123 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:18:45.573 [DEBUG] [Thread-67123 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:18:45.573 [INFO] [Thread-67123 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84636062, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104360204283707, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108506, telescope_az=89.993103, telescope_ra=16.4567863, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.47655, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4310428718332, telescope_dec_j2k=-24.1977755083228, observability=1)
2025-11-17T10:18:50.646 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:50.646 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:50.646 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:50.646 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:50.646 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:18:50.647 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:18:50.648 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:18:50.649 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:03.068 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Status age = 17.495285987854004s
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:03.069 [DEBUG] [Thread-67124 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:03.070 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:03.070 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:03.070 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:03.070 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:03.071 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 17;16.4616415;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4814;2460996.84656331;10.31748194;1.3;_
2025-11-17T10:19:03.071 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response 17;16.4616415;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4814;2460996.84656331;10.31748194;1.3;_
2025-11-17T10:19:03.071 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:03.071 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:03.071 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:03.072 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:03.072 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:03.072 [INFO] [Thread-67124 (handle)] [driver.py] [get_status()] Telra = 16.4616415, teldec = -24.256618
2025-11-17T10:19:03.072 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4616415 -24.256618
2025-11-17T10:19:03.072 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4616415 -24.256618
2025-11-17T10:19:03.072 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4616415 -24.256618
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 17;16.4616415;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4814;2460996.84656334;10.31748194;1.3;_16.4358957029307 -24.1979401587081
2025-11-17T10:19:03.073 [INFO] [Thread-67124 (handle)] [driver.py] [get_status()] ra_j2k = 16.4358957029307     dec_j2k = -24.1979401587081
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 140;0.104361608201705;171.162362694745;_
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response 140;0.104361608201705;171.162362694745;_
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:03.073 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:03.074 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:03.074 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:03.075 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:03.076 [DEBUG] [Thread-67124 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:03.076 [DEBUG] [Thread-67124 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:03.076 [DEBUG] [Thread-67124 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51337)
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:03.078 [DEBUG] [Thread-67124 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:03.085 [DEBUG] [Thread-67124 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:03.086 [INFO] [Thread-67124 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84656331, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104361608201705, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4616415, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.4814, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4358957029307, telescope_dec_j2k=-24.1979401587081, observability=1)
2025-11-17T10:19:03.632 [DEBUG] [Thread-67125 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:03.632 [DEBUG] [Thread-67125 (handle)] [server.py] [get_status()] Status age = 0.5467448234558105s
2025-11-17T10:19:03.632 [DEBUG] [Thread-67125 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5467448234558105
2025-11-17T10:19:12.006 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.921144962310791s
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:12.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:12.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:12.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4641428;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4839;2460996.84666677;10.31997639;1.3;_
2025-11-17T10:19:12.009 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4641428;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4839;2460996.84666677;10.31997639;1.3;_
2025-11-17T10:19:12.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:12.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:12.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:12.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:12.010 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:12.010 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4641428, teldec = -24.256618
2025-11-17T10:19:12.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4641428 -24.256618
2025-11-17T10:19:12.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4641428 -24.256618
2025-11-17T10:19:12.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4641428 -24.256618
2025-11-17T10:19:12.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4641428;-24.256618;50.108505;89.993102;50.08601;90.12017;13.4839;2460996.84666679;10.31997639;1.3;_16.438395784748 -24.1980250210169
2025-11-17T10:19:12.011 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.438395784748     dec_j2k = -24.1980250210169
2025-11-17T10:19:12.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:12.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:12.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104361166970334;171.162351965909;_
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104361166970334;171.162351965909;_
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:12.012 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:12.013 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:12.014 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56879)
2025-11-17T10:19:12.014 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:12.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:12.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:12.015 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:12.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:12.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:12.022 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84666677, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104361166970334, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4641428, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.4839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.438395784748, telescope_dec_j2k=-24.1980250210169, observability=1)
2025-11-17T10:19:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.828063488006592s
2025-11-17T10:19:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4649277;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48469;2460996.84669969;10.32075917;1.3;_
2025-11-17T10:19:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.4649277;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48469;2460996.84669969;10.32075917;1.3;_
2025-11-17T10:19:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:14.854 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.4649277, teldec = -24.256618
2025-11-17T10:19:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4649277 -24.256618
2025-11-17T10:19:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4649277 -24.256618
2025-11-17T10:19:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4649277 -24.256618
2025-11-17T10:19:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4649277;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48469;2460996.84669971;10.32075917;1.3;_16.4391803027985 -24.1980516558289
2025-11-17T10:19:14.855 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.4391803027985     dec_j2k = -24.1980516558289
2025-11-17T10:19:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104361648313648;171.162351965909;_
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104361648313648;171.162351965909;_
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52531)
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:14.866 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:14.873 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:14.873 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:14.873 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:14.873 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:14.874 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:14.874 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84669969, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104361648313648, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4649277, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.48469, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4391803027985, telescope_dec_j2k=-24.1980516558289, observability=1)
2025-11-17T10:19:15.420 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:19:15.420 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.5457828044891357s
2025-11-17T10:19:15.420 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.5457828044891357
2025-11-17T10:19:15.420 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.2465705871582 seconds ago
2025-11-17T10:19:21.779 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Status age = 6.905675411224365s
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:21.780 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:21.781 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:21.782 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 17;16.4668513;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48661;2460996.84677988;10.3226775;1.3;_
2025-11-17T10:19:21.782 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response 17;16.4668513;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48661;2460996.84677988;10.3226775;1.3;_
2025-11-17T10:19:21.782 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:21.782 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:21.782 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:21.783 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:21.783 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:21.783 [INFO] [Thread-67126 (handle)] [driver.py] [get_status()] Telra = 16.4668513, teldec = -24.256618
2025-11-17T10:19:21.783 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4668513 -24.256618
2025-11-17T10:19:21.783 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4668513 -24.256618
2025-11-17T10:19:21.783 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4668513 -24.256618
2025-11-17T10:19:21.784 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 17;16.4668513;-24.256618;50.108505;89.993102;50.08601;90.12017;13.48661;2460996.84677991;10.3226775;1.3;_16.4411029673638 -24.1981169419821
2025-11-17T10:19:21.784 [INFO] [Thread-67126 (handle)] [driver.py] [get_status()] ra_j2k = 16.4411029673638     dec_j2k = -24.1981169419821
2025-11-17T10:19:21.784 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:21.784 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:21.784 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 140;0.104361207082277;171.162351965909;_
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response 140;0.104361207082277;171.162351965909;_
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:21.785 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:21.786 [DEBUG] [Thread-67126 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:21.793 [DEBUG] [Thread-67126 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49477)
2025-11-17T10:19:21.793 [DEBUG] [Thread-67126 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:21.793 [DEBUG] [Thread-67126 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:21.794 [DEBUG] [Thread-67126 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:21.794 [DEBUG] [Thread-67126 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:21.794 [DEBUG] [Thread-67126 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:21.801 [DEBUG] [Thread-67126 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:21.801 [INFO] [Thread-67126 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84677988, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104361207082277, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4668513, telescope_dec=-24.256618, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.48661, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:18:24.625852', telescope_ra_j2k=16.4411029673638, telescope_dec_j2k=-24.1981169419821, observability=1)
2025-11-17T10:19:24.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:24.768 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:24.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:24.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:24.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:24.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:24.769 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:19:24.770 [INFO] [ThreadPoolExecutor-2657_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:19:24.770 [INFO] [ThreadPoolExecutor-2657_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:19:30.255 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:19:30
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.454609394073486s
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:30.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:30.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:30.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4692214;-24.256617;50.108505;89.993102;50.08601;90.12017;13.48898;2460996.84687799;10.32504111;1.3;_
2025-11-17T10:19:30.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4692214;-24.256617;50.108505;89.993102;50.08601;90.12017;13.48898;2460996.84687799;10.32504111;1.3;_
2025-11-17T10:19:30.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:30.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:30.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:30.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:30.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:30.259 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4692214, teldec = -24.256617
2025-11-17T10:19:30.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4692214 -24.256617
2025-11-17T10:19:30.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4692214 -24.256617
2025-11-17T10:19:30.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4692214 -24.256617
2025-11-17T10:19:30.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4692214;-24.256617;50.108505;89.993102;50.08601;90.12017;13.48898;2460996.84687801;10.32504111;1.3;_16.4434719162133 -24.1981964030055
2025-11-17T10:19:30.260 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4434719162133     dec_j2k = -24.1981964030055
2025-11-17T10:19:30.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:30.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104361608201705;171.162357330327;_
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104361608201705;171.162357330327;_
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:30.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:30.262 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:30.263 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:30.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:30.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:30.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40809)
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:30.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:30.277 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:30.277 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:30.277 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:30.277 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:30.277 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:30.278 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:30.278 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:30.278 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:30.278 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:30.278 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84687799, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104361608201705, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4692214, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.48898, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4434719162133, telescope_dec_j2k=-24.1981964030055, observability=1)
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Status age = 9.575420141220093s
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:39.853 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:39.854 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:39.855 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 17;16.4718923;-24.256617;50.108505;89.993102;50.08601;90.12017;13.49165;2460996.84698906;10.32770472;1.3;_
2025-11-17T10:19:39.855 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response 17;16.4718923;-24.256617;50.108505;89.993102;50.08601;90.12017;13.49165;2460996.84698906;10.32770472;1.3;_
2025-11-17T10:19:39.855 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:39.855 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:39.855 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:39.856 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:39.856 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:39.856 [INFO] [Thread-67127 (handle)] [driver.py] [get_status()] Telra = 16.4718923, teldec = -24.256617
2025-11-17T10:19:39.856 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4718923 -24.256617
2025-11-17T10:19:39.856 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4718923 -24.256617
2025-11-17T10:19:39.856 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4718923 -24.256617
2025-11-17T10:19:39.857 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 17;16.4718923;-24.256617;50.108505;89.993102;50.08601;90.12017;13.49165;2460996.84698909;10.32770472;1.3;_16.4461415203926 -24.1982871031857
2025-11-17T10:19:39.857 [INFO] [Thread-67127 (handle)] [driver.py] [get_status()] ra_j2k = 16.4461415203926     dec_j2k = -24.1982871031857
2025-11-17T10:19:39.857 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:39.857 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 140;0.10436196920919;171.162357330327;_
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response 140;0.10436196920919;171.162357330327;_
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:39.858 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:39.859 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:39.859 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:19:39.859 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:19:39.860 [DEBUG] [Thread-67127 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:19:39.860 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:39.860 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:39.860 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:39.860 [DEBUG] [Thread-67127 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:39.861 [DEBUG] [Thread-67127 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:39.861 [DEBUG] [Thread-67127 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47687)
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:39.864 [DEBUG] [Thread-67127 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:39.871 [DEBUG] [Thread-67127 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:39.872 [DEBUG] [Thread-67127 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:39.872 [INFO] [Thread-67127 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84698906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10436196920919, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108505, telescope_az=89.993102, telescope_ra=16.4718923, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.49165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4461415203926, telescope_dec_j2k=-24.1982871031857, observability=1)
2025-11-17T10:19:45.649 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.649 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.649 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:45.649 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:45.649 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:45.650 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.650 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:45.650 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:45.650 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.650 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.651 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.652 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:45.652 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:45.652 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:45.653 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:19:45.654 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:45.655 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Park
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:19:45.656 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:19:45.657 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 29;16.4735076;-24.256611;50.108505;89.993091;50.08601;90.12016;13.49327;2460996.84705622;10.32931583;1.3;_Park Command Successful
2025-11-17T10:19:46.657 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:19:46.657 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:19:46.657 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:19:46.658 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:19:46.658 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:19:47.658 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:19:47.658 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:19:47.658 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:19:47.659 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:19:47.659 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:19:48.659 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:19:48.659 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:19:48.659 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:19:48.660 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:19:48.660 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:19:49.660 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:19:49.660 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:19:49.660 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:49.661 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:19:49.662 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:19:49.663 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:50.663 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:50.663 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:50.663 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:50.663 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:50.663 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:50.664 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:50.664 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:50.664 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:50.664 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:50.665 [DEBUG] [ThreadPoolExecutor-2656_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:50.665 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:19:50.665 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:19:50.665 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:19:50.665 [DEBUG] [ThreadPoolExecutor-2656_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:50.666 [INFO] [ThreadPoolExecutor-2656_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Status age = 18.095059156417847s
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:19:57.967 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:19:57.968 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:19:57.969 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 17;16.4769367;-24.256617;50.108504;89.993102;50.08601;90.12017;13.4967;2460996.84719872;10.33273528;1.3;_
2025-11-17T10:19:57.969 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response 17;16.4769367;-24.256617;50.108504;89.993102;50.08601;90.12017;13.4967;2460996.84719872;10.33273528;1.3;_
2025-11-17T10:19:57.969 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:19:57.969 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:19:57.969 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:19:57.970 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:57.970 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:19:57.970 [INFO] [Thread-67128 (handle)] [driver.py] [get_status()] Telra = 16.4769367, teldec = -24.256617
2025-11-17T10:19:57.970 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4769367 -24.256617
2025-11-17T10:19:57.970 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4769367 -24.256617
2025-11-17T10:19:57.970 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4769367 -24.256617
2025-11-17T10:19:57.971 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 17;16.4769367;-24.256617;50.108504;89.993102;50.08601;90.12017;13.4967;2460996.84719874;10.33273528;1.3;_16.4511834777576 -24.1984584836329
2025-11-17T10:19:57.971 [INFO] [Thread-67128 (handle)] [driver.py] [get_status()] ra_j2k = 16.4511834777576     dec_j2k = -24.1984584836329
2025-11-17T10:19:57.971 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:19:57.971 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:19:57.971 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 140;0.104362691224161;171.162362694745;_
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response 140;0.104362691224161;171.162362694745;_
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:57.972 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:19:57.973 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:19:57.974 [DEBUG] [Thread-67128 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:57.974 [DEBUG] [Thread-67128 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:19:57.974 [DEBUG] [Thread-67128 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42769)
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:19:57.976 [DEBUG] [Thread-67128 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:19:57.983 [DEBUG] [Thread-67128 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:19:57.983 [INFO] [Thread-67128 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84719872, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104362691224161, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4769367, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.4967, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4511834777576, telescope_dec_j2k=-24.1984584836329, observability=1)
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Status age = 5.135603904724121s
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:03.119 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:03.120 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:03.120 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:03.120 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:03.120 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 17;16.4783848;-24.256617;50.108504;89.993102;50.08601;90.12017;13.49815;2460996.84725833;10.33417944;1.3;_
2025-11-17T10:20:03.121 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response 17;16.4783848;-24.256617;50.108504;89.993102;50.08601;90.12017;13.49815;2460996.84725833;10.33417944;1.3;_
2025-11-17T10:20:03.121 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:03.121 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:03.121 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:03.122 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:03.122 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:03.122 [INFO] [Thread-67129 (handle)] [driver.py] [get_status()] Telra = 16.4783848, teldec = -24.256617
2025-11-17T10:20:03.122 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4783848 -24.256617
2025-11-17T10:20:03.122 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4783848 -24.256617
2025-11-17T10:20:03.122 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4783848 -24.256617
2025-11-17T10:20:03.123 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 17;16.4783848;-24.256617;50.108504;89.993102;50.08601;90.12017;13.49815;2460996.84725837;10.33417944;1.3;_16.4526308776889 -24.1985077011024
2025-11-17T10:20:03.123 [INFO] [Thread-67129 (handle)] [driver.py] [get_status()] ra_j2k = 16.4526308776889     dec_j2k = -24.1985077011024
2025-11-17T10:20:03.123 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:03.123 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:03.123 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 140;0.10436325279136;171.162351965909;_
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response 140;0.10436325279136;171.162351965909;_
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:03.124 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:03.125 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:03.126 [DEBUG] [Thread-67129 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:03.126 [DEBUG] [Thread-67129 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:03.126 [DEBUG] [Thread-67129 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46973)
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:03.130 [DEBUG] [Thread-67129 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:03.137 [DEBUG] [Thread-67129 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:03.138 [INFO] [Thread-67129 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84725833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10436325279136, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4783848, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.49815, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4526308776889, telescope_dec_j2k=-24.1985077011024, observability=1)
2025-11-17T10:20:11.110 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:11.110 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.973026514053345s
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:11.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:11.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4806109;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50037;2460996.84735083;10.33639944;1.3;_
2025-11-17T10:20:11.112 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4806109;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50037;2460996.84735083;10.33639944;1.3;_
2025-11-17T10:20:11.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:11.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:11.112 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:11.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:11.113 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:11.113 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4806109, teldec = -24.256617
2025-11-17T10:20:11.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4806109 -24.256617
2025-11-17T10:20:11.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4806109 -24.256617
2025-11-17T10:20:11.113 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4806109 -24.256617
2025-11-17T10:20:11.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4806109;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50037;2460996.84735086;10.33639944;1.3;_16.4548559024969 -24.1985833775668
2025-11-17T10:20:11.114 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.4548559024969     dec_j2k = -24.1985833775668
2025-11-17T10:20:11.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:11.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:11.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:11.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104363212679417;171.162362694745;_
2025-11-17T10:20:11.115 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104363212679417;171.162362694745;_
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:11.116 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:11.117 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:11.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:11.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:11.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:11.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:11.118 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:11.118 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54885)
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:11.121 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:11.129 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:11.129 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84735083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104363212679417, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4806109, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.50037, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4548559024969, telescope_dec_j2k=-24.1985833775668, observability=1)
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.6924829483032227s
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4816487;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50141;2460996.8473938;10.33743444;1.3;_
2025-11-17T10:20:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.4816487;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50141;2460996.8473938;10.33743444;1.3;_
2025-11-17T10:20:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:14.825 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.4816487, teldec = -24.256617
2025-11-17T10:20:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4816487 -24.256617
2025-11-17T10:20:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4816487 -24.256617
2025-11-17T10:20:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4816487 -24.256617
2025-11-17T10:20:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4816487;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50141;2460996.84739382;10.33743444;1.3;_16.4558932016573 -24.1986186645487
2025-11-17T10:20:14.826 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.4558932016573     dec_j2k = -24.1986186645487
2025-11-17T10:20:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104363653910788;171.162351965909;_
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104363653910788;171.162351965909;_
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47483)
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:14.839 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:14.839 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8473938, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104363653910788, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4816487, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.50141, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4558932016573, telescope_dec_j2k=-24.1986186645487, observability=1)
2025-11-17T10:20:15.480 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:20:15.480 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.6410183906555176s
2025-11-17T10:20:15.480 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.6410183906555176
2025-11-17T10:20:15.480 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.224353551864624 seconds ago
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Status age = 1.1885924339294434s
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:16.027 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 17;16.4819754;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50174;2460996.84740773;10.33776028;1.3;_
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response 17;16.4819754;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50174;2460996.84740773;10.33776028;1.3;_
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:16.028 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:16.029 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:16.029 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:16.030 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:16.030 [INFO] [Thread-67130 (handle)] [driver.py] [get_status()] Telra = 16.4819754, teldec = -24.256617
2025-11-17T10:20:16.030 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4819754 -24.256617
2025-11-17T10:20:16.030 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4819754 -24.256617
2025-11-17T10:20:16.030 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4819754 -24.256617
2025-11-17T10:20:16.031 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 17;16.4819754;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50174;2460996.84740777;10.33776028;1.3;_16.4562197440469 -24.1986297738145
2025-11-17T10:20:16.031 [INFO] [Thread-67130 (handle)] [driver.py] [get_status()] ra_j2k = 16.4562197440469     dec_j2k = -24.1986297738145
2025-11-17T10:20:16.031 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:16.031 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:16.031 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 140;0.104364416037701;171.162373423581;_
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response 140;0.104364416037701;171.162373423581;_
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:16.032 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:16.033 [DEBUG] [Thread-67130 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:16.034 [DEBUG] [Thread-67130 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:16.034 [DEBUG] [Thread-67130 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:16.039 [DEBUG] [Thread-67130 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33059)
2025-11-17T10:20:16.039 [DEBUG] [Thread-67130 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:16.039 [DEBUG] [Thread-67130 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:16.039 [DEBUG] [Thread-67130 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:16.039 [DEBUG] [Thread-67130 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:16.040 [DEBUG] [Thread-67130 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:16.046 [DEBUG] [Thread-67130 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:16.047 [DEBUG] [Thread-67130 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:16.047 [INFO] [Thread-67130 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84740773, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104364416037701, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4819754, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.50174, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:19:24.767420', telescope_ra_j2k=16.4562197440469, telescope_dec_j2k=-24.1986297738145, observability=1)
2025-11-17T10:20:24.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:24.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:24.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:24.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:24.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:24.912 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:24.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:24.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:24.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:24.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:24.913 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:20:24.913 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:24.913 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:24.913 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:24.913 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:24.913 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:20:24.914 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:20:24.915 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:25.915 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:25.915 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:25.915 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:25.915 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:25.915 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:25.916 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:20:25.917 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:25.918 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:25.919 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:25.919 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:25.919 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:25.919 [DEBUG] [ThreadPoolExecutor-2658_0] [payload.py] [to_registers()] [0]
2025-11-17T10:20:25.924 [DEBUG] [ThreadPoolExecutor-2658_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50781)
2025-11-17T10:20:25.925 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:25.925 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:25.925 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:20:25.925 [DEBUG] [ThreadPoolExecutor-2658_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:25.925 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:25.932 [DEBUG] [ThreadPoolExecutor-2658_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:30.339 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:20:30
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.29183316230774s
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:30.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:30.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:30.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4859627;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50572;2460996.84757338;10.34173667;1.3;_
2025-11-17T10:20:30.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.4859627;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50572;2460996.84757338;10.34173667;1.3;_
2025-11-17T10:20:30.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:30.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:30.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:30.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:30.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:30.342 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.4859627, teldec = -24.256617
2025-11-17T10:20:30.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4859627 -24.256617
2025-11-17T10:20:30.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4859627 -24.256617
2025-11-17T10:20:30.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4859627 -24.256617
2025-11-17T10:20:30.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.4859627;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50572;2460996.84757341;10.34173667;1.3;_16.4602051225356 -24.198765394783
2025-11-17T10:20:30.343 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4602051225356     dec_j2k = -24.198765394783
2025-11-17T10:20:30.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:30.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:30.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104363854470502;171.162357330327;_
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104363854470502;171.162357330327;_
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:30.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:30.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:30.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:30.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:30.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:30.347 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42307)
2025-11-17T10:20:30.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:30.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:30.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:30.347 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:30.348 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:30.354 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:30.355 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:30.355 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84757338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104363854470502, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4859627, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.50572, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.4602051225356, telescope_dec_j2k=-24.198765394783, observability=1)
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Status age = 3.740974187850952s
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:34.096 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:34.097 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:34.097 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:34.097 [DEBUG] [Thread-67131 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:34.098 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:34.098 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:34.098 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:34.098 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:34.098 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 17;16.4869983;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50676;2460996.84761688;10.34276944;1.3;_
2025-11-17T10:20:34.099 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response 17;16.4869983;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50676;2460996.84761688;10.34276944;1.3;_
2025-11-17T10:20:34.099 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:34.099 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:34.099 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:34.100 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:34.100 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:34.100 [INFO] [Thread-67131 (handle)] [driver.py] [get_status()] Telra = 16.4869983, teldec = -24.256617
2025-11-17T10:20:34.100 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4869983 -24.256617
2025-11-17T10:20:34.100 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4869983 -24.256617
2025-11-17T10:20:34.100 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4869983 -24.256617
2025-11-17T10:20:34.101 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 17;16.4869983;-24.256617;50.108504;89.993102;50.08601;90.12017;13.50676;2460996.84761691;10.34276944;1.3;_16.4612402241036 -24.198800629425
2025-11-17T10:20:34.101 [INFO] [Thread-67131 (handle)] [driver.py] [get_status()] ra_j2k = 16.4612402241036     dec_j2k = -24.198800629425
2025-11-17T10:20:34.101 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:34.101 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:34.101 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 140;0.104364135254102;171.162362694745;_
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response 140;0.104364135254102;171.162362694745;_
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:34.102 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:34.103 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:34.104 [DEBUG] [Thread-67131 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:34.104 [DEBUG] [Thread-67131 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:34.104 [DEBUG] [Thread-67131 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57023)
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:34.106 [DEBUG] [Thread-67131 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:34.113 [DEBUG] [Thread-67131 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:34.113 [INFO] [Thread-67131 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84761688, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104364135254102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108504, telescope_az=89.993102, telescope_ra=16.4869983, telescope_dec=-24.256617, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.50676, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.4612402241036, telescope_dec_j2k=-24.198800629425, observability=1)
2025-11-17T10:20:50.932 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:50.932 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:50.932 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:50.932 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:50.932 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:50.933 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:20:50.934 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:20:50.935 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Status age = 18.107332468032837s
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:20:52.221 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:20:52.222 [DEBUG] [Thread-67132 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:20:52.222 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:20:52.222 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:20:52.222 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:20:52.222 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:20:52.223 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 17;16.4920402;-24.256616;50.108503;89.993101;50.08601;90.12017;13.5118;2460996.84782666;10.3477975;1.3;_
2025-11-17T10:20:52.223 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response 17;16.4920402;-24.256616;50.108503;89.993101;50.08601;90.12017;13.5118;2460996.84782666;10.3477975;1.3;_
2025-11-17T10:20:52.223 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:20:52.223 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:20:52.223 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:20:52.224 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:52.224 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:20:52.224 [INFO] [Thread-67132 (handle)] [driver.py] [get_status()] Telra = 16.4920402, teldec = -24.256616
2025-11-17T10:20:52.224 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4920402 -24.256616
2025-11-17T10:20:52.224 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4920402 -24.256616
2025-11-17T10:20:52.224 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4920402 -24.256616
2025-11-17T10:20:52.225 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 17;16.4920402;-24.256616;50.108503;89.993101;50.08601;90.12017;13.5118;2460996.84782668;10.3477975;1.3;_16.466279701354 -24.1989712340258
2025-11-17T10:20:52.225 [INFO] [Thread-67132 (handle)] [driver.py] [get_status()] ra_j2k = 16.466279701354     dec_j2k = -24.1989712340258
2025-11-17T10:20:52.225 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:20:52.225 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:20:52.225 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 140;0.104364055030216;171.162362694745;_
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response 140;0.104364055030216;171.162362694745;_
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:52.226 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:20:52.227 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:20:52.228 [DEBUG] [Thread-67132 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:20:52.228 [DEBUG] [Thread-67132 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:20:52.228 [DEBUG] [Thread-67132 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60965)
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:20:52.233 [DEBUG] [Thread-67132 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:20:52.240 [DEBUG] [Thread-67132 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:20:52.241 [DEBUG] [Thread-67132 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:20:52.241 [INFO] [Thread-67132 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84782666, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104364055030216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108503, telescope_az=89.993101, telescope_ra=16.4920402, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.5118, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.466279701354, telescope_dec_j2k=-24.1989712340258, observability=1)
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Status age = 10.9333975315094s
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:03.174 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:03.175 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:03.176 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 17;16.4951041;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51487;2460996.84795343;10.35085306;1.3;_
2025-11-17T10:21:03.176 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response 17;16.4951041;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51487;2460996.84795343;10.35085306;1.3;_
2025-11-17T10:21:03.176 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:03.176 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:03.176 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:03.177 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:03.177 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:03.177 [INFO] [Thread-67133 (handle)] [driver.py] [get_status()] Telra = 16.4951041, teldec = -24.256616
2025-11-17T10:21:03.177 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4951041 -24.256616
2025-11-17T10:21:03.177 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4951041 -24.256616
2025-11-17T10:21:03.177 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4951041 -24.256616
2025-11-17T10:21:03.178 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 17;16.4951041;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51487;2460996.84795345;10.35085306;1.3;_16.4693421319878 -24.1990755661153
2025-11-17T10:21:03.178 [INFO] [Thread-67133 (handle)] [driver.py] [get_status()] ra_j2k = 16.4693421319878     dec_j2k = -24.1990755661153
2025-11-17T10:21:03.178 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:03.178 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:03.178 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:03.179 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 140;0.104364656709358;171.162346601491;_
2025-11-17T10:21:03.179 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response 140;0.104364656709358;171.162346601491;_
2025-11-17T10:21:03.179 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:03.179 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:03.179 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:03.180 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:03.180 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:03.180 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:03.180 [DEBUG] [Thread-67133 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:03.181 [DEBUG] [Thread-67133 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47859)
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:03.183 [DEBUG] [Thread-67133 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:03.190 [DEBUG] [Thread-67133 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:03.191 [INFO] [Thread-67133 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84795343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104364656709358, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108503, telescope_az=89.993101, telescope_ra=16.4951041, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.51487, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.4693421319878, telescope_dec_j2k=-24.1990755661153, observability=1)
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.030418395996094s
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:10.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:10.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:10.222 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:10.222 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:10.222 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:10.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4970831;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51684;2460996.84803499;10.35282667;1.3;_
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.4970831;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51684;2460996.84803499;10.35282667;1.3;_
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:10.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:10.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:10.224 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:10.224 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.4970831, teldec = -24.256616
2025-11-17T10:21:10.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4970831 -24.256616
2025-11-17T10:21:10.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4970831 -24.256616
2025-11-17T10:21:10.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4970831 -24.256616
2025-11-17T10:21:10.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.4970831;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51684;2460996.84803501;10.35282667;1.3;_16.4713201841251 -24.199142975233
2025-11-17T10:21:10.225 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.4713201841251     dec_j2k = -24.199142975233
2025-11-17T10:21:10.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:10.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:10.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104365178164615;171.162357330327;_
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104365178164615;171.162357330327;_
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:10.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:10.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:10.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:10.228 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:10.228 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43281)
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:10.234 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:10.241 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:10.241 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84803499, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104365178164615, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108503, telescope_az=89.993101, telescope_ra=16.4970831, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.51684, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.4713201841251, telescope_dec_j2k=-24.199142975233, observability=1)
2025-11-17T10:21:10.295 [DEBUG] [Thread-67134 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:10.295 [DEBUG] [Thread-67134 (handle)] [server.py] [get_status()] Status age = 0.05333662033081055s
2025-11-17T10:21:10.295 [DEBUG] [Thread-67134 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.05333662033081055
2025-11-17T10:21:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.556040287017822s
2025-11-17T10:21:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4983338;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51809;2460996.84808795;10.35407389;1.3;_
2025-11-17T10:21:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.4983338;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51809;2460996.84808795;10.35407389;1.3;_
2025-11-17T10:21:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:14.801 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.4983338, teldec = -24.256616
2025-11-17T10:21:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.4983338 -24.256616
2025-11-17T10:21:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.4983338 -24.256616
2025-11-17T10:21:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.4983338 -24.256616
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.4983338;-24.256616;50.108503;89.993101;50.08601;90.12017;13.51809;2460996.84808799;10.35407389;1.3;_16.4725702855807 -24.199185584968
2025-11-17T10:21:14.802 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.4725702855807     dec_j2k = -24.199185584968
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104364817157129;171.162351965909;_
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104364817157129;171.162351965909;_
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50643)
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:14.818 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84808795, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104364817157129, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108503, telescope_az=89.993101, telescope_ra=16.4983338, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.51809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:20:24.910240', telescope_ra_j2k=16.4725702855807, telescope_dec_j2k=-24.199185584968, observability=1)
2025-11-17T10:21:15.540 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:21:15.540 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7221617698669434s
2025-11-17T10:21:15.540 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7221617698669434
2025-11-17T10:21:15.540 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.201236724853516 seconds ago
2025-11-17T10:21:25.054 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:25.054 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:25.055 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:25.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:25.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:25.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:25.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:25.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:25.056 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:21:25.057 [INFO] [ThreadPoolExecutor-2659_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:21:25.057 [INFO] [ThreadPoolExecutor-2659_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Status age = 13.539504051208496s
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:28.357 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:28.358 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:28.359 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 17;16.5021258;-24.256616;50.108503;89.993101;50.08601;90.12017;13.52189;2460996.8482449;10.35785556;1.3;_
2025-11-17T10:21:28.359 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response 17;16.5021258;-24.256616;50.108503;89.993101;50.08601;90.12017;13.52189;2460996.8482449;10.35785556;1.3;_
2025-11-17T10:21:28.359 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:28.359 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:28.359 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:28.360 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:28.360 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:28.360 [INFO] [Thread-67135 (handle)] [driver.py] [get_status()] Telra = 16.5021258, teldec = -24.256616
2025-11-17T10:21:28.360 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5021258 -24.256616
2025-11-17T10:21:28.360 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5021258 -24.256616
2025-11-17T10:21:28.360 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5021258 -24.256616
2025-11-17T10:21:28.361 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 17;16.5021258;-24.256616;50.108503;89.993101;50.08601;90.12017;13.52189;2460996.84824492;10.35785556;1.3;_16.47636047318 -24.1993148119319
2025-11-17T10:21:28.361 [INFO] [Thread-67135 (handle)] [driver.py] [get_status()] ra_j2k = 16.47636047318     dec_j2k = -24.1993148119319
2025-11-17T10:21:28.361 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:28.361 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 140;0.104365218276557;171.162368059163;_
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response 140;0.104365218276557;171.162368059163;_
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:28.362 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:28.363 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:28.364 [DEBUG] [Thread-67135 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:21:28.364 [DEBUG] [Thread-67135 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:21:28.364 [DEBUG] [Thread-67135 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34465)
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:28.369 [DEBUG] [Thread-67135 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:28.377 [DEBUG] [Thread-67135 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:28.377 [INFO] [Thread-67135 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8482449, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104365218276557, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108503, telescope_az=89.993101, telescope_ra=16.5021258, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.52189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.47636047318, telescope_dec_j2k=-24.1993148119319, observability=1)
2025-11-17T10:21:30.416 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:21:30
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.0389277935028076s
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:30.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:30.417 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:30.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:30.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:30.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:30.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5026854;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52245;2460996.84826872;10.35841361;1.3;_
2025-11-17T10:21:30.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.5026854;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52245;2460996.84826872;10.35841361;1.3;_
2025-11-17T10:21:30.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:30.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:30.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:30.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:30.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:30.419 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.5026854, teldec = -24.256616
2025-11-17T10:21:30.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5026854 -24.256616
2025-11-17T10:21:30.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5026854 -24.256616
2025-11-17T10:21:30.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5026854 -24.256616
2025-11-17T10:21:30.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5026854;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52245;2460996.84826875;10.35841361;1.3;_16.4769198060134 -24.1993338873383
2025-11-17T10:21:30.420 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4769198060134     dec_j2k = -24.1993338873383
2025-11-17T10:21:30.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:30.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:30.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104365057828786;171.162351965909;_
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104365057828786;171.162351965909;_
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:30.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:30.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:30.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:30.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:30.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40359)
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:30.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:30.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:30.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:30.433 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:30.433 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:30.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:30.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:30.434 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:30.434 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:30.434 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:30.434 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84826872, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104365057828786, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5026854, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.52245, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4769198060134, telescope_dec_j2k=-24.1993338873383, observability=1)
2025-11-17T10:21:45.935 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.935 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.935 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:45.935 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:21:45.936 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:45.937 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.938 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:45.939 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:45.939 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:45.939 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.939 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:45.939 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:21:45.940 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.941 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:45.941 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:45.941 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:45.941 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:45.941 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Park
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:21:45.942 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:21:45.943 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 29;16.5070262;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52679;2460996.84844841;10.3627425;1.3;_Park Command Successful
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Status age = 16.045236587524414s
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:46.479 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 17;16.5071666;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52693;2460996.84845463;10.3628825;1.3;_
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response 17;16.5071666;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52693;2460996.84845463;10.3628825;1.3;_
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:21:46.480 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:21:46.481 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:46.481 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:21:46.481 [INFO] [Thread-67136 (handle)] [driver.py] [get_status()] Telra = 16.5071666, teldec = -24.256616
2025-11-17T10:21:46.481 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5071666 -24.256616
2025-11-17T10:21:46.481 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5071666 -24.256616
2025-11-17T10:21:46.481 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5071666 -24.256616
2025-11-17T10:21:46.482 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 17;16.5071666;-24.256616;50.108502;89.993101;50.08601;90.12017;13.52693;2460996.84845465;10.3628825;1.3;_16.4813988693316 -24.1994866858302
2025-11-17T10:21:46.482 [INFO] [Thread-67136 (handle)] [driver.py] [get_status()] ra_j2k = 16.4813988693316     dec_j2k = -24.1994866858302
2025-11-17T10:21:46.482 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 140;0.104365900179585;171.162362694745;_
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response 140;0.104365900179585;171.162362694745;_
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:21:46.483 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:21:46.484 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:21:46.484 [DEBUG] [Thread-67136 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:46.484 [DEBUG] [Thread-67136 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:21:46.484 [DEBUG] [Thread-67136 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33059)
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:21:46.487 [DEBUG] [Thread-67136 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:21:46.494 [DEBUG] [Thread-67136 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:21:46.494 [DEBUG] [Thread-67136 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:46.494 [DEBUG] [Thread-67136 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:21:46.494 [DEBUG] [Thread-67136 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:21:46.495 [DEBUG] [Thread-67136 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:21:46.495 [DEBUG] [Thread-67136 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:21:46.495 [DEBUG] [Thread-67136 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:21:46.495 [DEBUG] [Thread-67136 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:21:46.495 [DEBUG] [Thread-67136 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:21:46.495 [INFO] [Thread-67136 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84845463, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104365900179585, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5071666, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.52693, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4813988693316, telescope_dec_j2k=-24.1994866858302, observability=1)
2025-11-17T10:21:46.943 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:21:46.943 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:21:46.943 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:21:46.943 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:21:46.944 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:21:47.944 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:21:47.944 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:21:47.944 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:21:47.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:21:47.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:21:48.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:21:48.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:21:48.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:21:48.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:21:48.945 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:21:49.946 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:21:49.946 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:21:49.946 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:49.947 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:21:49.948 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:21:49.949 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:50.949 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:50.949 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:50.949 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:21:50.949 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:21:50.949 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:21:50.950 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:21:50.951 [DEBUG] [ThreadPoolExecutor-2658_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:21:50.951 [INFO] [ThreadPoolExecutor-2658_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Status age = 16.728870153427124s
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:03.224 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:03.225 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 17;16.5118257;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53159;2460996.84864844;10.36752889;1.3;_
2025-11-17T10:22:03.225 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response 17;16.5118257;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53159;2460996.84864844;10.36752889;1.3;_
2025-11-17T10:22:03.225 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:03.225 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:03.225 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:03.227 [INFO] [Thread-67137 (handle)] [driver.py] [get_status()] Telra = 16.5118257, teldec = -24.256616
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5118257 -24.256616
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5118257 -24.256616
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5118257 -24.256616
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 17;16.5118257;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53159;2460996.84864846;10.36752889;1.3;_16.4860557530138 -24.1996456354558
2025-11-17T10:22:03.227 [INFO] [Thread-67137 (handle)] [driver.py] [get_status()] ra_j2k = 16.4860557530138     dec_j2k = -24.1996456354558
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:03.227 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:03.228 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:03.228 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 140;0.104366461746784;171.162368059163;_
2025-11-17T10:22:03.228 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response 140;0.104366461746784;171.162368059163;_
2025-11-17T10:22:03.228 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:03.229 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:03.229 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:03.229 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:03.230 [DEBUG] [Thread-67137 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39609)
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:03.232 [DEBUG] [Thread-67137 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:03.239 [DEBUG] [Thread-67137 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:03.240 [DEBUG] [Thread-67137 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:03.240 [INFO] [Thread-67137 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84864844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104366461746784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5118257, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53159, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4860557530138, telescope_dec_j2k=-24.1996456354558, observability=1)
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Status age = 1.3113934993743896s
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:04.551 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:04.552 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:04.553 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 17;16.5122084;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53197;2460996.84866381;10.36791056;1.3;_
2025-11-17T10:22:04.553 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response 17;16.5122084;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53197;2460996.84866381;10.36791056;1.3;_
2025-11-17T10:22:04.553 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:04.553 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:04.553 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:04.554 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:04.554 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:04.554 [INFO] [Thread-67138 (handle)] [driver.py] [get_status()] Telra = 16.5122084, teldec = -24.256616
2025-11-17T10:22:04.554 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5122084 -24.256616
2025-11-17T10:22:04.554 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5122084 -24.256616
2025-11-17T10:22:04.555 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5122084 -24.256616
2025-11-17T10:22:04.555 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 17;16.5122084;-24.256616;50.108502;89.993101;50.08601;90.12017;13.53197;2460996.84866383;10.36791056;1.3;_16.4864382711999 -24.1996586954814
2025-11-17T10:22:04.556 [INFO] [Thread-67138 (handle)] [driver.py] [get_status()] ra_j2k = 16.4864382711999     dec_j2k = -24.1996586954814
2025-11-17T10:22:04.556 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:04.556 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:04.556 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:04.556 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 140;0.104366421634842;171.162357330327;_
2025-11-17T10:22:04.556 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response 140;0.104366421634842;171.162357330327;_
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:04.557 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:04.558 [DEBUG] [Thread-67138 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:04.558 [DEBUG] [Thread-67138 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:04.558 [DEBUG] [Thread-67138 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35217)
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:04.564 [DEBUG] [Thread-67138 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:04.571 [DEBUG] [Thread-67138 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:04.572 [INFO] [Thread-67138 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84866381, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104366421634842, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5122084, telescope_dec=-24.256616, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53197, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4864382711999, telescope_dec_j2k=-24.1996586954814, observability=1)
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.763320207595825s
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:09.335 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5135251;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53329;2460996.84871917;10.36922361;1.3;_
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5135251;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53329;2460996.84871917;10.36922361;1.3;_
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:09.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:09.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:09.337 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:09.337 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5135251, teldec = -24.256615
2025-11-17T10:22:09.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5135251 -24.256615
2025-11-17T10:22:09.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5135251 -24.256615
2025-11-17T10:22:09.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5135251 -24.256615
2025-11-17T10:22:09.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5135251;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53329;2460996.84871919;10.36922361;1.3;_16.4877543461146 -24.1997026336924
2025-11-17T10:22:09.339 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.4877543461146     dec_j2k = -24.1997026336924
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104366742530384;171.162368059163;_
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104366742530384;171.162368059163;_
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:09.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:09.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:09.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:09.340 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:09.340 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:09.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:09.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:09.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:09.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:09.342 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:09.342 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:09.344 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41177)
2025-11-17T10:22:09.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:09.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:09.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:09.345 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:09.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:09.352 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:09.352 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84871917, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104366742530384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5135251, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53329, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4877543461146, telescope_dec_j2k=-24.1997026336924, observability=1)
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.453912019729614s
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5150565;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53482;2460996.8487825;10.37075083;1.3;_
2025-11-17T10:22:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5150565;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53482;2460996.8487825;10.37075083;1.3;_
2025-11-17T10:22:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:14.809 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5150565, teldec = -24.256615
2025-11-17T10:22:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5150565 -24.256615
2025-11-17T10:22:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5150565 -24.256615
2025-11-17T10:22:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5150565 -24.256615
2025-11-17T10:22:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5150565;-24.256615;50.108502;89.993101;50.08601;90.12017;13.53482;2460996.84878252;10.37075083;1.3;_16.4892850194232 -24.1997549081476
2025-11-17T10:22:14.810 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.4892850194232     dec_j2k = -24.1997549081476
2025-11-17T10:22:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104366742530384;171.162368059163;_
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104366742530384;171.162368059163;_
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33435)
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:14.827 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:14.828 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:14.828 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8487825, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104366742530384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108502, telescope_az=89.993101, telescope_ra=16.5150565, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4892850194232, telescope_dec_j2k=-24.1997549081476, observability=1)
2025-11-17T10:22:15.600 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:22:15.600 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7720475196838379s
2025-11-17T10:22:15.600 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7720475196838379
2025-11-17T10:22:15.600 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.18390917778015 seconds ago
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Status age = 7.791642427444458s
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:22.619 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 17;16.5172313;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53699;2460996.84887292;10.37291972;1.3;_
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response 17;16.5172313;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53699;2460996.84887292;10.37291972;1.3;_
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:22.620 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:22.621 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:22.621 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:22.621 [INFO] [Thread-67139 (handle)] [driver.py] [get_status()] Telra = 16.5172313, teldec = -24.256615
2025-11-17T10:22:22.621 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5172313 -24.256615
2025-11-17T10:22:22.621 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5172313 -24.256615
2025-11-17T10:22:22.622 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5172313 -24.256615
2025-11-17T10:22:22.622 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 17;16.5172313;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53699;2460996.84887294;10.37291972;1.3;_16.4914587884038 -24.1998291611528
2025-11-17T10:22:22.623 [INFO] [Thread-67139 (handle)] [driver.py] [get_status()] ra_j2k = 16.4914587884038     dec_j2k = -24.1998291611528
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 140;0.104367384321469;171.162362694745;_
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response 140;0.104367384321469;171.162362694745;_
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:22.623 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:22.624 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:22.625 [DEBUG] [Thread-67139 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:22.625 [DEBUG] [Thread-67139 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:22.625 [DEBUG] [Thread-67139 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40739)
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:22.626 [DEBUG] [Thread-67139 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:22.633 [DEBUG] [Thread-67139 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:22.633 [DEBUG] [Thread-67139 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:22.633 [DEBUG] [Thread-67139 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:22.633 [DEBUG] [Thread-67139 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:22.634 [DEBUG] [Thread-67139 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:22.634 [DEBUG] [Thread-67139 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:22.634 [DEBUG] [Thread-67139 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:22.634 [DEBUG] [Thread-67139 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:22.634 [DEBUG] [Thread-67139 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:22.634 [INFO] [Thread-67139 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84887292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104367384321469, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.993101, telescope_ra=16.5172313, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53699, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:21:25.054321', telescope_ra_j2k=16.4914587884038, telescope_dec_j2k=-24.1998291611528, observability=1)
2025-11-17T10:22:25.196 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:25.196 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:25.196 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:25.196 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:25.196 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:25.197 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:25.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:25.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:25.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:25.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:25.198 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:22:25.198 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:25.198 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:25.198 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:25.198 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:25.198 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:22:25.199 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:22:25.200 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:26.200 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:26.200 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:26.200 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:26.200 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:26.200 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:22:26.202 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:26.203 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:26.204 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:26.204 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:26.204 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:26.204 [DEBUG] [ThreadPoolExecutor-2660_0] [payload.py] [to_registers()] [0]
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47921)
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:26.208 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:26.216 [DEBUG] [ThreadPoolExecutor-2660_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:30.495 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:22:30
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.860936164855957s
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:30.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:30.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5194248;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53919;2460996.84896407;10.37510722;1.3;_
2025-11-17T10:22:30.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.5194248;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53919;2460996.84896407;10.37510722;1.3;_
2025-11-17T10:22:30.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:30.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:30.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:30.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:30.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:30.498 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.5194248, teldec = -24.256615
2025-11-17T10:22:30.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5194248 -24.256615
2025-11-17T10:22:30.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5194248 -24.256615
2025-11-17T10:22:30.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5194248 -24.256615
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5194248;-24.256615;50.108501;89.993101;50.08601;90.12017;13.53919;2460996.84896411;10.37510722;1.3;_16.4936512496883 -24.1999040716705
2025-11-17T10:22:30.499 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.4936512496883     dec_j2k = -24.1999040716705
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104367504657297;171.162357330327;_
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104367504657297;171.162357330327;_
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:30.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:30.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:30.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:30.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:30.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:30.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:30.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:30.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:30.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:30.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:30.503 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42799)
2025-11-17T10:22:30.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:30.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:30.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:30.503 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:30.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:30.511 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:30.511 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84896407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104367504657297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.993101, telescope_ra=16.5194248, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.53919, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.4936512496883, telescope_dec_j2k=-24.1999040716705, observability=1)
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Status age = 10.224795579910278s
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:40.736 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 17;16.5222726;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54203;2460996.8490826;10.37794722;1.3;_
2025-11-17T10:22:40.737 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response 17;16.5222726;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54203;2460996.8490826;10.37794722;1.3;_
2025-11-17T10:22:40.738 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:40.738 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:40.738 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:40.738 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:40.739 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:40.739 [INFO] [Thread-67140 (handle)] [driver.py] [get_status()] Telra = 16.5222726, teldec = -24.256615
2025-11-17T10:22:40.739 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5222726 -24.256615
2025-11-17T10:22:40.739 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5222726 -24.256615
2025-11-17T10:22:40.739 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5222726 -24.256615
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 17;16.5222726;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54203;2460996.84908264;10.37794722;1.3;_16.496497702886 -24.2000013557772
2025-11-17T10:22:40.740 [INFO] [Thread-67140 (handle)] [driver.py] [get_status()] ra_j2k = 16.496497702886     dec_j2k = -24.2000013557772
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 140;0.104367304097583;171.162357330327;_
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response 140;0.104367304097583;171.162357330327;_
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:40.740 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:40.741 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:40.742 [DEBUG] [Thread-67140 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:40.742 [DEBUG] [Thread-67140 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:40.742 [DEBUG] [Thread-67140 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39697)
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:40.744 [DEBUG] [Thread-67140 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:40.751 [DEBUG] [Thread-67140 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:40.751 [INFO] [Thread-67140 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8490826, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104367304097583, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.9931, telescope_ra=16.5222726, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.54203, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.496497702886, telescope_dec_j2k=-24.2000013557772, observability=1)
2025-11-17T10:22:51.216 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:51.216 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:51.216 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:51.216 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:51.216 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:51.217 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:51.218 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:51.218 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:51.218 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:51.218 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:51.218 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:51.219 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:22:51.219 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:22:51.219 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:22:51.219 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:58.811 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:22:58.811 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Status age = 18.060270309448242s
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:22:58.812 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:22:58.813 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:22:58.814 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 17;16.5273136;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54707;2460996.84929183;10.38297444;1.3;_
2025-11-17T10:22:58.814 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response 17;16.5273136;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54707;2460996.84929183;10.38297444;1.3;_
2025-11-17T10:22:58.814 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:22:58.814 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:22:58.814 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:22:58.815 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:58.815 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:22:58.815 [INFO] [Thread-67141 (handle)] [driver.py] [get_status()] Telra = 16.5273136, teldec = -24.256615
2025-11-17T10:22:58.815 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5273136 -24.256615
2025-11-17T10:22:58.815 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5273136 -24.256615
2025-11-17T10:22:58.815 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5273136 -24.256615
2025-11-17T10:22:58.816 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 17;16.5273136;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54707;2460996.84929185;10.38297444;1.3;_16.5015363237151 -24.2001736408949
2025-11-17T10:22:58.816 [INFO] [Thread-67141 (handle)] [driver.py] [get_status()] ra_j2k = 16.5015363237151     dec_j2k = -24.2001736408949
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 140;0.104368988799181;171.162346601491;_
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response 140;0.104368988799181;171.162346601491;_
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:58.817 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:58.818 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:58.818 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:58.818 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:58.818 [DEBUG] [Thread-67141 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:58.819 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:22:58.819 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:22:58.819 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:22:58.819 [DEBUG] [Thread-67141 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:58.820 [DEBUG] [Thread-67141 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:22:58.820 [DEBUG] [Thread-67141 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:22:58.821 [DEBUG] [Thread-67141 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34283)
2025-11-17T10:22:58.822 [DEBUG] [Thread-67141 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:22:58.822 [DEBUG] [Thread-67141 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:22:58.822 [DEBUG] [Thread-67141 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:22:58.822 [DEBUG] [Thread-67141 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:22:58.822 [DEBUG] [Thread-67141 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:22:58.829 [DEBUG] [Thread-67141 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:22:58.829 [INFO] [Thread-67141 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84929183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104368988799181, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.9931, telescope_ra=16.5273136, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.54707, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.5015363237151, telescope_dec_j2k=-24.2001736408949, observability=1)
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Status age = 4.44139838218689s
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:03.271 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:03.272 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:03.273 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 17;16.5285653;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54833;2460996.84934344;10.38422278;1.3;_
2025-11-17T10:23:03.273 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response 17;16.5285653;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54833;2460996.84934344;10.38422278;1.3;_
2025-11-17T10:23:03.273 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:03.273 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:03.273 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:03.274 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:03.274 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:03.274 [INFO] [Thread-67142 (handle)] [driver.py] [get_status()] Telra = 16.5285653, teldec = -24.256615
2025-11-17T10:23:03.274 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5285653 -24.256615
2025-11-17T10:23:03.274 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5285653 -24.256615
2025-11-17T10:23:03.274 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5285653 -24.256615
2025-11-17T10:23:03.275 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 17;16.5285653;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54833;2460996.84934346;10.38422278;1.3;_16.5027874339197 -24.2002164355403
2025-11-17T10:23:03.275 [INFO] [Thread-67142 (handle)] [driver.py] [get_status()] ra_j2k = 16.5027874339197     dec_j2k = -24.2002164355403
2025-11-17T10:23:03.275 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:03.275 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:03.275 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:03.276 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 140;0.104368146448382;171.162362694745;_
2025-11-17T10:23:03.276 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response 140;0.104368146448382;171.162362694745;_
2025-11-17T10:23:03.276 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:03.276 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:03.277 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:03.277 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:03.277 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:03.277 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:03.278 [DEBUG] [Thread-67142 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34219)
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:03.279 [DEBUG] [Thread-67142 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:03.286 [DEBUG] [Thread-67142 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:03.286 [INFO] [Thread-67142 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84934344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104368146448382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.9931, telescope_ra=16.5285653, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.54833, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.5027874339197, telescope_dec_j2k=-24.2002164355403, observability=1)
2025-11-17T10:23:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.153225421905518s
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5299934;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54975;2460996.84940326;10.38564694;1.3;_
2025-11-17T10:23:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5299934;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54975;2460996.84940326;10.38564694;1.3;_
2025-11-17T10:23:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:08.443 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5299934, teldec = -24.256615
2025-11-17T10:23:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5299934 -24.256615
2025-11-17T10:23:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5299934 -24.256615
2025-11-17T10:23:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5299934 -24.256615
2025-11-17T10:23:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5299934;-24.256615;50.108501;89.9931;50.08601;90.12017;13.54975;2460996.84940329;10.38564694;1.3;_16.5042148614731 -24.200265268721
2025-11-17T10:23:08.444 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.5042148614731     dec_j2k = -24.200265268721
2025-11-17T10:23:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104368146448382;171.162346601491;_
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104368146448382;171.162346601491;_
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:08.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:08.447 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:08.447 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49047)
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:08.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:08.457 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:08.457 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84940326, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104368146448382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108501, telescope_az=89.9931, telescope_ra=16.5299934, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.54975, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.5042148614731, telescope_dec_j2k=-24.200265268721, observability=1)
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.351932764053345s
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5317769;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55154;2460996.84947698;10.38742556;1.3;_
2025-11-17T10:23:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5317769;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55154;2460996.84947698;10.38742556;1.3;_
2025-11-17T10:23:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:14.813 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5317769, teldec = -24.256615
2025-11-17T10:23:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5317769 -24.256615
2025-11-17T10:23:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5317769 -24.256615
2025-11-17T10:23:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5317769 -24.256615
2025-11-17T10:23:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5317769;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55154;2460996.849477;10.38742556;1.3;_16.5059975223801 -24.2003262659317
2025-11-17T10:23:14.814 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5059975223801     dec_j2k = -24.2003262659317
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10436882835141;171.162357330327;_
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10436882835141;171.162357330327;_
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49271)
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:14.825 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84947698, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10436882835141, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1085, telescope_az=89.9931, telescope_ra=16.5317769, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.55154, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.5059975223801, telescope_dec_j2k=-24.2003262659317, observability=1)
2025-11-17T10:23:15.660 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:23:15.660 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.8342931270599365s
2025-11-17T10:23:15.660 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.8342931270599365
2025-11-17T10:23:15.660 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16521596908569 seconds ago
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Status age = 2.0454137325286865s
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:16.871 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:16.872 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 17;16.532356;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55212;2460996.84950083;10.38800306;1.3;_
2025-11-17T10:23:16.872 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response 17;16.532356;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55212;2460996.84950083;10.38800306;1.3;_
2025-11-17T10:23:16.872 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:16.872 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:16.873 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:16.873 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:16.874 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:16.874 [INFO] [Thread-67143 (handle)] [driver.py] [get_status()] Telra = 16.532356, teldec = -24.256615
2025-11-17T10:23:16.874 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] UnCookCoordinates 16.532356 -24.256615
2025-11-17T10:23:16.874 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.532356 -24.256615
2025-11-17T10:23:16.874 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.532356 -24.256615
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 17;16.532356;-24.256615;50.1085;89.9931;50.08601;90.12017;13.55212;2460996.84950087;10.38800306;1.3;_16.506576350095 -24.2003460743395
2025-11-17T10:23:16.875 [INFO] [Thread-67143 (handle)] [driver.py] [get_status()] ra_j2k = 16.506576350095     dec_j2k = -24.2003460743395
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 140;0.10436882835141;171.162351965909;_
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response 140;0.10436882835141;171.162351965909;_
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:16.875 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:16.876 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:16.877 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:16.878 [DEBUG] [Thread-67143 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:16.878 [DEBUG] [Thread-67143 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:16.878 [DEBUG] [Thread-67143 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:16.879 [DEBUG] [Thread-67143 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37939)
2025-11-17T10:23:16.879 [DEBUG] [Thread-67143 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:16.879 [DEBUG] [Thread-67143 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:16.879 [DEBUG] [Thread-67143 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:16.879 [DEBUG] [Thread-67143 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:16.880 [DEBUG] [Thread-67143 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:16.887 [DEBUG] [Thread-67143 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:16.887 [DEBUG] [Thread-67143 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:16.887 [DEBUG] [Thread-67143 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:16.887 [DEBUG] [Thread-67143 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:16.888 [DEBUG] [Thread-67143 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:16.888 [DEBUG] [Thread-67143 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:16.888 [DEBUG] [Thread-67143 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:16.888 [DEBUG] [Thread-67143 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:16.888 [DEBUG] [Thread-67143 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:16.888 [INFO] [Thread-67143 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84950083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10436882835141, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1085, telescope_az=89.9931, telescope_ra=16.532356, telescope_dec=-24.256615, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.55212, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:22:25.195732', telescope_ra_j2k=16.506576350095, telescope_dec_j2k=-24.2003460743395, observability=1)
2025-11-17T10:23:25.338 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:25.338 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:25.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:25.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:25.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:25.340 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:25.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:25.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:25.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:25.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:25.341 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:23:25.341 [INFO] [ThreadPoolExecutor-2661_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:23:25.341 [INFO] [ThreadPoolExecutor-2661_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:23:30.572 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:23:30
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.684248447418213s
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:30.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:30.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:30.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5361742;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55594;2460996.84965942;10.39181083;1.3;_
2025-11-17T10:23:30.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.5361742;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55594;2460996.84965942;10.39181083;1.3;_
2025-11-17T10:23:30.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:30.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:30.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:30.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:30.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:30.575 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.5361742, teldec = -24.256614
2025-11-17T10:23:30.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5361742 -24.256614
2025-11-17T10:23:30.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5361742 -24.256614
2025-11-17T10:23:30.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5361742 -24.256614
2025-11-17T10:23:30.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5361742;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55594;2460996.84965944;10.39181083;1.3;_16.5103927570639 -24.2004757108858
2025-11-17T10:23:30.576 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.5103927570639     dec_j2k = -24.2004757108858
2025-11-17T10:23:30.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:30.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:30.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104368788239467;171.162357330327;_
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104368788239467;171.162357330327;_
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:30.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:30.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:30.585 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33059)
2025-11-17T10:23:30.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:30.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:30.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:30.586 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:30.586 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:30.593 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:30.593 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84965942, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104368788239467, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1085, telescope_az=89.9931, telescope_ra=16.5361742, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.55594, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5103927570639, telescope_dec_j2k=-24.2004757108858, observability=1)
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Status age = 4.41264533996582s
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:35.006 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:35.007 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:35.008 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 17;16.537397;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55716;2460996.84971074;10.39303028;1.3;_
2025-11-17T10:23:35.008 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response 17;16.537397;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55716;2460996.84971074;10.39303028;1.3;_
2025-11-17T10:23:35.008 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:35.008 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:35.009 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:35.009 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:35.009 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:35.009 [INFO] [Thread-67144 (handle)] [driver.py] [get_status()] Telra = 16.537397, teldec = -24.256614
2025-11-17T10:23:35.010 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] UnCookCoordinates 16.537397 -24.256614
2025-11-17T10:23:35.010 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.537397 -24.256614
2025-11-17T10:23:35.010 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.537397 -24.256614
2025-11-17T10:23:35.011 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 17;16.537397;-24.256614;50.1085;89.9931;50.08601;90.12017;13.55716;2460996.84971076;10.39303028;1.3;_16.5116149835309 -24.2005175600886
2025-11-17T10:23:35.011 [INFO] [Thread-67144 (handle)] [driver.py] [get_status()] ra_j2k = 16.5116149835309     dec_j2k = -24.2005175600886
2025-11-17T10:23:35.011 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:35.011 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:35.011 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:35.011 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 140;0.104369349806666;171.162351965909;_
2025-11-17T10:23:35.012 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response 140;0.104369349806666;171.162351965909;_
2025-11-17T10:23:35.012 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:35.012 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:35.012 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:35.012 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:35.013 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:35.014 [DEBUG] [Thread-67144 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:35.014 [DEBUG] [Thread-67144 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:23:35.014 [DEBUG] [Thread-67144 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38939)
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:35.017 [DEBUG] [Thread-67144 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:35.024 [DEBUG] [Thread-67144 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:35.024 [DEBUG] [Thread-67144 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:35.024 [DEBUG] [Thread-67144 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:35.024 [DEBUG] [Thread-67144 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:35.024 [DEBUG] [Thread-67144 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:35.025 [DEBUG] [Thread-67144 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:35.025 [DEBUG] [Thread-67144 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:35.025 [DEBUG] [Thread-67144 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:35.025 [DEBUG] [Thread-67144 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:35.025 [INFO] [Thread-67144 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.84971074, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104369349806666, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1085, telescope_az=89.9931, telescope_ra=16.537397, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.55716, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5116149835309, telescope_dec_j2k=-24.2005175600886, observability=1)
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.220 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:23:46.221 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.222 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.222 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.222 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:46.222 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:46.222 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:46.223 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:23:46.224 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:46.225 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Park
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:23:46.226 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 29;16.540525;-24.256614;50.1085;89.9931;50.08601;90.12017;13.56029;2460996.84984058;10.39614972;1.3;_Park Command Successful
2025-11-17T10:23:47.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:23:47.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:23:47.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:23:47.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:23:47.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:23:48.227 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:23:48.228 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:23:48.228 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:23:48.228 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:23:48.228 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:23:49.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:23:49.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:23:49.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:23:49.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:23:49.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:23:50.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:23:50.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:23:50.229 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:50.230 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:50.231 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:23:50.232 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:23:50.233 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:51.233 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:51.233 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:51.233 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:51.233 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:51.233 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:51.234 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:23:51.235 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:23:51.235 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:23:51.235 [DEBUG] [ThreadPoolExecutor-2660_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:51.235 [INFO] [ThreadPoolExecutor-2660_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:23:53.072 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:23:53.072 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Status age = 18.04767894744873s
2025-11-17T10:23:53.072 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:23:53.072 [DEBUG] [Thread-67145 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:23:53.073 [DEBUG] [Thread-67145 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:23:53.074 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:23:53.074 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:23:53.074 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:23:53.074 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:23:53.075 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 17;16.5424199;-24.256614;50.1085;89.9931;50.08601;90.12017;13.56218;2460996.84991984;10.39803944;1.3;_
2025-11-17T10:23:53.075 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response 17;16.5424199;-24.256614;50.1085;89.9931;50.08601;90.12017;13.56218;2460996.84991984;10.39803944;1.3;_
2025-11-17T10:23:53.075 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:23:53.075 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:23:53.075 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:23:53.076 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:53.076 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:23:53.076 [INFO] [Thread-67145 (handle)] [driver.py] [get_status()] Telra = 16.5424199, teldec = -24.256614
2025-11-17T10:23:53.076 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5424199 -24.256614
2025-11-17T10:23:53.076 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5424199 -24.256614
2025-11-17T10:23:53.076 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5424199 -24.256614
2025-11-17T10:23:53.077 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 17;16.5424199;-24.256614;50.1085;89.9931;50.08601;90.12017;13.56218;2460996.84991987;10.39803944;1.3;_16.516635531466 -24.2006895257905
2025-11-17T10:23:53.077 [INFO] [Thread-67145 (handle)] [driver.py] [get_status()] ra_j2k = 16.516635531466     dec_j2k = -24.2006895257905
2025-11-17T10:23:53.077 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:23:53.077 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:23:53.077 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 140;0.104370031709694;171.162357330327;_
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response 140;0.104370031709694;171.162357330327;_
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:53.078 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:23:53.079 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:23:53.080 [DEBUG] [Thread-67145 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:53.080 [DEBUG] [Thread-67145 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:23:53.080 [DEBUG] [Thread-67145 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56835)
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:23:53.081 [DEBUG] [Thread-67145 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:23:53.088 [DEBUG] [Thread-67145 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:23:53.088 [DEBUG] [Thread-67145 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:53.088 [DEBUG] [Thread-67145 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:23:53.088 [DEBUG] [Thread-67145 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:23:53.089 [DEBUG] [Thread-67145 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:23:53.089 [DEBUG] [Thread-67145 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:23:53.089 [DEBUG] [Thread-67145 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:23:53.089 [DEBUG] [Thread-67145 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:23:53.089 [DEBUG] [Thread-67145 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:23:53.089 [INFO] [Thread-67145 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.84991984, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370031709694, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1085, telescope_az=89.9931, telescope_ra=16.5424199, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.56218, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.516635531466, telescope_dec_j2k=-24.2006895257905, observability=1)
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Status age = 10.240277290344238s
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:03.329 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:03.330 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 17;16.5452891;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56505;2460996.85003855;10.40090083;1.3;_
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response 17;16.5452891;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56505;2460996.85003855;10.40090083;1.3;_
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:03.331 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:03.332 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:03.332 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:03.332 [INFO] [Thread-67146 (handle)] [driver.py] [get_status()] Telra = 16.5452891, teldec = -24.256614
2025-11-17T10:24:03.332 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5452891 -24.256614
2025-11-17T10:24:03.332 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5452891 -24.256614
2025-11-17T10:24:03.332 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5452891 -24.256614
2025-11-17T10:24:03.333 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 17;16.5452891;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56505;2460996.85003858;10.40090083;1.3;_16.5195033906823 -24.2007878010592
2025-11-17T10:24:03.333 [INFO] [Thread-67146 (handle)] [driver.py] [get_status()] ra_j2k = 16.5195033906823     dec_j2k = -24.2007878010592
2025-11-17T10:24:03.333 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:03.333 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:03.333 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 140;0.10436983114998;171.162351965909;_
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response 140;0.10436983114998;171.162351965909;_
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:03.334 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:24:03.335 [DEBUG] [Thread-67146 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:24:03.336 [DEBUG] [Thread-67146 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46201)
2025-11-17T10:24:03.337 [DEBUG] [Thread-67146 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:03.337 [DEBUG] [Thread-67146 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:03.337 [DEBUG] [Thread-67146 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:03.337 [DEBUG] [Thread-67146 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:03.337 [DEBUG] [Thread-67146 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:03.344 [DEBUG] [Thread-67146 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:03.344 [INFO] [Thread-67146 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85003855, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10436983114998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.9931, telescope_ra=16.5452891, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.56505, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5195033906823, telescope_dec_j2k=-24.2007878010592, observability=1)
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.206525802612305s
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5464562;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56622;2460996.85008741;10.40206472;1.3;_
2025-11-17T10:24:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5464562;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56622;2460996.85008741;10.40206472;1.3;_
2025-11-17T10:24:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:07.554 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5464562, teldec = -24.256614
2025-11-17T10:24:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5464562 -24.256614
2025-11-17T10:24:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5464562 -24.256614
2025-11-17T10:24:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5464562 -24.256614
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5464562;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56622;2460996.85008744;10.40206472;1.3;_16.5206699458706 -24.20082778555
2025-11-17T10:24:07.555 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.5206699458706     dec_j2k = -24.20082778555
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104370432829122;171.162373423581;_
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104370432829122;171.162373423581;_
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:07.557 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:07.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:07.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:07.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:07.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:07.558 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:07.558 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36235)
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:07.564 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:07.571 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:07.571 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:07.572 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:07.572 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85008741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370432829122, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.9931, telescope_ra=16.5464562, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.56622, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5206699458706, telescope_dec_j2k=-24.20082778555, observability=1)
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Status age = 3.579976797103882s
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:11.152 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:11.153 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 17;16.547464;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56722;2460996.8501291;10.40306972;1.3;_
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response 17;16.547464;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56722;2460996.8501291;10.40306972;1.3;_
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:11.154 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:11.155 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:11.155 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:11.155 [INFO] [Thread-67147 (handle)] [driver.py] [get_status()] Telra = 16.547464, teldec = -24.256614
2025-11-17T10:24:11.155 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] UnCookCoordinates 16.547464 -24.256614
2025-11-17T10:24:11.155 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.547464 -24.256614
2025-11-17T10:24:11.156 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.547464 -24.256614
2025-11-17T10:24:11.156 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 17;16.547464;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56722;2460996.85012912;10.40306972;1.3;_16.5216772756899 -24.2008623167539
2025-11-17T10:24:11.156 [INFO] [Thread-67147 (handle)] [driver.py] [get_status()] ra_j2k = 16.5216772756899     dec_j2k = -24.2008623167539
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 140;0.104370312493294;171.162351965909;_
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response 140;0.104370312493294;171.162351965909;_
2025-11-17T10:24:11.157 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:11.158 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:11.159 [DEBUG] [Thread-67147 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:11.159 [DEBUG] [Thread-67147 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:11.159 [DEBUG] [Thread-67147 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33025)
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:11.160 [DEBUG] [Thread-67147 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:11.167 [DEBUG] [Thread-67147 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:11.167 [INFO] [Thread-67147 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8501291, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370312493294, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.9931, telescope_ra=16.547464, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.56722, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5216772756899, telescope_dec_j2k=-24.2008623167539, observability=1)
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.6934499740600586s
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5484915;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56825;2460996.85017201;10.40409444;1.3;_
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5484915;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56825;2460996.85017201;10.40409444;1.3;_
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:14.863 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5484915, teldec = -24.256614
2025-11-17T10:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5484915 -24.256614
2025-11-17T10:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5484915 -24.256614
2025-11-17T10:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5484915 -24.256614
2025-11-17T10:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5484915;-24.256614;50.108499;89.9931;50.08601;90.12017;13.56825;2460996.85017204;10.40409444;1.3;_16.5227042965746 -24.200897527041
2025-11-17T10:24:14.864 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5227042965746     dec_j2k = -24.200897527041
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104370232269408;171.162357330327;_
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104370232269408;171.162357330327;_
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:14.872 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56483)
2025-11-17T10:24:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:14.873 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:14.873 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:14.873 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:14.880 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85017201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370232269408, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.9931, telescope_ra=16.5484915, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.56825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:23:25.338398', telescope_ra_j2k=16.5227042965746, telescope_dec_j2k=-24.200897527041, observability=1)
2025-11-17T10:24:15.720 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:24:15.720 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.8396463394165039s
2025-11-17T10:24:15.720 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.8396463394165039
2025-11-17T10:24:15.720 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14807844161987 seconds ago
2025-11-17T10:24:25.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:25.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:25.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:25.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:25.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:25.483 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:25.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:25.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:25.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:25.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:25.484 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:24:25.484 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:25.484 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:25.484 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:25.484 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:25.484 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:24:25.485 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:24:25.486 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:26.486 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:26.486 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:26.486 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:26.486 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:26.486 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:24:26.487 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:26.488 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:26.489 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:26.489 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:26.489 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:26.489 [DEBUG] [ThreadPoolExecutor-2662_0] [payload.py] [to_registers()] [0]
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42303)
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:26.492 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:26.499 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:26.500 [DEBUG] [ThreadPoolExecutor-2662_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Status age = 14.376567602157593s
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:29.257 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:29.258 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 17;16.5525014;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57226;2460996.85033863;10.40809333;1.3;_
2025-11-17T10:24:29.258 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response 17;16.5525014;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57226;2460996.85033863;10.40809333;1.3;_
2025-11-17T10:24:29.258 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:29.258 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:29.259 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:29.259 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:29.259 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:29.260 [INFO] [Thread-67148 (handle)] [driver.py] [get_status()] Telra = 16.5525014, teldec = -24.256614
2025-11-17T10:24:29.260 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5525014 -24.256614
2025-11-17T10:24:29.260 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5525014 -24.256614
2025-11-17T10:24:29.260 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5525014 -24.256614
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 17;16.5525014;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57226;2460996.85033867;10.40809333;1.3;_16.5267123292641 -24.2010349773641
2025-11-17T10:24:29.261 [INFO] [Thread-67148 (handle)] [driver.py] [get_status()] ra_j2k = 16.5267123292641     dec_j2k = -24.2010349773641
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 140;0.104370633388836;171.162351965909;_
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response 140;0.104370633388836;171.162351965909;_
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:29.261 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:29.262 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:29.263 [DEBUG] [Thread-67148 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:29.263 [DEBUG] [Thread-67148 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:29.263 [DEBUG] [Thread-67148 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47113)
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:29.269 [DEBUG] [Thread-67148 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:29.276 [DEBUG] [Thread-67148 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:29.277 [DEBUG] [Thread-67148 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:29.277 [INFO] [Thread-67148 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85033863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370633388836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.993099, telescope_ra=16.5525014, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.57226, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5267123292641, telescope_dec_j2k=-24.2010349773641, observability=1)
2025-11-17T10:24:30.654 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:24:30
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.3774402141571045s
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:30.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:30.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:30.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5528941;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57265;2460996.85035482;10.408485;1.3;_
2025-11-17T10:24:30.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.5528941;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57265;2460996.85035482;10.408485;1.3;_
2025-11-17T10:24:30.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:30.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:30.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:30.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:30.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:30.657 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.5528941, teldec = -24.256614
2025-11-17T10:24:30.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5528941 -24.256614
2025-11-17T10:24:30.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5528941 -24.256614
2025-11-17T10:24:30.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5528941 -24.256614
2025-11-17T10:24:30.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5528941;-24.256614;50.108499;89.993099;50.08601;90.12017;13.57265;2460996.85035484;10.408485;1.3;_16.5271048466053 -24.201048441602
2025-11-17T10:24:30.658 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.5271048466053     dec_j2k = -24.201048441602
2025-11-17T10:24:30.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:30.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:30.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104370553164951;171.162368059163;_
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104370553164951;171.162368059163;_
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:30.659 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:30.660 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58457)
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:30.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:30.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:30.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:30.674 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:30.674 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:30.674 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:30.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:30.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:30.675 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:30.675 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:30.675 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85035482, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370553164951, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.993099, telescope_ra=16.5528941, telescope_dec=-24.256614, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.57265, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5271048466053, telescope_dec_j2k=-24.201048441602, observability=1)
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Status age = 16.65549612045288s
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:47.330 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:24:47.331 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:24:47.332 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 17;16.5575513;-24.256613;50.108499;89.993099;50.08601;90.12017;13.57731;2460996.85054782;10.41312944;1.3;_
2025-11-17T10:24:47.333 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response 17;16.5575513;-24.256613;50.108499;89.993099;50.08601;90.12017;13.57731;2460996.85054782;10.41312944;1.3;_
2025-11-17T10:24:47.333 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:24:47.333 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:24:47.333 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:24:47.334 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:47.334 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:24:47.334 [INFO] [Thread-67149 (handle)] [driver.py] [get_status()] Telra = 16.5575513, teldec = -24.256613
2025-11-17T10:24:47.334 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5575513 -24.256613
2025-11-17T10:24:47.334 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5575513 -24.256613
2025-11-17T10:24:47.334 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5575513 -24.256613
2025-11-17T10:24:47.335 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 17;16.5575513;-24.256613;50.108499;89.993099;50.08601;90.12017;13.57731;2460996.85054786;10.41312944;1.3;_16.5317598834433 -24.201207165614
2025-11-17T10:24:47.335 [INFO] [Thread-67149 (handle)] [driver.py] [get_status()] ra_j2k = 16.5317598834433     dec_j2k = -24.201207165614
2025-11-17T10:24:47.335 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:24:47.335 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:24:47.335 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 140;0.104371676299349;171.162351965909;_
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response 140;0.104371676299349;171.162351965909;_
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:47.336 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:24:47.337 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:24:47.338 [DEBUG] [Thread-67149 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:47.338 [DEBUG] [Thread-67149 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:24:47.338 [DEBUG] [Thread-67149 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39557)
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:24:47.341 [DEBUG] [Thread-67149 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:24:47.348 [DEBUG] [Thread-67149 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:24:47.349 [INFO] [Thread-67149 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85054782, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104371676299349, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108499, telescope_az=89.993099, telescope_ra=16.5575513, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.57731, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5317598834433, telescope_dec_j2k=-24.201207165614, observability=1)
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:51.500 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:51.501 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:24:51.501 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:24:51.501 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:24:51.501 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:24:51.501 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:24:51.502 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Status age = 16.028675079345703s
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:03.377 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 17;16.5620015;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58176;2460996.85073354;10.4175675;1.3;_
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response 17;16.5620015;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58176;2460996.85073354;10.4175675;1.3;_
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:03.378 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:03.379 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:03.379 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:03.379 [INFO] [Thread-67150 (handle)] [driver.py] [get_status()] Telra = 16.5620015, teldec = -24.256613
2025-11-17T10:25:03.380 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5620015 -24.256613
2025-11-17T10:25:03.380 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5620015 -24.256613
2025-11-17T10:25:03.380 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5620015 -24.256613
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 17;16.5620015;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58176;2460996.85073356;10.4175675;1.3;_16.5362080212243 -24.2013598689585
2025-11-17T10:25:03.381 [INFO] [Thread-67150 (handle)] [driver.py] [get_status()] ra_j2k = 16.5362080212243     dec_j2k = -24.2013598689585
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 140;0.104371796635178;171.162362694745;_
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response 140;0.104371796635178;171.162362694745;_
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:03.381 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:03.382 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:03.383 [DEBUG] [Thread-67150 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:03.383 [DEBUG] [Thread-67150 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:03.383 [DEBUG] [Thread-67150 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37989)
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:03.390 [DEBUG] [Thread-67150 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:03.397 [DEBUG] [Thread-67150 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:03.397 [DEBUG] [Thread-67150 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:03.397 [DEBUG] [Thread-67150 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:03.397 [DEBUG] [Thread-67150 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:03.397 [DEBUG] [Thread-67150 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:03.398 [DEBUG] [Thread-67150 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:03.398 [DEBUG] [Thread-67150 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:03.398 [DEBUG] [Thread-67150 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:03.398 [DEBUG] [Thread-67150 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:03.398 [INFO] [Thread-67150 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85073354, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104371796635178, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5620015, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.58176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5362080212243, telescope_dec_j2k=-24.2013598689585, observability=1)
2025-11-17T10:25:05.464 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Status age = 2.0668389797210693s
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:05.465 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:05.466 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:05.467 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 17;16.5625901;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58235;2460996.85075772;10.41815444;1.3;_
2025-11-17T10:25:05.467 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response 17;16.5625901;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58235;2460996.85075772;10.41815444;1.3;_
2025-11-17T10:25:05.467 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:05.467 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:05.467 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:05.468 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:05.468 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:05.468 [INFO] [Thread-67151 (handle)] [driver.py] [get_status()] Telra = 16.5625901, teldec = -24.256613
2025-11-17T10:25:05.468 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5625901 -24.256613
2025-11-17T10:25:05.468 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5625901 -24.256613
2025-11-17T10:25:05.468 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5625901 -24.256613
2025-11-17T10:25:05.469 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 17;16.5625901;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58235;2460996.85075774;10.41815444;1.3;_16.5367963488314 -24.2013800718156
2025-11-17T10:25:05.469 [INFO] [Thread-67151 (handle)] [driver.py] [get_status()] ra_j2k = 16.5367963488314     dec_j2k = -24.2013800718156
2025-11-17T10:25:05.469 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:05.469 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:05.469 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 140;0.104370994396321;171.162351965909;_
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response 140;0.104370994396321;171.162351965909;_
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:05.470 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:05.471 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:05.472 [DEBUG] [Thread-67151 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:05.472 [DEBUG] [Thread-67151 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:05.472 [DEBUG] [Thread-67151 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54573)
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:05.477 [DEBUG] [Thread-67151 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:05.484 [DEBUG] [Thread-67151 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:05.484 [DEBUG] [Thread-67151 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:05.484 [DEBUG] [Thread-67151 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:05.485 [DEBUG] [Thread-67151 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:05.485 [INFO] [Thread-67151 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85075772, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104370994396321, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5625901, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.58235, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5367963488314, telescope_dec_j2k=-24.2013800718156, observability=1)
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.1824989318847656s
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:06.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:06.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:06.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5629263;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58269;2460996.85077163;10.41848972;1.3;_
2025-11-17T10:25:06.669 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5629263;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58269;2460996.85077163;10.41848972;1.3;_
2025-11-17T10:25:06.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:06.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:06.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:06.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:06.670 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:06.670 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5629263, teldec = -24.256613
2025-11-17T10:25:06.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5629263 -24.256613
2025-11-17T10:25:06.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5629263 -24.256613
2025-11-17T10:25:06.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5629263 -24.256613
2025-11-17T10:25:06.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5629263;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58269;2460996.85077166;10.41848972;1.3;_16.5371323932827 -24.2013916120037
2025-11-17T10:25:06.671 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.5371323932827     dec_j2k = -24.2013916120037
2025-11-17T10:25:06.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:06.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:06.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:06.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104371676299349;171.162357330327;_
2025-11-17T10:25:06.672 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104371676299349;171.162357330327;_
2025-11-17T10:25:06.672 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:06.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:06.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:06.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:06.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:06.673 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:06.673 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:06.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:06.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:06.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:06.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:06.675 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:06.675 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37935)
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:06.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:06.687 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:06.687 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:06.687 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:06.688 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:06.688 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85077163, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104371676299349, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5629263, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.58269, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5371323932827, telescope_dec_j2k=-24.2013916120037, observability=1)
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.112163066864014s
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5651849;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58495;2460996.85086576;10.42074222;1.3;_
2025-11-17T10:25:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5651849;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58495;2460996.85086576;10.42074222;1.3;_
2025-11-17T10:25:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:14.803 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5651849, teldec = -24.256613
2025-11-17T10:25:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5651849 -24.256613
2025-11-17T10:25:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5651849 -24.256613
2025-11-17T10:25:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5651849 -24.256613
2025-11-17T10:25:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5651849;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58495;2460996.85086579;10.42074222;1.3;_16.5393899490217 -24.201469150608
2025-11-17T10:25:14.804 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5393899490217     dec_j2k = -24.201469150608
2025-11-17T10:25:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104372077418777;171.162357330327;_
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104372077418777;171.162357330327;_
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48681)
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:14.818 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85086576, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104372077418777, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5651849, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.58495, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5393899490217, telescope_dec_j2k=-24.201469150608, observability=1)
2025-11-17T10:25:15.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:25:15.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.9617805480957031s
2025-11-17T10:25:15.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.9617805480957031
2025-11-17T10:25:15.780 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12591505050659 seconds ago
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Status age = 8.714674472808838s
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:23.533 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 17;16.5676314;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58739;2460996.85096683;10.42318194;1.3;_
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response 17;16.5676314;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58739;2460996.85096683;10.42318194;1.3;_
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:23.534 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:23.535 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:23.535 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:23.535 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:23.535 [INFO] [Thread-67152 (handle)] [driver.py] [get_status()] Telra = 16.5676314, teldec = -24.256613
2025-11-17T10:25:23.535 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5676314 -24.256613
2025-11-17T10:25:23.536 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5676314 -24.256613
2025-11-17T10:25:23.536 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5676314 -24.256613
2025-11-17T10:25:23.537 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 17;16.5676314;-24.256613;50.108498;89.993099;50.08601;90.12017;13.58739;2460996.85096685;10.42318194;1.3;_16.5418353192988 -24.2015531621275
2025-11-17T10:25:23.537 [INFO] [Thread-67152 (handle)] [driver.py] [get_status()] ra_j2k = 16.5418353192988     dec_j2k = -24.2015531621275
2025-11-17T10:25:23.537 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:23.537 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:23.537 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 140;0.104372358202377;171.162357330327;_
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response 140;0.104372358202377;171.162357330327;_
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:23.538 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:23.539 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:23.540 [DEBUG] [Thread-67152 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:23.540 [DEBUG] [Thread-67152 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:23.540 [DEBUG] [Thread-67152 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50987)
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:23.542 [DEBUG] [Thread-67152 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:23.550 [DEBUG] [Thread-67152 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:23.550 [INFO] [Thread-67152 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85096683, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104372358202377, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5676314, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.58739, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:24:25.481425', telescope_ra_j2k=16.5418353192988, telescope_dec_j2k=-24.2015531621275, observability=1)
2025-11-17T10:25:25.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:25.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:25.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:25.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:25.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:25.624 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:25.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:25.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:25.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:25.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:25.625 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:25:25.625 [INFO] [ThreadPoolExecutor-2663_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:25:25.625 [INFO] [ThreadPoolExecutor-2663_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:25:30.735 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:25:30
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.18558144569397s
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:30.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:30.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5696388;-24.256613;50.108498;89.993099;50.08601;90.12017;13.5894;2460996.8510502;10.42518389;1.3;_
2025-11-17T10:25:30.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.5696388;-24.256613;50.108498;89.993099;50.08601;90.12017;13.5894;2460996.8510502;10.42518389;1.3;_
2025-11-17T10:25:30.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:30.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:30.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:30.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:30.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:30.739 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.5696388, teldec = -24.256613
2025-11-17T10:25:30.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5696388 -24.256613
2025-11-17T10:25:30.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5696388 -24.256613
2025-11-17T10:25:30.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5696388 -24.256613
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.5696388;-24.256613;50.108498;89.993099;50.08601;90.12017;13.5894;2460996.85105023;10.42518389;1.3;_16.5438417934377 -24.2016221124323
2025-11-17T10:25:30.740 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.5438417934377     dec_j2k = -24.2016221124323
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104372598874034;171.162351965909;_
2025-11-17T10:25:30.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104372598874034;171.162351965909;_
2025-11-17T10:25:30.741 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:30.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:30.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:30.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:30.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:30.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:30.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:30.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38625)
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:30.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:30.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:30.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:30.753 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:30.754 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:30.754 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8510502, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104372598874034, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108498, telescope_az=89.993099, telescope_ra=16.5696388, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.5894, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5438417934377, telescope_dec_j2k=-24.2016221124323, observability=1)
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Status age = 10.847298860549927s
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:41.601 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:41.602 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:41.603 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:41.604 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 17;16.5726448;-24.256613;50.108497;89.993099;50.08601;90.12017;13.59241;2460996.85117597;10.42818167;1.3;_
2025-11-17T10:25:41.604 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response 17;16.5726448;-24.256613;50.108497;89.993099;50.08601;90.12017;13.59241;2460996.85117597;10.42818167;1.3;_
2025-11-17T10:25:41.604 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:41.604 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:41.604 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:41.605 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:41.605 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:41.605 [INFO] [Thread-67153 (handle)] [driver.py] [get_status()] Telra = 16.5726448, teldec = -24.256613
2025-11-17T10:25:41.605 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5726448 -24.256613
2025-11-17T10:25:41.605 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5726448 -24.256613
2025-11-17T10:25:41.605 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5726448 -24.256613
2025-11-17T10:25:41.606 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 17;16.5726448;-24.256613;50.108497;89.993099;50.08601;90.12017;13.59241;2460996.851176;10.42818167;1.3;_16.5468464088499 -24.2017253917423
2025-11-17T10:25:41.606 [INFO] [Thread-67153 (handle)] [driver.py] [get_status()] ra_j2k = 16.5468464088499     dec_j2k = -24.2017253917423
2025-11-17T10:25:41.606 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:41.606 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:41.606 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 140;0.104372277978491;171.162351965909;_
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response 140;0.104372277978491;171.162351965909;_
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:41.607 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:41.608 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:41.609 [DEBUG] [Thread-67153 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:41.609 [DEBUG] [Thread-67153 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:41.609 [DEBUG] [Thread-67153 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:41.611 [DEBUG] [Thread-67153 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56337)
2025-11-17T10:25:41.612 [DEBUG] [Thread-67153 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:41.612 [DEBUG] [Thread-67153 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:41.612 [DEBUG] [Thread-67153 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:41.612 [DEBUG] [Thread-67153 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:41.612 [DEBUG] [Thread-67153 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:41.619 [DEBUG] [Thread-67153 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:41.620 [INFO] [Thread-67153 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85117597, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104372277978491, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993099, telescope_ra=16.5726448, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.59241, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5468464088499, telescope_dec_j2k=-24.2017253917423, observability=1)
2025-11-17T10:25:46.503 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.503 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.503 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:46.503 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:46.503 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:25:46.504 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:46.505 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:46.506 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:25:46.507 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:46.508 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:46.509 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:46.509 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:46.509 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:46.510 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:46.510 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Park
2025-11-17T10:25:46.510 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:25:46.510 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:25:46.511 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 29;16.5740174;-24.256613;50.108497;89.993099;50.08601;90.12017;13.59378;2460996.85123277;10.42955056;1.3;_Park Command Successful
2025-11-17T10:25:47.511 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:25:47.511 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:25:47.511 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:25:47.512 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:25:47.512 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:25:48.512 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:25:48.512 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:25:48.512 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:25:48.513 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:25:48.513 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:25:49.513 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:25:49.513 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:25:49.513 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:25:49.514 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:25:49.514 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:25:50.514 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:25:50.514 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:25:50.514 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:25:50.515 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:25:50.515 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:50.516 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:50.517 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:50.517 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:25:50.517 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:25:50.517 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:25:50.517 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:51.518 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:51.518 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:51.518 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:51.518 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:51.518 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:25:51.519 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:25:51.520 [DEBUG] [ThreadPoolExecutor-2662_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:51.520 [INFO] [ThreadPoolExecutor-2662_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Status age = 18.09488081932068s
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:25:59.714 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:25:59.715 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:25:59.716 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 17;16.5776908;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59745;2460996.8513856;10.43321389;1.3;_
2025-11-17T10:25:59.716 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response 17;16.5776908;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59745;2460996.8513856;10.43321389;1.3;_
2025-11-17T10:25:59.716 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:25:59.716 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:25:59.716 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:25:59.717 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:59.717 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:25:59.717 [INFO] [Thread-67154 (handle)] [driver.py] [get_status()] Telra = 16.5776908, teldec = -24.256612
2025-11-17T10:25:59.717 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5776908 -24.256612
2025-11-17T10:25:59.717 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5776908 -24.256612
2025-11-17T10:25:59.717 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5776908 -24.256612
2025-11-17T10:25:59.718 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 17;16.5777187;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59748;2460996.85138562;10.43324167;1.3;_16.5518900897996 -24.2018978389341
2025-11-17T10:25:59.718 [INFO] [Thread-67154 (handle)] [driver.py] [get_status()] ra_j2k = 16.5518900897996     dec_j2k = -24.2018978389341
2025-11-17T10:25:59.718 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:25:59.718 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:25:59.718 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 140;0.104373240665119;171.162357330327;_
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response 140;0.104373240665119;171.162357330327;_
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:59.719 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:59.720 [DEBUG] [Thread-67154 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:25:59.721 [DEBUG] [Thread-67154 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44757)
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:25:59.723 [DEBUG] [Thread-67154 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:25:59.730 [DEBUG] [Thread-67154 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:25:59.730 [INFO] [Thread-67154 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8513856, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104373240665119, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993099, telescope_ra=16.5776908, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.59745, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5518900897996, telescope_dec_j2k=-24.2018978389341, observability=1)
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Status age = 3.70356822013855s
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:03.434 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:03.435 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:03.435 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:03.435 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:03.435 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 17;16.5787476;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59851;2460996.85142865;10.43426778;1.3;_
2025-11-17T10:26:03.436 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response 17;16.5787476;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59851;2460996.85142865;10.43426778;1.3;_
2025-11-17T10:26:03.436 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:03.436 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:03.436 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:03.437 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:03.437 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:03.437 [INFO] [Thread-67155 (handle)] [driver.py] [get_status()] Telra = 16.5787476, teldec = -24.256612
2025-11-17T10:26:03.437 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5787476 -24.256612
2025-11-17T10:26:03.437 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5787476 -24.256612
2025-11-17T10:26:03.437 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5787476 -24.256612
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 17;16.5787476;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59851;2460996.85142868;10.43426778;1.3;_16.552946404868 -24.2019341769051
2025-11-17T10:26:03.438 [INFO] [Thread-67155 (handle)] [driver.py] [get_status()] ra_j2k = 16.552946404868     dec_j2k = -24.2019341769051
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 140;0.104372719209862;171.162346601491;_
2025-11-17T10:26:03.438 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response 140;0.104372719209862;171.162346601491;_
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:03.439 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:03.440 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:03.440 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:03.440 [DEBUG] [Thread-67155 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:03.440 [DEBUG] [Thread-67155 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:03.441 [DEBUG] [Thread-67155 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:03.446 [DEBUG] [Thread-67155 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33859)
2025-11-17T10:26:03.447 [DEBUG] [Thread-67155 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:03.447 [DEBUG] [Thread-67155 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:03.447 [DEBUG] [Thread-67155 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:03.447 [DEBUG] [Thread-67155 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:03.447 [DEBUG] [Thread-67155 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:03.454 [DEBUG] [Thread-67155 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:03.454 [INFO] [Thread-67155 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85142865, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104372719209862, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993099, telescope_ra=16.5787476, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.59851, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.552946404868, telescope_dec_j2k=-24.2019341769051, observability=1)
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.325165271759033s
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:05.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:05.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:05.780 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:05.780 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:05.780 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:05.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5793921;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59915;2460996.8514558;10.43491056;1.3;_
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5793921;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59915;2460996.8514558;10.43491056;1.3;_
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:05.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:05.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:05.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:05.783 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:05.783 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5793921, teldec = -24.256612
2025-11-17T10:26:05.783 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5793921 -24.256612
2025-11-17T10:26:05.783 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5793921 -24.256612
2025-11-17T10:26:05.783 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5793921 -24.256612
2025-11-17T10:26:05.784 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5793921;-24.256612;50.108497;89.993099;50.08601;90.12017;13.59915;2460996.85145583;10.43491056;1.3;_16.5535906092626 -24.2019563400794
2025-11-17T10:26:05.784 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.5535906092626     dec_j2k = -24.2019563400794
2025-11-17T10:26:05.784 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:05.784 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:05.784 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:05.784 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104373160441233;171.162362694745;_
2025-11-17T10:26:05.785 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104373160441233;171.162362694745;_
2025-11-17T10:26:05.785 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:05.785 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:05.785 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:05.785 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:05.786 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:05.787 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:05.787 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:05.787 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38917)
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:05.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:05.795 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:05.796 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:05.796 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8514558, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104373160441233, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993099, telescope_ra=16.5793921, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.59915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5535906092626, telescope_dec_j2k=-24.2019563400794, observability=1)
2025-11-17T10:26:14.808 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.012903928756714s
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5819032;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60166;2460996.8515603;10.43741472;1.3;_
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5819032;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60166;2460996.8515603;10.43741472;1.3;_
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:14.811 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5819032, teldec = -24.256612
2025-11-17T10:26:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5819032 -24.256612
2025-11-17T10:26:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5819032 -24.256612
2025-11-17T10:26:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5819032 -24.256612
2025-11-17T10:26:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5819032;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60166;2460996.85156032;10.43741472;1.3;_16.5561005584998 -24.2020427073775
2025-11-17T10:26:14.813 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5561005584998     dec_j2k = -24.2020427073775
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104373240665119;171.162357330327;_
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104373240665119;171.162357330327;_
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55917)
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:14.828 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:14.829 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:14.829 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8515603, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104373240665119, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993098, telescope_ra=16.5819032, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.60166, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5561005584998, telescope_dec_j2k=-24.2020427073775, observability=1)
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.0111584663391113s
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:15.840 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:15.841 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:15.842 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.5822018;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60196;2460996.85157225;10.4377125;1.3;_
2025-11-17T10:26:15.842 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.5822018;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60196;2460996.85157225;10.4377125;1.3;_
2025-11-17T10:26:15.842 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:15.842 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:15.842 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:15.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:15.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:15.843 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.5822018, teldec = -24.256612
2025-11-17T10:26:15.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.5822018 -24.256612
2025-11-17T10:26:15.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.5822018 -24.256612
2025-11-17T10:26:15.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5822018 -24.256612
2025-11-17T10:26:15.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.5822018;-24.256612;50.108497;89.993098;50.08601;90.12017;13.60196;2460996.85157227;10.4377125;1.3;_16.5563990217635 -24.2020529790933
2025-11-17T10:26:15.844 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.5563990217635     dec_j2k = -24.2020529790933
2025-11-17T10:26:15.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:15.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:15.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104373280777061;171.162357330327;_
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104373280777061;171.162357330327;_
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:15.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:15.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:15.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:15.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:15.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60041)
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:15.850 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:15.858 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:26:15.858 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85157225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104373280777061, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993098, telescope_ra=16.5822018, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.60196, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5563990217635, telescope_dec_j2k=-24.2020529790933, observability=1)
2025-11-17T10:26:15.858 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.122796058654785 seconds ago
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Status age = 1.9247050285339355s
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:17.783 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:17.784 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:17.785 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 17;16.5827346;-24.256612;50.108497;89.993098;50.08601;90.12017;13.6025;2460996.85159473;10.43824389;1.3;_
2025-11-17T10:26:17.785 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response 17;16.5827346;-24.256612;50.108497;89.993098;50.08601;90.12017;13.6025;2460996.85159473;10.43824389;1.3;_
2025-11-17T10:26:17.785 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:17.785 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:17.785 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:17.786 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:17.786 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:17.786 [INFO] [Thread-67156 (handle)] [driver.py] [get_status()] Telra = 16.5827346, teldec = -24.256612
2025-11-17T10:26:17.786 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5827346 -24.256612
2025-11-17T10:26:17.786 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5827346 -24.256612
2025-11-17T10:26:17.786 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5827346 -24.256612
2025-11-17T10:26:17.787 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 17;16.5827346;-24.256612;50.108497;89.993098;50.08601;90.12017;13.6025;2460996.85159476;10.43824389;1.3;_16.5569315778358 -24.2020713080384
2025-11-17T10:26:17.787 [INFO] [Thread-67156 (handle)] [driver.py] [get_status()] ra_j2k = 16.5569315778358     dec_j2k = -24.2020713080384
2025-11-17T10:26:17.787 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:17.787 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 140;0.104373722008432;171.162351965909;_
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response 140;0.104373722008432;171.162351965909;_
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:17.788 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:17.789 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:17.789 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:17.789 [DEBUG] [Thread-67156 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:17.789 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:17.790 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:17.790 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:17.790 [DEBUG] [Thread-67156 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:17.790 [DEBUG] [Thread-67156 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:17.790 [DEBUG] [Thread-67156 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32999)
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:17.793 [DEBUG] [Thread-67156 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:17.800 [DEBUG] [Thread-67156 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:17.801 [DEBUG] [Thread-67156 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:17.801 [INFO] [Thread-67156 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85159473, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104373722008432, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108497, telescope_az=89.993098, telescope_ra=16.5827346, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.6025, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:25:25.622926', telescope_ra_j2k=16.5569315778358, telescope_dec_j2k=-24.2020713080384, observability=1)
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:25.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:25.765 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:25.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:25.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:25.767 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:26:25.767 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:25.767 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:25.767 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:25.767 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:25.767 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:26:25.768 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:26:25.769 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:26.769 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:26.769 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:26.769 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:26.769 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:26.769 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:26:26.770 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:26.771 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:26.772 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:26.772 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:26.772 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:26.772 [DEBUG] [ThreadPoolExecutor-2664_0] [payload.py] [to_registers()] [0]
2025-11-17T10:26:26.777 [DEBUG] [ThreadPoolExecutor-2664_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53783)
2025-11-17T10:26:26.777 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:26.777 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:26.777 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:26:26.777 [DEBUG] [ThreadPoolExecutor-2664_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:26.778 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:26.784 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:26.785 [DEBUG] [ThreadPoolExecutor-2664_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:30.814 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:26:30
2025-11-17T10:26:30.814 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.013947248458862s
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:30.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:30.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.586357;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60612;2460996.85174556;10.44185639;1.3;_
2025-11-17T10:26:30.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.586357;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60612;2460996.85174556;10.44185639;1.3;_
2025-11-17T10:26:30.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:30.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:30.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:30.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:30.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:30.818 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.586357, teldec = -24.256612
2025-11-17T10:26:30.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.586357 -24.256612
2025-11-17T10:26:30.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.586357 -24.256612
2025-11-17T10:26:30.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.586357 -24.256612
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.586357;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60612;2460996.85174558;10.44185639;1.3;_16.5605523212728 -24.2021959515968
2025-11-17T10:26:30.819 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.5605523212728     dec_j2k = -24.2021959515968
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104374002792032;171.162357330327;_
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104374002792032;171.162357330327;_
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:30.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:30.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:30.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:30.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:30.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:30.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46777)
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:30.823 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:30.830 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:30.830 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:30.830 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:30.831 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:30.831 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85174556, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104374002792032, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.586357, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.60612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5605523212728, telescope_dec_j2k=-24.2021959515968, observability=1)
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Status age = 5.020141839981079s
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:35.851 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:35.852 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:35.853 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 17;16.5877756;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60754;2460996.85180385;10.44327111;1.3;_
2025-11-17T10:26:35.853 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response 17;16.5877756;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60754;2460996.85180385;10.44327111;1.3;_
2025-11-17T10:26:35.853 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:35.854 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:35.854 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:35.854 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:35.855 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:35.855 [INFO] [Thread-67157 (handle)] [driver.py] [get_status()] Telra = 16.5877756, teldec = -24.256612
2025-11-17T10:26:35.855 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5877756 -24.256612
2025-11-17T10:26:35.855 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5877756 -24.256612
2025-11-17T10:26:35.855 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5877756 -24.256612
2025-11-17T10:26:35.856 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 17;16.5877756;-24.256612;50.108496;89.993098;50.08601;90.12017;13.60754;2460996.85180389;10.44327111;1.3;_16.5619702734119 -24.2022447780023
2025-11-17T10:26:35.856 [INFO] [Thread-67157 (handle)] [driver.py] [get_status()] ra_j2k = 16.5619702734119     dec_j2k = -24.2022447780023
2025-11-17T10:26:35.856 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:35.856 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:35.856 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 140;0.10437412312786;171.162362694745;_
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response 140;0.10437412312786;171.162362694745;_
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:35.857 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:35.858 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:35.859 [DEBUG] [Thread-67157 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:35.859 [DEBUG] [Thread-67157 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:35.859 [DEBUG] [Thread-67157 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:35.865 [DEBUG] [Thread-67157 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40495)
2025-11-17T10:26:35.866 [DEBUG] [Thread-67157 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:35.866 [DEBUG] [Thread-67157 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:35.866 [DEBUG] [Thread-67157 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:35.866 [DEBUG] [Thread-67157 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:35.866 [DEBUG] [Thread-67157 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:35.873 [DEBUG] [Thread-67157 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:35.873 [INFO] [Thread-67157 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85180385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10437412312786, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5877756, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.60754, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5619702734119, telescope_dec_j2k=-24.2022447780023, observability=1)
2025-11-17T10:26:51.785 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:51.785 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:51.785 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:51.785 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:51.785 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:51.786 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:26:51.787 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:26:51.788 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:53.978 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Status age = 18.105143308639526s
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:26:53.979 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:26:53.980 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 17;16.5928261;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61259;2460996.85201366;10.44830778;1.3;_
2025-11-17T10:26:53.980 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response 17;16.5928261;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61259;2460996.85201366;10.44830778;1.3;_
2025-11-17T10:26:53.980 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:26:53.980 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:26:53.980 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:26:53.981 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:53.981 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:26:53.981 [INFO] [Thread-67158 (handle)] [driver.py] [get_status()] Telra = 16.5928261, teldec = -24.256612
2025-11-17T10:26:53.981 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5928261 -24.256612
2025-11-17T10:26:53.981 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5928261 -24.256612
2025-11-17T10:26:53.981 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5928261 -24.256612
2025-11-17T10:26:53.982 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 17;16.5928261;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61259;2460996.85201368;10.44830778;1.3;_16.5670184709219 -24.2024186719818
2025-11-17T10:26:53.982 [INFO] [Thread-67158 (handle)] [driver.py] [get_status()] ra_j2k = 16.5670184709219     dec_j2k = -24.2024186719818
2025-11-17T10:26:53.982 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:26:53.982 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:26:53.982 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:26:53.983 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 140;0.104374484135346;171.162368059163;_
2025-11-17T10:26:53.983 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response 140;0.104374484135346;171.162368059163;_
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:53.984 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:26:53.985 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:26:53.985 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:26:53.985 [DEBUG] [Thread-67158 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:53.986 [DEBUG] [Thread-67158 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:26:53.986 [DEBUG] [Thread-67158 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60621)
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:26:53.991 [DEBUG] [Thread-67158 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:26:53.998 [DEBUG] [Thread-67158 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:26:53.998 [DEBUG] [Thread-67158 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:53.998 [DEBUG] [Thread-67158 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:26:53.998 [DEBUG] [Thread-67158 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:26:53.998 [DEBUG] [Thread-67158 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:26:53.999 [DEBUG] [Thread-67158 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:26:53.999 [DEBUG] [Thread-67158 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:26:53.999 [DEBUG] [Thread-67158 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:26:53.999 [DEBUG] [Thread-67158 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:26:53.999 [INFO] [Thread-67158 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85201366, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104374484135346, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5928261, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.61259, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5670184709219, telescope_dec_j2k=-24.2024186719818, observability=1)
2025-11-17T10:27:03.481 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Status age = 9.482856035232544s
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:03.482 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:03.483 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:03.483 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 17;16.5954722;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61523;2460996.85212365;10.45094667;1.3;_
2025-11-17T10:27:03.484 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response 17;16.5954722;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61523;2460996.85212365;10.45094667;1.3;_
2025-11-17T10:27:03.484 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:03.484 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:03.484 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:03.485 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:03.485 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:03.485 [INFO] [Thread-67159 (handle)] [driver.py] [get_status()] Telra = 16.5954722, teldec = -24.256612
2025-11-17T10:27:03.485 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5954722 -24.256612
2025-11-17T10:27:03.485 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5954722 -24.256612
2025-11-17T10:27:03.485 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5954722 -24.256612
2025-11-17T10:27:03.486 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 17;16.5954722;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61523;2460996.85212368;10.45094667;1.3;_16.5696633670915 -24.2025098186628
2025-11-17T10:27:03.486 [INFO] [Thread-67159 (handle)] [driver.py] [get_status()] ra_j2k = 16.5696633670915     dec_j2k = -24.2025098186628
2025-11-17T10:27:03.486 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:03.486 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:03.486 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 140;0.104375446821973;171.162351965909;_
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response 140;0.104375446821973;171.162351965909;_
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:03.487 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:03.488 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:03.489 [DEBUG] [Thread-67159 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:03.489 [DEBUG] [Thread-67159 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:03.489 [DEBUG] [Thread-67159 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34805)
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:03.496 [DEBUG] [Thread-67159 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:03.504 [DEBUG] [Thread-67159 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:03.504 [INFO] [Thread-67159 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85212365, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104375446821973, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5954722, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.61523, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5696633670915, telescope_dec_j2k=-24.2025098186628, observability=1)
2025-11-17T10:27:04.888 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.3844799995422363s
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5958555;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61562;2460996.85213993;10.45132889;1.3;_
2025-11-17T10:27:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.5958555;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61562;2460996.85213993;10.45132889;1.3;_
2025-11-17T10:27:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:04.892 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.5958555, teldec = -24.256612
2025-11-17T10:27:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5958555 -24.256612
2025-11-17T10:27:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5958555 -24.256612
2025-11-17T10:27:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5958555 -24.256612
2025-11-17T10:27:04.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.5958555;-24.256612;50.108496;89.993098;50.08601;90.12017;13.61562;2460996.85213997;10.45132889;1.3;_16.5700464928542 -24.2025230238899
2025-11-17T10:27:04.893 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.5700464928542     dec_j2k = -24.2025230238899
2025-11-17T10:27:04.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:04.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:04.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:04.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104375085814488;171.162362694745;_
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104375085814488;171.162362694745;_
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:04.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:04.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:04.895 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:04.895 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49761)
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:04.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:04.905 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:04.906 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:04.906 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85213993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104375085814488, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5958555, telescope_dec=-24.256612, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.61562, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5700464928542, telescope_dec_j2k=-24.2025230238899, observability=1)
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Status age = 7.132735729217529s
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:12.038 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:12.039 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 17;16.5978387;-24.256611;50.108496;89.993098;50.08601;90.12017;13.6176;2460996.85222269;10.45330667;1.3;_
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response 17;16.5978387;-24.256611;50.108496;89.993098;50.08601;90.12017;13.6176;2460996.85222269;10.45330667;1.3;_
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:12.040 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:12.041 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:12.041 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:12.041 [INFO] [Thread-67160 (handle)] [driver.py] [get_status()] Telra = 16.5978387, teldec = -24.256611
2025-11-17T10:27:12.041 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5978387 -24.256611
2025-11-17T10:27:12.041 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5978387 -24.256611
2025-11-17T10:27:12.041 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5978387 -24.256611
2025-11-17T10:27:12.042 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 17;16.5978387;-24.256611;50.108496;89.993098;50.08601;90.12017;13.6176;2460996.85222271;10.45330667;1.3;_16.5720287921103 -24.2025903568589
2025-11-17T10:27:12.042 [INFO] [Thread-67160 (handle)] [driver.py] [get_status()] ra_j2k = 16.5720287921103     dec_j2k = -24.2025903568589
2025-11-17T10:27:12.042 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:12.042 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:12.042 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 140;0.104374845142831;171.162362694745;_
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response 140;0.104374845142831;171.162362694745;_
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:12.043 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:12.044 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:12.044 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:12.044 [DEBUG] [Thread-67160 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:12.044 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:12.044 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:12.045 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:12.045 [DEBUG] [Thread-67160 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:12.045 [DEBUG] [Thread-67160 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:12.045 [DEBUG] [Thread-67160 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59739)
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:12.052 [DEBUG] [Thread-67160 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:12.059 [DEBUG] [Thread-67160 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:12.060 [INFO] [Thread-67160 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85222269, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104374845142831, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5978387, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.6176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5720287921103, telescope_dec_j2k=-24.2025903568589, observability=1)
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.7571768760681152s
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5986152;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61838;2460996.85225485;10.45408111;1.3;_
2025-11-17T10:27:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.5986152;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61838;2460996.85225485;10.45408111;1.3;_
2025-11-17T10:27:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:14.820 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.5986152, teldec = -24.256611
2025-11-17T10:27:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.5986152 -24.256611
2025-11-17T10:27:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.5986152 -24.256611
2025-11-17T10:27:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5986152 -24.256611
2025-11-17T10:27:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.5986152;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61838;2460996.85225487;10.45408111;1.3;_16.5728049396262 -24.2026171159229
2025-11-17T10:27:14.822 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5728049396262     dec_j2k = -24.2026171159229
2025-11-17T10:27:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104375286374202;171.162357330327;_
2025-11-17T10:27:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104375286374202;171.162357330327;_
2025-11-17T10:27:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43191)
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:14.834 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:14.834 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:14.835 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:14.835 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:14.835 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:14.835 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:14.835 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85225485, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104375286374202, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5986152, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.61838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5728049396262, telescope_dec_j2k=-24.2026171159229, observability=1)
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.083162784576416s
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:15.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:15.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:15.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.5989241;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61868;2460996.85226758;10.45438917;1.3;_
2025-11-17T10:27:15.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.5989241;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61868;2460996.85226758;10.45438917;1.3;_
2025-11-17T10:27:15.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:15.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:15.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:15.921 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:15.921 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:15.921 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.5989241, teldec = -24.256611
2025-11-17T10:27:15.921 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.5989241 -24.256611
2025-11-17T10:27:15.921 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.5989241 -24.256611
2025-11-17T10:27:15.921 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.5989241 -24.256611
2025-11-17T10:27:15.922 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.5989241;-24.256611;50.108496;89.993098;50.08601;90.12017;13.61868;2460996.85226762;10.45438917;1.3;_16.5731136994456 -24.2026277615992
2025-11-17T10:27:15.922 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.5731136994456     dec_j2k = -24.2026277615992
2025-11-17T10:27:15.922 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:15.922 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:15.922 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104375366598087;171.162362694745;_
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104375366598087;171.162362694745;_
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:15.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:15.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:15.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:15.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:15.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:15.932 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54817)
2025-11-17T10:27:15.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:15.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:15.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:15.933 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:15.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:15.940 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:27:15.940 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85226758, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104375366598087, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108496, telescope_az=89.993098, telescope_ra=16.5989241, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.61868, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:26:25.764937', telescope_ra_j2k=16.5731136994456, telescope_dec_j2k=-24.2026277615992, observability=1)
2025-11-17T10:27:15.941 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12619233131409 seconds ago
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:25.907 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:25.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:25.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:25.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:25.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:25.908 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:27:25.909 [INFO] [ThreadPoolExecutor-2665_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:27:25.909 [INFO] [ThreadPoolExecutor-2665_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Status age = 14.170382022857666s
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:30.111 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:30.112 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:30.113 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 17;16.6028769;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62264;2460996.85243186;10.45833111;1.3;_
2025-11-17T10:27:30.113 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response 17;16.6028769;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62264;2460996.85243186;10.45833111;1.3;_
2025-11-17T10:27:30.113 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:30.113 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:30.113 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:30.114 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:30.114 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:30.114 [INFO] [Thread-67161 (handle)] [driver.py] [get_status()] Telra = 16.6028769, teldec = -24.256611
2025-11-17T10:27:30.114 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6028769 -24.256611
2025-11-17T10:27:30.114 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6028769 -24.256611
2025-11-17T10:27:30.114 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6028769 -24.256611
2025-11-17T10:27:30.115 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 17;16.6028769;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62264;2460996.85243189;10.45833111;1.3;_16.5770647077198 -24.2027640195056
2025-11-17T10:27:30.115 [INFO] [Thread-67161 (handle)] [driver.py] [get_status()] ra_j2k = 16.5770647077198     dec_j2k = -24.2027640195056
2025-11-17T10:27:30.115 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:30.115 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:30.115 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 140;0.104375286374202;171.162357330327;_
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response 140;0.104375286374202;171.162357330327;_
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:30.116 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:30.117 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:30.118 [DEBUG] [Thread-67161 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:30.118 [DEBUG] [Thread-67161 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:30.118 [DEBUG] [Thread-67161 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:30.124 [DEBUG] [Thread-67161 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37403)
2025-11-17T10:27:30.125 [DEBUG] [Thread-67161 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:30.125 [DEBUG] [Thread-67161 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:30.125 [DEBUG] [Thread-67161 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:30.125 [DEBUG] [Thread-67161 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:30.125 [DEBUG] [Thread-67161 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:30.132 [DEBUG] [Thread-67161 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:30.132 [INFO] [Thread-67161 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85243186, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104375286374202, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108495, telescope_az=89.993098, telescope_ra=16.6028769, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.62264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5770647077198, telescope_dec_j2k=-24.2027640195056, observability=1)
2025-11-17T10:27:30.892 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:27:30
2025-11-17T10:27:30.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:30.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.7597522735595703s
2025-11-17T10:27:30.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7597522735595703
2025-11-17T10:27:46.788 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.788 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.788 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:46.788 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:46.789 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:27:46.790 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:46.791 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:46.792 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:27:46.793 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:46.794 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Park
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:27:46.795 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:27:46.796 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 29;16.6075349;-24.256611;50.108495;89.993098;50.08601;90.12017;13.6273;2460996.85262495;10.46297639;1.3;_Park Command Successful
2025-11-17T10:27:47.796 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:27:47.796 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:27:47.796 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:27:47.797 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:27:47.797 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Status age = 18.114980936050415s
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:48.247 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:27:48.248 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:27:48.249 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 17;16.6079277;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62769;2460996.85264177;10.46336806;1.3;_
2025-11-17T10:27:48.249 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response 17;16.6079277;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62769;2460996.85264177;10.46336806;1.3;_
2025-11-17T10:27:48.249 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:27:48.249 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:27:48.249 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:27:48.250 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:48.250 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:27:48.250 [INFO] [Thread-67162 (handle)] [driver.py] [get_status()] Telra = 16.6079277, teldec = -24.256611
2025-11-17T10:27:48.251 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6079277 -24.256611
2025-11-17T10:27:48.251 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6079277 -24.256611
2025-11-17T10:27:48.251 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6079277 -24.256611
2025-11-17T10:27:48.251 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 17;16.6079277;-24.256611;50.108495;89.993098;50.08601;90.12017;13.62769;2460996.85264179;10.46336806;1.3;_16.5821132239038 -24.2029382126419
2025-11-17T10:27:48.252 [INFO] [Thread-67162 (handle)] [driver.py] [get_status()] ra_j2k = 16.5821132239038     dec_j2k = -24.2029382126419
2025-11-17T10:27:48.252 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:27:48.252 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:27:48.252 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:27:48.252 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 140;0.104376088613058;171.162362694745;_
2025-11-17T10:27:48.253 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response 140;0.104376088613058;171.162362694745;_
2025-11-17T10:27:48.253 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:27:48.253 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:48.253 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:48.253 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:27:48.254 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:27:48.255 [DEBUG] [Thread-67162 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:48.255 [DEBUG] [Thread-67162 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:27:48.255 [DEBUG] [Thread-67162 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49689)
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:27:48.261 [DEBUG] [Thread-67162 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:27:48.268 [DEBUG] [Thread-67162 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:27:48.268 [INFO] [Thread-67162 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85264177, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104376088613058, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108495, telescope_az=89.993098, telescope_ra=16.6079277, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.62769, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5821132239038, telescope_dec_j2k=-24.2029382126419, observability=1)
2025-11-17T10:27:48.797 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:27:48.798 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:27:48.798 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:27:48.798 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:27:48.798 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:27:49.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:27:49.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:27:49.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:27:49.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:27:49.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:27:50.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:27:50.799 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:50.800 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:27:50.801 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:27:50.802 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:51.802 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:51.802 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:51.802 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:27:51.802 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:27:51.802 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:27:51.803 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:27:51.804 [DEBUG] [ThreadPoolExecutor-2664_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:27:51.804 [INFO] [ThreadPoolExecutor-2664_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Status age = 15.265557050704956s
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:03.534 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:03.535 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:03.536 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 17;16.6121835;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63194;2460996.8528187;10.46761222;1.3;_
2025-11-17T10:28:03.536 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response 17;16.6121835;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63194;2460996.8528187;10.46761222;1.3;_
2025-11-17T10:28:03.536 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:03.536 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:03.536 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:03.537 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:03.537 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:03.537 [INFO] [Thread-67163 (handle)] [driver.py] [get_status()] Telra = 16.6121835, teldec = -24.256611
2025-11-17T10:28:03.537 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6121835 -24.256611
2025-11-17T10:28:03.537 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6121835 -24.256611
2025-11-17T10:28:03.537 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6121835 -24.256611
2025-11-17T10:28:03.538 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 17;16.6121835;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63194;2460996.85281873;10.46761222;1.3;_16.5863671044525 -24.203085062169
2025-11-17T10:28:03.538 [INFO] [Thread-67163 (handle)] [driver.py] [get_status()] ra_j2k = 16.5863671044525     dec_j2k = -24.203085062169
2025-11-17T10:28:03.538 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:03.538 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:03.538 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 140;0.104376249060829;171.162362694745;_
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response 140;0.104376249060829;171.162362694745;_
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:03.539 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:03.540 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:03.541 [DEBUG] [Thread-67163 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:03.541 [DEBUG] [Thread-67163 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:03.541 [DEBUG] [Thread-67163 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48737)
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:03.544 [DEBUG] [Thread-67163 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:03.551 [DEBUG] [Thread-67163 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:03.552 [DEBUG] [Thread-67163 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:03.552 [DEBUG] [Thread-67163 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:03.552 [INFO] [Thread-67163 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8528187, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104376249060829, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108495, telescope_az=89.993097, telescope_ra=16.6121835, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.63194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5863671044525, telescope_dec_j2k=-24.203085062169, observability=1)
2025-11-17T10:28:04.001 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:04.001 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.4493091106414795s
2025-11-17T10:28:04.001 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4493091106414795
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Status age = 2.7622199058532715s
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:06.314 [DEBUG] [Thread-67164 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 17;16.6129689;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63273;2460996.85285087;10.46839556;1.3;_
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response 17;16.6129689;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63273;2460996.85285087;10.46839556;1.3;_
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:06.315 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:06.316 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:06.316 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:06.316 [INFO] [Thread-67164 (handle)] [driver.py] [get_status()] Telra = 16.6129689, teldec = -24.256611
2025-11-17T10:28:06.316 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6129689 -24.256611
2025-11-17T10:28:06.316 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6129689 -24.256611
2025-11-17T10:28:06.316 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6129689 -24.256611
2025-11-17T10:28:06.317 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 17;16.6129689;-24.256611;50.108495;89.993097;50.08601;90.12017;13.63273;2460996.85285089;10.46839556;1.3;_16.5871521507103 -24.2031121704119
2025-11-17T10:28:06.317 [INFO] [Thread-67164 (handle)] [driver.py] [get_status()] ra_j2k = 16.5871521507103     dec_j2k = -24.2031121704119
2025-11-17T10:28:06.317 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:06.317 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:06.317 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 140;0.104376650180257;171.162362694745;_
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response 140;0.104376650180257;171.162362694745;_
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:06.318 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:06.319 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:06.320 [DEBUG] [Thread-67164 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:06.320 [DEBUG] [Thread-67164 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:06.320 [DEBUG] [Thread-67164 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52387)
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:06.327 [DEBUG] [Thread-67164 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:06.334 [DEBUG] [Thread-67164 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:06.334 [DEBUG] [Thread-67164 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:06.334 [DEBUG] [Thread-67164 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:06.334 [DEBUG] [Thread-67164 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:06.335 [DEBUG] [Thread-67164 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:06.335 [DEBUG] [Thread-67164 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:06.335 [DEBUG] [Thread-67164 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:06.335 [DEBUG] [Thread-67164 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:06.335 [DEBUG] [Thread-67164 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:06.335 [INFO] [Thread-67164 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85285087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104376650180257, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108495, telescope_az=89.993097, telescope_ra=16.6129689, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.63273, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5871521507103, telescope_dec_j2k=-24.2031121704119, observability=1)
2025-11-17T10:28:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.48566746711731s
2025-11-17T10:28:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6153399;-24.256611;50.108494;89.993097;50.08601;90.12017;13.6351;2460996.85294934;10.47076;1.3;_
2025-11-17T10:28:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.6153399;-24.256611;50.108494;89.993097;50.08601;90.12017;13.6351;2460996.85294934;10.47076;1.3;_
2025-11-17T10:28:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:14.824 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.6153399, teldec = -24.256611
2025-11-17T10:28:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6153399 -24.256611
2025-11-17T10:28:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6153399 -24.256611
2025-11-17T10:28:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6153399 -24.256611
2025-11-17T10:28:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6153399;-24.256611;50.108494;89.993097;50.08601;90.12017;13.6351;2460996.85294936;10.47076;1.3;_16.5895220837428 -24.2031940199967
2025-11-17T10:28:14.825 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.5895220837428     dec_j2k = -24.2031940199967
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104376489732486;171.162368059163;_
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104376489732486;171.162368059163;_
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:28:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:28:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:28:14.830 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60673)
2025-11-17T10:28:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:14.838 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85294934, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104376489732486, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108494, telescope_az=89.993097, telescope_ra=16.6153399, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.6351, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5895220837428, telescope_dec_j2k=-24.2031940199967, observability=1)
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.1625258922576904s
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:16.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:16.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:16.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.615668;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63543;2460996.852963;10.47108722;1.3;_
2025-11-17T10:28:16.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.615668;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63543;2460996.852963;10.47108722;1.3;_
2025-11-17T10:28:16.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:16.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:16.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:16.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:16.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:16.004 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.615668, teldec = -24.256611
2025-11-17T10:28:16.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.615668 -24.256611
2025-11-17T10:28:16.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.615668 -24.256611
2025-11-17T10:28:16.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.615668 -24.256611
2025-11-17T10:28:16.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.615668;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63543;2460996.85296302;10.47108722;1.3;_16.5898500362047 -24.2032053480366
2025-11-17T10:28:16.005 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.5898500362047     dec_j2k = -24.2032053480366
2025-11-17T10:28:16.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:16.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:16.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104376329284715;171.162357330327;_
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104376329284715;171.162357330327;_
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:16.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:16.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:16.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:16.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:16.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59755)
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:16.014 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:16.021 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:28:16.021 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.852963, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104376329284715, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108494, telescope_az=89.993097, telescope_ra=16.615668, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.63543, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5898500362047, telescope_dec_j2k=-24.2032053480366, observability=1)
2025-11-17T10:28:16.022 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12973093986511 seconds ago
2025-11-17T10:28:24.386 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:24.386 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Status age = 8.365038394927979s
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:24.387 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:24.388 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 17;16.6179882;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63775;2460996.85306005;10.47340111;1.3;_
2025-11-17T10:28:24.388 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response 17;16.6179882;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63775;2460996.85306005;10.47340111;1.3;_
2025-11-17T10:28:24.388 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:24.389 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:24.389 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:24.390 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:24.390 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:24.390 [INFO] [Thread-67165 (handle)] [driver.py] [get_status()] Telra = 16.6179882, teldec = -24.256611
2025-11-17T10:28:24.390 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6179882 -24.256611
2025-11-17T10:28:24.390 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6179882 -24.256611
2025-11-17T10:28:24.390 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6179882 -24.256611
2025-11-17T10:28:24.391 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 17;16.6179882;-24.256611;50.108494;89.993097;50.08601;90.12017;13.63775;2460996.85306008;10.47340111;1.3;_16.5921691936309 -24.2032854671808
2025-11-17T10:28:24.391 [INFO] [Thread-67165 (handle)] [driver.py] [get_status()] ra_j2k = 16.5921691936309     dec_j2k = -24.2032854671808
2025-11-17T10:28:24.391 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:24.391 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:24.391 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:24.391 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 140;0.104377051299685;171.162362694745;_
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response 140;0.104377051299685;171.162362694745;_
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:24.392 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:24.393 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:24.393 [DEBUG] [Thread-67165 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:24.393 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:24.393 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:24.393 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:24.394 [DEBUG] [Thread-67165 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:24.394 [DEBUG] [Thread-67165 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:24.394 [DEBUG] [Thread-67165 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58809)
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:24.401 [DEBUG] [Thread-67165 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:24.409 [DEBUG] [Thread-67165 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:24.409 [INFO] [Thread-67165 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85306005, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104377051299685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108494, telescope_az=89.993097, telescope_ra=16.6179882, telescope_dec=-24.256611, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.63775, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:27:25.906609', telescope_ra_j2k=16.5921691936309, telescope_dec_j2k=-24.2032854671808, observability=1)
2025-11-17T10:28:26.049 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:26.049 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:26.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:26.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:26.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:26.050 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:26.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:26.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:26.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:26.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:26.051 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:28:26.051 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:26.051 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:26.051 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:26.051 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:28:26.052 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:28:26.053 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:27.053 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:27.053 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:27.053 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:27.053 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:27.054 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:28:27.055 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:27.056 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:27.057 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:27.057 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:27.057 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:27.057 [DEBUG] [ThreadPoolExecutor-2666_0] [payload.py] [to_registers()] [0]
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47597)
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:27.059 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:27.067 [DEBUG] [ThreadPoolExecutor-2666_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:30.953 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:28:30
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.544016122817993s
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:30.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:30.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:30.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6198213;-24.25661;50.108494;89.993097;50.08601;90.12017;13.63958;2460996.85313605;10.47522917;1.3;_
2025-11-17T10:28:30.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.6198213;-24.25661;50.108494;89.993097;50.08601;90.12017;13.63958;2460996.85313605;10.47522917;1.3;_
2025-11-17T10:28:30.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:30.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:30.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:30.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:30.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:30.956 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.6198213, teldec = -24.25661
2025-11-17T10:28:30.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6198213 -24.25661
2025-11-17T10:28:30.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6198213 -24.25661
2025-11-17T10:28:30.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6198213 -24.25661
2025-11-17T10:28:30.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6198213;-24.25661;50.108494;89.993097;50.08601;90.12017;13.63958;2460996.85313608;10.47522917;1.3;_16.5940014710596 -24.2033477804736
2025-11-17T10:28:30.957 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.5940014710596     dec_j2k = -24.2033477804736
2025-11-17T10:28:30.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:30.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:30.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.1043769710758;171.162341237072;_
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.1043769710758;171.162341237072;_
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:30.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:30.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:30.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:30.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:30.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36047)
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:30.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:30.973 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:30.973 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:30.973 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:30.973 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:30.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:30.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:30.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:30.974 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:30.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:30.974 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85313605, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1043769710758, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108494, telescope_az=89.993097, telescope_ra=16.6198213, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.63958, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.5940014710596, telescope_dec_j2k=-24.2033477804736, observability=1)
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Status age = 11.538499116897583s
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:42.512 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 17;16.6230537;-24.25661;50.108494;89.993097;50.08601;90.12017;13.64281;2460996.85326983;10.47845278;1.3;_
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response 17;16.6230537;-24.25661;50.108494;89.993097;50.08601;90.12017;13.64281;2460996.85326983;10.47845278;1.3;_
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:28:42.513 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:28:42.514 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:28:42.514 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:42.515 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:28:42.515 [INFO] [Thread-67166 (handle)] [driver.py] [get_status()] Telra = 16.6230537, teldec = -24.25661
2025-11-17T10:28:42.515 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6230537 -24.25661
2025-11-17T10:28:42.515 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6230537 -24.25661
2025-11-17T10:28:42.515 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6230537 -24.25661
2025-11-17T10:28:42.516 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 17;16.6230537;-24.25661;50.108494;89.993097;50.08601;90.12017;13.64281;2460996.85326986;10.47845278;1.3;_16.5972324222764 -24.2034594545902
2025-11-17T10:28:42.516 [INFO] [Thread-67166 (handle)] [driver.py] [get_status()] ra_j2k = 16.5972324222764     dec_j2k = -24.2034594545902
2025-11-17T10:28:42.516 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:28:42.516 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:28:42.516 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 140;0.104377853538541;171.162351965909;_
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response 140;0.104377853538541;171.162351965909;_
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:42.517 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:28:42.518 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:28:42.519 [DEBUG] [Thread-67166 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:28:42.519 [DEBUG] [Thread-67166 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:28:42.519 [DEBUG] [Thread-67166 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:28:42.523 [DEBUG] [Thread-67166 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38675)
2025-11-17T10:28:42.523 [DEBUG] [Thread-67166 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:28:42.524 [DEBUG] [Thread-67166 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:28:42.524 [DEBUG] [Thread-67166 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:28:42.524 [DEBUG] [Thread-67166 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:28:42.524 [DEBUG] [Thread-67166 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:28:42.531 [DEBUG] [Thread-67166 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:28:42.531 [INFO] [Thread-67166 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85326983, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104377853538541, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108494, telescope_az=89.993097, telescope_ra=16.6230537, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.64281, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.5972324222764, telescope_dec_j2k=-24.2034594545902, observability=1)
2025-11-17T10:28:52.068 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:52.068 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:52.068 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:52.068 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:52.068 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:28:52.069 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:28:52.070 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:28:52.071 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Status age = 18.0423743724823s
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:00.574 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:00.575 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:00.575 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:00.576 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 17;16.6280663;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64783;2460996.85347888;10.48345167;1.3;_
2025-11-17T10:29:00.576 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response 17;16.6280663;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64783;2460996.85347888;10.48345167;1.3;_
2025-11-17T10:29:00.576 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:00.576 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:00.576 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:00.577 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:00.577 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:00.577 [INFO] [Thread-67167 (handle)] [driver.py] [get_status()] Telra = 16.6280663, teldec = -24.25661
2025-11-17T10:29:00.577 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6280663 -24.25661
2025-11-17T10:29:00.577 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6280663 -24.25661
2025-11-17T10:29:00.577 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6280663 -24.25661
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 17;16.6280942;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64785;2460996.85347891;10.48347944;1.3;_16.6022427807089 -24.2036327086866
2025-11-17T10:29:00.578 [INFO] [Thread-67167 (handle)] [driver.py] [get_status()] ra_j2k = 16.6022427807089     dec_j2k = -24.2036327086866
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 140;0.104377813426598;171.162351965909;_
2025-11-17T10:29:00.578 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response 140;0.104377813426598;171.162351965909;_
2025-11-17T10:29:00.579 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:00.579 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:00.579 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:00.579 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:00.580 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:00.581 [DEBUG] [Thread-67167 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:00.581 [DEBUG] [Thread-67167 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:00.581 [DEBUG] [Thread-67167 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39055)
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:00.583 [DEBUG] [Thread-67167 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:00.591 [DEBUG] [Thread-67167 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:00.592 [DEBUG] [Thread-67167 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:00.592 [INFO] [Thread-67167 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85347888, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104377813426598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6280663, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.64783, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.6022427807089, telescope_dec_j2k=-24.2036327086866, observability=1)
2025-11-17T10:29:03.085 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.4939615726470947s
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:03.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:03.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6287953;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64856;2460996.85350795;10.48417861;1.3;_
2025-11-17T10:29:03.087 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.6287953;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64856;2460996.85350795;10.48417861;1.3;_
2025-11-17T10:29:03.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:03.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:03.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:03.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:03.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:03.088 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.6287953, teldec = -24.25661
2025-11-17T10:29:03.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6287953 -24.25661
2025-11-17T10:29:03.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6287953 -24.25661
2025-11-17T10:29:03.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6287953 -24.25661
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6287953;-24.25661;50.108493;89.993097;50.08601;90.12017;13.64856;2460996.85350797;10.48417861;1.3;_16.6029714552279 -24.2036579134201
2025-11-17T10:29:03.090 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6029714552279     dec_j2k = -24.2036579134201
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104378415105741;171.162351965909;_
2025-11-17T10:29:03.090 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104378415105741;171.162351965909;_
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:03.091 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:29:03.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:03.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:03.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:03.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:03.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:03.093 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54833)
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:03.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:03.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:03.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:03.105 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:03.106 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:03.106 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85350795, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104378415105741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6287953, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.64856, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.6029714552279, telescope_dec_j2k=-24.2036579134201, observability=1)
2025-11-17T10:29:03.586 [DEBUG] [Thread-67168 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:03.586 [DEBUG] [Thread-67168 (handle)] [server.py] [get_status()] Status age = 0.4802231788635254s
2025-11-17T10:29:03.586 [DEBUG] [Thread-67168 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4802231788635254
2025-11-17T10:29:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:14.796 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.690695762634277s
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:14.797 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:14.798 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6320536;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65181;2460996.85364351;10.48742806;1.3;_
2025-11-17T10:29:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.6320536;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65181;2460996.85364351;10.48742806;1.3;_
2025-11-17T10:29:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:14.799 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:14.800 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.6320536, teldec = -24.25661
2025-11-17T10:29:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6320536 -24.25661
2025-11-17T10:29:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6320536 -24.25661
2025-11-17T10:29:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6320536 -24.25661
2025-11-17T10:29:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6320536;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65181;2460996.85364353;10.48742806;1.3;_16.6062283020837 -24.2037705912791
2025-11-17T10:29:14.801 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6062283020837     dec_j2k = -24.2037705912791
2025-11-17T10:29:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104377893650484;171.162362694745;_
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104377893650484;171.162362694745;_
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44999)
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:14.810 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:14.817 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:14.817 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:14.817 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:14.818 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:14.818 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85364351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104377893650484, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6320536, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.65181, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.6062283020837, telescope_dec_j2k=-24.2037705912791, observability=1)
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.2639272212982178s
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:16.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:16.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:16.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6323901;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65215;2460996.85365837;10.48776361;1.3;_
2025-11-17T10:29:16.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.6323901;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65215;2460996.85365837;10.48776361;1.3;_
2025-11-17T10:29:16.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:16.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:16.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:16.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:16.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:16.085 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.6323901, teldec = -24.25661
2025-11-17T10:29:16.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.6323901 -24.25661
2025-11-17T10:29:16.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.6323901 -24.25661
2025-11-17T10:29:16.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6323901 -24.25661
2025-11-17T10:29:16.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6323901;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65215;2460996.8536584;10.48776361;1.3;_16.6065646521605 -24.2037822302955
2025-11-17T10:29:16.086 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6065646521605     dec_j2k = -24.2037822302955
2025-11-17T10:29:16.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:16.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:16.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104378655777397;171.162351965909;_
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104378655777397;171.162351965909;_
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:16.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:16.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:16.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:16.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:16.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:29:16.093 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54979)
2025-11-17T10:29:16.093 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:16.094 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:16.094 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:16.094 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:16.094 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:16.100 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:16.101 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:29:16.101 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85365837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104378655777397, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6323901, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.65215, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.6065646521605, telescope_dec_j2k=-24.2037822302955, observability=1)
2025-11-17T10:29:16.101 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14813232421875 seconds ago
2025-11-17T10:29:18.647 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:18.647 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Status age = 2.5465285778045654s
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:18.648 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:18.649 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:18.650 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 17;16.6331177;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65288;2460996.85368808;10.48848917;1.3;_
2025-11-17T10:29:18.650 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response 17;16.6331177;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65288;2460996.85368808;10.48848917;1.3;_
2025-11-17T10:29:18.650 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:18.650 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:18.650 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:18.651 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:18.651 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:18.651 [INFO] [Thread-67169 (handle)] [driver.py] [get_status()] Telra = 16.6331177, teldec = -24.25661
2025-11-17T10:29:18.651 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6331177 -24.25661
2025-11-17T10:29:18.651 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6331177 -24.25661
2025-11-17T10:29:18.651 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6331177 -24.25661
2025-11-17T10:29:18.652 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 17;16.6331177;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65288;2460996.8536881;10.48848917;1.3;_16.6072919280835 -24.2038073982924
2025-11-17T10:29:18.652 [INFO] [Thread-67169 (handle)] [driver.py] [get_status()] ra_j2k = 16.6072919280835     dec_j2k = -24.2038073982924
2025-11-17T10:29:18.652 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:18.652 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:18.652 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:18.653 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 140;0.104378094210198;171.162357330327;_
2025-11-17T10:29:18.653 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response 140;0.104378094210198;171.162357330327;_
2025-11-17T10:29:18.653 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:18.653 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:18.653 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:18.654 [DEBUG] [Thread-67169 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42815)
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:18.661 [DEBUG] [Thread-67169 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:18.668 [DEBUG] [Thread-67169 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:18.668 [DEBUG] [Thread-67169 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:18.668 [DEBUG] [Thread-67169 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:18.669 [DEBUG] [Thread-67169 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:18.669 [INFO] [Thread-67169 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85368808, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104378094210198, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6331177, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.65288, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:28:26.048659', telescope_ra_j2k=16.6072919280835, telescope_dec_j2k=-24.2038073982924, observability=1)
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:26.191 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:26.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:26.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:26.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:26.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:26.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:26.192 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:29:26.193 [INFO] [ThreadPoolExecutor-2667_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:29:26.193 [INFO] [ThreadPoolExecutor-2667_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:29:31.035 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:29:31
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.366060972213745s
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:31.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:31.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:31.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6365671;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65633;2460996.85383145;10.49192917;1.3;_
2025-11-17T10:29:31.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.6365671;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65633;2460996.85383145;10.49192917;1.3;_
2025-11-17T10:29:31.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:31.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:31.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:31.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:31.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:31.038 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.6365671, teldec = -24.25661
2025-11-17T10:29:31.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6365671 -24.25661
2025-11-17T10:29:31.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6365671 -24.25661
2025-11-17T10:29:31.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6365671 -24.25661
2025-11-17T10:29:31.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6365671;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65633;2460996.85383147;10.49192917;1.3;_16.6107397934872 -24.2039267411855
2025-11-17T10:29:31.039 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.6107397934872     dec_j2k = -24.2039267411855
2025-11-17T10:29:31.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:31.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:31.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104378816225169;171.162351965909;_
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104378816225169;171.162351965909;_
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:31.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:31.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:31.042 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:31.042 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:31.042 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37087)
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:31.046 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:31.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:31.053 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85383145, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104378816225169, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6365671, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.65633, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6107397934872, telescope_dec_j2k=-24.2039267411855, observability=1)
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Status age = 5.704640626907349s
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:36.758 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:36.759 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:36.760 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 17;16.6381542;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65791;2460996.85389769;10.49351194;1.3;_
2025-11-17T10:29:36.760 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response 17;16.6381542;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65791;2460996.85389769;10.49351194;1.3;_
2025-11-17T10:29:36.760 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:36.760 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:36.760 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:36.761 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:36.761 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:36.761 [INFO] [Thread-67170 (handle)] [driver.py] [get_status()] Telra = 16.6381542, teldec = -24.25661
2025-11-17T10:29:36.761 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6381542 -24.25661
2025-11-17T10:29:36.761 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6381542 -24.25661
2025-11-17T10:29:36.761 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6381542 -24.25661
2025-11-17T10:29:36.762 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 17;16.6381542;-24.25661;50.108493;89.993097;50.08601;90.12017;13.65791;2460996.85389771;10.49351194;1.3;_16.612326188396 -24.2039816666997
2025-11-17T10:29:36.762 [INFO] [Thread-67170 (handle)] [driver.py] [get_status()] ra_j2k = 16.612326188396     dec_j2k = -24.2039816666997
2025-11-17T10:29:36.762 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:36.762 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 140;0.104379016784883;171.162351965909;_
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response 140;0.104379016784883;171.162351965909;_
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:36.763 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:36.764 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:36.765 [DEBUG] [Thread-67170 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:36.765 [DEBUG] [Thread-67170 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:36.765 [DEBUG] [Thread-67170 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50643)
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:36.773 [DEBUG] [Thread-67170 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:36.780 [DEBUG] [Thread-67170 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:36.780 [INFO] [Thread-67170 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85389769, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104379016784883, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108493, telescope_az=89.993097, telescope_ra=16.6381542, telescope_dec=-24.25661, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.65791, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.612326188396, telescope_dec_j2k=-24.2039816666997, observability=1)
2025-11-17T10:29:47.071 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.071 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.071 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:47.071 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:47.071 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:29:47.072 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:47.073 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:47.074 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:29:47.075 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:47.076 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Park
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:29:47.077 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:29:47.078 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 29;16.6410257;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66079;2460996.85401711;10.49637556;1.3;_Park Command Successful
2025-11-17T10:29:48.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:29:48.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:29:48.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:29:48.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:29:48.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:29:49.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:29:49.079 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:29:49.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:29:49.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:29:49.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:29:50.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:29:50.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:29:50.080 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:29:50.081 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:29:50.082 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:29:51.082 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:29:51.082 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:29:51.082 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:51.083 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:29:51.084 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:29:51.085 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:52.085 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:52.085 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:52.085 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:52.085 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:52.085 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:29:52.086 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:29:52.087 [DEBUG] [ThreadPoolExecutor-2666_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:52.087 [INFO] [ThreadPoolExecutor-2666_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Status age = 18.049681663513184s
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:29:54.830 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:29:54.831 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:29:54.832 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 17;16.6431952;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66296;2460996.85410685;10.49853917;1.3;_
2025-11-17T10:29:54.832 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response 17;16.6431952;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66296;2460996.85410685;10.49853917;1.3;_
2025-11-17T10:29:54.832 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:29:54.832 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:29:54.832 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:29:54.833 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:54.833 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:29:54.833 [INFO] [Thread-67171 (handle)] [driver.py] [get_status()] Telra = 16.6431952, teldec = -24.256609
2025-11-17T10:29:54.834 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6431952 -24.256609
2025-11-17T10:29:54.834 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6431952 -24.256609
2025-11-17T10:29:54.834 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6431952 -24.256609
2025-11-17T10:29:54.835 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 17;16.6431952;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66296;2460996.85410688;10.49853917;1.3;_16.6173649531889 -24.2041551846057
2025-11-17T10:29:54.835 [INFO] [Thread-67171 (handle)] [driver.py] [get_status()] ra_j2k = 16.6173649531889     dec_j2k = -24.2041551846057
2025-11-17T10:29:54.835 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:29:54.835 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:29:54.835 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 140;0.104378936560997;171.162346601491;_
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response 140;0.104378936560997;171.162346601491;_
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:29:54.836 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:29:54.837 [DEBUG] [Thread-67171 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:54.837 [DEBUG] [Thread-67171 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:29:54.837 [DEBUG] [Thread-67171 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:29:54.838 [DEBUG] [Thread-67171 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43779)
2025-11-17T10:29:54.838 [DEBUG] [Thread-67171 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:29:54.838 [DEBUG] [Thread-67171 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:29:54.838 [DEBUG] [Thread-67171 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:29:54.839 [DEBUG] [Thread-67171 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:29:54.839 [DEBUG] [Thread-67171 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:29:54.846 [DEBUG] [Thread-67171 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:29:54.846 [INFO] [Thread-67171 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85410685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104378936560997, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.6431952, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.66296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6173649531889, telescope_dec_j2k=-24.2041551846057, observability=1)
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.352246046066284s
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:02.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:02.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:02.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.645233;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66499;2460996.85419213;10.50057139;1.3;_
2025-11-17T10:30:02.200 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.645233;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66499;2460996.85419213;10.50057139;1.3;_
2025-11-17T10:30:02.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:02.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:02.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:02.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:02.201 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:02.201 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.645233, teldec = -24.256609
2025-11-17T10:30:02.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.645233 -24.256609
2025-11-17T10:30:02.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.645233 -24.256609
2025-11-17T10:30:02.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.645233 -24.256609
2025-11-17T10:30:02.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.645233;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66499;2460996.85419215;10.50057139;1.3;_16.6194018513312 -24.2042257591729
2025-11-17T10:30:02.202 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6194018513312     dec_j2k = -24.2042257591729
2025-11-17T10:30:02.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:02.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:02.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:02.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104379498128196;171.162368059163;_
2025-11-17T10:30:02.203 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104379498128196;171.162368059163;_
2025-11-17T10:30:02.203 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:02.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:02.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:02.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:02.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:02.206 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:02.206 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:02.208 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43723)
2025-11-17T10:30:02.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:02.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:02.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:02.209 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:02.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:02.216 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:02.217 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85419213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104379498128196, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.645233, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.66499, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6194018513312, telescope_dec_j2k=-24.2042257591729, observability=1)
2025-11-17T10:30:03.625 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:03.625 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Status age = 1.4089686870574951s
2025-11-17T10:30:03.625 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:03.626 [DEBUG] [Thread-67172 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:03.626 [DEBUG] [Thread-67172 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:03.626 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:03.626 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:03.626 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:03.627 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:03.628 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 17;16.6456533;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66541;2460996.85420866;10.50099056;1.3;_
2025-11-17T10:30:03.628 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response 17;16.6456533;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66541;2460996.85420866;10.50099056;1.3;_
2025-11-17T10:30:03.628 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:03.628 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:03.628 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:03.629 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:03.629 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:03.629 [INFO] [Thread-67172 (handle)] [driver.py] [get_status()] Telra = 16.6456533, teldec = -24.256609
2025-11-17T10:30:03.629 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6456533 -24.256609
2025-11-17T10:30:03.629 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6456533 -24.256609
2025-11-17T10:30:03.629 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6456533 -24.256609
2025-11-17T10:30:03.630 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 17;16.6456533;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66541;2460996.85420868;10.50099056;1.3;_16.6198219654495 -24.2042403172061
2025-11-17T10:30:03.630 [INFO] [Thread-67172 (handle)] [driver.py] [get_status()] ra_j2k = 16.6198219654495     dec_j2k = -24.2042403172061
2025-11-17T10:30:03.630 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:03.630 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:03.630 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 140;0.10437869588934;171.162362694745;_
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response 140;0.10437869588934;171.162362694745;_
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:03.631 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:03.632 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:03.633 [DEBUG] [Thread-67172 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:03.633 [DEBUG] [Thread-67172 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:03.633 [DEBUG] [Thread-67172 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:30:03.635 [DEBUG] [Thread-67172 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47533)
2025-11-17T10:30:03.635 [DEBUG] [Thread-67172 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:03.635 [DEBUG] [Thread-67172 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:03.635 [DEBUG] [Thread-67172 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:03.635 [DEBUG] [Thread-67172 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:03.636 [DEBUG] [Thread-67172 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:03.643 [DEBUG] [Thread-67172 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:03.643 [INFO] [Thread-67172 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85420866, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10437869588934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.6456533, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.66541, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6198219654495, telescope_dec_j2k=-24.2042403172061, observability=1)
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Status age = 9.310942649841309s
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:12.954 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:12.955 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:12.955 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 17;16.6482382;-24.256609;50.108492;89.993096;50.08601;90.12017;13.668;2460996.85431662;10.50356833;1.3;_
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response 17;16.6482382;-24.256609;50.108492;89.993096;50.08601;90.12017;13.668;2460996.85431662;10.50356833;1.3;_
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:12.956 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:12.957 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:12.957 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:12.957 [INFO] [Thread-67173 (handle)] [driver.py] [get_status()] Telra = 16.6482382, teldec = -24.256609
2025-11-17T10:30:12.957 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6482382 -24.256609
2025-11-17T10:30:12.957 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6482382 -24.256609
2025-11-17T10:30:12.957 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6482382 -24.256609
2025-11-17T10:30:12.958 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 17;16.6482382;-24.256609;50.108492;89.993096;50.08601;90.12017;13.668;2460996.85431664;10.50356833;1.3;_16.6224057232169 -24.2043298652774
2025-11-17T10:30:12.958 [INFO] [Thread-67173 (handle)] [driver.py] [get_status()] ra_j2k = 16.6224057232169     dec_j2k = -24.2043298652774
2025-11-17T10:30:12.958 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:12.958 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 140;0.104379778911796;171.162346601491;_
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response 140;0.104379778911796;171.162346601491;_
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:12.959 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:12.960 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:12.961 [DEBUG] [Thread-67173 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:12.961 [DEBUG] [Thread-67173 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:12.961 [DEBUG] [Thread-67173 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35717)
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:12.962 [DEBUG] [Thread-67173 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:12.969 [DEBUG] [Thread-67173 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:12.969 [DEBUG] [Thread-67173 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:12.970 [DEBUG] [Thread-67173 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:12.970 [INFO] [Thread-67173 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85431662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104379778911796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.6482382, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.668, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6224057232169, telescope_dec_j2k=-24.2043298652774, observability=1)
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.8459303379058838s
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.648771;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66853;2460996.85433817;10.50409972;1.3;_
2025-11-17T10:30:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.648771;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66853;2460996.85433817;10.50409972;1.3;_
2025-11-17T10:30:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:14.819 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.648771, teldec = -24.256609
2025-11-17T10:30:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.648771 -24.256609
2025-11-17T10:30:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.648771 -24.256609
2025-11-17T10:30:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.648771 -24.256609
2025-11-17T10:30:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.648771;-24.256609;50.108492;89.993096;50.08601;90.12017;13.66853;2460996.85433819;10.50409972;1.3;_16.6229382879858 -24.2043483259876
2025-11-17T10:30:14.820 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6229382879858     dec_j2k = -24.2043483259876
2025-11-17T10:30:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104379377792368;171.162351965909;_
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104379377792368;171.162351965909;_
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:30:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:30:14.828 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57133)
2025-11-17T10:30:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:14.829 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:14.836 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85433817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104379377792368, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.648771, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.66853, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6229382879858, telescope_dec_j2k=-24.2043483259876, observability=1)
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.3250818252563477s
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:16.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:16.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:16.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:16.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6491356;-24.256609;50.108492;89.993096;50.08601;90.12017;13.6689;2460996.85435375;10.50446333;1.3;_
2025-11-17T10:30:16.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.6491356;-24.256609;50.108492;89.993096;50.08601;90.12017;13.6689;2460996.85435375;10.50446333;1.3;_
2025-11-17T10:30:16.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:16.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:16.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:16.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:16.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:16.165 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.6491356, teldec = -24.256609
2025-11-17T10:30:16.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.6491356 -24.256609
2025-11-17T10:30:16.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.6491356 -24.256609
2025-11-17T10:30:16.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6491356 -24.256609
2025-11-17T10:30:16.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6491356;-24.256609;50.108492;89.993096;50.08601;90.12017;13.6689;2460996.85435377;10.50446333;1.3;_16.6233027270556 -24.2043609594232
2025-11-17T10:30:16.166 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6233027270556     dec_j2k = -24.2043609594232
2025-11-17T10:30:16.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:16.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:16.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104379899247624;171.162351965909;_
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104379899247624;171.162351965909;_
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:16.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:16.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:16.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:16.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:16.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34193)
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:16.175 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:16.182 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:16.182 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:16.183 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:30:16.183 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85435375, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104379899247624, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.6491356, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.6689, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:29:26.190787', telescope_ra_j2k=16.6233027270556, telescope_dec_j2k=-24.2043609594232, observability=1)
2025-11-17T10:30:16.183 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.148287296295166 seconds ago
2025-11-17T10:30:26.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:26.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:26.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:26.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:26.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:26.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:26.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:26.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:26.334 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:26.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:26.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:26.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:26.335 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:30:26.335 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:26.335 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:26.335 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:26.335 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:26.335 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:30:26.336 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:30:26.337 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:27.337 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:27.337 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:27.337 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:27.337 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:27.337 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:30:27.338 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:27.339 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:27.340 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:27.340 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:27.340 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:27.340 [DEBUG] [ThreadPoolExecutor-2668_0] [payload.py] [to_registers()] [0]
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42213)
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:27.345 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:27.352 [DEBUG] [ThreadPoolExecutor-2668_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:31.007 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:31.007 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Status age = 14.824562311172485s
2025-11-17T10:30:31.007 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:31.008 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:31.009 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 17;16.6532558;-24.256609;50.108492;89.993096;50.08601;90.12017;13.67302;2460996.85452557;10.50857222;1.3;_
2025-11-17T10:30:31.009 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response 17;16.6532558;-24.256609;50.108492;89.993096;50.08601;90.12017;13.67302;2460996.85452557;10.50857222;1.3;_
2025-11-17T10:30:31.009 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:31.009 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:31.009 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:31.010 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:31.010 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:31.010 [INFO] [Thread-67174 (handle)] [driver.py] [get_status()] Telra = 16.6532558, teldec = -24.256609
2025-11-17T10:30:31.010 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6532558 -24.256609
2025-11-17T10:30:31.010 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6532558 -24.256609
2025-11-17T10:30:31.011 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6532558 -24.256609
2025-11-17T10:30:31.011 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 17;16.6532558;-24.256609;50.108492;89.993096;50.08601;90.12017;13.67302;2460996.85452559;10.50857222;1.3;_16.6274211107411 -24.2045037587062
2025-11-17T10:30:31.011 [INFO] [Thread-67174 (handle)] [driver.py] [get_status()] ra_j2k = 16.6274211107411     dec_j2k = -24.2045037587062
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 140;0.104380099807338;171.162351965909;_
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response 140;0.104380099807338;171.162351965909;_
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:31.012 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:31.013 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:31.013 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:31.014 [DEBUG] [Thread-67174 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:31.015 [DEBUG] [Thread-67174 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54761)
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:31.020 [DEBUG] [Thread-67174 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:31.027 [DEBUG] [Thread-67174 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:31.028 [DEBUG] [Thread-67174 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:31.028 [INFO] [Thread-67174 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85452557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104380099807338, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108492, telescope_az=89.993096, telescope_ra=16.6532558, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.67302, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6274211107411, telescope_dec_j2k=-24.2045037587062, observability=1)
2025-11-17T10:30:31.114 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:30:31
2025-11-17T10:30:31.114 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:31.114 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.08653807640075684s
2025-11-17T10:30:31.114 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.08653807640075684
2025-11-17T10:30:49.073 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Status age = 18.0460205078125s
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:30:49.074 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:30:49.075 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 17;16.6583065;-24.256609;50.108491;89.993096;50.08601;90.12017;13.67807;2460996.85473466;10.51360917;1.3;_
2025-11-17T10:30:49.075 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response 17;16.6583065;-24.256609;50.108491;89.993096;50.08601;90.12017;13.67807;2460996.85473466;10.51360917;1.3;_
2025-11-17T10:30:49.075 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:30:49.075 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:30:49.075 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:30:49.076 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:49.076 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:30:49.076 [INFO] [Thread-67175 (handle)] [driver.py] [get_status()] Telra = 16.6583065, teldec = -24.256609
2025-11-17T10:30:49.076 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6583065 -24.256609
2025-11-17T10:30:49.076 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6583065 -24.256609
2025-11-17T10:30:49.077 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6583065 -24.256609
2025-11-17T10:30:49.077 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 17;16.6583065;-24.256609;50.108491;89.993096;50.08601;90.12017;13.67807;2460996.85473469;10.51360917;1.3;_16.6324695899848 -24.2046788922182
2025-11-17T10:30:49.078 [INFO] [Thread-67175 (handle)] [driver.py] [get_status()] ra_j2k = 16.6324695899848     dec_j2k = -24.2046788922182
2025-11-17T10:30:49.078 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:30:49.078 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:30:49.078 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 140;0.104380781710366;171.162362694745;_
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response 140;0.104380781710366;171.162362694745;_
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:49.079 [DEBUG] [Thread-67175 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:49.080 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:30:49.080 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:30:49.080 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:30:49.080 [DEBUG] [Thread-67175 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:49.081 [DEBUG] [Thread-67175 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:30:49.081 [DEBUG] [Thread-67175 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44079)
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:30:49.083 [DEBUG] [Thread-67175 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:30:49.090 [DEBUG] [Thread-67175 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:30:49.091 [DEBUG] [Thread-67175 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:30:49.091 [DEBUG] [Thread-67175 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:30:49.091 [DEBUG] [Thread-67175 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:30:49.091 [INFO] [Thread-67175 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85473466, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104380781710366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993096, telescope_ra=16.6583065, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.67807, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6324695899848, telescope_dec_j2k=-24.2046788922182, observability=1)
2025-11-17T10:30:52.352 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:30:52.353 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:30:52.354 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:30:52.355 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:30:52.355 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.215598344802856s
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:01.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:01.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:01.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:01.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:01.307 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:01.308 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:01.308 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:01.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:01.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:01.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:01.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6617058;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68147;2460996.85487625;10.51699917;1.3;_
2025-11-17T10:31:01.309 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.6617058;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68147;2460996.85487625;10.51699917;1.3;_
2025-11-17T10:31:01.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:01.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:01.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:01.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:01.310 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:01.310 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.6617058, teldec = -24.256608
2025-11-17T10:31:01.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6617058 -24.256608
2025-11-17T10:31:01.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6617058 -24.256608
2025-11-17T10:31:01.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6617058 -24.256608
2025-11-17T10:31:01.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6617245;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68148;2460996.85487628;10.51701778;1.3;_16.6358673990915 -24.2047958156549
2025-11-17T10:31:01.311 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6358673990915     dec_j2k = -24.2047958156549
2025-11-17T10:31:01.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:01.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:01.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104381062493966;171.162362694745;_
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104381062493966;171.162362694745;_
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:01.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:01.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:01.313 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:01.313 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51433)
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:01.319 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:01.326 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:01.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:01.327 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85487625, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381062493966, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993096, telescope_ra=16.6617058, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68147, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6358673990915, telescope_dec_j2k=-24.2047958156549, observability=1)
2025-11-17T10:31:03.677 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Status age = 2.350529432296753s
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:03.678 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:03.679 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 17;16.6623704;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68213;2460996.85490369;10.51766194;1.3;_
2025-11-17T10:31:03.679 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response 17;16.6623704;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68213;2460996.85490369;10.51766194;1.3;_
2025-11-17T10:31:03.679 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:03.679 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:03.679 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:03.680 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:03.680 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:03.680 [INFO] [Thread-67176 (handle)] [driver.py] [get_status()] Telra = 16.6623704, teldec = -24.256608
2025-11-17T10:31:03.681 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6623704 -24.256608
2025-11-17T10:31:03.681 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6623704 -24.256608
2025-11-17T10:31:03.681 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6623704 -24.256608
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 17;16.6623704;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68213;2460996.85490372;10.51766194;1.3;_16.6365317079052 -24.2048188758715
2025-11-17T10:31:03.682 [INFO] [Thread-67176 (handle)] [driver.py] [get_status()] ra_j2k = 16.6365317079052     dec_j2k = -24.2048188758715
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 140;0.104381343277565;171.162368059163;_
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response 140;0.104381343277565;171.162368059163;_
2025-11-17T10:31:03.682 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:03.683 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:03.683 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:03.683 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:03.683 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:03.684 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:03.684 [DEBUG] [Thread-67176 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:03.684 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:03.684 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:03.684 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:03.685 [DEBUG] [Thread-67176 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:03.685 [DEBUG] [Thread-67176 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:03.685 [DEBUG] [Thread-67176 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58195)
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:03.687 [DEBUG] [Thread-67176 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:03.695 [DEBUG] [Thread-67176 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:03.695 [INFO] [Thread-67176 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85490369, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381343277565, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993096, telescope_ra=16.6623704, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68213, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6365317079052, telescope_dec_j2k=-24.2048188758715, observability=1)
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Status age = 3.4913876056671143s
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:07.187 [DEBUG] [Thread-67177 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:07.188 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:07.188 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:07.188 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:07.188 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:07.188 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 17;16.6633425;-24.256608;50.108491;89.993096;50.08601;90.12017;13.6831;2460996.85494431;10.51863139;1.3;_
2025-11-17T10:31:07.189 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response 17;16.6633425;-24.256608;50.108491;89.993096;50.08601;90.12017;13.6831;2460996.85494431;10.51863139;1.3;_
2025-11-17T10:31:07.189 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:07.189 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:07.189 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:07.190 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:07.190 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:07.190 [INFO] [Thread-67177 (handle)] [driver.py] [get_status()] Telra = 16.6633425, teldec = -24.256608
2025-11-17T10:31:07.190 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6633425 -24.256608
2025-11-17T10:31:07.190 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6633425 -24.256608
2025-11-17T10:31:07.190 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6633425 -24.256608
2025-11-17T10:31:07.191 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 17;16.6633425;-24.256608;50.108491;89.993096;50.08601;90.12017;13.6831;2460996.85494434;10.51863139;1.3;_16.6375033821893 -24.2048526085795
2025-11-17T10:31:07.191 [INFO] [Thread-67177 (handle)] [driver.py] [get_status()] ra_j2k = 16.6375033821893     dec_j2k = -24.2048526085795
2025-11-17T10:31:07.191 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:07.191 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:07.191 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 140;0.104381102605908;171.162362694745;_
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response 140;0.104381102605908;171.162362694745;_
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:07.192 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:07.193 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:07.194 [DEBUG] [Thread-67177 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:07.194 [DEBUG] [Thread-67177 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:07.194 [DEBUG] [Thread-67177 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37005)
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:07.200 [DEBUG] [Thread-67177 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:07.207 [DEBUG] [Thread-67177 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:07.207 [DEBUG] [Thread-67177 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:07.207 [DEBUG] [Thread-67177 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:07.207 [DEBUG] [Thread-67177 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:07.207 [DEBUG] [Thread-67177 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:07.208 [DEBUG] [Thread-67177 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:07.208 [DEBUG] [Thread-67177 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:07.208 [DEBUG] [Thread-67177 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:07.208 [DEBUG] [Thread-67177 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:07.208 [INFO] [Thread-67177 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85494431, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381102605908, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993096, telescope_ra=16.6633425, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.6831, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6375033821893, telescope_dec_j2k=-24.2048526085795, observability=1)
2025-11-17T10:31:14.819 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:14.819 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.611689329147339s
2025-11-17T10:31:14.819 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6654658;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68523;2460996.85503265;10.52074889;1.3;_
2025-11-17T10:31:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.6654658;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68523;2460996.85503265;10.52074889;1.3;_
2025-11-17T10:31:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:14.823 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.6654658, teldec = -24.256608
2025-11-17T10:31:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6654658 -24.256608
2025-11-17T10:31:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6654658 -24.256608
2025-11-17T10:31:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6654658 -24.256608
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6654658;-24.256608;50.108491;89.993096;50.08601;90.12017;13.68523;2460996.85503269;10.52074889;1.3;_16.6396257531407 -24.2049263008513
2025-11-17T10:31:14.824 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6396257531407     dec_j2k = -24.2049263008513
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104381664173108;171.162357330327;_
2025-11-17T10:31:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104381664173108;171.162357330327;_
2025-11-17T10:31:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:14.828 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34483)
2025-11-17T10:31:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:14.828 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:14.836 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85503265, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381664173108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993096, telescope_ra=16.6654658, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68523, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6396257531407, telescope_dec_j2k=-24.2049263008513, observability=1)
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.406470775604248s
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:16.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:16.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:16.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:16.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6658767;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68564;2460996.85504913;10.52115861;1.3;_
2025-11-17T10:31:16.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.6658767;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68564;2460996.85504913;10.52115861;1.3;_
2025-11-17T10:31:16.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:16.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:16.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:16.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:16.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:16.247 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.6658767, teldec = -24.256608
2025-11-17T10:31:16.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.6658767 -24.256608
2025-11-17T10:31:16.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.6658767 -24.256608
2025-11-17T10:31:16.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6658767 -24.256608
2025-11-17T10:31:16.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6658767;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68564;2460996.85504917;10.52115861;1.3;_16.6400364734811 -24.2049405636334
2025-11-17T10:31:16.248 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6400364734811     dec_j2k = -24.2049405636334
2025-11-17T10:31:16.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:16.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:16.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104381222941737;171.162362694745;_
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104381222941737;171.162362694745;_
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:16.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:16.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59627)
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:16.252 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:16.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:16.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:16.259 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:16.259 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:16.260 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:16.260 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:16.260 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:16.260 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:16.260 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:31:16.260 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85504913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381222941737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993095, telescope_ra=16.6658767, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68564, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6400364734811, telescope_dec_j2k=-24.2049405636334, observability=1)
2025-11-17T10:31:16.260 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.146058082580566 seconds ago
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Status age = 8.995107412338257s
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:25.255 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:25.256 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:25.257 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 17;16.6683883;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68815;2460996.85515344;10.52366333;1.3;_
2025-11-17T10:31:25.257 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response 17;16.6683883;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68815;2460996.85515344;10.52366333;1.3;_
2025-11-17T10:31:25.257 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:25.257 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:25.257 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:25.258 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:25.258 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:25.258 [INFO] [Thread-67178 (handle)] [driver.py] [get_status()] Telra = 16.6683883, teldec = -24.256608
2025-11-17T10:31:25.258 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6683883 -24.256608
2025-11-17T10:31:25.258 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6683883 -24.256608
2025-11-17T10:31:25.258 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6683883 -24.256608
2025-11-17T10:31:25.259 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 17;16.6683883;-24.256608;50.108491;89.993095;50.08601;90.12017;13.68815;2460996.85515346;10.52366333;1.3;_16.6425469762366 -24.2050277572779
2025-11-17T10:31:25.259 [INFO] [Thread-67178 (handle)] [driver.py] [get_status()] ra_j2k = 16.6425469762366     dec_j2k = -24.2050277572779
2025-11-17T10:31:25.259 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:25.259 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:25.259 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 140;0.104381944956707;171.162351965909;_
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response 140;0.104381944956707;171.162351965909;_
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:25.260 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:25.261 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:25.262 [DEBUG] [Thread-67178 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:25.262 [DEBUG] [Thread-67178 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:25.262 [DEBUG] [Thread-67178 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44695)
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:25.265 [DEBUG] [Thread-67178 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:25.273 [DEBUG] [Thread-67178 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:25.273 [INFO] [Thread-67178 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85515344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381944956707, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108491, telescope_az=89.993095, telescope_ra=16.6683883, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68815, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:30:26.332133', telescope_ra_j2k=16.6425469762366, telescope_dec_j2k=-24.2050277572779, observability=1)
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:26.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:26.476 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:26.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:26.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:26.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:26.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:26.477 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:31:26.477 [INFO] [ThreadPoolExecutor-2669_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:31:26.477 [INFO] [ThreadPoolExecutor-2669_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:31:31.175 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:31:31
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.901756048202515s
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:31.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:31.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:31.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:31.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6700328;-24.256608;50.10849;89.993095;50.08601;90.12017;13.68979;2460996.85522196;10.52530333;1.3;_
2025-11-17T10:31:31.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.6700328;-24.256608;50.10849;89.993095;50.08601;90.12017;13.68979;2460996.85522196;10.52530333;1.3;_
2025-11-17T10:31:31.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:31.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:31.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:31.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:31.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:31.179 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.6700328, teldec = -24.256608
2025-11-17T10:31:31.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6700328 -24.256608
2025-11-17T10:31:31.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6700328 -24.256608
2025-11-17T10:31:31.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6700328 -24.256608
2025-11-17T10:31:31.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6700328;-24.256608;50.10849;89.993095;50.08601;90.12017;13.68979;2460996.85522199;10.52530333;1.3;_16.644190758653 -24.2050848607267
2025-11-17T10:31:31.180 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.644190758653     dec_j2k = -24.2050848607267
2025-11-17T10:31:31.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:31.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:31.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104381383389508;171.162357330327;_
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104381383389508;171.162357330327;_
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:31.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:31.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:31.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:31.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:31.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52661)
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:31.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:31.192 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:31.192 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:31.192 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:31.192 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:31.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:31.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:31.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:31.193 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:31.193 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:31.193 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85522196, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381383389508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10849, telescope_az=89.993095, telescope_ra=16.6700328, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.68979, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.644190758653, telescope_dec_j2k=-24.2050848607267, observability=1)
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Status age = 12.1284761428833s
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:43.321 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:43.322 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 17;16.6734039;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69316;2460996.85536253;10.52866528;1.3;_
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response 17;16.6734039;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69316;2460996.85536253;10.52866528;1.3;_
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:31:43.323 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:31:43.324 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:43.324 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:31:43.324 [INFO] [Thread-67179 (handle)] [driver.py] [get_status()] Telra = 16.6734039, teldec = -24.256608
2025-11-17T10:31:43.324 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6734039 -24.256608
2025-11-17T10:31:43.324 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6734039 -24.256608
2025-11-17T10:31:43.324 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6734039 -24.256608
2025-11-17T10:31:43.325 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 17;16.6734039;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69316;2460996.85536256;10.52866528;1.3;_16.6475603897652 -24.2052019490125
2025-11-17T10:31:43.325 [INFO] [Thread-67179 (handle)] [driver.py] [get_status()] ra_j2k = 16.6475603897652     dec_j2k = -24.2052019490125
2025-11-17T10:31:43.325 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:31:43.325 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:31:43.326 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 140;0.104382105404479;171.162357330327;_
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response 140;0.104382105404479;171.162357330327;_
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:43.327 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:31:43.328 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:31:43.329 [DEBUG] [Thread-67179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:43.329 [DEBUG] [Thread-67179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:31:43.329 [DEBUG] [Thread-67179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48909)
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:31:43.334 [DEBUG] [Thread-67179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:31:43.342 [DEBUG] [Thread-67179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:31:43.342 [INFO] [Thread-67179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85536253, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104382105404479, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10849, telescope_az=89.993095, telescope_ra=16.6734039, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.69316, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6475603897652, telescope_dec_j2k=-24.2052019490125, observability=1)
2025-11-17T10:31:47.355 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:31:47.356 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:47.357 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:47.358 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:31:47.359 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:47.360 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:47.361 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:47.361 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:47.361 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:47.362 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:47.362 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Park
2025-11-17T10:31:47.362 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:31:47.362 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:31:47.362 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 29;16.6745426;-24.256608;50.10849;89.993095;50.08601;90.12017;13.6943;2460996.85540928;10.52980083;1.3;_Park Command Successful
2025-11-17T10:31:48.363 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:31:48.363 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:31:48.363 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:31:48.364 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:31:48.364 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:31:49.364 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:31:49.364 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:31:49.364 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:31:49.365 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:31:49.365 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:31:50.366 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:31:50.366 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:31:50.366 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:31:50.367 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:31:50.367 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:31:51.367 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:31:51.367 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:31:51.367 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:51.368 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:31:51.369 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:31:51.370 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:52.370 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:52.370 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:52.370 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:31:52.370 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:31:52.370 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:31:52.371 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:31:52.372 [DEBUG] [ThreadPoolExecutor-2668_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:31:52.372 [INFO] [ThreadPoolExecutor-2668_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 17.076990127563477s
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:00.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:00.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:00.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6781675;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69793;2460996.85556043;10.53341583;1.3;_
2025-11-17T10:32:00.421 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.6781675;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69793;2460996.85556043;10.53341583;1.3;_
2025-11-17T10:32:00.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:00.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:00.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:00.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:00.423 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:00.423 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.6781675, teldec = -24.256608
2025-11-17T10:32:00.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6781675 -24.256608
2025-11-17T10:32:00.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6781675 -24.256608
2025-11-17T10:32:00.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6781675 -24.256608
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6781675;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69793;2460996.85556046;10.53341583;1.3;_16.6523219189482 -24.2053674728262
2025-11-17T10:32:00.424 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6523219189482     dec_j2k = -24.2053674728262
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104382867531392;171.162351965909;_
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104382867531392;171.162351965909;_
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:00.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:00.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:00.425 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:00.425 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:00.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:00.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:00.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:00.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:00.426 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:00.427 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:00.427 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39389)
2025-11-17T10:32:00.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:00.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:00.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:00.428 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:00.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:00.435 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:00.435 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85556043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104382867531392, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10849, telescope_az=89.993095, telescope_ra=16.6781675, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.69793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6523219189482, telescope_dec_j2k=-24.2053674728262, observability=1)
2025-11-17T10:32:01.429 [DEBUG] [Thread-67180 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:01.429 [DEBUG] [Thread-67180 (handle)] [server.py] [get_status()] Status age = 0.9939846992492676s
2025-11-17T10:32:01.429 [DEBUG] [Thread-67180 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9939846992492676
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Status age = 3.2928152084350586s
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:03.728 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:03.729 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:03.730 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 17;16.6790917;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69885;2460996.85559873;10.5343375;1.3;_
2025-11-17T10:32:03.730 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response 17;16.6790917;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69885;2460996.85559873;10.5343375;1.3;_
2025-11-17T10:32:03.730 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:03.730 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:03.731 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:03.731 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:03.732 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:03.732 [INFO] [Thread-67181 (handle)] [driver.py] [get_status()] Telra = 16.6790917, teldec = -24.256608
2025-11-17T10:32:03.732 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6790917 -24.256608
2025-11-17T10:32:03.732 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6790917 -24.256608
2025-11-17T10:32:03.732 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6790917 -24.256608
2025-11-17T10:32:03.733 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 17;16.6790917;-24.256608;50.10849;89.993095;50.08601;90.12017;13.69885;2460996.85559876;10.5343375;1.3;_16.6532457178376 -24.2053995960471
2025-11-17T10:32:03.733 [INFO] [Thread-67181 (handle)] [driver.py] [get_status()] ra_j2k = 16.6532457178376     dec_j2k = -24.2053995960471
2025-11-17T10:32:03.733 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:03.733 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:03.733 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 140;0.104382546635849;171.162368059163;_
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response 140;0.104382546635849;171.162368059163;_
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:03.734 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:03.735 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:03.736 [DEBUG] [Thread-67181 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:03.736 [DEBUG] [Thread-67181 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:03.736 [DEBUG] [Thread-67181 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39285)
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:03.738 [DEBUG] [Thread-67181 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:03.746 [DEBUG] [Thread-67181 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:03.747 [DEBUG] [Thread-67181 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:03.747 [INFO] [Thread-67181 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85559873, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104382546635849, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10849, telescope_az=89.993095, telescope_ra=16.6790917, telescope_dec=-24.256608, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.69885, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6532457178376, telescope_dec_j2k=-24.2053995960471, observability=1)
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.086330890655518s
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6821824;-24.256607;50.10849;89.993095;50.08601;90.12017;13.70194;2460996.85572725;10.53741972;1.3;_
2025-11-17T10:32:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.6821824;-24.256607;50.10849;89.993095;50.08601;90.12017;13.70194;2460996.85572725;10.53741972;1.3;_
2025-11-17T10:32:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:14.836 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.6821824, teldec = -24.256607
2025-11-17T10:32:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6821824 -24.256607
2025-11-17T10:32:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6821824 -24.256607
2025-11-17T10:32:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6821824 -24.256607
2025-11-17T10:32:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6821824;-24.256607;50.10849;89.993095;50.08601;90.12017;13.70194;2460996.85572728;10.53741972;1.3;_16.6563350781796 -24.2055060445084
2025-11-17T10:32:14.837 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6563350781796     dec_j2k = -24.2055060445084
2025-11-17T10:32:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104381784508936;171.162357330327;_
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104381784508936;171.162357330327;_
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45743)
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:14.853 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85572725, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104381784508936, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10849, telescope_az=89.993095, telescope_ra=16.6821824, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.70194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6563350781796, telescope_dec_j2k=-24.2055060445084, observability=1)
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.4663617610931396s
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:16.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:16.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:16.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6826024;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70236;2460996.85574448;10.53783861;1.3;_
2025-11-17T10:32:16.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.6826024;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70236;2460996.85574448;10.53783861;1.3;_
2025-11-17T10:32:16.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:16.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:16.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:16.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:16.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:16.324 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.6826024, teldec = -24.256607
2025-11-17T10:32:16.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.6826024 -24.256607
2025-11-17T10:32:16.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.6826024 -24.256607
2025-11-17T10:32:16.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6826024 -24.256607
2025-11-17T10:32:16.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6826024;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70236;2460996.8557445;10.53783861;1.3;_16.6567548962898 -24.2055206484875
2025-11-17T10:32:16.325 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6567548962898     dec_j2k = -24.2055206484875
2025-11-17T10:32:16.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:16.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:16.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104382907643335;171.162357330327;_
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104382907643335;171.162357330327;_
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:16.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:16.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:16.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:16.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:16.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:16.334 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52213)
2025-11-17T10:32:16.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:16.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:16.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:16.334 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:16.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:16.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:16.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:16.342 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:32:16.342 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85574448, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104382907643335, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993095, telescope_ra=16.6826024, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.70236, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6567548962898, telescope_dec_j2k=-24.2055206484875, observability=1)
2025-11-17T10:32:16.342 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16709780693054 seconds ago
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Status age = 3.154797315597534s
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:19.497 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:19.498 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 17;16.6834893;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70325;2460996.85578123;10.53872306;1.3;_
2025-11-17T10:32:19.499 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response 17;16.6834893;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70325;2460996.85578123;10.53872306;1.3;_
2025-11-17T10:32:19.499 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:19.499 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:19.499 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:19.500 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:19.500 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:19.500 [INFO] [Thread-67182 (handle)] [driver.py] [get_status()] Telra = 16.6834893, teldec = -24.256607
2025-11-17T10:32:19.500 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6834893 -24.256607
2025-11-17T10:32:19.500 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6834893 -24.256607
2025-11-17T10:32:19.500 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6834893 -24.256607
2025-11-17T10:32:19.501 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 17;16.6834893;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70325;2460996.85578126;10.53872306;1.3;_16.6576414123438 -24.2055514893014
2025-11-17T10:32:19.501 [INFO] [Thread-67182 (handle)] [driver.py] [get_status()] ra_j2k = 16.6576414123438     dec_j2k = -24.2055514893014
2025-11-17T10:32:19.501 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:19.501 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:19.501 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:19.501 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 140;0.104382827419449;171.162362694745;_
2025-11-17T10:32:19.502 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response 140;0.104382827419449;171.162362694745;_
2025-11-17T10:32:19.502 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:19.502 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:19.502 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:19.502 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:19.503 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:19.504 [DEBUG] [Thread-67182 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:19.504 [DEBUG] [Thread-67182 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:19.504 [DEBUG] [Thread-67182 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60935)
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:19.510 [DEBUG] [Thread-67182 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:19.517 [DEBUG] [Thread-67182 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:19.518 [INFO] [Thread-67182 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85578123, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104382827419449, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993095, telescope_ra=16.6834893, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.70325, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:31:26.475021', telescope_ra_j2k=16.6576414123438, telescope_dec_j2k=-24.2055514893014, observability=1)
2025-11-17T10:32:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:26.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:26.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:26.619 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:26.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:26.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:26.620 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:32:26.620 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:26.620 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:26.620 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:26.620 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:26.620 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:32:26.621 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:32:26.622 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:27.622 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:27.622 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:27.622 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:27.622 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:27.622 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:27.623 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:27.623 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:27.623 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:27.624 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:27.625 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:27.625 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:27.625 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:27.625 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:27.626 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:27.626 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:27.626 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:27.626 [DEBUG] [ThreadPoolExecutor-2670_0] [payload.py] [to_registers()] [0]
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58799)
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:27.627 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:27.634 [DEBUG] [ThreadPoolExecutor-2670_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:31.253 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:32:31
2025-11-17T10:32:31.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:31.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.735970497131348s
2025-11-17T10:32:31.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:31.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:31.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6867775;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70654;2460996.8559173;10.54200222;1.3;_
2025-11-17T10:32:31.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.6867775;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70654;2460996.8559173;10.54200222;1.3;_
2025-11-17T10:32:31.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:31.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:31.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:31.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:31.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:31.256 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.6867775, teldec = -24.256607
2025-11-17T10:32:31.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6867775 -24.256607
2025-11-17T10:32:31.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6867775 -24.256607
2025-11-17T10:32:31.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6867775 -24.256607
2025-11-17T10:32:31.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.6867775;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70654;2460996.85591733;10.54200222;1.3;_16.6609281905674 -24.2056658568403
2025-11-17T10:32:31.257 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.6609281905674     dec_j2k = -24.2056658568403
2025-11-17T10:32:31.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:31.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:31.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104383228538877;171.162362694745;_
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104383228538877;171.162362694745;_
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:31.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:31.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:31.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:31.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:31.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39015)
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:31.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:31.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:31.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:31.270 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:31.270 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8559173, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104383228538877, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993095, telescope_ra=16.6867775, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.70654, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6609281905674, telescope_dec_j2k=-24.2056658568403, observability=1)
2025-11-17T10:32:37.563 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Status age = 6.293649673461914s
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:37.564 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:37.565 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 17;16.6885052;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70827;2460996.85599034;10.54372528;1.3;_
2025-11-17T10:32:37.565 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response 17;16.6885052;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70827;2460996.85599034;10.54372528;1.3;_
2025-11-17T10:32:37.565 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:37.565 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:37.565 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:37.566 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:37.566 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:37.566 [INFO] [Thread-67183 (handle)] [driver.py] [get_status()] Telra = 16.6885052, teldec = -24.256607
2025-11-17T10:32:37.566 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6885052 -24.256607
2025-11-17T10:32:37.566 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6885052 -24.256607
2025-11-17T10:32:37.567 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6885052 -24.256607
2025-11-17T10:32:37.567 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 17;16.6885331;-24.256607;50.108489;89.993095;50.08601;90.12017;13.70829;2460996.85599036;10.54375306;1.3;_16.6626551446121 -24.2057259638177
2025-11-17T10:32:37.567 [INFO] [Thread-67183 (handle)] [driver.py] [get_status()] ra_j2k = 16.6626551446121     dec_j2k = -24.2057259638177
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 140;0.104383228538877;171.162357330327;_
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response 140;0.104383228538877;171.162357330327;_
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:37.568 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:37.569 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:37.570 [DEBUG] [Thread-67183 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:37.570 [DEBUG] [Thread-67183 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:37.570 [DEBUG] [Thread-67183 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41601)
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:37.576 [DEBUG] [Thread-67183 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:37.583 [DEBUG] [Thread-67183 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:37.584 [DEBUG] [Thread-67183 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:37.584 [DEBUG] [Thread-67183 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:37.584 [DEBUG] [Thread-67183 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:37.584 [INFO] [Thread-67183 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85599034, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104383228538877, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993095, telescope_ra=16.6885052, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.70827, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6626551446121, telescope_dec_j2k=-24.2057259638177, observability=1)
2025-11-17T10:32:52.635 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:52.635 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:52.635 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:52.635 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:52.635 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:52.636 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:32:52.637 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:32:52.638 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Status age = 18.08925223350525s
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:55.673 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 17;16.6935744;-24.256607;50.108489;89.993094;50.08601;90.12017;13.71333;2460996.85619993;10.54878056;1.3;_
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response 17;16.6935744;-24.256607;50.108489;89.993094;50.08601;90.12017;13.71333;2460996.85619993;10.54878056;1.3;_
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:55.674 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:55.676 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:55.676 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:55.676 [INFO] [Thread-67184 (handle)] [driver.py] [get_status()] Telra = 16.6935744, teldec = -24.256607
2025-11-17T10:32:55.676 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6935744 -24.256607
2025-11-17T10:32:55.676 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6935744 -24.256607
2025-11-17T10:32:55.676 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6935744 -24.256607
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 17;16.6935744;-24.256607;50.108489;89.993094;50.08601;90.12017;13.71333;2460996.85619997;10.54878056;1.3;_16.6677221602216 -24.2059023836366
2025-11-17T10:32:55.677 [INFO] [Thread-67184 (handle)] [driver.py] [get_status()] ra_j2k = 16.6677221602216     dec_j2k = -24.2059023836366
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 140;0.104384030777733;171.162368059163;_
2025-11-17T10:32:55.677 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response 140;0.104384030777733;171.162368059163;_
2025-11-17T10:32:55.678 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:55.678 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:55.678 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:55.678 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:55.679 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:55.680 [DEBUG] [Thread-67184 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:55.680 [DEBUG] [Thread-67184 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:55.680 [DEBUG] [Thread-67184 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57727)
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:55.683 [DEBUG] [Thread-67184 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:55.690 [DEBUG] [Thread-67184 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:55.690 [INFO] [Thread-67184 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85619993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104384030777733, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993094, telescope_ra=16.6935744, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.71333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6677221602216, telescope_dec_j2k=-24.2059023836366, observability=1)
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.8357717990875244s
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:32:59.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:32:59.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:32:59.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6946394;-24.256613;50.108489;89.993105;50.08601;90.12018;13.7144;2460996.85624454;10.5498425;1.3;_
2025-11-17T10:32:59.528 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.6946394;-24.256613;50.108489;89.993105;50.08601;90.12018;13.7144;2460996.85624454;10.5498425;1.3;_
2025-11-17T10:32:59.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:32:59.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:32:59.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:32:59.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:59.529 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:32:59.529 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.6946394, teldec = -24.256613
2025-11-17T10:32:59.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6946394 -24.256613
2025-11-17T10:32:59.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6946394 -24.256613
2025-11-17T10:32:59.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6946394 -24.256613
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.6946394;-24.256613;50.108489;89.993105;50.08601;90.12018;13.7144;2460996.85624456;10.5498425;1.3;_16.6687867009966 -24.2059454595319
2025-11-17T10:32:59.530 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6687867009966     dec_j2k = -24.2059454595319
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104383830218019;171.162362694745;_
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104383830218019;171.162362694745;_
2025-11-17T10:32:59.530 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:32:59.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:59.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:59.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:59.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:59.532 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:59.532 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:59.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:32:59.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:32:59.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:32:59.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:59.533 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:32:59.533 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51615)
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:32:59.539 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:32:59.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:32:59.546 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85624454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104383830218019, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993105, telescope_ra=16.6946394, telescope_dec=-24.256613, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.7144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6687867009966, telescope_dec_j2k=-24.2059454595319, observability=1)
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Status age = 4.243339538574219s
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:03.790 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:03.791 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:03.792 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 17;16.6958375;-24.256607;50.108489;89.993094;50.08601;90.12017;13.7156;2460996.85629389;10.5510375;1.3;_
2025-11-17T10:33:03.792 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response 17;16.6958375;-24.256607;50.108489;89.993094;50.08601;90.12017;13.7156;2460996.85629389;10.5510375;1.3;_
2025-11-17T10:33:03.792 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:03.792 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:03.792 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:03.793 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:03.793 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:03.793 [INFO] [Thread-67185 (handle)] [driver.py] [get_status()] Telra = 16.6958375, teldec = -24.256607
2025-11-17T10:33:03.793 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6958375 -24.256607
2025-11-17T10:33:03.793 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6958375 -24.256607
2025-11-17T10:33:03.793 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6958375 -24.256607
2025-11-17T10:33:03.794 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 17;16.6958375;-24.256607;50.108489;89.993094;50.08601;90.12017;13.7156;2460996.85629391;10.5510375;1.3;_16.6699842870901 -24.2059811742747
2025-11-17T10:33:03.794 [INFO] [Thread-67185 (handle)] [driver.py] [get_status()] ra_j2k = 16.6699842870901     dec_j2k = -24.2059811742747
2025-11-17T10:33:03.794 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:03.794 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:03.794 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 140;0.104384030777733;171.162351965909;_
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response 140;0.104384030777733;171.162351965909;_
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:03.795 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:03.796 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:03.797 [DEBUG] [Thread-67185 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:03.797 [DEBUG] [Thread-67185 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:03.797 [DEBUG] [Thread-67185 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51973)
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:03.799 [DEBUG] [Thread-67185 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:03.806 [DEBUG] [Thread-67185 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:03.806 [INFO] [Thread-67185 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85629389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104384030777733, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108489, telescope_az=89.993094, telescope_ra=16.6958375, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.7156, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6699842870901, telescope_dec_j2k=-24.2059811742747, observability=1)
2025-11-17T10:33:13.777 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:13.777 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Status age = 9.971034526824951s
2025-11-17T10:33:13.777 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:13.777 [DEBUG] [Thread-67186 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:13.777 [DEBUG] [Thread-67186 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 17;16.6985962;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71836;2460996.85640947;10.55378861;1.3;_
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response 17;16.6985962;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71836;2460996.85640947;10.55378861;1.3;_
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:13.778 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:13.779 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:13.779 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:13.779 [INFO] [Thread-67186 (handle)] [driver.py] [get_status()] Telra = 16.6985962, teldec = -24.256607
2025-11-17T10:33:13.780 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6985962 -24.256607
2025-11-17T10:33:13.780 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6985962 -24.256607
2025-11-17T10:33:13.780 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6985962 -24.256607
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 17;16.6985962;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71836;2460996.8564095;10.55378861;1.3;_16.6727418025804 -24.206077244022
2025-11-17T10:33:13.781 [INFO] [Thread-67186 (handle)] [driver.py] [get_status()] ra_j2k = 16.6727418025804     dec_j2k = -24.206077244022
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 140;0.104384672568818;171.162362694745;_
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response 140;0.104384672568818;171.162362694745;_
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:13.781 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:13.782 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:13.783 [DEBUG] [Thread-67186 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:13.783 [DEBUG] [Thread-67186 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:13.783 [DEBUG] [Thread-67186 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45223)
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:13.786 [DEBUG] [Thread-67186 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:13.794 [DEBUG] [Thread-67186 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:13.794 [INFO] [Thread-67186 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85640947, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104384672568818, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108488, telescope_az=89.993094, telescope_ra=16.6985962, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.71836, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6727418025804, telescope_dec_j2k=-24.206077244022, observability=1)
2025-11-17T10:33:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.090456247329712s
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6989234;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71868;2460996.85642229;10.554115;1.3;_
2025-11-17T10:33:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.6989234;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71868;2460996.85642229;10.554115;1.3;_
2025-11-17T10:33:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:14.887 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.6989234, teldec = -24.256607
2025-11-17T10:33:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.6989234 -24.256607
2025-11-17T10:33:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.6989234 -24.256607
2025-11-17T10:33:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6989234 -24.256607
2025-11-17T10:33:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.6989234;-24.256607;50.108488;89.993094;50.08601;90.12017;13.71868;2460996.85642232;10.554115;1.3;_16.6730688622158 -24.2060886403192
2025-11-17T10:33:14.888 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6730688622158     dec_j2k = -24.2060886403192
2025-11-17T10:33:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104384191225504;171.162351965909;_
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104384191225504;171.162351965909;_
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47559)
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:14.900 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85642229, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104384191225504, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108488, telescope_az=89.993094, telescope_ra=16.6989234, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.71868, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6730688622158, telescope_dec_j2k=-24.2060886403192, observability=1)
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.5015568733215332s
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:16.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:16.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:16.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6993443;-24.256607;50.108488;89.993094;50.08601;90.12017;13.7191;2460996.85643986;10.55453472;1.3;_
2025-11-17T10:33:16.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.6993443;-24.256607;50.108488;89.993094;50.08601;90.12017;13.7191;2460996.85643986;10.55453472;1.3;_
2025-11-17T10:33:16.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:16.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:16.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:16.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:16.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:16.405 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.6993443, teldec = -24.256607
2025-11-17T10:33:16.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.6993443 -24.256607
2025-11-17T10:33:16.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.6993443 -24.256607
2025-11-17T10:33:16.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.6993443 -24.256607
2025-11-17T10:33:16.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.6993443;-24.256607;50.108488;89.993094;50.08601;90.12017;13.7191;2460996.85643988;10.55453472;1.3;_16.6734895816944 -24.2061033007232
2025-11-17T10:33:16.406 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6734895816944     dec_j2k = -24.2061033007232
2025-11-17T10:33:16.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:16.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:16.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104384351673276;171.162346601491;_
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104384351673276;171.162346601491;_
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:16.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:16.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:16.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:16.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:16.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45389)
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:16.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:16.417 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:16.418 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:33:16.418 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85643986, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104384351673276, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108488, telescope_az=89.993094, telescope_ra=16.6993443, telescope_dec=-24.256607, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.7191, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:32:26.617284', telescope_ra_j2k=16.6734895816944, telescope_dec_j2k=-24.2061033007232, observability=1)
2025-11-17T10:33:16.419 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16593384742737 seconds ago
2025-11-17T10:33:26.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:26.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:26.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:26.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:26.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:26.762 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:26.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:26.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:26.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:26.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:26.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:26.763 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:33:26.764 [INFO] [ThreadPoolExecutor-2671_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:33:26.764 [INFO] [ThreadPoolExecutor-2671_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:33:31.331 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:33:31
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.913257598876953s
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:31.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:31.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:31.332 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:31.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:31.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:31.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:31.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7034985;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72326;2460996.85661265;10.5586775;1.3;_
2025-11-17T10:33:31.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.7034985;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72326;2460996.85661265;10.5586775;1.3;_
2025-11-17T10:33:31.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:31.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:31.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:31.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:31.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:31.334 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.7034985, teldec = -24.256606
2025-11-17T10:33:31.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7034985 -24.256606
2025-11-17T10:33:31.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7034985 -24.256606
2025-11-17T10:33:31.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7034985 -24.256606
2025-11-17T10:33:31.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7034985;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72326;2460996.85661267;10.5586775;1.3;_16.6776420025441 -24.2062470297214
2025-11-17T10:33:31.335 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.6776420025441     dec_j2k = -24.2062470297214
2025-11-17T10:33:31.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:31.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:31.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104385153912132;171.162368059163;_
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104385153912132;171.162368059163;_
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:31.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:31.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:31.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:31.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:31.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:31.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:31.339 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59773)
2025-11-17T10:33:31.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:31.340 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:31.340 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:31.340 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:31.340 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:31.347 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:31.347 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85661265, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104385153912132, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108488, telescope_az=89.993094, telescope_ra=16.7034985, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.72326, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6776420025441, telescope_dec_j2k=-24.2062470297214, observability=1)
2025-11-17T10:33:31.853 [DEBUG] [Thread-67187 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:31.853 [DEBUG] [Thread-67187 (handle)] [server.py] [get_status()] Status age = 0.5061542987823486s
2025-11-17T10:33:31.853 [DEBUG] [Thread-67187 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5061542987823486
2025-11-17T10:33:47.638 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.638 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.638 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:47.638 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:47.638 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:33:47.639 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:47.640 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:47.641 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.641 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:47.641 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.642 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:33:47.643 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:47.644 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Park
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:33:47.645 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:33:47.646 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 29;16.7080356;-24.256606;50.108488;89.993094;50.08601;90.12017;13.7278;2460996.85680145;10.56320222;1.3;_Park Command Successful
2025-11-17T10:33:48.646 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:33:48.646 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:33:48.646 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:33:48.647 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:33:48.647 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:33:49.647 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:33:49.647 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:33:49.647 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:33:49.648 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:33:49.648 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:33:49.942 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Status age = 18.595473289489746s
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:49.943 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:49.944 [DEBUG] [Thread-67188 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:49.944 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:49.944 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:49.944 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:49.944 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:49.945 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 17;16.7086804;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72844;2460996.85682807;10.56384528;1.3;_
2025-11-17T10:33:49.945 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response 17;16.7086804;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72844;2460996.85682807;10.56384528;1.3;_
2025-11-17T10:33:49.945 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:49.945 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:49.945 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:49.946 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:49.946 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:49.946 [INFO] [Thread-67188 (handle)] [driver.py] [get_status()] Telra = 16.7086804, teldec = -24.256606
2025-11-17T10:33:49.946 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7086804 -24.256606
2025-11-17T10:33:49.946 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7086804 -24.256606
2025-11-17T10:33:49.946 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7086804 -24.256606
2025-11-17T10:33:49.947 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 17;16.7086804;-24.256606;50.108488;89.993094;50.08601;90.12017;13.72844;2460996.85682809;10.56384528;1.3;_16.6828216890656 -24.2064276484389
2025-11-17T10:33:49.947 [INFO] [Thread-67188 (handle)] [driver.py] [get_status()] ra_j2k = 16.6828216890656     dec_j2k = -24.2064276484389
2025-11-17T10:33:49.947 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:49.947 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:49.947 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 140;0.104385875927102;171.162362694745;_
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response 140;0.104385875927102;171.162362694745;_
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:49.948 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:49.949 [DEBUG] [Thread-67188 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:49.950 [DEBUG] [Thread-67188 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:49.953 [DEBUG] [Thread-67188 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35247)
2025-11-17T10:33:49.953 [DEBUG] [Thread-67188 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:49.953 [DEBUG] [Thread-67188 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:49.953 [DEBUG] [Thread-67188 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:49.954 [DEBUG] [Thread-67188 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:49.954 [DEBUG] [Thread-67188 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:49.961 [DEBUG] [Thread-67188 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:49.961 [INFO] [Thread-67188 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85682807, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104385875927102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108488, telescope_az=89.993094, telescope_ra=16.7086804, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.72844, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6828216890656, telescope_dec_j2k=-24.2064276484389, observability=1)
2025-11-17T10:33:50.648 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:33:50.649 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:33:50.649 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:33:50.649 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:33:50.649 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:33:51.650 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:33:51.650 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:33:51.650 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:51.651 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:33:51.652 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:33:51.653 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:52.653 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:52.653 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:52.653 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:52.653 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:52.653 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:33:52.654 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:33:52.655 [DEBUG] [ThreadPoolExecutor-2670_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:52.655 [INFO] [ThreadPoolExecutor-2670_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:33:58.637 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:33:58.637 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.676275968551636s
2025-11-17T10:33:58.637 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:33:58.638 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:33:58.639 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:33:58.639 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:33:58.639 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:33:58.639 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:33:58.639 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:33:58.640 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.711107;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73087;2460996.8569287;10.56626528;1.3;_
2025-11-17T10:33:58.640 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.711107;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73087;2460996.8569287;10.56626528;1.3;_
2025-11-17T10:33:58.640 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:33:58.640 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:33:58.640 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:33:58.641 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:58.641 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:33:58.641 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.711107, teldec = -24.256606
2025-11-17T10:33:58.641 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.711107 -24.256606
2025-11-17T10:33:58.641 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.711107 -24.256606
2025-11-17T10:33:58.641 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.711107 -24.256606
2025-11-17T10:33:58.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.711107;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73087;2460996.85692873;10.56626528;1.3;_16.6852472548374 -24.2065122618133
2025-11-17T10:33:58.642 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.6852472548374     dec_j2k = -24.2065122618133
2025-11-17T10:33:58.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:33:58.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:33:58.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104385795703217;171.162373423581;_
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104385795703217;171.162373423581;_
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:58.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:33:58.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:33:58.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:58.647 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:33:58.647 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37815)
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:33:58.652 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:33:58.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:33:58.661 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8569287, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104385795703217, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993094, telescope_ra=16.711107, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73087, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6852472548374, telescope_dec_j2k=-24.2065122618133, observability=1)
2025-11-17T10:34:03.839 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Status age = 5.179124355316162s
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:03.840 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:03.841 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 17;16.7125549;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73231;2460996.8569889;10.56770917;1.3;_
2025-11-17T10:34:03.842 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response 17;16.7125549;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73231;2460996.8569889;10.56770917;1.3;_
2025-11-17T10:34:03.842 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:03.842 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:03.842 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:03.843 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:03.843 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:03.843 [INFO] [Thread-67189 (handle)] [driver.py] [get_status()] Telra = 16.7125549, teldec = -24.256606
2025-11-17T10:34:03.843 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7125549 -24.256606
2025-11-17T10:34:03.843 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7125549 -24.256606
2025-11-17T10:34:03.843 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7125549 -24.256606
2025-11-17T10:34:03.844 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 17;16.7125549;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73231;2460996.85698894;10.56770917;1.3;_16.6866945384372 -24.2065627586626
2025-11-17T10:34:03.844 [INFO] [Thread-67189 (handle)] [driver.py] [get_status()] ra_j2k = 16.6866945384372     dec_j2k = -24.2065627586626
2025-11-17T10:34:03.844 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:03.844 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:03.844 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 140;0.104385113800189;171.162362694745;_
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response 140;0.104385113800189;171.162362694745;_
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:03.845 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:03.846 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:03.847 [DEBUG] [Thread-67189 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:34:03.847 [DEBUG] [Thread-67189 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:34:03.847 [DEBUG] [Thread-67189 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:34:03.848 [DEBUG] [Thread-67189 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47257)
2025-11-17T10:34:03.849 [DEBUG] [Thread-67189 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:03.849 [DEBUG] [Thread-67189 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:03.849 [DEBUG] [Thread-67189 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:03.849 [DEBUG] [Thread-67189 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:03.849 [DEBUG] [Thread-67189 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:03.856 [DEBUG] [Thread-67189 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:03.856 [INFO] [Thread-67189 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8569889, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104385113800189, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993094, telescope_ra=16.7125549, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73231, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6866945384372, telescope_dec_j2k=-24.2065627586626, observability=1)
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Status age = 4.154595375061035s
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:08.011 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:08.012 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 17;16.713722;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73348;2460996.85703718;10.56887306;1.3;_
2025-11-17T10:34:08.012 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response 17;16.713722;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73348;2460996.85703718;10.56887306;1.3;_
2025-11-17T10:34:08.012 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:08.012 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:08.012 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:08.013 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:08.013 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:08.013 [INFO] [Thread-67190 (handle)] [driver.py] [get_status()] Telra = 16.713722, teldec = -24.256606
2025-11-17T10:34:08.013 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] UnCookCoordinates 16.713722 -24.256606
2025-11-17T10:34:08.013 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.713722 -24.256606
2025-11-17T10:34:08.014 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.713722 -24.256606
2025-11-17T10:34:08.014 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 17;16.713722;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73348;2460996.8570372;10.56887306;1.3;_16.6878611419609 -24.2066034677161
2025-11-17T10:34:08.014 [INFO] [Thread-67190 (handle)] [driver.py] [get_status()] ra_j2k = 16.6878611419609     dec_j2k = -24.2066034677161
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 140;0.104386236934588;171.162357330327;_
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response 140;0.104386236934588;171.162357330327;_
2025-11-17T10:34:08.015 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:08.016 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:08.016 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:08.016 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:08.016 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:08.016 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:08.017 [DEBUG] [Thread-67190 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51837)
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:08.019 [DEBUG] [Thread-67190 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:08.026 [DEBUG] [Thread-67190 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:08.026 [INFO] [Thread-67190 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85703718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386236934588, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993094, telescope_ra=16.713722, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73348, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6878611419609, telescope_dec_j2k=-24.2066034677161, observability=1)
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.780631065368652s
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7156185;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73538;2460996.85711587;10.57076444;1.3;_
2025-11-17T10:34:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.7156185;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73538;2460996.85711587;10.57076444;1.3;_
2025-11-17T10:34:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:14.812 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.7156185, teldec = -24.256606
2025-11-17T10:34:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7156185 -24.256606
2025-11-17T10:34:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7156185 -24.256606
2025-11-17T10:34:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7156185 -24.256606
2025-11-17T10:34:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7156185;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73538;2460996.85711589;10.57076444;1.3;_16.6897568359298 -24.2066696288197
2025-11-17T10:34:14.813 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.6897568359298     dec_j2k = -24.2066696288197
2025-11-17T10:34:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104386437494302;171.162362694745;_
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104386437494302;171.162362694745;_
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43983)
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:14.828 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:14.828 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85711587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386437494302, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993094, telescope_ra=16.7156185, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73538, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6897568359298, telescope_dec_j2k=-24.2066696288197, observability=1)
2025-11-17T10:34:16.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:34:16.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.6510059833526611s
2025-11-17T10:34:16.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:16.480 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:16.480 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:16.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:16.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:16.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:16.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:16.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.716067;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73583;2460996.85713521;10.57121167;1.3;_
2025-11-17T10:34:16.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.716067;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73583;2460996.85713521;10.57121167;1.3;_
2025-11-17T10:34:16.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:16.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:16.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:16.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:16.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:16.483 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.716067, teldec = -24.256606
2025-11-17T10:34:16.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.716067 -24.256606
2025-11-17T10:34:16.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.716067 -24.256606
2025-11-17T10:34:16.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.716067 -24.256606
2025-11-17T10:34:16.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.716067;-24.256606;50.108487;89.993094;50.08601;90.12017;13.73583;2460996.85713523;10.57121167;1.3;_16.6902051454445 -24.2066852769894
2025-11-17T10:34:16.484 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.6902051454445     dec_j2k = -24.2066852769894
2025-11-17T10:34:16.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:16.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:16.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104386236934588;171.162351965909;_
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104386236934588;171.162351965909;_
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:16.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50869)
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:16.490 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:16.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:16.498 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:16.498 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:34:16.498 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85713521, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386236934588, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993094, telescope_ra=16.716067, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73583, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6902051454445, telescope_dec_j2k=-24.2066852769894, observability=1)
2025-11-17T10:34:16.498 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16700077056885 seconds ago
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Status age = 9.571061372756958s
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:26.069 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:26.070 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 17;16.718739;-24.256606;50.108487;89.993093;50.08601;90.12017;13.7385;2460996.85724618;10.57387639;1.3;_
2025-11-17T10:34:26.070 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response 17;16.718739;-24.256606;50.108487;89.993093;50.08601;90.12017;13.7385;2460996.85724618;10.57387639;1.3;_
2025-11-17T10:34:26.070 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:26.070 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:26.070 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:26.071 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:26.071 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:26.071 [INFO] [Thread-67191 (handle)] [driver.py] [get_status()] Telra = 16.718739, teldec = -24.256606
2025-11-17T10:34:26.071 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] UnCookCoordinates 16.718739 -24.256606
2025-11-17T10:34:26.071 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.718739 -24.256606
2025-11-17T10:34:26.071 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.718739 -24.256606
2025-11-17T10:34:26.072 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 17;16.718739;-24.256606;50.108487;89.993093;50.08601;90.12017;13.7385;2460996.8572462;10.57387639;1.3;_16.6928760116457 -24.2067785177067
2025-11-17T10:34:26.072 [INFO] [Thread-67191 (handle)] [driver.py] [get_status()] ra_j2k = 16.6928760116457     dec_j2k = -24.2067785177067
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 140;0.104386678165958;171.162368059163;_
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response 140;0.104386678165958;171.162368059163;_
2025-11-17T10:34:26.073 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:26.074 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:26.075 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:26.075 [DEBUG] [Thread-67191 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:26.075 [DEBUG] [Thread-67191 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:26.076 [DEBUG] [Thread-67191 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42945)
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:26.083 [DEBUG] [Thread-67191 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:26.090 [DEBUG] [Thread-67191 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:26.091 [DEBUG] [Thread-67191 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:26.091 [INFO] [Thread-67191 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85724618, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386678165958, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993093, telescope_ra=16.718739, telescope_dec=-24.256606, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.7385, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:33:26.760832', telescope_ra_j2k=16.6928760116457, telescope_dec_j2k=-24.2067785177067, observability=1)
2025-11-17T10:34:26.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:26.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:26.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:26.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:26.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:26.904 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:26.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:26.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:26.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:26.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:26.905 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:34:26.905 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:26.905 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:26.905 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:26.905 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:26.905 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:34:26.906 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:34:26.907 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:27.907 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:27.907 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:27.907 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:27.907 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:27.907 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:34:27.908 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:27.909 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:27.910 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:27.910 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:27.910 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:27.910 [DEBUG] [ThreadPoolExecutor-2672_0] [payload.py] [to_registers()] [0]
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36437)
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:27.911 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:27.918 [DEBUG] [ThreadPoolExecutor-2672_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:31.408 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:34:31
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.317222833633423s
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:31.408 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:31.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:31.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.720217;-24.256605;50.108487;89.993093;50.08601;90.12017;13.73998;2460996.85730799;10.57535028;1.3;_
2025-11-17T10:34:31.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.720217;-24.256605;50.108487;89.993093;50.08601;90.12017;13.73998;2460996.85730799;10.57535028;1.3;_
2025-11-17T10:34:31.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:31.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:31.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:31.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:31.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:31.411 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.720217, teldec = -24.256605
2025-11-17T10:34:31.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.720217 -24.256605
2025-11-17T10:34:31.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.720217 -24.256605
2025-11-17T10:34:31.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.720217 -24.256605
2025-11-17T10:34:31.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7202451;-24.256605;50.108487;89.993093;50.08601;90.12017;13.74001;2460996.85730801;10.57537833;1.3;_16.6943533854463 -24.2068291039917
2025-11-17T10:34:31.412 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.6943533854463     dec_j2k = -24.2068291039917
2025-11-17T10:34:31.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:31.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:31.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104386477606244;171.162368059163;_
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104386477606244;171.162368059163;_
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:31.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:31.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:31.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:31.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:31.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37447)
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:31.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:31.428 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:31.428 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85730799, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386477606244, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108487, telescope_az=89.993093, telescope_ra=16.720217, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.73998, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.6943533854463, telescope_dec_j2k=-24.2068291039917, observability=1)
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Status age = 12.778879642486572s
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:44.207 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 17;16.72378;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74354;2460996.85745611;10.57890361;1.3;_
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response 17;16.72378;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74354;2460996.85745611;10.57890361;1.3;_
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:44.208 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:44.209 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:44.209 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:44.209 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:44.210 [INFO] [Thread-67192 (handle)] [driver.py] [get_status()] Telra = 16.72378, teldec = -24.256605
2025-11-17T10:34:44.210 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] UnCookCoordinates 16.72378 -24.256605
2025-11-17T10:34:44.210 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.72378 -24.256605
2025-11-17T10:34:44.210 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.72378 -24.256605
2025-11-17T10:34:44.211 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 17;16.7238079;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74357;2460996.85745615;10.57893139;1.3;_16.6979148776727 -24.2069534938432
2025-11-17T10:34:44.211 [INFO] [Thread-67192 (handle)] [driver.py] [get_status()] ra_j2k = 16.6979148776727     dec_j2k = -24.2069534938432
2025-11-17T10:34:44.211 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:44.211 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:44.211 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 140;0.104386317158473;171.162357330327;_
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response 140;0.104386317158473;171.162357330327;_
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:44.212 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:44.213 [DEBUG] [Thread-67192 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60363)
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:44.218 [DEBUG] [Thread-67192 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:44.225 [DEBUG] [Thread-67192 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:44.226 [DEBUG] [Thread-67192 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:44.226 [INFO] [Thread-67192 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85745611, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104386317158473, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.72378, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.74354, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.6979148776727, telescope_dec_j2k=-24.2069534938432, observability=1)
2025-11-17T10:34:52.919 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:52.919 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:52.919 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:52.919 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:52.919 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:52.920 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:34:52.921 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:34:52.922 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.532148361206055s
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:34:57.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:34:57.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:34:57.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.727576;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74734;2460996.85761295;10.58268917;1.3;_
2025-11-17T10:34:57.759 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.727576;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74734;2460996.85761295;10.58268917;1.3;_
2025-11-17T10:34:57.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:34:57.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:34:57.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:34:57.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:57.761 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:34:57.761 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.727576, teldec = -24.256605
2025-11-17T10:34:57.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.727576 -24.256605
2025-11-17T10:34:57.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.727576 -24.256605
2025-11-17T10:34:57.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.727576 -24.256605
2025-11-17T10:34:57.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.727576;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74734;2460996.85761299;10.58268917;1.3;_16.701709274798 -24.2070860667963
2025-11-17T10:34:57.762 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.701709274798     dec_j2k = -24.2070860667963
2025-11-17T10:34:57.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:34:57.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:34:57.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104387360068986;171.162362694745;_
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104387360068986;171.162362694745;_
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:34:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47783)
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:34:57.765 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:34:57.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:34:57.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:57.772 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:34:57.773 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:34:57.773 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85761295, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104387360068986, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.727576, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.74734, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.701709274798, telescope_dec_j2k=-24.2070860667963, observability=1)
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Status age = 4.489351749420166s
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:02.262 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:02.263 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:02.264 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 17;16.7288297;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74859;2460996.85766509;10.58393944;1.3;_
2025-11-17T10:35:02.264 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response 17;16.7288297;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74859;2460996.85766509;10.58393944;1.3;_
2025-11-17T10:35:02.264 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:02.264 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:02.264 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:02.265 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:02.265 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:02.265 [INFO] [Thread-67193 (handle)] [driver.py] [get_status()] Telra = 16.7288297, teldec = -24.256605
2025-11-17T10:35:02.265 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7288297 -24.256605
2025-11-17T10:35:02.265 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7288297 -24.256605
2025-11-17T10:35:02.265 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7288297 -24.256605
2025-11-17T10:35:02.266 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 17;16.7288297;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74859;2460996.85766512;10.58393944;1.3;_16.7029624462118 -24.207129862511
2025-11-17T10:35:02.266 [INFO] [Thread-67193 (handle)] [driver.py] [get_status()] ra_j2k = 16.7029624462118     dec_j2k = -24.207129862511
2025-11-17T10:35:02.266 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:02.266 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:02.266 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 140;0.104387480404815;171.162368059163;_
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response 140;0.104387480404815;171.162368059163;_
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:02.267 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:02.268 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:02.269 [DEBUG] [Thread-67193 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:02.269 [DEBUG] [Thread-67193 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:02.269 [DEBUG] [Thread-67193 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:35:02.275 [DEBUG] [Thread-67193 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43485)
2025-11-17T10:35:02.275 [DEBUG] [Thread-67193 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:02.275 [DEBUG] [Thread-67193 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:02.276 [DEBUG] [Thread-67193 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:02.276 [DEBUG] [Thread-67193 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:02.276 [DEBUG] [Thread-67193 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:02.282 [DEBUG] [Thread-67193 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:02.283 [DEBUG] [Thread-67193 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:02.283 [INFO] [Thread-67193 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85766509, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104387480404815, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7288297, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.74859, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.7029624462118, telescope_dec_j2k=-24.207129862511, observability=1)
2025-11-17T10:35:03.891 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:03.891 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Status age = 1.6084263324737549s
2025-11-17T10:35:03.891 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:03.892 [DEBUG] [Thread-67194 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 17;16.7292787;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74904;2460996.85768395;10.58438722;1.3;_
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response 17;16.7292787;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74904;2460996.85768395;10.58438722;1.3;_
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:03.893 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:03.894 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:03.894 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:03.895 [INFO] [Thread-67194 (handle)] [driver.py] [get_status()] Telra = 16.7292787, teldec = -24.256605
2025-11-17T10:35:03.895 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7292787 -24.256605
2025-11-17T10:35:03.895 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7292787 -24.256605
2025-11-17T10:35:03.895 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7292787 -24.256605
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 17;16.7292787;-24.256605;50.108486;89.993093;50.08601;90.12017;13.74904;2460996.85768397;10.58438722;1.3;_16.7034112569998 -24.207145548833
2025-11-17T10:35:03.896 [INFO] [Thread-67194 (handle)] [driver.py] [get_status()] ra_j2k = 16.7034112569998     dec_j2k = -24.207145548833
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 140;0.104387079285386;171.162351965909;_
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response 140;0.104387079285386;171.162351965909;_
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:03.896 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:03.897 [DEBUG] [Thread-67194 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:03.898 [DEBUG] [Thread-67194 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37463)
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:03.901 [DEBUG] [Thread-67194 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:03.908 [DEBUG] [Thread-67194 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:03.909 [DEBUG] [Thread-67194 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:03.909 [INFO] [Thread-67194 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85768395, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104387079285386, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7292787, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.74904, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.7034112569998, telescope_dec_j2k=-24.207145548833, observability=1)
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.907129287719727s
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7323089;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75207;2460996.85781039;10.58740917;1.3;_
2025-11-17T10:35:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.7323089;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75207;2460996.85781039;10.58740917;1.3;_
2025-11-17T10:35:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:14.819 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.7323089, teldec = -24.256605
2025-11-17T10:35:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7323089 -24.256605
2025-11-17T10:35:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7323089 -24.256605
2025-11-17T10:35:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7323089 -24.256605
2025-11-17T10:35:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7323089;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75207;2460996.85781042;10.58740917;1.3;_16.706440181372 -24.2072514305958
2025-11-17T10:35:14.820 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.706440181372     dec_j2k = -24.2072514305958
2025-11-17T10:35:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104387881524243;171.162373423581;_
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104387881524243;171.162373423581;_
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:35:14.828 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45535)
2025-11-17T10:35:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:14.829 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:14.829 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:14.836 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85781039, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104387881524243, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7323089, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.75207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.706440181372, telescope_dec_j2k=-24.2072514305958, observability=1)
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.7214388847351074s
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:16.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:16.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:16.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:16.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:16.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7328136;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75257;2460996.85783054;10.5879125;1.3;_
2025-11-17T10:35:16.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.7328136;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75257;2460996.85783054;10.5879125;1.3;_
2025-11-17T10:35:16.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:16.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:16.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:16.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:16.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:16.561 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.7328136, teldec = -24.256605
2025-11-17T10:35:16.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.7328136 -24.256605
2025-11-17T10:35:16.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.7328136 -24.256605
2025-11-17T10:35:16.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7328136 -24.256605
2025-11-17T10:35:16.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7328136;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75257;2460996.85783058;10.5879125;1.3;_16.7069446691314 -24.2072690690035
2025-11-17T10:35:16.562 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7069446691314     dec_j2k = -24.2072690690035
2025-11-17T10:35:16.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:16.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:16.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104387520516757;171.162362694745;_
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104387520516757;171.162362694745;_
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:16.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:16.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:16.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:16.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:16.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54555)
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:16.571 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:16.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:16.579 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:16.579 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:35:16.579 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85783054, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104387520516757, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7328136, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.75257, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.7069446691314, telescope_dec_j2k=-24.2072690690035, observability=1)
2025-11-17T10:35:16.579 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.17076301574707 seconds ago
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Status age = 3.8006701469421387s
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:20.379 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:20.380 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:20.380 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:20.381 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:20.382 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 17;16.7338679;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75363;2460996.85787479;10.58896389;1.3;_
2025-11-17T10:35:20.382 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response 17;16.7338679;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75363;2460996.85787479;10.58896389;1.3;_
2025-11-17T10:35:20.382 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:20.382 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:20.382 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:20.383 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:20.383 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:20.383 [INFO] [Thread-67195 (handle)] [driver.py] [get_status()] Telra = 16.7338679, teldec = -24.256605
2025-11-17T10:35:20.383 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7338679 -24.256605
2025-11-17T10:35:20.383 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7338679 -24.256605
2025-11-17T10:35:20.383 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7338679 -24.256605
2025-11-17T10:35:20.384 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 17;16.7338679;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75363;2460996.85787482;10.58896389;1.3;_16.7079985259744 -24.2073059178459
2025-11-17T10:35:20.384 [INFO] [Thread-67195 (handle)] [driver.py] [get_status()] ra_j2k = 16.7079985259744     dec_j2k = -24.2073059178459
2025-11-17T10:35:20.384 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:20.384 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:20.384 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 140;0.104388162307842;171.162362694745;_
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response 140;0.104388162307842;171.162362694745;_
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:20.385 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:20.386 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:20.387 [DEBUG] [Thread-67195 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:20.387 [DEBUG] [Thread-67195 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:20.387 [DEBUG] [Thread-67195 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:20.394 [DEBUG] [Thread-67195 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55835)
2025-11-17T10:35:20.394 [DEBUG] [Thread-67195 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:20.394 [DEBUG] [Thread-67195 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:20.394 [DEBUG] [Thread-67195 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:20.394 [DEBUG] [Thread-67195 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:20.395 [DEBUG] [Thread-67195 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:20.402 [DEBUG] [Thread-67195 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:20.403 [DEBUG] [Thread-67195 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:20.403 [INFO] [Thread-67195 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85787479, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104388162307842, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7338679, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.75363, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:34:26.902966', telescope_ra_j2k=16.7079985259744, telescope_dec_j2k=-24.2073059178459, observability=1)
2025-11-17T10:35:27.044 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:27.045 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:27.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:27.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:27.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:27.046 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:27.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:27.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:27.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:27.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:27.047 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:35:27.047 [INFO] [ThreadPoolExecutor-2673_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:35:27.047 [INFO] [ThreadPoolExecutor-2673_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:35:31.489 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:35:31
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.086425542831421s
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:31.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:31.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:31.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7369672;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75673;2460996.85800337;10.59205472;1.3;_
2025-11-17T10:35:31.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.7369672;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75673;2460996.85800337;10.59205472;1.3;_
2025-11-17T10:35:31.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:31.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:31.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:31.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:31.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:31.492 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.7369672, teldec = -24.256605
2025-11-17T10:35:31.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7369672 -24.256605
2025-11-17T10:35:31.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7369672 -24.256605
2025-11-17T10:35:31.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7369672 -24.256605
2025-11-17T10:35:31.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7369672;-24.256605;50.108486;89.993093;50.08601;90.12017;13.75673;2460996.85800339;10.59205472;1.3;_16.7110965248511 -24.2074142637718
2025-11-17T10:35:31.493 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.7110965248511     dec_j2k = -24.2074142637718
2025-11-17T10:35:31.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:31.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:31.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:31.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104388242531728;171.162357330327;_
2025-11-17T10:35:31.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104388242531728;171.162357330327;_
2025-11-17T10:35:31.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:31.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:31.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:31.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:35:31.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46193)
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:31.500 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:31.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:31.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:31.507 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:31.507 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:31.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:31.508 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:31.508 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:31.508 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:31.508 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:31.508 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85800337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104388242531728, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108486, telescope_az=89.993093, telescope_ra=16.7369672, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.75673, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7110965248511, telescope_dec_j2k=-24.2074142637718, observability=1)
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Status age = 6.937950611114502s
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:38.446 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:38.447 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:38.448 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 17;16.7388908;-24.256605;50.108485;89.993093;50.08601;90.12017;13.75865;2460996.85808389;10.59397306;1.3;_
2025-11-17T10:35:38.448 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response 17;16.7388908;-24.256605;50.108485;89.993093;50.08601;90.12017;13.75865;2460996.85808389;10.59397306;1.3;_
2025-11-17T10:35:38.448 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:38.448 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:38.448 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:38.449 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:38.449 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:38.449 [INFO] [Thread-67196 (handle)] [driver.py] [get_status()] Telra = 16.7388908, teldec = -24.256605
2025-11-17T10:35:38.449 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7388908 -24.256605
2025-11-17T10:35:38.449 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7388908 -24.256605
2025-11-17T10:35:38.449 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7388908 -24.256605
2025-11-17T10:35:38.450 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 17;16.7388908;-24.256605;50.108485;89.993093;50.08601;90.12017;13.75865;2460996.85808391;10.59397306;1.3;_16.7130193185127 -24.2074815260519
2025-11-17T10:35:38.450 [INFO] [Thread-67196 (handle)] [driver.py] [get_status()] ra_j2k = 16.7130193185127     dec_j2k = -24.2074815260519
2025-11-17T10:35:38.450 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 140;0.104388523315327;171.162346601491;_
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response 140;0.104388523315327;171.162346601491;_
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:38.451 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:38.452 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:38.452 [DEBUG] [Thread-67196 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:38.452 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:38.452 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:38.452 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:38.453 [DEBUG] [Thread-67196 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:38.453 [DEBUG] [Thread-67196 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:38.453 [DEBUG] [Thread-67196 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:38.459 [DEBUG] [Thread-67196 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53543)
2025-11-17T10:35:38.459 [DEBUG] [Thread-67196 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:38.459 [DEBUG] [Thread-67196 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:38.459 [DEBUG] [Thread-67196 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:38.459 [DEBUG] [Thread-67196 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:38.460 [DEBUG] [Thread-67196 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:38.467 [DEBUG] [Thread-67196 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:38.467 [INFO] [Thread-67196 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85808389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104388523315327, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108485, telescope_az=89.993093, telescope_ra=16.7388908, telescope_dec=-24.256605, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.75865, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7130193185127, telescope_dec_j2k=-24.2074815260519, observability=1)
2025-11-17T10:35:47.922 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.922 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.922 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:47.922 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:47.922 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:35:47.923 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:47.924 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:47.925 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.926 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.927 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:35:47.927 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:35:47.927 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:35:47.927 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.927 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:47.928 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:47.928 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:47.928 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:47.928 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Park
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:35:47.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 29;16.7415325;-24.256604;50.108485;89.993093;50.08601;90.12017;13.76129;2460996.85819362;10.5966075;1.3;_Park Command Successful
2025-11-17T10:35:48.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:35:48.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:35:48.929 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:35:48.930 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:35:48.930 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:35:49.930 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:35:49.930 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:35:49.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:35:49.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:35:49.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:35:50.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:35:50.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:35:50.931 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:35:50.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:35:50.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:51.932 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:35:51.933 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:35:51.934 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:52.934 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:52.934 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:52.934 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:52.934 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:52.934 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:52.935 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:52.935 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:35:52.936 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:35:52.937 [DEBUG] [ThreadPoolExecutor-2672_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:52.937 [INFO] [ThreadPoolExecutor-2672_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Status age = 18.046181201934814s
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:35:56.513 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:35:56.514 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:35:56.515 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 17;16.7439326;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76369;2460996.858293;10.59900111;1.3;_
2025-11-17T10:35:56.515 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response 17;16.7439326;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76369;2460996.858293;10.59900111;1.3;_
2025-11-17T10:35:56.515 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:35:56.515 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:35:56.515 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:35:56.516 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:56.516 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:35:56.516 [INFO] [Thread-67197 (handle)] [driver.py] [get_status()] Telra = 16.7439326, teldec = -24.256604
2025-11-17T10:35:56.516 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7439326 -24.256604
2025-11-17T10:35:56.516 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7439326 -24.256604
2025-11-17T10:35:56.517 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7439326 -24.256604
2025-11-17T10:35:56.517 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 17;16.7439326;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76369;2460996.85829302;10.59900111;1.3;_16.7180590096749 -24.2076568826346
2025-11-17T10:35:56.517 [INFO] [Thread-67197 (handle)] [driver.py] [get_status()] ra_j2k = 16.7180590096749     dec_j2k = -24.2076568826346
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 140;0.104388643651156;171.162362694745;_
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response 140;0.104388643651156;171.162362694745;_
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:56.518 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:56.519 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:56.519 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:56.519 [DEBUG] [Thread-67197 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:56.519 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:35:56.520 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:35:56.520 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:35:56.520 [DEBUG] [Thread-67197 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:56.521 [DEBUG] [Thread-67197 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:35:56.521 [DEBUG] [Thread-67197 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:35:56.526 [DEBUG] [Thread-67197 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57195)
2025-11-17T10:35:56.527 [DEBUG] [Thread-67197 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:35:56.527 [DEBUG] [Thread-67197 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:35:56.527 [DEBUG] [Thread-67197 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:35:56.527 [DEBUG] [Thread-67197 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:35:56.527 [DEBUG] [Thread-67197 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:35:56.533 [DEBUG] [Thread-67197 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:35:56.533 [DEBUG] [Thread-67197 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:56.533 [DEBUG] [Thread-67197 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:35:56.534 [DEBUG] [Thread-67197 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:35:56.534 [INFO] [Thread-67197 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.858293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104388643651156, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108485, telescope_az=89.993092, telescope_ra=16.7439326, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.76369, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7180590096749, telescope_dec_j2k=-24.2076568826346, observability=1)
2025-11-17T10:35:56.868 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:35:56.868 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.33416295051574707s
2025-11-17T10:35:56.868 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.33416295051574707
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Status age = 7.40484881401062s
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:03.939 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 17;16.7459961;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76576;2460996.85837894;10.60105889;1.3;_
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response 17;16.7459961;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76576;2460996.85837894;10.60105889;1.3;_
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:03.940 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:03.941 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:03.941 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:03.941 [INFO] [Thread-67198 (handle)] [driver.py] [get_status()] Telra = 16.7459961, teldec = -24.256604
2025-11-17T10:36:03.941 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7459961 -24.256604
2025-11-17T10:36:03.941 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7459961 -24.256604
2025-11-17T10:36:03.941 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7459961 -24.256604
2025-11-17T10:36:03.942 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 17;16.7459961;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76576;2460996.85837896;10.60105889;1.3;_16.7201216483371 -24.2077290867981
2025-11-17T10:36:03.942 [INFO] [Thread-67198 (handle)] [driver.py] [get_status()] ra_j2k = 16.7201216483371     dec_j2k = -24.2077290867981
2025-11-17T10:36:03.942 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:03.942 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:03.942 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 140;0.104389686561669;171.162351965909;_
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response 140;0.104389686561669;171.162351965909;_
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:03.943 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:03.944 [DEBUG] [Thread-67198 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:03.944 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:03.944 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:03.944 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:03.945 [DEBUG] [Thread-67198 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:03.945 [DEBUG] [Thread-67198 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:03.945 [DEBUG] [Thread-67198 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56943)
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:03.948 [DEBUG] [Thread-67198 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:03.956 [DEBUG] [Thread-67198 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:03.956 [INFO] [Thread-67198 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85837894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104389686561669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108485, telescope_az=89.993092, telescope_ra=16.7459961, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.76576, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7201216483371, telescope_dec_j2k=-24.2077290867981, observability=1)
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Status age = 10.658576488494873s
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:14.615 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:14.616 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:14.617 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 17;16.7489748;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76873;2460996.85850251;10.60402944;1.3;_
2025-11-17T10:36:14.617 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response 17;16.7489748;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76873;2460996.85850251;10.60402944;1.3;_
2025-11-17T10:36:14.617 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:14.617 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:14.617 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:14.618 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:14.618 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:14.618 [INFO] [Thread-67199 (handle)] [driver.py] [get_status()] Telra = 16.7489748, teldec = -24.256604
2025-11-17T10:36:14.618 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7489748 -24.256604
2025-11-17T10:36:14.618 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7489748 -24.256604
2025-11-17T10:36:14.618 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7489748 -24.256604
2025-11-17T10:36:14.619 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 17;16.7489748;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76873;2460996.85850253;10.60402944;1.3;_16.7230991068662 -24.207833340615
2025-11-17T10:36:14.619 [INFO] [Thread-67199 (handle)] [driver.py] [get_status()] ra_j2k = 16.7230991068662     dec_j2k = -24.207833340615
2025-11-17T10:36:14.619 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:14.619 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:14.619 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 140;0.104389165106412;171.162368059163;_
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response 140;0.104389165106412;171.162368059163;_
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:14.620 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:14.621 [DEBUG] [Thread-67199 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:14.622 [DEBUG] [Thread-67199 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59697)
2025-11-17T10:36:14.622 [DEBUG] [Thread-67199 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:14.623 [DEBUG] [Thread-67199 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:14.623 [DEBUG] [Thread-67199 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:14.623 [DEBUG] [Thread-67199 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:14.623 [DEBUG] [Thread-67199 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:14.630 [DEBUG] [Thread-67199 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:14.630 [INFO] [Thread-67199 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85850251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104389165106412, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108485, telescope_az=89.993092, telescope_ra=16.7489748, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.76873, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7230991068662, telescope_dec_j2k=-24.207833340615, observability=1)
2025-11-17T10:36:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.19391512870788574s
2025-11-17T10:36:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.19391512870788574
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.008563995361328s
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:16.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:16.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:16.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7495346;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76929;2460996.85852594;10.60458778;1.3;_
2025-11-17T10:36:16.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.7495346;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76929;2460996.85852594;10.60458778;1.3;_
2025-11-17T10:36:16.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:16.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:16.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:16.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:16.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:16.642 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.7495346, teldec = -24.256604
2025-11-17T10:36:16.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.7495346 -24.256604
2025-11-17T10:36:16.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.7495346 -24.256604
2025-11-17T10:36:16.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7495346 -24.256604
2025-11-17T10:36:16.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7495346;-24.256604;50.108485;89.993092;50.08601;90.12017;13.76929;2460996.85852596;10.60458778;1.3;_16.7236586738 -24.207852936883
2025-11-17T10:36:16.644 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7236586738     dec_j2k = -24.207852936883
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104390167904983;171.162357330327;_
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104390167904983;171.162357330327;_
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:16.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:16.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:16.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:16.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:16.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38557)
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:16.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:16.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:36:16.661 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85852594, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104390167904983, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108485, telescope_az=89.993092, telescope_ra=16.7495346, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.76929, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:35:27.044540', telescope_ra_j2k=16.7236586738, telescope_dec_j2k=-24.207852936883, observability=1)
2025-11-17T10:36:16.661 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.17231106758118 seconds ago
2025-11-17T10:36:27.190 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:27.190 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:27.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:27.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:27.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:27.191 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:27.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:27.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:27.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:27.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:27.192 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:36:27.192 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:36:27.193 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:36:27.194 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:28.194 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:36:28.195 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:28.196 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:28.197 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:28.197 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:28.197 [DEBUG] [ThreadPoolExecutor-2674_0] [payload.py] [to_registers()] [0]
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46503)
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:28.199 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:28.206 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:28.206 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:36:28.206 [DEBUG] [ThreadPoolExecutor-2674_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:36:28.206 [DEBUG] [ThreadPoolExecutor-2674_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:36:28.206 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:28.207 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:28.207 [DEBUG] [ThreadPoolExecutor-2674_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:31.568 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:36:31
2025-11-17T10:36:31.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.907455205917358s
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:31.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:31.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7537083;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77347;2460996.85869873;10.60875;1.3;_
2025-11-17T10:36:31.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.7537083;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77347;2460996.85869873;10.60875;1.3;_
2025-11-17T10:36:31.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:31.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:31.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:31.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:31.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:31.572 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.7537083, teldec = -24.256604
2025-11-17T10:36:31.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7537083 -24.256604
2025-11-17T10:36:31.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7537083 -24.256604
2025-11-17T10:36:31.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7537083 -24.256604
2025-11-17T10:36:31.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7537083;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77347;2460996.85869876;10.60875;1.3;_16.727830638611 -24.2079990745623
2025-11-17T10:36:31.573 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.727830638611     dec_j2k = -24.2079990745623
2025-11-17T10:36:31.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:31.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:31.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104389726673612;171.162362694745;_
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104389726673612;171.162362694745;_
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:31.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:31.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:31.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:36:31.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:36:31.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46797)
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:31.582 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:31.589 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:31.590 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:31.590 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85869873, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104389726673612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.7537083, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.77347, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.727830638611, telescope_dec_j2k=-24.2079990745623, observability=1)
2025-11-17T10:36:32.689 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Status age = 1.099919080734253s
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:32.690 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:32.691 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:32.692 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 17;16.7540166;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77378;2460996.85871171;10.6090575;1.3;_
2025-11-17T10:36:32.692 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response 17;16.7540166;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77378;2460996.85871171;10.6090575;1.3;_
2025-11-17T10:36:32.692 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:32.692 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:32.692 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:32.693 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:32.693 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:32.693 [INFO] [Thread-67200 (handle)] [driver.py] [get_status()] Telra = 16.7540166, teldec = -24.256604
2025-11-17T10:36:32.693 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7540166 -24.256604
2025-11-17T10:36:32.693 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7540166 -24.256604
2025-11-17T10:36:32.693 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7540166 -24.256604
2025-11-17T10:36:32.694 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 17;16.7540166;-24.256604;50.108484;89.993092;50.08601;90.12017;13.77378;2460996.85871174;10.6090575;1.3;_16.7281388106109 -24.2080098717221
2025-11-17T10:36:32.694 [INFO] [Thread-67200 (handle)] [driver.py] [get_status()] ra_j2k = 16.7281388106109     dec_j2k = -24.2080098717221
2025-11-17T10:36:32.694 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:32.694 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:32.694 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 140;0.104389646449726;171.162357330327;_
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response 140;0.104389646449726;171.162357330327;_
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:32.695 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:32.696 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:32.697 [DEBUG] [Thread-67200 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:32.697 [DEBUG] [Thread-67200 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:32.697 [DEBUG] [Thread-67200 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57749)
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:32.702 [DEBUG] [Thread-67200 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:32.709 [DEBUG] [Thread-67200 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:32.709 [INFO] [Thread-67200 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85871171, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104389646449726, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.7540166, telescope_dec=-24.256604, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.77378, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7281388106109, telescope_dec_j2k=-24.2080098717221, observability=1)
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Status age = 18.04728937149048s
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:50.757 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:50.758 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 17;16.7590292;-24.256603;50.108484;89.993092;50.08601;90.12017;13.77879;2460996.85892082;10.61405639;1.3;_
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response 17;16.7590292;-24.256603;50.108484;89.993092;50.08601;90.12017;13.77879;2460996.85892082;10.61405639;1.3;_
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:50.759 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:50.760 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:50.760 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:50.761 [INFO] [Thread-67201 (handle)] [driver.py] [get_status()] Telra = 16.7590292, teldec = -24.256603
2025-11-17T10:36:50.761 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7590292 -24.256603
2025-11-17T10:36:50.761 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7590292 -24.256603
2025-11-17T10:36:50.761 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7590292 -24.256603
2025-11-17T10:36:50.762 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 17;16.7590573;-24.256603;50.108484;89.993092;50.08601;90.12017;13.77882;2460996.85892086;10.61408444;1.3;_16.7331493330181 -24.2081844665306
2025-11-17T10:36:50.762 [INFO] [Thread-67201 (handle)] [driver.py] [get_status()] ra_j2k = 16.7331493330181     dec_j2k = -24.2081844665306
2025-11-17T10:36:50.762 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:50.762 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:50.762 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 140;0.104390689360239;171.162368059163;_
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response 140;0.104390689360239;171.162368059163;_
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:50.763 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:50.764 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:50.765 [DEBUG] [Thread-67201 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:50.765 [DEBUG] [Thread-67201 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:50.765 [DEBUG] [Thread-67201 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:50.768 [DEBUG] [Thread-67201 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33547)
2025-11-17T10:36:50.769 [DEBUG] [Thread-67201 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:50.769 [DEBUG] [Thread-67201 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:50.769 [DEBUG] [Thread-67201 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:50.769 [DEBUG] [Thread-67201 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:50.769 [DEBUG] [Thread-67201 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:50.776 [DEBUG] [Thread-67201 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:50.777 [DEBUG] [Thread-67201 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:50.777 [INFO] [Thread-67201 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85892082, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104390689360239, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.7590292, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.77879, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7331493330181, telescope_dec_j2k=-24.2081844665306, observability=1)
2025-11-17T10:36:53.207 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:53.207 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:53.207 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:53.207 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:53.207 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:53.208 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:36:53.209 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:36:53.210 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:55.956 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:36:55.956 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.179348468780518s
2025-11-17T10:36:55.956 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:36:55.956 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:36:55.956 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:36:55.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:36:55.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.760486;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78025;2460996.858981;10.61550917;1.3;_
2025-11-17T10:36:55.958 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.760486;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78025;2460996.858981;10.61550917;1.3;_
2025-11-17T10:36:55.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:36:55.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:36:55.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:36:55.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:55.959 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:36:55.959 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.760486, teldec = -24.256603
2025-11-17T10:36:55.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.760486 -24.256603
2025-11-17T10:36:55.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.760486 -24.256603
2025-11-17T10:36:55.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.760486 -24.256603
2025-11-17T10:36:55.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.760486;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78025;2460996.85898102;10.61550917;1.3;_16.734605530343 -24.2082355152723
2025-11-17T10:36:55.960 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.734605530343     dec_j2k = -24.2082355152723
2025-11-17T10:36:55.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:36:55.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104390729472182;171.162357330327;_
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104390729472182;171.162357330327;_
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:55.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:55.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:55.962 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:55.962 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:55.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:36:55.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:36:55.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:36:55.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:55.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:36:55.963 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39579)
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:36:55.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:36:55.975 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:36:55.975 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:55.975 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:36:55.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:36:55.976 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.858981, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104390729472182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.760486, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.78025, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.734605530343, telescope_dec_j2k=-24.2082355152723, observability=1)
2025-11-17T10:37:03.990 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:03.990 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Status age = 8.014557361602783s
2025-11-17T10:37:03.990 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:03.990 [DEBUG] [Thread-67202 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:03.991 [DEBUG] [Thread-67202 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:03.991 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:03.991 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:03.991 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:03.992 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:03.993 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 17;16.7627407;-24.256603;50.108484;89.993092;50.08601;90.12017;13.7825;2460996.85907399;10.61775778;1.3;_
2025-11-17T10:37:03.993 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response 17;16.7627407;-24.256603;50.108484;89.993092;50.08601;90.12017;13.7825;2460996.85907399;10.61775778;1.3;_
2025-11-17T10:37:03.993 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:03.993 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:03.993 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:03.994 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:03.994 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:03.994 [INFO] [Thread-67202 (handle)] [driver.py] [get_status()] Telra = 16.7627407, teldec = -24.256603
2025-11-17T10:37:03.994 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7627407 -24.256603
2025-11-17T10:37:03.994 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7627407 -24.256603
2025-11-17T10:37:03.994 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7627407 -24.256603
2025-11-17T10:37:03.995 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 17;16.7627407;-24.256603;50.108484;89.993092;50.08601;90.12017;13.7825;2460996.85907402;10.61775778;1.3;_16.7368592986309 -24.208314538005
2025-11-17T10:37:03.995 [INFO] [Thread-67202 (handle)] [driver.py] [get_status()] ra_j2k = 16.7368592986309     dec_j2k = -24.208314538005
2025-11-17T10:37:03.995 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:03.995 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:03.995 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 140;0.104391371263267;171.162362694745;_
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response 140;0.104391371263267;171.162362694745;_
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:03.996 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:03.997 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:03.998 [DEBUG] [Thread-67202 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:03.998 [DEBUG] [Thread-67202 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:03.998 [DEBUG] [Thread-67202 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42315)
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:04.005 [DEBUG] [Thread-67202 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:04.012 [DEBUG] [Thread-67202 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:04.012 [INFO] [Thread-67202 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85907399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104391371263267, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.7627407, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.7825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7368592986309, telescope_dec_j2k=-24.208314538005, observability=1)
2025-11-17T10:37:08.870 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:08.870 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Status age = 4.858142614364624s
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:08.871 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:08.872 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:08.873 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 17;16.7640788;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78384;2460996.85913047;10.61909222;1.3;_
2025-11-17T10:37:08.873 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response 17;16.7640788;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78384;2460996.85913047;10.61909222;1.3;_
2025-11-17T10:37:08.873 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:08.873 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:08.873 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:08.874 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:08.874 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:08.874 [INFO] [Thread-67203 (handle)] [driver.py] [get_status()] Telra = 16.7640788, teldec = -24.256603
2025-11-17T10:37:08.874 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7640788 -24.256603
2025-11-17T10:37:08.874 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7640788 -24.256603
2025-11-17T10:37:08.874 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7640788 -24.256603
2025-11-17T10:37:08.875 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 17;16.7640788;-24.256603;50.108484;89.993092;50.08601;90.12017;13.78384;2460996.8591305;10.61909222;1.3;_16.7381968462913 -24.2083614438989
2025-11-17T10:37:08.875 [INFO] [Thread-67203 (handle)] [driver.py] [get_status()] ra_j2k = 16.7381968462913     dec_j2k = -24.2083614438989
2025-11-17T10:37:08.875 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:08.875 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 140;0.104391250927438;171.162357330327;_
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response 140;0.104391250927438;171.162357330327;_
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:08.876 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:08.877 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:08.878 [DEBUG] [Thread-67203 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:08.878 [DEBUG] [Thread-67203 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:08.878 [DEBUG] [Thread-67203 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45227)
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:08.885 [DEBUG] [Thread-67203 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:08.892 [DEBUG] [Thread-67203 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:08.893 [INFO] [Thread-67203 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85913047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104391250927438, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108484, telescope_az=89.993092, telescope_ra=16.7640788, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.78384, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7381968462913, telescope_dec_j2k=-24.2083614438989, observability=1)
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.907371282577515s
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:14.800 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:14.801 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7657531;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78551;2460996.8591991;10.62076194;1.3;_
2025-11-17T10:37:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.7657531;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78551;2460996.8591991;10.62076194;1.3;_
2025-11-17T10:37:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:14.802 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:14.803 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.7657531, teldec = -24.256603
2025-11-17T10:37:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7657531 -24.256603
2025-11-17T10:37:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7657531 -24.256603
2025-11-17T10:37:14.803 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7657531 -24.256603
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7657531;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78551;2460996.85919912;10.62076194;1.3;_16.73987045581 -24.2084201435329
2025-11-17T10:37:14.804 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.73987045581     dec_j2k = -24.2084201435329
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104391210815495;171.162351965909;_
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104391210815495;171.162351965909;_
2025-11-17T10:37:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53635)
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:14.811 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:14.818 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8591991, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104391210815495, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993092, telescope_ra=16.7657531, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.78551, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.73987045581, telescope_dec_j2k=-24.2084201435329, observability=1)
2025-11-17T10:37:16.721 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.903090238571167s
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:16.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:16.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:16.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7662796;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78604;2460996.85922134;10.62128694;1.3;_
2025-11-17T10:37:16.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.7662796;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78604;2460996.85922134;10.62128694;1.3;_
2025-11-17T10:37:16.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:16.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:16.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:16.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:16.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:16.725 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.7662796, teldec = -24.256603
2025-11-17T10:37:16.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.7662796 -24.256603
2025-11-17T10:37:16.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.7662796 -24.256603
2025-11-17T10:37:16.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7662796 -24.256603
2025-11-17T10:37:16.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7662796;-24.256603;50.108483;89.993092;50.08601;90.12017;13.78604;2460996.85922137;10.62128694;1.3;_16.7403967388273 -24.2084386041695
2025-11-17T10:37:16.726 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7403967388273     dec_j2k = -24.2084386041695
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104391692158809;171.162357330327;_
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104391692158809;171.162357330327;_
2025-11-17T10:37:16.727 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:16.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:16.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:16.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:16.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:16.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:16.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:16.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46039)
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:16.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:16.744 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:37:16.744 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85922134, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104391692158809, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993092, telescope_ra=16.7662796, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.78604, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7403967388273, telescope_dec_j2k=-24.2084386041695, observability=1)
2025-11-17T10:37:16.744 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.175878286361694 seconds ago
2025-11-17T10:37:26.937 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Status age = 10.193404912948608s
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:26.938 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:26.939 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:26.940 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 17;16.7691229;-24.256603;50.108483;89.993091;50.08601;90.12017;13.78888;2460996.85933958;10.6241225;1.3;_
2025-11-17T10:37:26.940 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response 17;16.7691229;-24.256603;50.108483;89.993091;50.08601;90.12017;13.78888;2460996.85933958;10.6241225;1.3;_
2025-11-17T10:37:26.940 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:26.940 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:26.940 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:26.941 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:26.941 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:26.941 [INFO] [Thread-67204 (handle)] [driver.py] [get_status()] Telra = 16.7691229, teldec = -24.256603
2025-11-17T10:37:26.941 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7691229 -24.256603
2025-11-17T10:37:26.941 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7691229 -24.256603
2025-11-17T10:37:26.941 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7691229 -24.256603
2025-11-17T10:37:26.942 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 17;16.7691229;-24.256603;50.108483;89.993091;50.08601;90.12017;13.78888;2460996.85933961;10.6241225;1.3;_16.7432388682441 -24.208538314831
2025-11-17T10:37:26.942 [INFO] [Thread-67204 (handle)] [driver.py] [get_status()] ra_j2k = 16.7432388682441     dec_j2k = -24.208538314831
2025-11-17T10:37:26.942 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:26.942 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:26.942 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 140;0.104392093278237;171.162368059163;_
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response 140;0.104392093278237;171.162368059163;_
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:26.943 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:26.944 [DEBUG] [Thread-67204 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:26.945 [DEBUG] [Thread-67204 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60999)
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:26.947 [DEBUG] [Thread-67204 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:26.954 [DEBUG] [Thread-67204 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:26.955 [INFO] [Thread-67204 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85933958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104392093278237, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993091, telescope_ra=16.7691229, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.78888, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:36:27.189786', telescope_ra_j2k=16.7432388682441, telescope_dec_j2k=-24.208538314831, observability=1)
2025-11-17T10:37:27.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:27.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:27.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:27.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:27.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:27.332 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:27.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:27.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:27.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:27.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:27.333 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:37:27.333 [INFO] [ThreadPoolExecutor-2675_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:37:27.333 [INFO] [ThreadPoolExecutor-2675_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:37:31.650 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:37:31
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.695428848266602s
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:31.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:31.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:31.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7704323;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79019;2460996.85939412;10.62542833;1.3;_
2025-11-17T10:37:31.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.7704323;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79019;2460996.85939412;10.62542833;1.3;_
2025-11-17T10:37:31.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:31.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:31.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:31.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:31.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:31.653 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.7704323, teldec = -24.256603
2025-11-17T10:37:31.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7704323 -24.256603
2025-11-17T10:37:31.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7704323 -24.256603
2025-11-17T10:37:31.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7704323 -24.256603
2025-11-17T10:37:31.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7704323;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79019;2460996.85939414;10.62542833;1.3;_16.7445477298503 -24.208584242897
2025-11-17T10:37:31.654 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.7445477298503     dec_j2k = -24.208584242897
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104392454285722;171.162351965909;_
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104392454285722;171.162351965909;_
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:31.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:31.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:31.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:31.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:31.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:31.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:31.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:31.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:31.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:31.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:31.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58909)
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:31.664 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:31.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:31.672 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85939412, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104392454285722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993091, telescope_ra=16.7704323, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.79019, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7445477298503, telescope_dec_j2k=-24.208584242897, observability=1)
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Status age = 13.332201957702637s
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:45.004 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:45.005 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:45.006 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 17;16.7741645;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79392;2460996.85954868;10.62915028;1.3;_
2025-11-17T10:37:45.006 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response 17;16.7741645;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79392;2460996.85954868;10.62915028;1.3;_
2025-11-17T10:37:45.006 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:45.006 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:45.006 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:45.007 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:45.007 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:45.007 [INFO] [Thread-67205 (handle)] [driver.py] [get_status()] Telra = 16.7741645, teldec = -24.256603
2025-11-17T10:37:45.007 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7741645 -24.256603
2025-11-17T10:37:45.007 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7741645 -24.256603
2025-11-17T10:37:45.007 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7741645 -24.256603
2025-11-17T10:37:45.008 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 17;16.7741645;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79392;2460996.8595487;10.62915028;1.3;_16.7482783976292 -24.2087151840084
2025-11-17T10:37:45.008 [INFO] [Thread-67205 (handle)] [driver.py] [get_status()] ra_j2k = 16.7482783976292     dec_j2k = -24.2087151840084
2025-11-17T10:37:45.008 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:45.008 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:45.008 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 140;0.104393096076807;171.162351965909;_
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response 140;0.104393096076807;171.162351965909;_
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:45.009 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:45.010 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:45.010 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:45.010 [DEBUG] [Thread-67205 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:45.010 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:45.010 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:45.011 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:45.011 [DEBUG] [Thread-67205 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:45.011 [DEBUG] [Thread-67205 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:45.011 [DEBUG] [Thread-67205 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60147)
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:45.012 [DEBUG] [Thread-67205 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:45.019 [DEBUG] [Thread-67205 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:45.019 [DEBUG] [Thread-67205 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:45.019 [DEBUG] [Thread-67205 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:45.019 [DEBUG] [Thread-67205 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:45.019 [DEBUG] [Thread-67205 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:45.020 [DEBUG] [Thread-67205 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:45.020 [DEBUG] [Thread-67205 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:45.020 [DEBUG] [Thread-67205 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:45.020 [DEBUG] [Thread-67205 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:45.020 [INFO] [Thread-67205 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.85954868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104393096076807, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993091, telescope_ra=16.7741645, telescope_dec=-24.256603, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.79392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7482783976292, telescope_dec_j2k=-24.2087151840084, observability=1)
2025-11-17T10:37:48.210 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.210 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.211 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:48.211 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:48.211 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:37:48.212 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:48.213 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:48.214 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:37:48.215 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:48.216 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Park
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:37:48.217 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:37:48.218 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 29;16.7750533;-24.256603;50.108483;89.993091;50.08601;90.12017;13.79481;2460996.85958586;10.63003667;1.3;_Park Command Successful
2025-11-17T10:37:49.218 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:37:49.218 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:37:49.218 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:37:49.219 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:37:49.219 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:37:50.219 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:37:50.219 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:37:50.219 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:37:50.220 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:37:50.220 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:37:51.221 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:37:51.221 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:37:51.221 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:37:51.221 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:37:51.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:52.222 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:52.223 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:52.223 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:52.223 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:52.223 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:52.223 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:37:52.224 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:53.225 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:53.225 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:53.225 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:53.225 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:53.225 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:37:53.226 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:37:53.227 [DEBUG] [ThreadPoolExecutor-2674_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:53.227 [INFO] [ThreadPoolExecutor-2674_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.04826545715332s
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:37:55.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:37:55.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:37:55.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.7769523;-24.256609;50.108483;89.993102;50.08601;90.12018;13.79671;2460996.85966516;10.63193028;1.3;_
2025-11-17T10:37:55.070 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.7769523;-24.256609;50.108483;89.993102;50.08601;90.12018;13.79671;2460996.85966516;10.63193028;1.3;_
2025-11-17T10:37:55.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:37:55.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:37:55.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:37:55.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:55.071 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:37:55.071 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.7769523, teldec = -24.256609
2025-11-17T10:37:55.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7769523 -24.256609
2025-11-17T10:37:55.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7769523 -24.256609
2025-11-17T10:37:55.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7769523 -24.256609
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.7769523;-24.256609;50.108483;89.993102;50.08601;90.12018;13.79671;2460996.85966519;10.63193028;1.3;_16.7510650542871 -24.2088190220388
2025-11-17T10:37:55.073 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.7510650542871     dec_j2k = -24.2088190220388
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104393978539549;171.162346601491;_
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104393978539549;171.162346601491;_
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:37:55.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:37:55.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:55.074 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:37:55.074 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57371)
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:37:55.079 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:37:55.086 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:37:55.086 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85966516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104393978539549, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108483, telescope_az=89.993102, telescope_ra=16.7769523, telescope_dec=-24.256609, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.79671, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7510650542871, telescope_dec_j2k=-24.2088190220388, observability=1)
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Status age = 8.023397207260132s
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:03.110 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:03.111 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:03.112 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 17;16.7792041;-24.256602;50.108482;89.993091;50.08601;90.12017;13.79896;2460996.85975824;10.63417611;1.3;_
2025-11-17T10:38:03.112 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response 17;16.7792041;-24.256602;50.108482;89.993091;50.08601;90.12017;13.79896;2460996.85975824;10.63417611;1.3;_
2025-11-17T10:38:03.112 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:03.112 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:03.112 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:03.113 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:03.113 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:03.113 [INFO] [Thread-67206 (handle)] [driver.py] [get_status()] Telra = 16.7792041, teldec = -24.256602
2025-11-17T10:38:03.113 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7792041 -24.256602
2025-11-17T10:38:03.113 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7792041 -24.256602
2025-11-17T10:38:03.113 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7792041 -24.256602
2025-11-17T10:38:03.114 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 17;16.7792041;-24.256602;50.108482;89.993091;50.08601;90.12017;13.79896;2460996.85975826;10.63417611;1.3;_16.7533159344238 -24.2088910685836
2025-11-17T10:38:03.114 [INFO] [Thread-67206 (handle)] [driver.py] [get_status()] ra_j2k = 16.7533159344238     dec_j2k = -24.2088910685836
2025-11-17T10:38:03.114 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:03.114 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:03.114 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 140;0.104394179099263;171.162357330327;_
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response 140;0.104394179099263;171.162357330327;_
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:03.115 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:03.116 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:03.117 [DEBUG] [Thread-67206 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:03.117 [DEBUG] [Thread-67206 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:03.117 [DEBUG] [Thread-67206 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:03.119 [DEBUG] [Thread-67206 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36345)
2025-11-17T10:38:03.119 [DEBUG] [Thread-67206 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:03.119 [DEBUG] [Thread-67206 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:03.119 [DEBUG] [Thread-67206 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:03.120 [DEBUG] [Thread-67206 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:03.120 [DEBUG] [Thread-67206 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:03.126 [DEBUG] [Thread-67206 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:03.127 [DEBUG] [Thread-67206 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:03.127 [INFO] [Thread-67206 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85975824, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104394179099263, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7792041, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.79896, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7533159344238, telescope_dec_j2k=-24.2088910685836, observability=1)
2025-11-17T10:38:04.052 [DEBUG] [Thread-67207 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:04.052 [DEBUG] [Thread-67207 (handle)] [server.py] [get_status()] Status age = 0.9254238605499268s
2025-11-17T10:38:04.052 [DEBUG] [Thread-67207 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9254238605499268
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.682142972946167s
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:14.810 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7824625;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80222;2460996.85989366;10.63742556;1.3;_
2025-11-17T10:38:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.7824625;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80222;2460996.85989366;10.63742556;1.3;_
2025-11-17T10:38:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:14.813 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.7824625, teldec = -24.256602
2025-11-17T10:38:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7824625 -24.256602
2025-11-17T10:38:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7824625 -24.256602
2025-11-17T10:38:14.813 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7824625 -24.256602
2025-11-17T10:38:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7824625;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80222;2460996.85989368;10.63742556;1.3;_16.7565730037261 -24.2090054802929
2025-11-17T10:38:14.814 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.7565730037261     dec_j2k = -24.2090054802929
2025-11-17T10:38:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:14.814 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104394219211206;171.162362694745;_
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104394219211206;171.162362694745;_
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:14.815 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:14.820 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57319)
2025-11-17T10:38:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:14.820 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:14.821 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:14.828 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:14.828 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85989366, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104394219211206, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7824625, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.80222, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7565730037261, telescope_dec_j2k=-24.2090054802929, observability=1)
2025-11-17T10:38:16.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:38:16.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.9762153625488281s
2025-11-17T10:38:16.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:16.804 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:16.804 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:16.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:16.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:16.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7830243;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80278;2460996.85991674;10.63798583;1.3;_
2025-11-17T10:38:16.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.7830243;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80278;2460996.85991674;10.63798583;1.3;_
2025-11-17T10:38:16.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:16.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:16.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:16.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:16.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:16.808 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.7830243, teldec = -24.256602
2025-11-17T10:38:16.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.7830243 -24.256602
2025-11-17T10:38:16.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.7830243 -24.256602
2025-11-17T10:38:16.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7830243 -24.256602
2025-11-17T10:38:16.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7830243;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80278;2460996.85991677;10.63798583;1.3;_16.7571345745633 -24.2090252102858
2025-11-17T10:38:16.809 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7571345745633     dec_j2k = -24.2090252102858
2025-11-17T10:38:16.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:16.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:16.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:16.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104394219211206;171.162351965909;_
2025-11-17T10:38:16.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104394219211206;171.162351965909;_
2025-11-17T10:38:16.810 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:16.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:16.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:16.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:16.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:16.812 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:16.812 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:16.812 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52109)
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:16.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:16.822 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:16.822 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:16.822 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:16.822 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:16.822 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:16.823 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:16.823 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:16.823 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:16.823 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:38:16.823 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85991674, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104394219211206, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7830243, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.80278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7571345745633, telescope_dec_j2k=-24.2090252102858, observability=1)
2025-11-17T10:38:16.823 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.173157691955566 seconds ago
2025-11-17T10:38:21.176 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:21.176 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Status age = 4.353551864624023s
2025-11-17T10:38:21.176 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:21.176 [DEBUG] [Thread-67208 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:21.177 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:21.178 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 17;16.7842212;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80398;2460996.85996734;10.63917944;1.3;_
2025-11-17T10:38:21.178 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response 17;16.7842212;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80398;2460996.85996734;10.63917944;1.3;_
2025-11-17T10:38:21.178 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:21.178 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:21.178 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:21.179 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:21.179 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:21.179 [INFO] [Thread-67208 (handle)] [driver.py] [get_status()] Telra = 16.7842212, teldec = -24.256602
2025-11-17T10:38:21.179 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7842212 -24.256602
2025-11-17T10:38:21.179 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7842212 -24.256602
2025-11-17T10:38:21.179 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7842212 -24.256602
2025-11-17T10:38:21.180 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 17;16.7842212;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80398;2460996.85996736;10.63917944;1.3;_16.7583309866034 -24.2090672480329
2025-11-17T10:38:21.180 [INFO] [Thread-67208 (handle)] [driver.py] [get_status()] ra_j2k = 16.7583309866034     dec_j2k = -24.2090672480329
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 140;0.104394981338119;171.162357330327;_
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response 140;0.104394981338119;171.162357330327;_
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:21.181 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:21.182 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:21.183 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:21.183 [DEBUG] [Thread-67208 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:21.183 [DEBUG] [Thread-67208 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:21.184 [DEBUG] [Thread-67208 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34683)
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:21.190 [DEBUG] [Thread-67208 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:21.197 [DEBUG] [Thread-67208 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:21.197 [INFO] [Thread-67208 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.85996734, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104394981338119, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7842212, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.80398, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:37:27.330979', telescope_ra_j2k=16.7583309866034, telescope_dec_j2k=-24.2090672480329, observability=1)
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:27.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:27.474 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:27.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:27.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:27.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:27.475 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:38:27.475 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:27.475 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:27.475 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:27.475 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:27.475 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:38:27.476 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:38:27.477 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:28.477 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:28.477 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:28.477 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:28.477 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:28.477 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:28.478 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:28.479 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:28.479 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:28.479 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:28.479 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:28.480 [DEBUG] [ThreadPoolExecutor-2676_0] [payload.py] [to_registers()] [0]
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57069)
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:28.481 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:28.488 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:28.488 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:38:28.488 [DEBUG] [ThreadPoolExecutor-2676_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:38:28.488 [DEBUG] [ThreadPoolExecutor-2676_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:38:28.488 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:28.489 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:28.489 [DEBUG] [ThreadPoolExecutor-2676_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:31.732 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:38:31
2025-11-17T10:38:31.732 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.53517484664917s
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:31.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:31.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:31.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7871776;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80694;2460996.86008953;10.64212778;1.3;_
2025-11-17T10:38:31.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.7871776;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80694;2460996.86008953;10.64212778;1.3;_
2025-11-17T10:38:31.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:31.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:31.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:31.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:31.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:31.736 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.7871776, teldec = -24.256602
2025-11-17T10:38:31.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7871776 -24.256602
2025-11-17T10:38:31.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7871776 -24.256602
2025-11-17T10:38:31.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7871776 -24.256602
2025-11-17T10:38:31.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.7871776;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80694;2460996.86008955;10.64212778;1.3;_16.7612861828681 -24.2091711037839
2025-11-17T10:38:31.737 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.7612861828681     dec_j2k = -24.2091711037839
2025-11-17T10:38:31.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:31.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:31.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104395021450062;171.162357330327;_
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104395021450062;171.162357330327;_
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:31.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:31.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:31.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:31.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:31.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57213)
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:31.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:31.753 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:31.754 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86008953, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104395021450062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7871776, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.80694, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7612861828681, telescope_dec_j2k=-24.2091711037839, observability=1)
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Status age = 7.494283437728882s
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:39.248 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 17;16.7892636;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80902;2460996.86017649;10.64420806;1.3;_
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response 17;16.7892636;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80902;2460996.86017649;10.64420806;1.3;_
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:39.249 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:39.250 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:39.250 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:39.250 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:39.251 [INFO] [Thread-67209 (handle)] [driver.py] [get_status()] Telra = 16.7892636, teldec = -24.256602
2025-11-17T10:38:39.251 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7892636 -24.256602
2025-11-17T10:38:39.251 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7892636 -24.256602
2025-11-17T10:38:39.251 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7892636 -24.256602
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 17;16.7892636;-24.256602;50.108482;89.993091;50.08601;90.12017;13.80902;2460996.86017652;10.64420806;1.3;_16.7633713348541 -24.2092444006891
2025-11-17T10:38:39.252 [INFO] [Thread-67209 (handle)] [driver.py] [get_status()] ra_j2k = 16.7633713348541     dec_j2k = -24.2092444006891
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 140;0.10439514178589;171.162341237072;_
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response 140;0.10439514178589;171.162341237072;_
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:39.252 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:39.253 [DEBUG] [Thread-67209 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34021)
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:39.259 [DEBUG] [Thread-67209 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:39.266 [DEBUG] [Thread-67209 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:39.267 [INFO] [Thread-67209 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86017649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10439514178589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108482, telescope_az=89.993091, telescope_ra=16.7892636, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.80902, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7633713348541, telescope_dec_j2k=-24.2092444006891, observability=1)
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:53.489 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:53.490 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:38:53.491 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:38:53.491 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:38:53.491 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.909720659255981s
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:54.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:54.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:54.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.7934157;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81318;2460996.86034928;10.64834889;1.3;_
2025-11-17T10:38:54.178 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.7934157;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81318;2460996.86034928;10.64834889;1.3;_
2025-11-17T10:38:54.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:54.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:54.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:54.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:54.179 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:54.179 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.7934157, teldec = -24.256602
2025-11-17T10:38:54.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7934157 -24.256602
2025-11-17T10:38:54.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7934157 -24.256602
2025-11-17T10:38:54.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7934157 -24.256602
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.7934157;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81318;2460996.86034931;10.64834889;1.3;_16.7675217501849 -24.2093903383741
2025-11-17T10:38:54.181 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.7675217501849     dec_j2k = -24.2093903383741
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104395583017261;171.162362694745;_
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104395583017261;171.162362694745;_
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:54.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:54.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:54.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:54.184 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:54.184 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37541)
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:54.190 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:54.197 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:54.198 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:54.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:54.198 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86034928, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104395583017261, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.7934157, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.81318, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7675217501849, telescope_dec_j2k=-24.2093903383741, observability=1)
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Status age = 3.170011043548584s
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:38:57.368 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:38:57.369 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:38:57.370 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 17;16.7943138;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81407;2460996.86038623;10.64924444;1.3;_
2025-11-17T10:38:57.370 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response 17;16.7943138;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81407;2460996.86038623;10.64924444;1.3;_
2025-11-17T10:38:57.370 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:38:57.370 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:38:57.370 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:38:57.371 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:57.371 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:38:57.371 [INFO] [Thread-67210 (handle)] [driver.py] [get_status()] Telra = 16.7943138, teldec = -24.256602
2025-11-17T10:38:57.371 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7943138 -24.256602
2025-11-17T10:38:57.371 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7943138 -24.256602
2025-11-17T10:38:57.371 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7943138 -24.256602
2025-11-17T10:38:57.372 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 17;16.7943138;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81407;2460996.86038625;10.64924444;1.3;_16.7684194863632 -24.2094219122588
2025-11-17T10:38:57.372 [INFO] [Thread-67210 (handle)] [driver.py] [get_status()] ra_j2k = 16.7684194863632     dec_j2k = -24.2094219122588
2025-11-17T10:38:57.372 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:38:57.372 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:38:57.372 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 140;0.104396264920289;171.162357330327;_
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response 140;0.104396264920289;171.162357330327;_
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:57.373 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:38:57.374 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:38:57.375 [DEBUG] [Thread-67210 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:57.375 [DEBUG] [Thread-67210 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:38:57.375 [DEBUG] [Thread-67210 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34287)
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:38:57.381 [DEBUG] [Thread-67210 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:38:57.388 [DEBUG] [Thread-67210 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:38:57.389 [DEBUG] [Thread-67210 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:38:57.389 [INFO] [Thread-67210 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86038623, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104396264920289, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.7943138, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.81407, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7684194863632, telescope_dec_j2k=-24.2094219122588, observability=1)
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Status age = 6.696842908859253s
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:04.086 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:04.087 [DEBUG] [Thread-67211 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:04.087 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:04.087 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:04.087 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:04.087 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:04.088 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 17;16.7961733;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81593;2460996.86046398;10.65109889;1.3;_
2025-11-17T10:39:04.088 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response 17;16.7961733;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81593;2460996.86046398;10.65109889;1.3;_
2025-11-17T10:39:04.088 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:04.088 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:04.088 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:04.089 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:04.089 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:04.089 [INFO] [Thread-67211 (handle)] [driver.py] [get_status()] Telra = 16.7961733, teldec = -24.256602
2025-11-17T10:39:04.089 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7961733 -24.256602
2025-11-17T10:39:04.089 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7961733 -24.256602
2025-11-17T10:39:04.089 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7961733 -24.256602
2025-11-17T10:39:04.090 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 17;16.7961733;-24.256602;50.108481;89.99309;50.08601;90.12017;13.81593;2460996.860464;10.65109889;1.3;_16.7702782337245 -24.2094872939288
2025-11-17T10:39:04.090 [INFO] [Thread-67211 (handle)] [driver.py] [get_status()] ra_j2k = 16.7702782337245     dec_j2k = -24.2094872939288
2025-11-17T10:39:04.090 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:04.090 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:04.090 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 140;0.104395542905318;171.162351965909;_
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response 140;0.104395542905318;171.162351965909;_
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:04.091 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:04.092 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:04.093 [DEBUG] [Thread-67211 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:04.093 [DEBUG] [Thread-67211 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:04.093 [DEBUG] [Thread-67211 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51919)
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:04.099 [DEBUG] [Thread-67211 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:04.107 [DEBUG] [Thread-67211 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:04.107 [INFO] [Thread-67211 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86046398, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104395542905318, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.7961733, telescope_dec=-24.256602, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.81593, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7702782337245, telescope_dec_j2k=-24.2094872939288, observability=1)
2025-11-17T10:39:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.710673332214355s
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7991578;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81892;2460996.86058819;10.65407528;1.3;_
2025-11-17T10:39:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.7991578;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81892;2460996.86058819;10.65407528;1.3;_
2025-11-17T10:39:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:14.821 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.7991578, teldec = -24.256601
2025-11-17T10:39:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.7991578 -24.256601
2025-11-17T10:39:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.7991578 -24.256601
2025-11-17T10:39:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7991578 -24.256601
2025-11-17T10:39:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.7991578;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81892;2460996.86058822;10.65407528;1.3;_16.7732615277522 -24.2095912555798
2025-11-17T10:39:14.822 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.7732615277522     dec_j2k = -24.2095912555798
2025-11-17T10:39:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104395944024747;171.162357330327;_
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104395944024747;171.162357330327;_
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:39:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:39:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56583)
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:14.838 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:14.839 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86058819, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104395944024747, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.7991578, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.81892, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7732615277522, telescope_dec_j2k=-24.2095912555798, observability=1)
2025-11-17T10:39:15.438 [DEBUG] [Thread-67212 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:15.438 [DEBUG] [Thread-67212 (handle)] [server.py] [get_status()] Status age = 0.5988199710845947s
2025-11-17T10:39:15.438 [DEBUG] [Thread-67212 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5988199710845947
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.0447309017181396s
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:16.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:16.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:16.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7997464;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81951;2460996.86061211;10.65466222;1.3;_
2025-11-17T10:39:16.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.7997464;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81951;2460996.86061211;10.65466222;1.3;_
2025-11-17T10:39:16.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:16.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:16.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:16.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:16.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:16.888 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.7997464, teldec = -24.256601
2025-11-17T10:39:16.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.7997464 -24.256601
2025-11-17T10:39:16.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.7997464 -24.256601
2025-11-17T10:39:16.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.7997464 -24.256601
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.7997464;-24.256601;50.108481;89.99309;50.08601;90.12017;13.81951;2460996.86061213;10.65466222;1.3;_16.7738498901402 -24.2096119594805
2025-11-17T10:39:16.889 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7738498901402     dec_j2k = -24.2096119594805
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104395863800861;171.162351965909;_
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104395863800861;171.162351965909;_
2025-11-17T10:39:16.889 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:16.890 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:16.891 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:16.891 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:16.891 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55975)
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:16.895 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:16.902 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:39:16.903 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86061211, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104395863800861, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.7997464, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.81951, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:38:27.472495', telescope_ra_j2k=16.7738498901402, telescope_dec_j2k=-24.2096119594805, observability=1)
2025-11-17T10:39:16.903 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.17020893096924 seconds ago
2025-11-17T10:39:27.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:27.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:27.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:27.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:27.620 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:27.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:27.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:27.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:27.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:27.621 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:39:27.621 [INFO] [ThreadPoolExecutor-2677_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:39:27.621 [INFO] [ThreadPoolExecutor-2677_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:39:31.814 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:39:31
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.912202596664429s
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:31.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8039178;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82368;2460996.86078491;10.65882222;1.3;_
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.8039178;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82368;2460996.86078491;10.65882222;1.3;_
2025-11-17T10:39:31.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:31.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:31.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:31.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:31.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:31.818 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.8039178, teldec = -24.256601
2025-11-17T10:39:31.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8039178 -24.256601
2025-11-17T10:39:31.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8039178 -24.256601
2025-11-17T10:39:31.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8039178 -24.256601
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8039178;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82368;2460996.86078494;10.65882222;1.3;_16.7780196086965 -24.2097587205227
2025-11-17T10:39:31.819 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.7780196086965     dec_j2k = -24.2097587205227
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104396505591946;171.162362694745;_
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104396505591946;171.162362694745;_
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:31.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:31.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:31.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:31.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:31.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:31.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54811)
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:31.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:31.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:31.833 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:31.833 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86078491, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104396505591946, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.8039178, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.82368, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7780196086965, telescope_dec_j2k=-24.2097587205227, observability=1)
2025-11-17T10:39:33.503 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:33.503 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Status age = 1.6705322265625s
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:33.504 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:33.505 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:33.506 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 17;16.8043668;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82413;2460996.86080447;10.65927;1.3;_
2025-11-17T10:39:33.506 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response 17;16.8043668;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82413;2460996.86080447;10.65927;1.3;_
2025-11-17T10:39:33.506 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:33.506 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:33.506 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:33.508 [INFO] [Thread-67213 (handle)] [driver.py] [get_status()] Telra = 16.8043668, teldec = -24.256601
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8043668 -24.256601
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8043668 -24.256601
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8043668 -24.256601
2025-11-17T10:39:33.508 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 17;16.8043668;-24.256601;50.108481;89.99309;50.08601;90.12017;13.82413;2460996.86080449;10.65927;1.3;_16.778468427972 -24.2097745209684
2025-11-17T10:39:33.508 [INFO] [Thread-67213 (handle)] [driver.py] [get_status()] ra_j2k = 16.778468427972     dec_j2k = -24.2097745209684
2025-11-17T10:39:33.509 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:33.509 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:33.509 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:33.509 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 140;0.104396264920289;171.162362694745;_
2025-11-17T10:39:33.509 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response 140;0.104396264920289;171.162362694745;_
2025-11-17T10:39:33.510 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:33.510 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:33.510 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:33.510 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:33.511 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:33.512 [DEBUG] [Thread-67213 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:39:33.512 [DEBUG] [Thread-67213 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:39:33.512 [DEBUG] [Thread-67213 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:39:33.515 [DEBUG] [Thread-67213 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43725)
2025-11-17T10:39:33.515 [DEBUG] [Thread-67213 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:33.515 [DEBUG] [Thread-67213 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:33.515 [DEBUG] [Thread-67213 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:33.516 [DEBUG] [Thread-67213 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:33.516 [DEBUG] [Thread-67213 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:33.523 [DEBUG] [Thread-67213 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:33.523 [INFO] [Thread-67213 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86080447, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104396264920289, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108481, telescope_az=89.99309, telescope_ra=16.8043668, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.82413, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.778468427972, telescope_dec_j2k=-24.2097745209684, observability=1)
2025-11-17T10:39:48.492 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.492 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.492 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:48.492 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:48.492 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:39:48.493 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:48.494 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:48.495 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:39:48.496 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:48.497 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Park
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:39:48.498 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:39:48.499 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 29;16.8085474;-24.256601;50.10848;89.99309;50.08601;90.12017;13.82831;2460996.860978;10.66343917;1.3;_Park Command Successful
2025-11-17T10:39:49.499 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:39:49.499 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:39:49.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:39:49.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:39:49.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:39:50.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:39:50.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:39:50.500 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:39:50.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:39:50.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:39:51.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:39:51.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:39:51.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:39:51.501 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:39:51.502 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Status age = 18.116033792495728s
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:51.639 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:51.640 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 17;16.8094357;-24.256601;50.10848;89.99309;50.08601;90.12017;13.8292;2460996.86101436;10.664325;1.3;_
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response 17;16.8094357;-24.256601;50.10848;89.99309;50.08601;90.12017;13.8292;2460996.86101436;10.664325;1.3;_
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:51.641 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:51.642 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:51.642 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:51.642 [INFO] [Thread-67214 (handle)] [driver.py] [get_status()] Telra = 16.8094357, teldec = -24.256601
2025-11-17T10:39:51.642 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8094357 -24.256601
2025-11-17T10:39:51.642 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8094357 -24.256601
2025-11-17T10:39:51.642 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8094357 -24.256601
2025-11-17T10:39:51.643 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 17;16.8094357;-24.256601;50.10848;89.99309;50.08601;90.12017;13.8292;2460996.86101439;10.664325;1.3;_16.7835352912528 -24.2099529431091
2025-11-17T10:39:51.644 [INFO] [Thread-67214 (handle)] [driver.py] [get_status()] ra_j2k = 16.7835352912528     dec_j2k = -24.2099529431091
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 140;0.104398029845772;171.162346601491;_
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response 140;0.104398029845772;171.162346601491;_
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:51.644 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:51.645 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:51.646 [DEBUG] [Thread-67214 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:51.646 [DEBUG] [Thread-67214 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:51.646 [DEBUG] [Thread-67214 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54413)
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:51.652 [DEBUG] [Thread-67214 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:51.659 [DEBUG] [Thread-67214 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:51.659 [INFO] [Thread-67214 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86101436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104398029845772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8094357, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.8292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7835352912528, telescope_dec_j2k=-24.2099529431091, observability=1)
2025-11-17T10:39:52.502 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:39:52.502 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:39:52.502 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:39:52.502 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:52.503 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:39:52.504 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:39:52.505 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.6254003047943115s
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:39:53.285 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:39:53.286 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8098849;-24.256601;50.10848;89.99309;50.08601;90.12017;13.82964;2460996.8610334;10.66477306;1.3;_
2025-11-17T10:39:53.286 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8098849;-24.256601;50.10848;89.99309;50.08601;90.12017;13.82964;2460996.8610334;10.66477306;1.3;_
2025-11-17T10:39:53.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:39:53.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:39:53.287 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:39:53.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:53.288 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:39:53.288 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8098849, teldec = -24.256601
2025-11-17T10:39:53.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8098849 -24.256601
2025-11-17T10:39:53.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8098849 -24.256601
2025-11-17T10:39:53.288 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8098849 -24.256601
2025-11-17T10:39:53.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8098849;-24.256601;50.10848;89.99309;50.08601;90.12017;13.82964;2460996.86103344;10.66477306;1.3;_16.7839843110746 -24.2099687587431
2025-11-17T10:39:53.289 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.7839843110746     dec_j2k = -24.2099687587431
2025-11-17T10:39:53.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:39:53.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:39:53.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:39:53.289 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104397628726344;171.162357330327;_
2025-11-17T10:39:53.290 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104397628726344;171.162357330327;_
2025-11-17T10:39:53.290 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:39:53.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:53.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:53.290 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:39:53.291 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:39:53.292 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:53.292 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:39:53.292 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49747)
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:39:53.296 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:39:53.303 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:39:53.304 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8610334, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104397628726344, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8098849, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.82964, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7839843110746, telescope_dec_j2k=-24.2099687587431, observability=1)
2025-11-17T10:39:53.505 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:53.505 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:53.505 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:39:53.505 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:39:53.505 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:39:53.506 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:39:53.507 [DEBUG] [ThreadPoolExecutor-2676_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:39:53.507 [INFO] [ThreadPoolExecutor-2676_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Status age = 10.836827278137207s
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:04.140 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:04.141 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:04.142 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:04.142 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 17;16.8128968;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83266;2460996.86115905;10.66777667;1.3;_
2025-11-17T10:40:04.142 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response 17;16.8128968;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83266;2460996.86115905;10.66777667;1.3;_
2025-11-17T10:40:04.142 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:04.143 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:04.143 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:04.143 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:04.143 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:04.144 [INFO] [Thread-67215 (handle)] [driver.py] [get_status()] Telra = 16.8128968, teldec = -24.256601
2025-11-17T10:40:04.144 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8128968 -24.256601
2025-11-17T10:40:04.144 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8128968 -24.256601
2025-11-17T10:40:04.144 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8128968 -24.256601
2025-11-17T10:40:04.145 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 17;16.8128968;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83266;2460996.86115909;10.66777667;1.3;_16.7869950042928 -24.2100748201522
2025-11-17T10:40:04.145 [INFO] [Thread-67215 (handle)] [driver.py] [get_status()] ra_j2k = 16.7869950042928     dec_j2k = -24.2100748201522
2025-11-17T10:40:04.145 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:04.145 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:04.145 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 140;0.104398190293544;171.162362694745;_
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response 140;0.104398190293544;171.162362694745;_
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:04.146 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:04.147 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:04.148 [DEBUG] [Thread-67215 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:04.148 [DEBUG] [Thread-67215 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:04.148 [DEBUG] [Thread-67215 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:04.154 [DEBUG] [Thread-67215 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42847)
2025-11-17T10:40:04.155 [DEBUG] [Thread-67215 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:04.155 [DEBUG] [Thread-67215 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:04.155 [DEBUG] [Thread-67215 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:04.155 [DEBUG] [Thread-67215 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:04.155 [DEBUG] [Thread-67215 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:04.162 [DEBUG] [Thread-67215 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:04.163 [INFO] [Thread-67215 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86115905, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104398190293544, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8128968, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.83266, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7869950042928, telescope_dec_j2k=-24.2100748201522, observability=1)
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Status age = 5.5393524169921875s
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:09.702 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:09.703 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 17;16.8144583;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83422;2460996.86122343;10.66933389;1.3;_
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response 17;16.8144583;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83422;2460996.86122343;10.66933389;1.3;_
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:09.704 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:09.705 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:09.705 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:09.705 [INFO] [Thread-67216 (handle)] [driver.py] [get_status()] Telra = 16.8144583, teldec = -24.256601
2025-11-17T10:40:09.705 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8144583 -24.256601
2025-11-17T10:40:09.705 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8144583 -24.256601
2025-11-17T10:40:09.705 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8144583 -24.256601
2025-11-17T10:40:09.706 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 17;16.8144583;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83422;2460996.86122345;10.66933389;1.3;_16.7885558795482 -24.2101298186945
2025-11-17T10:40:09.706 [INFO] [Thread-67216 (handle)] [driver.py] [get_status()] ra_j2k = 16.7885558795482     dec_j2k = -24.2101298186945
2025-11-17T10:40:09.706 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:09.706 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:09.706 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 140;0.104397588614402;171.162351965909;_
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response 140;0.104397588614402;171.162351965909;_
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:09.707 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:09.708 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:09.709 [DEBUG] [Thread-67216 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:09.709 [DEBUG] [Thread-67216 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:09.709 [DEBUG] [Thread-67216 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56205)
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:09.714 [DEBUG] [Thread-67216 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:09.721 [DEBUG] [Thread-67216 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:09.722 [INFO] [Thread-67216 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86122343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104397588614402, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8144583, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.83422, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7885558795482, telescope_dec_j2k=-24.2101298186945, observability=1)
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.120502471923828s
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8158989;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83566;2460996.86128292;10.67077056;1.3;_
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.8158989;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83566;2460996.86128292;10.67077056;1.3;_
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:14.844 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.8158989, teldec = -24.256601
2025-11-17T10:40:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8158989 -24.256601
2025-11-17T10:40:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8158989 -24.256601
2025-11-17T10:40:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8158989 -24.256601
2025-11-17T10:40:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8158989;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83566;2460996.86128293;10.67077056;1.3;_16.7899959037222 -24.2101805660154
2025-11-17T10:40:14.846 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.7899959037222     dec_j2k = -24.2101805660154
2025-11-17T10:40:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104398310629372;171.162351965909;_
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104398310629372;171.162351965909;_
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58497)
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:14.862 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86128292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104398310629372, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8158989, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.83566, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7899959037222, telescope_dec_j2k=-24.2101805660154, observability=1)
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.1012825965881348s
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:16.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:16.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:16.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8164874;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83625;2460996.86130747;10.6713575;1.3;_
2025-11-17T10:40:16.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.8164874;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83625;2460996.86130747;10.6713575;1.3;_
2025-11-17T10:40:16.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:16.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:16.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:16.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:16.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:16.966 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.8164874, teldec = -24.256601
2025-11-17T10:40:16.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.8164874 -24.256601
2025-11-17T10:40:16.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.8164874 -24.256601
2025-11-17T10:40:16.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8164874 -24.256601
2025-11-17T10:40:16.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8164874;-24.256601;50.10848;89.99309;50.08601;90.12017;13.83625;2460996.86130749;10.6713575;1.3;_16.7905841686424 -24.2102012987715
2025-11-17T10:40:16.967 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.7905841686424     dec_j2k = -24.2102012987715
2025-11-17T10:40:16.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:16.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:16.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104398390853258;171.162362694745;_
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104398390853258;171.162362694745;_
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:16.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:16.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:16.970 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:16.970 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45279)
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:16.974 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:16.981 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:40:16.982 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86130747, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104398390853258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.99309, telescope_ra=16.8164874, telescope_dec=-24.256601, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.83625, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:39:27.619305', telescope_ra_j2k=16.7905841686424, telescope_dec_j2k=-24.2102012987715, observability=1)
2025-11-17T10:40:16.982 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.167229413986206 seconds ago
2025-11-17T10:40:27.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:27.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:27.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:27.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:27.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:27.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:27.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:27.763 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:27.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:27.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:27.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:27.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:27.764 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:40:27.764 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:27.764 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:27.764 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:27.764 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:27.764 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:40:27.765 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:40:27.766 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Status age = 10.847322463989258s
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:27.829 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:27.830 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:27.830 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 17;16.8195213;-24.2566;50.10848;89.993089;50.08601;90.12017;13.83928;2460996.86143323;10.67438306;1.3;_
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response 17;16.8195213;-24.2566;50.10848;89.993089;50.08601;90.12017;13.83928;2460996.86143323;10.67438306;1.3;_
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:27.831 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:27.832 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:27.832 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:27.833 [INFO] [Thread-67217 (handle)] [driver.py] [get_status()] Telra = 16.8195213, teldec = -24.2566
2025-11-17T10:40:27.833 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8195213 -24.2566
2025-11-17T10:40:27.833 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8195213 -24.2566
2025-11-17T10:40:27.833 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8195213 -24.2566
2025-11-17T10:40:27.834 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 17;16.8195213;-24.2566;50.10848;89.993089;50.08601;90.12017;13.83928;2460996.86143326;10.67438306;1.3;_16.793616858313 -24.210307200524
2025-11-17T10:40:27.834 [INFO] [Thread-67217 (handle)] [driver.py] [get_status()] ra_j2k = 16.793616858313     dec_j2k = -24.210307200524
2025-11-17T10:40:27.834 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:27.834 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:27.834 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 140;0.104398671636857;171.162368059163;_
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response 140;0.104398671636857;171.162368059163;_
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:27.835 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:27.836 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:27.837 [DEBUG] [Thread-67217 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:27.837 [DEBUG] [Thread-67217 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:27.837 [DEBUG] [Thread-67217 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55689)
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:27.840 [DEBUG] [Thread-67217 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:27.847 [DEBUG] [Thread-67217 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:27.848 [DEBUG] [Thread-67217 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:27.848 [DEBUG] [Thread-67217 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:27.848 [DEBUG] [Thread-67217 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:27.848 [INFO] [Thread-67217 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86143323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104398671636857, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10848, telescope_az=89.993089, telescope_ra=16.8195213, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.83928, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.793616858313, telescope_dec_j2k=-24.210307200524, observability=1)
2025-11-17T10:40:28.766 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:28.766 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:28.766 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:28.766 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:28.766 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:28.767 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:28.768 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:28.768 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:28.768 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:28.768 [DEBUG] [ThreadPoolExecutor-2678_0] [payload.py] [to_registers()] [0]
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38097)
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:28.775 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:28.782 [DEBUG] [ThreadPoolExecutor-2678_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:31.894 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:40:31
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.04626727104187s
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:31.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:31.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:31.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:31.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:31.896 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:31.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:31.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:31.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:31.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.820643;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8404;2460996.86148029;10.67550167;1.3;_
2025-11-17T10:40:31.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.820643;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8404;2460996.86148029;10.67550167;1.3;_
2025-11-17T10:40:31.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:31.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:31.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:31.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:31.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:31.898 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.820643, teldec = -24.2566
2025-11-17T10:40:31.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.820643 -24.2566
2025-11-17T10:40:31.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.820643 -24.2566
2025-11-17T10:40:31.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.820643 -24.2566
2025-11-17T10:40:31.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.820643;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8404;2460996.86148031;10.67550167;1.3;_16.794738111348 -24.210346732052
2025-11-17T10:40:31.899 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.794738111348     dec_j2k = -24.210346732052
2025-11-17T10:40:31.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:31.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:31.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.1043989925324;171.162351965909;_
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.1043989925324;171.162351965909;_
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:31.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:31.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:31.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:31.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:31.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:31.908 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45331)
2025-11-17T10:40:31.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:31.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:31.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:31.908 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:31.909 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:31.916 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:31.916 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86148029, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1043989925324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.820643, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.8404, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.794738111348, telescope_dec_j2k=-24.210346732052, observability=1)
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Status age = 13.990760326385498s
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:45.907 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:45.908 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:45.908 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:45.908 [DEBUG] [Thread-67218 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:45.908 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 17;16.8245434;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8443;2460996.86164247;10.67939139;1.3;_
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response 17;16.8245434;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8443;2460996.86164247;10.67939139;1.3;_
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:45.909 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:45.910 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:45.910 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:45.910 [INFO] [Thread-67218 (handle)] [driver.py] [get_status()] Telra = 16.8245434, teldec = -24.2566
2025-11-17T10:40:45.910 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8245434 -24.2566
2025-11-17T10:40:45.910 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8245434 -24.2566
2025-11-17T10:40:45.910 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8245434 -24.2566
2025-11-17T10:40:45.911 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 17;16.8245434;-24.2566;50.108479;89.993089;50.08601;90.12017;13.8443;2460996.86164249;10.67939139;1.3;_16.7986369596325 -24.2104842238113
2025-11-17T10:40:45.911 [INFO] [Thread-67218 (handle)] [driver.py] [get_status()] ra_j2k = 16.7986369596325     dec_j2k = -24.2104842238113
2025-11-17T10:40:45.911 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:45.911 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:45.911 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 140;0.104399193092114;171.162357330327;_
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response 140;0.104399193092114;171.162357330327;_
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:45.912 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:45.913 [DEBUG] [Thread-67218 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:45.917 [DEBUG] [Thread-67218 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37083)
2025-11-17T10:40:45.917 [DEBUG] [Thread-67218 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:45.918 [DEBUG] [Thread-67218 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:45.918 [DEBUG] [Thread-67218 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:45.918 [DEBUG] [Thread-67218 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:45.918 [DEBUG] [Thread-67218 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:45.924 [DEBUG] [Thread-67218 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:45.925 [DEBUG] [Thread-67218 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:45.925 [INFO] [Thread-67218 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86164247, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104399193092114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.8245434, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.8443, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.7986369596325, telescope_dec_j2k=-24.2104842238113, observability=1)
2025-11-17T10:40:52.390 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:40:52.390 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.46555233001709s
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:52.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:40:52.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:40:52.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8263477;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84611;2460996.86171751;10.68119083;1.3;_
2025-11-17T10:40:52.393 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8263477;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84611;2460996.86171751;10.68119083;1.3;_
2025-11-17T10:40:52.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:40:52.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:40:52.393 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:40:52.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:52.394 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:40:52.394 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8263477, teldec = -24.2566
2025-11-17T10:40:52.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8263477 -24.2566
2025-11-17T10:40:52.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8263477 -24.2566
2025-11-17T10:40:52.394 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8263477 -24.2566
2025-11-17T10:40:52.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8263477;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84611;2460996.86171753;10.68119083;1.3;_16.8004405431229 -24.2105478433284
2025-11-17T10:40:52.395 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8004405431229     dec_j2k = -24.2105478433284
2025-11-17T10:40:52.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:40:52.395 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104399754659313;171.162351965909;_
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104399754659313;171.162351965909;_
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:52.396 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:40:52.397 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:40:52.398 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:52.398 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:40:52.398 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:40:52.400 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42771)
2025-11-17T10:40:52.401 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:40:52.401 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:40:52.401 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:40:52.401 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:40:52.401 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:40:52.408 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:40:52.408 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86171751, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104399754659313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.8263477, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.84611, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.8004405431229, telescope_dec_j2k=-24.2105478433284, observability=1)
2025-11-17T10:40:53.782 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:53.783 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:53.783 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:53.783 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:53.783 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:40:53.784 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:40:53.785 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:40:53.786 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Status age = 11.553106307983398s
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:03.961 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:03.962 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:03.963 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 17;16.8295833;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84934;2460996.86185142;10.6844175;1.3;_
2025-11-17T10:41:03.963 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response 17;16.8295833;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84934;2460996.86185142;10.6844175;1.3;_
2025-11-17T10:41:03.963 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:03.963 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:03.963 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:03.964 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:03.964 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:03.964 [INFO] [Thread-67219 (handle)] [driver.py] [get_status()] Telra = 16.8295833, teldec = -24.2566
2025-11-17T10:41:03.964 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8295833 -24.2566
2025-11-17T10:41:03.964 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8295833 -24.2566
2025-11-17T10:41:03.964 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8295833 -24.2566
2025-11-17T10:41:03.965 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 17;16.8295833;-24.2566;50.108479;89.993089;50.08601;90.12017;13.84934;2460996.86185145;10.6844175;1.3;_16.8036748602931 -24.2106619568214
2025-11-17T10:41:03.965 [INFO] [Thread-67219 (handle)] [driver.py] [get_status()] ra_j2k = 16.8036748602931     dec_j2k = -24.2106619568214
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 140;0.104400436562341;171.162357330327;_
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response 140;0.104400436562341;171.162357330327;_
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:03.966 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:03.967 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:03.967 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:03.967 [DEBUG] [Thread-67219 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:03.968 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:03.968 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:03.968 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:03.969 [DEBUG] [Thread-67219 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:03.969 [DEBUG] [Thread-67219 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:03.969 [DEBUG] [Thread-67219 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:03.971 [DEBUG] [Thread-67219 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33905)
2025-11-17T10:41:03.971 [DEBUG] [Thread-67219 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:03.971 [DEBUG] [Thread-67219 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:03.971 [DEBUG] [Thread-67219 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:03.972 [DEBUG] [Thread-67219 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:03.972 [DEBUG] [Thread-67219 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:03.979 [DEBUG] [Thread-67219 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:03.979 [INFO] [Thread-67219 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86185142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104400436562341, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.8295833, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.84934, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.8036748602931, telescope_dec_j2k=-24.2106619568214, observability=1)
2025-11-17T10:41:04.197 [DEBUG] [Thread-67220 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:04.197 [DEBUG] [Thread-67220 (handle)] [server.py] [get_status()] Status age = 0.2175593376159668s
2025-11-17T10:41:04.197 [DEBUG] [Thread-67220 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2175593376159668
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.824581384658813s
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:14.804 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:14.805 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8325976;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85236;2460996.86197692;10.68742361;1.3;_
2025-11-17T10:41:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.8325976;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85236;2460996.86197692;10.68742361;1.3;_
2025-11-17T10:41:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:14.806 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:14.807 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.8325976, teldec = -24.2566
2025-11-17T10:41:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8325976 -24.2566
2025-11-17T10:41:14.807 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8325976 -24.2566
2025-11-17T10:41:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8325976 -24.2566
2025-11-17T10:41:14.808 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8325976;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85236;2460996.86197694;10.68742361;1.3;_16.806687967591 -24.2107682959407
2025-11-17T10:41:14.808 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.806687967591     dec_j2k = -24.2107682959407
2025-11-17T10:41:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:14.809 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104400236002627;171.162357330327;_
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104400236002627;171.162357330327;_
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:14.810 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:14.811 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:14.812 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51061)
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:14.813 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:14.820 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86197692, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104400236002627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.8325976, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.85236, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.806687967591, telescope_dec_j2k=-24.2107682959407, observability=1)
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2213101387023926s
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:17.042 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:17.043 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:17.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8332054;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85296;2460996.86200282;10.68802972;1.3;_
2025-11-17T10:41:17.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.8332054;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85296;2460996.86200282;10.68802972;1.3;_
2025-11-17T10:41:17.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:17.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:17.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:17.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:17.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:17.045 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.8332054, teldec = -24.2566
2025-11-17T10:41:17.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.8332054 -24.2566
2025-11-17T10:41:17.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.8332054 -24.2566
2025-11-17T10:41:17.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8332054 -24.2566
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8332054;-24.2566;50.108479;89.993089;50.08601;90.12017;13.85296;2460996.86200285;10.68802972;1.3;_16.8072955273751 -24.2107897415922
2025-11-17T10:41:17.046 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.8072955273751     dec_j2k = -24.2107897415922
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104400396450398;171.162357330327;_
2025-11-17T10:41:17.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104400396450398;171.162357330327;_
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:17.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:17.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:17.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:17.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:17.050 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36591)
2025-11-17T10:41:17.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:17.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:17.051 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:17.051 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:17.051 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:17.058 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:41:17.058 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86200282, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104400396450398, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108479, telescope_az=89.993089, telescope_ra=16.8332054, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.85296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.8072955273751, telescope_dec_j2k=-24.2107897415922, observability=1)
2025-11-17T10:41:17.058 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16427683830261 seconds ago
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Status age = 5.0320703983306885s
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:22.090 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:22.091 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:22.092 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 17;16.834627;-24.2566;50.108478;89.993089;50.08601;90.12017;13.85439;2460996.86206125;10.6894475;1.3;_
2025-11-17T10:41:22.092 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response 17;16.834627;-24.2566;50.108478;89.993089;50.08601;90.12017;13.85439;2460996.86206125;10.6894475;1.3;_
2025-11-17T10:41:22.092 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:22.092 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:22.092 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:22.093 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:22.093 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:22.093 [INFO] [Thread-67221 (handle)] [driver.py] [get_status()] Telra = 16.834627, teldec = -24.2566
2025-11-17T10:41:22.093 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] UnCookCoordinates 16.834627 -24.2566
2025-11-17T10:41:22.093 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.834627 -24.2566
2025-11-17T10:41:22.093 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.834627 -24.2566
2025-11-17T10:41:22.094 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 17;16.834627;-24.2566;50.108478;89.993089;50.08601;90.12017;13.85439;2460996.86206127;10.6894475;1.3;_16.8087165658934 -24.2108399060622
2025-11-17T10:41:22.094 [INFO] [Thread-67221 (handle)] [driver.py] [get_status()] ra_j2k = 16.8087165658934     dec_j2k = -24.2108399060622
2025-11-17T10:41:22.094 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:22.094 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:22.094 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 140;0.104400316226512;171.162368059163;_
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response 140;0.104400316226512;171.162368059163;_
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:22.095 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:22.096 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:22.097 [DEBUG] [Thread-67221 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:22.097 [DEBUG] [Thread-67221 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:22.097 [DEBUG] [Thread-67221 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59677)
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:22.100 [DEBUG] [Thread-67221 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:22.107 [DEBUG] [Thread-67221 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:22.107 [INFO] [Thread-67221 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86206125, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104400316226512, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993089, telescope_ra=16.834627, telescope_dec=-24.2566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.85439, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:40:27.761377', telescope_ra_j2k=16.8087165658934, telescope_dec_j2k=-24.2108399060622, observability=1)
2025-11-17T10:41:27.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:27.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:27.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:27.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:27.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:27.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:27.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:27.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:27.904 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:41:27.904 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:27.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:27.905 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:41:27.906 [INFO] [ThreadPoolExecutor-2679_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:41:27.906 [INFO] [ThreadPoolExecutor-2679_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:41:31.977 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:41:31
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.869592666625977s
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:31.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8373838;-24.256599;50.108478;89.993089;50.08601;90.12017;13.85714;2460996.86217567;10.69219667;1.3;_
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.8373838;-24.256599;50.108478;89.993089;50.08601;90.12017;13.85714;2460996.86217567;10.69219667;1.3;_
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:31.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:31.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:31.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:31.979 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.8373838, teldec = -24.256599
2025-11-17T10:41:31.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8373838 -24.256599
2025-11-17T10:41:31.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8373838 -24.256599
2025-11-17T10:41:31.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8373838 -24.256599
2025-11-17T10:41:31.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8373838;-24.256599;50.108478;89.993089;50.08601;90.12017;13.85714;2460996.86217569;10.69219667;1.3;_16.8114722787048 -24.2109362047585
2025-11-17T10:41:31.980 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.8114722787048     dec_j2k = -24.2109362047585
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10440071734594;171.162362694745;_
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10440071734594;171.162362694745;_
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:31.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:31.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:31.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:31.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:31.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40703)
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:31.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:31.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:31.994 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:31.994 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:31.995 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:31.995 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86217567, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10440071734594, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993089, telescope_ra=16.8373838, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.85714, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8114722787048, telescope_dec_j2k=-24.2109362047585, observability=1)
2025-11-17T10:41:40.157 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Status age = 8.162530183792114s
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:40.158 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 17;16.8396441;-24.256599;50.108478;89.993089;50.08601;90.12017;13.8594;2460996.86227036;10.69445083;1.3;_
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response 17;16.8396441;-24.256599;50.108478;89.993089;50.08601;90.12017;13.8594;2460996.86227036;10.69445083;1.3;_
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:40.159 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:40.160 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:40.160 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:40.160 [INFO] [Thread-67222 (handle)] [driver.py] [get_status()] Telra = 16.8396441, teldec = -24.256599
2025-11-17T10:41:40.160 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8396441 -24.256599
2025-11-17T10:41:40.160 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8396441 -24.256599
2025-11-17T10:41:40.161 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8396441 -24.256599
2025-11-17T10:41:40.161 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 17;16.8396441;-24.256599;50.108478;89.993089;50.08601;90.12017;13.8594;2460996.86227038;10.69445083;1.3;_16.8137316886031 -24.2110159981483
2025-11-17T10:41:40.161 [INFO] [Thread-67222 (handle)] [driver.py] [get_status()] ra_j2k = 16.8137316886031     dec_j2k = -24.2110159981483
2025-11-17T10:41:40.162 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:40.162 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:40.162 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 140;0.10440099812954;171.162362694745;_
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response 140;0.10440099812954;171.162362694745;_
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:40.163 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:40.164 [DEBUG] [Thread-67222 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:40.164 [DEBUG] [Thread-67222 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:40.164 [DEBUG] [Thread-67222 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:40.166 [DEBUG] [Thread-67222 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58329)
2025-11-17T10:41:40.167 [DEBUG] [Thread-67222 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:40.167 [DEBUG] [Thread-67222 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:40.167 [DEBUG] [Thread-67222 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:40.167 [DEBUG] [Thread-67222 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:40.167 [DEBUG] [Thread-67222 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:40.174 [DEBUG] [Thread-67222 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:40.174 [INFO] [Thread-67222 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86227036, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10440099812954, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993089, telescope_ra=16.8396441, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.8594, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8137316886031, telescope_dec_j2k=-24.2110159981483, observability=1)
2025-11-17T10:41:48.786 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.786 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.786 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:48.786 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:48.786 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:48.787 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.788 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:48.789 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.790 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:48.791 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:48.791 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:48.791 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:48.791 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Park
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:41:48.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 29;16.8420663;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86183;2460996.86237028;10.69686639;1.3;_Park Command Successful
2025-11-17T10:41:49.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:41:49.792 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:41:49.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:41:49.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:41:49.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:41:50.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:41:50.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:41:50.793 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:41:50.794 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:41:50.794 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:41:51.499 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.325486898422241s
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:51.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:51.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8428233;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86258;2460996.86240163;10.69762139;1.3;_
2025-11-17T10:41:51.501 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8428233;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86258;2460996.86240163;10.69762139;1.3;_
2025-11-17T10:41:51.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:51.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:51.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:51.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:51.502 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:51.503 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8428233, teldec = -24.256599
2025-11-17T10:41:51.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8428233 -24.256599
2025-11-17T10:41:51.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8428233 -24.256599
2025-11-17T10:41:51.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8428233 -24.256599
2025-11-17T10:41:51.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8428233;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86258;2460996.86240167;10.69762139;1.3;_16.8169096388351 -24.2111282584008
2025-11-17T10:41:51.504 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8169096388351     dec_j2k = -24.2111282584008
2025-11-17T10:41:51.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:51.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:51.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104402201487824;171.162357330327;_
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104402201487824;171.162357330327;_
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:51.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:51.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:51.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:51.507 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:51.507 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:51.509 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59725)
2025-11-17T10:41:51.509 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:51.510 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:51.510 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:51.510 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:51.510 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:51.517 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:51.517 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:51.517 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:51.517 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:51.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:51.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:51.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:51.518 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:51.518 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:51.518 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86240163, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402201487824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993088, telescope_ra=16.8428233, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.86258, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8169096388351, telescope_dec_j2k=-24.2111282584008, observability=1)
2025-11-17T10:41:51.794 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:41:51.794 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:41:51.795 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:41:51.796 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:41:51.796 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:41:52.796 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:41:52.796 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:41:52.796 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:52.797 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:52.798 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:52.798 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:41:52.798 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:41:52.798 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:41:52.799 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:53.799 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:53.799 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:53.799 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:53.799 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:53.799 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:41:53.800 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:41:53.801 [DEBUG] [ThreadPoolExecutor-2678_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:53.801 [INFO] [ThreadPoolExecutor-2678_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Status age = 6.714297533035278s
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:41:58.232 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:41:58.233 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:41:58.234 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 17;16.8446843;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86444;2460996.86247956;10.69947722;1.3;_
2025-11-17T10:41:58.234 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response 17;16.8446843;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86444;2460996.86247956;10.69947722;1.3;_
2025-11-17T10:41:58.234 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:41:58.234 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:41:58.234 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:41:58.235 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:58.235 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:41:58.235 [INFO] [Thread-67223 (handle)] [driver.py] [get_status()] Telra = 16.8446843, teldec = -24.256599
2025-11-17T10:41:58.235 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8446843 -24.256599
2025-11-17T10:41:58.235 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8446843 -24.256599
2025-11-17T10:41:58.235 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8446843 -24.256599
2025-11-17T10:41:58.236 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 17;16.8446843;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86444;2460996.86247958;10.69947722;1.3;_16.8187699084524 -24.2111939869109
2025-11-17T10:41:58.236 [INFO] [Thread-67223 (handle)] [driver.py] [get_status()] ra_j2k = 16.8187699084524     dec_j2k = -24.2111939869109
2025-11-17T10:41:58.236 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:41:58.236 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:41:58.236 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 140;0.104402602607252;171.162362694745;_
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response 140;0.104402602607252;171.162362694745;_
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:58.237 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:41:58.238 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:41:58.239 [DEBUG] [Thread-67223 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:58.239 [DEBUG] [Thread-67223 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:41:58.239 [DEBUG] [Thread-67223 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41213)
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:41:58.244 [DEBUG] [Thread-67223 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:41:58.251 [DEBUG] [Thread-67223 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:41:58.252 [INFO] [Thread-67223 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86247956, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402602607252, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993088, telescope_ra=16.8446843, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.86444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8187699084524, telescope_dec_j2k=-24.2111939869109, observability=1)
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Status age = 5.988804817199707s
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:04.240 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:04.241 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:04.241 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:04.241 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:04.242 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:04.243 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 17;16.8463569;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86612;2460996.86254911;10.70114528;1.3;_
2025-11-17T10:42:04.243 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response 17;16.8463569;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86612;2460996.86254911;10.70114528;1.3;_
2025-11-17T10:42:04.243 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:04.243 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:04.243 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:04.244 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:04.244 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:04.244 [INFO] [Thread-67224 (handle)] [driver.py] [get_status()] Telra = 16.8463569, teldec = -24.256599
2025-11-17T10:42:04.244 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8463569 -24.256599
2025-11-17T10:42:04.244 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8463569 -24.256599
2025-11-17T10:42:04.244 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8463569 -24.256599
2025-11-17T10:42:04.245 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 17;16.8463569;-24.256599;50.108478;89.993088;50.08601;90.12017;13.86612;2460996.86254913;10.70114528;1.3;_16.8204418527611 -24.2112530707842
2025-11-17T10:42:04.245 [INFO] [Thread-67224 (handle)] [driver.py] [get_status()] ra_j2k = 16.8204418527611     dec_j2k = -24.2112530707842
2025-11-17T10:42:04.245 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:04.245 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:04.245 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 140;0.104402201487824;171.162362694745;_
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response 140;0.104402201487824;171.162362694745;_
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:04.246 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:42:04.247 [DEBUG] [Thread-67224 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47487)
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:04.254 [DEBUG] [Thread-67224 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:04.261 [DEBUG] [Thread-67224 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:04.262 [DEBUG] [Thread-67224 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:04.262 [INFO] [Thread-67224 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86254911, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402201487824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108478, telescope_az=89.993088, telescope_ra=16.8463569, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.86612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8204418527611, telescope_dec_j2k=-24.2112530707842, observability=1)
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.554259538650513s
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:14.816 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:14.817 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8493155;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86908;2460996.86267149;10.70409583;1.3;_
2025-11-17T10:42:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.8493155;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86908;2460996.86267149;10.70409583;1.3;_
2025-11-17T10:42:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:14.819 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.8493155, teldec = -24.256599
2025-11-17T10:42:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8493155 -24.256599
2025-11-17T10:42:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8493155 -24.256599
2025-11-17T10:42:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8493155 -24.256599
2025-11-17T10:42:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8493155;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86908;2460996.86267153;10.70409583;1.3;_16.8233992946735 -24.2113576039195
2025-11-17T10:42:14.820 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.8233992946735     dec_j2k = -24.2113576039195
2025-11-17T10:42:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104402161375881;171.162357330327;_
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104402161375881;171.162357330327;_
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43505)
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:14.826 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:14.833 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86267149, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402161375881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8493155, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.86908, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8233992946735, telescope_dec_j2k=-24.2113576039195, observability=1)
2025-11-17T10:42:16.340 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:16.340 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Status age = 1.5070035457611084s
2025-11-17T10:42:16.340 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:16.340 [DEBUG] [Thread-67225 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:16.340 [DEBUG] [Thread-67225 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:16.341 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:16.342 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:16.342 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:16.342 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 17;16.8497264;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86949;2460996.86268914;10.70450556;1.3;_
2025-11-17T10:42:16.342 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response 17;16.8497264;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86949;2460996.86268914;10.70450556;1.3;_
2025-11-17T10:42:16.342 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:16.343 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:16.343 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:16.344 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:16.344 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:16.344 [INFO] [Thread-67225 (handle)] [driver.py] [get_status()] Telra = 16.8497264, teldec = -24.256599
2025-11-17T10:42:16.344 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8497264 -24.256599
2025-11-17T10:42:16.344 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8497264 -24.256599
2025-11-17T10:42:16.344 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8497264 -24.256599
2025-11-17T10:42:16.345 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 17;16.8497264;-24.256599;50.108477;89.993088;50.08601;90.12017;13.86949;2460996.86268918;10.70450556;1.3;_16.8238100340103 -24.2113721240284
2025-11-17T10:42:16.345 [INFO] [Thread-67225 (handle)] [driver.py] [get_status()] ra_j2k = 16.8238100340103     dec_j2k = -24.2113721240284
2025-11-17T10:42:16.345 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:16.345 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:16.345 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 140;0.104401960816167;171.162357330327;_
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response 140;0.104401960816167;171.162357330327;_
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:16.346 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:16.347 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:16.348 [DEBUG] [Thread-67225 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:16.348 [DEBUG] [Thread-67225 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:16.348 [DEBUG] [Thread-67225 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48039)
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:16.350 [DEBUG] [Thread-67225 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:16.357 [DEBUG] [Thread-67225 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:16.358 [DEBUG] [Thread-67225 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:16.358 [DEBUG] [Thread-67225 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:16.358 [DEBUG] [Thread-67225 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:16.358 [INFO] [Thread-67225 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86268914, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104401960816167, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8497264, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.86949, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:41:27.902693', telescope_ra_j2k=16.8238100340103, telescope_dec_j2k=-24.2113721240284, observability=1)
2025-11-17T10:42:17.118 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:42:17.118 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7604563236236572s
2025-11-17T10:42:17.118 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7604563236236572
2025-11-17T10:42:17.118 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14144992828369 seconds ago
2025-11-17T10:42:28.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:28.055 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:28.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:28.056 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:28.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:28.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:28.057 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:42:28.057 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:28.057 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:28.057 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:28.057 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:42:28.058 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:42:28.059 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:29.059 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:29.059 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:29.059 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:29.060 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:29.061 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:29.062 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:29.062 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:29.062 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:29.062 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:29.063 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:29.063 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:29.063 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:29.063 [DEBUG] [ThreadPoolExecutor-2680_0] [payload.py] [to_registers()] [0]
2025-11-17T10:42:29.067 [DEBUG] [ThreadPoolExecutor-2680_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60215)
2025-11-17T10:42:29.067 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:29.068 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:29.068 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:42:29.068 [DEBUG] [ThreadPoolExecutor-2680_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:29.068 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:29.075 [DEBUG] [ThreadPoolExecutor-2680_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:32.056 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:42:32
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.698415517807007s
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:32.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:32.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:32.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:32.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8541061;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87387;2460996.86287104;10.70887333;1.3;_
2025-11-17T10:42:32.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.8541061;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87387;2460996.86287104;10.70887333;1.3;_
2025-11-17T10:42:32.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:32.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:32.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:32.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:32.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:32.060 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.8541061, teldec = -24.256599
2025-11-17T10:42:32.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8541061 -24.256599
2025-11-17T10:42:32.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8541061 -24.256599
2025-11-17T10:42:32.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8541061 -24.256599
2025-11-17T10:42:32.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8541061;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87387;2460996.86287108;10.70887333;1.3;_16.8281880242007 -24.211526924309
2025-11-17T10:42:32.061 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.8281880242007     dec_j2k = -24.211526924309
2025-11-17T10:42:32.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:32.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:32.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104402642719195;171.162357330327;_
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104402642719195;171.162357330327;_
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:32.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:32.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:32.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:32.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:32.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57181)
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:32.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:32.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:32.075 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:32.075 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:32.075 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:32.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:32.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:32.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:32.076 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:32.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:32.076 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86287104, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402642719195, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8541061, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.87387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8281880242007, telescope_dec_j2k=-24.211526924309, observability=1)
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Status age = 2.3362491130828857s
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:34.412 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:34.413 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:34.413 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:34.414 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 17;16.8547685;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87453;2460996.86289831;10.70953389;1.3;_
2025-11-17T10:42:34.415 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response 17;16.8547685;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87453;2460996.86289831;10.70953389;1.3;_
2025-11-17T10:42:34.415 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:34.415 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:34.415 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:34.416 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:34.416 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:34.416 [INFO] [Thread-67226 (handle)] [driver.py] [get_status()] Telra = 16.8547685, teldec = -24.256599
2025-11-17T10:42:34.416 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8547685 -24.256599
2025-11-17T10:42:34.416 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8547685 -24.256599
2025-11-17T10:42:34.416 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8547685 -24.256599
2025-11-17T10:42:34.417 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 17;16.8547685;-24.256599;50.108477;89.993088;50.08601;90.12017;13.87453;2460996.86289834;10.70953389;1.3;_16.8288501660281 -24.2115503421099
2025-11-17T10:42:34.417 [INFO] [Thread-67226 (handle)] [driver.py] [get_status()] ra_j2k = 16.8288501660281     dec_j2k = -24.2115503421099
2025-11-17T10:42:34.417 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:34.417 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:34.417 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 140;0.104402963614737;171.162351965909;_
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response 140;0.104402963614737;171.162351965909;_
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:34.418 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:34.419 [DEBUG] [Thread-67226 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39581)
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:34.423 [DEBUG] [Thread-67226 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:34.430 [DEBUG] [Thread-67226 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:34.430 [DEBUG] [Thread-67226 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:34.430 [DEBUG] [Thread-67226 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:34.430 [DEBUG] [Thread-67226 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:34.430 [DEBUG] [Thread-67226 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:34.431 [DEBUG] [Thread-67226 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:34.431 [DEBUG] [Thread-67226 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:34.431 [DEBUG] [Thread-67226 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:34.431 [DEBUG] [Thread-67226 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:34.431 [INFO] [Thread-67226 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86289831, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104402963614737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8547685, telescope_dec=-24.256599, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.87453, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8288501660281, telescope_dec_j2k=-24.2115503421099, observability=1)
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.175248384475708s
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:50.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:50.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8592884;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87905;2460996.86308574;10.71404139;1.3;_
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8592884;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87905;2460996.86308574;10.71404139;1.3;_
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:50.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:50.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:50.609 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:50.609 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8592884, teldec = -24.256598
2025-11-17T10:42:50.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8592884 -24.256598
2025-11-17T10:42:50.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8592884 -24.256598
2025-11-17T10:42:50.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8592884 -24.256598
2025-11-17T10:42:50.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8592884;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87905;2460996.86308576;10.71404139;1.3;_16.8333683075485 -24.2117091711102
2025-11-17T10:42:50.610 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8333683075485     dec_j2k = -24.2117091711102
2025-11-17T10:42:50.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:50.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:50.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10440400652525;171.162351965909;_
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10440400652525;171.162351965909;_
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:50.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:50.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:50.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:50.613 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:50.613 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52301)
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:50.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:50.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:50.625 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:50.625 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:50.625 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86308574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10440400652525, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8592884, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.87905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8333683075485, telescope_dec_j2k=-24.2117091711102, observability=1)
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Status age = 1.844179391860962s
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:52.469 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:42:52.470 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:42:52.471 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 17;16.8597931;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87955;2460996.8631073;10.71454472;1.3;_
2025-11-17T10:42:52.471 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response 17;16.8597931;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87955;2460996.8631073;10.71454472;1.3;_
2025-11-17T10:42:52.471 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:42:52.471 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:42:52.471 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:42:52.472 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:52.472 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:42:52.472 [INFO] [Thread-67227 (handle)] [driver.py] [get_status()] Telra = 16.8597931, teldec = -24.256598
2025-11-17T10:42:52.472 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8597931 -24.256598
2025-11-17T10:42:52.472 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8597931 -24.256598
2025-11-17T10:42:52.472 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8597931 -24.256598
2025-11-17T10:42:52.473 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 17;16.8597931;-24.256598;50.108477;89.993088;50.08601;90.12017;13.87955;2460996.86310733;10.71454472;1.3;_16.833872811495 -24.2117270219069
2025-11-17T10:42:52.473 [INFO] [Thread-67227 (handle)] [driver.py] [get_status()] ra_j2k = 16.833872811495     dec_j2k = -24.2117270219069
2025-11-17T10:42:52.473 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 140;0.104403605405822;171.162351965909;_
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response 140;0.104403605405822;171.162351965909;_
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:52.474 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:42:52.475 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:42:52.476 [DEBUG] [Thread-67227 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:52.476 [DEBUG] [Thread-67227 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:42:52.476 [DEBUG] [Thread-67227 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47313)
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:42:52.480 [DEBUG] [Thread-67227 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:42:52.487 [DEBUG] [Thread-67227 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:42:52.487 [DEBUG] [Thread-67227 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:52.487 [DEBUG] [Thread-67227 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:42:52.487 [DEBUG] [Thread-67227 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:42:52.488 [DEBUG] [Thread-67227 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:42:52.488 [DEBUG] [Thread-67227 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:42:52.488 [DEBUG] [Thread-67227 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:42:52.488 [DEBUG] [Thread-67227 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:42:52.488 [DEBUG] [Thread-67227 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:42:52.488 [INFO] [Thread-67227 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8631073, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104403605405822, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108477, telescope_az=89.993088, telescope_ra=16.8597931, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.87955, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.833872811495, telescope_dec_j2k=-24.2117270219069, observability=1)
2025-11-17T10:42:54.075 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:54.075 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:54.075 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:54.075 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:54.075 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:42:54.076 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:42:54.077 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Status age = 11.806998014450073s
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:04.295 [DEBUG] [Thread-67228 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:04.296 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:04.296 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:04.296 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:04.296 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:04.296 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 17;16.8630787;-24.256598;50.108476;89.993088;50.08601;90.12017;13.88284;2460996.86324417;10.71782139;1.3;_
2025-11-17T10:43:04.297 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response 17;16.8630787;-24.256598;50.108476;89.993088;50.08601;90.12017;13.88284;2460996.86324417;10.71782139;1.3;_
2025-11-17T10:43:04.297 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:04.297 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:04.297 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:04.298 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:04.298 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:04.298 [INFO] [Thread-67228 (handle)] [driver.py] [get_status()] Telra = 16.8630787, teldec = -24.256598
2025-11-17T10:43:04.298 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8630787 -24.256598
2025-11-17T10:43:04.298 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8630787 -24.256598
2025-11-17T10:43:04.298 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8630787 -24.256598
2025-11-17T10:43:04.299 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 17;16.8630787;-24.256598;50.108476;89.993088;50.08601;90.12017;13.88284;2460996.8632442;10.71782139;1.3;_16.8371571367692 -24.211843250364
2025-11-17T10:43:04.299 [INFO] [Thread-67228 (handle)] [driver.py] [get_status()] ra_j2k = 16.8371571367692     dec_j2k = -24.211843250364
2025-11-17T10:43:04.299 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:04.299 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:04.299 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 140;0.104404086749136;171.162351965909;_
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response 140;0.104404086749136;171.162351965909;_
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:04.300 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:04.301 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:04.302 [DEBUG] [Thread-67228 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:04.302 [DEBUG] [Thread-67228 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:04.302 [DEBUG] [Thread-67228 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40161)
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:04.305 [DEBUG] [Thread-67228 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:04.312 [DEBUG] [Thread-67228 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:04.313 [DEBUG] [Thread-67228 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:04.313 [INFO] [Thread-67228 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86324417, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404086749136, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993088, telescope_ra=16.8630787, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.88284, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8371571367692, telescope_dec_j2k=-24.211843250364, observability=1)
2025-11-17T10:43:10.632 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Status age = 6.319953203201294s
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:10.633 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:10.635 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 17;16.8648617;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88462;2460996.86331753;10.71959944;1.3;_
2025-11-17T10:43:10.635 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response 17;16.8648617;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88462;2460996.86331753;10.71959944;1.3;_
2025-11-17T10:43:10.635 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:10.635 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:10.635 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:10.636 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:10.636 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:10.636 [INFO] [Thread-67229 (handle)] [driver.py] [get_status()] Telra = 16.8648617, teldec = -24.256598
2025-11-17T10:43:10.636 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8648617 -24.256598
2025-11-17T10:43:10.636 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8648617 -24.256598
2025-11-17T10:43:10.636 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8648617 -24.256598
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 17;16.8648617;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88462;2460996.86331756;10.71959944;1.3;_16.8389394461622 -24.2119063384328
2025-11-17T10:43:10.637 [INFO] [Thread-67229 (handle)] [driver.py] [get_status()] ra_j2k = 16.8389394461622     dec_j2k = -24.2119063384328
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 140;0.104404447756621;171.162368059163;_
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response 140;0.104404447756621;171.162368059163;_
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:10.637 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:10.638 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:10.638 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:10.638 [DEBUG] [Thread-67229 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:10.638 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:10.638 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:10.639 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:10.639 [DEBUG] [Thread-67229 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:10.639 [DEBUG] [Thread-67229 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:10.639 [DEBUG] [Thread-67229 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:10.643 [DEBUG] [Thread-67229 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36993)
2025-11-17T10:43:10.644 [DEBUG] [Thread-67229 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:10.644 [DEBUG] [Thread-67229 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:10.644 [DEBUG] [Thread-67229 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:10.644 [DEBUG] [Thread-67229 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:10.644 [DEBUG] [Thread-67229 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:10.651 [DEBUG] [Thread-67229 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:10.651 [INFO] [Thread-67229 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86331753, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404447756621, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8648617, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.88462, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8389394461622, telescope_dec_j2k=-24.2119063384328, observability=1)
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.167196989059448s
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8660287;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88579;2460996.86336597;10.72076333;1.3;_
2025-11-17T10:43:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.8660287;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88579;2460996.86336597;10.72076333;1.3;_
2025-11-17T10:43:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:14.821 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.8660287, teldec = -24.256598
2025-11-17T10:43:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8660287 -24.256598
2025-11-17T10:43:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8660287 -24.256598
2025-11-17T10:43:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8660287 -24.256598
2025-11-17T10:43:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8660287;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88579;2460996.863366;10.72076333;1.3;_16.8401059945878 -24.2119476359311
2025-11-17T10:43:14.822 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.8401059945878     dec_j2k = -24.2119476359311
2025-11-17T10:43:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104404608204392;171.162351965909;_
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104404608204392;171.162351965909;_
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54763)
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:14.827 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:14.835 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:14.835 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:14.835 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86336597, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404608204392, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8660287, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.88579, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8401059945878, telescope_dec_j2k=-24.2119476359311, observability=1)
2025-11-17T10:43:17.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:43:17.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.3437962532043457s
2025-11-17T10:43:17.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:17.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:17.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:17.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:17.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:17.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:17.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8666733;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88643;2460996.86339329;10.72140611;1.3;_
2025-11-17T10:43:17.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.8666733;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88643;2460996.86339329;10.72140611;1.3;_
2025-11-17T10:43:17.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:17.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:17.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:17.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:17.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:17.182 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.8666733, teldec = -24.256598
2025-11-17T10:43:17.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.8666733 -24.256598
2025-11-17T10:43:17.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.8666733 -24.256598
2025-11-17T10:43:17.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8666733 -24.256598
2025-11-17T10:43:17.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8666733;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88643;2460996.86339332;10.72140611;1.3;_16.8407503453063 -24.2119704487082
2025-11-17T10:43:17.183 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.8407503453063     dec_j2k = -24.2119704487082
2025-11-17T10:43:17.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:17.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:17.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104404447756621;171.162362694745;_
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104404447756621;171.162362694745;_
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:17.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:17.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:17.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:17.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:17.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:17.193 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51639)
2025-11-17T10:43:17.193 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:17.193 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:17.193 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:17.194 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:17.194 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:17.200 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:17.201 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:43:17.201 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86339329, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404447756621, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8666733, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.88643, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:42:28.055255', telescope_ra_j2k=16.8407503453063, telescope_dec_j2k=-24.2119704487082, observability=1)
2025-11-17T10:43:17.201 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.145180225372314 seconds ago
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:28.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:28.199 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:28.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:28.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:28.200 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:43:28.200 [INFO] [ThreadPoolExecutor-2681_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:43:28.200 [INFO] [ThreadPoolExecutor-2681_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:43:28.698 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Status age = 11.497555494308472s
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:28.699 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:28.700 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:28.701 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 17;16.8698765;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88964;2460996.86352663;10.72460056;1.3;_
2025-11-17T10:43:28.701 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response 17;16.8698765;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88964;2460996.86352663;10.72460056;1.3;_
2025-11-17T10:43:28.701 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:28.701 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:28.701 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:28.702 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:28.702 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:28.702 [INFO] [Thread-67230 (handle)] [driver.py] [get_status()] Telra = 16.8698765, teldec = -24.256598
2025-11-17T10:43:28.702 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8698765 -24.256598
2025-11-17T10:43:28.702 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8698765 -24.256598
2025-11-17T10:43:28.702 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8698765 -24.256598
2025-11-17T10:43:28.703 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 17;16.8698765;-24.256598;50.108476;89.993087;50.08601;90.12017;13.88964;2460996.86352666;10.72460056;1.3;_16.843952308125 -24.2120838312203
2025-11-17T10:43:28.703 [INFO] [Thread-67230 (handle)] [driver.py] [get_status()] ra_j2k = 16.843952308125     dec_j2k = -24.2120838312203
2025-11-17T10:43:28.703 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:28.703 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:28.703 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 140;0.104404367532736;171.162346601491;_
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response 140;0.104404367532736;171.162346601491;_
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:28.704 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:28.705 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:28.706 [DEBUG] [Thread-67230 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:28.706 [DEBUG] [Thread-67230 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:28.706 [DEBUG] [Thread-67230 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46609)
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:28.711 [DEBUG] [Thread-67230 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:28.718 [DEBUG] [Thread-67230 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:28.718 [DEBUG] [Thread-67230 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:28.718 [DEBUG] [Thread-67230 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:28.718 [DEBUG] [Thread-67230 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:28.718 [DEBUG] [Thread-67230 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:28.719 [DEBUG] [Thread-67230 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:28.719 [DEBUG] [Thread-67230 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:28.719 [DEBUG] [Thread-67230 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:28.719 [DEBUG] [Thread-67230 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:28.719 [INFO] [Thread-67230 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86352663, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404367532736, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8698765, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.88964, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.843952308125, telescope_dec_j2k=-24.2120838312203, observability=1)
2025-11-17T10:43:32.137 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:43:32
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.418001174926758s
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:32.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:32.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:32.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8708464;-24.256598;50.108476;89.993087;50.08601;90.12017;13.89061;2460996.86356642;10.72556778;1.3;_
2025-11-17T10:43:32.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.8708464;-24.256598;50.108476;89.993087;50.08601;90.12017;13.89061;2460996.86356642;10.72556778;1.3;_
2025-11-17T10:43:32.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:32.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:32.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:32.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:32.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:32.140 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.8708464, teldec = -24.256598
2025-11-17T10:43:32.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8708464 -24.256598
2025-11-17T10:43:32.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8708464 -24.256598
2025-11-17T10:43:32.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8708464 -24.256598
2025-11-17T10:43:32.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8708464;-24.256598;50.108476;89.993087;50.08601;90.12017;13.89061;2460996.86356645;10.72556778;1.3;_16.844921834033 -24.2121181687698
2025-11-17T10:43:32.141 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.844921834033     dec_j2k = -24.2121181687698
2025-11-17T10:43:32.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:32.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:32.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10440428730885;171.162351965909;_
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10440428730885;171.162351965909;_
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:32.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:32.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:32.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:32.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:32.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43655)
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:32.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:32.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:32.155 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86356642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10440428730885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8708464, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.89061, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.844921834033, telescope_dec_j2k=-24.2121181687698, observability=1)
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Status age = 14.60866093635559s
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:46.764 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:46.765 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:46.766 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 17;16.8749178;-24.256597;50.108476;89.993087;50.08601;90.12017;13.89468;2460996.86373572;10.72962806;1.3;_
2025-11-17T10:43:46.766 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response 17;16.8749178;-24.256597;50.108476;89.993087;50.08601;90.12017;13.89468;2460996.86373572;10.72962806;1.3;_
2025-11-17T10:43:46.766 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:46.766 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:46.766 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:46.767 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:46.767 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:46.767 [INFO] [Thread-67231 (handle)] [driver.py] [get_status()] Telra = 16.8749178, teldec = -24.256597
2025-11-17T10:43:46.767 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8749178 -24.256597
2025-11-17T10:43:46.767 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8749178 -24.256597
2025-11-17T10:43:46.767 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8749178 -24.256597
2025-11-17T10:43:46.768 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 17;16.8749178;-24.256597;50.108476;89.993087;50.08601;90.12017;13.89468;2460996.86373574;10.72962806;1.3;_16.8489916664906 -24.2122613414677
2025-11-17T10:43:46.768 [INFO] [Thread-67231 (handle)] [driver.py] [get_status()] ra_j2k = 16.8489916664906     dec_j2k = -24.2122613414677
2025-11-17T10:43:46.768 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:46.768 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:46.768 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 140;0.104404848876049;171.162357330327;_
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response 140;0.104404848876049;171.162357330327;_
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:46.769 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:46.770 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:46.771 [DEBUG] [Thread-67231 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:46.771 [DEBUG] [Thread-67231 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:46.771 [DEBUG] [Thread-67231 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38127)
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:46.776 [DEBUG] [Thread-67231 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:46.783 [DEBUG] [Thread-67231 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:46.784 [DEBUG] [Thread-67231 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:46.784 [INFO] [Thread-67231 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86373572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104404848876049, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108476, telescope_az=89.993087, telescope_ra=16.8749178, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.89468, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8489916664906, telescope_dec_j2k=-24.2122613414677, observability=1)
2025-11-17T10:43:49.077 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:43:49.078 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:49.079 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:49.080 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:43:49.081 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:49.082 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:49.083 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:49.083 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.083 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:49.084 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:49.084 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Park
2025-11-17T10:43:49.084 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:43:49.084 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:43:49.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 29;16.875562;-24.256597;50.108476;89.993087;50.08601;90.12017;13.89532;2460996.86376255;10.73027056;1.3;_Park Command Successful
2025-11-17T10:43:49.717 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.933946371078491s
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:43:49.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:43:49.719 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8757297;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89549;2460996.8637699;10.73043778;1.3;_
2025-11-17T10:43:49.720 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8757297;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89549;2460996.8637699;10.73043778;1.3;_
2025-11-17T10:43:49.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:43:49.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:43:49.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:43:49.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:49.721 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:43:49.721 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8757297, teldec = -24.256597
2025-11-17T10:43:49.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8757297 -24.256597
2025-11-17T10:43:49.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8757297 -24.256597
2025-11-17T10:43:49.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8757297 -24.256597
2025-11-17T10:43:49.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8757297;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89549;2460996.86376993;10.73043778;1.3;_16.8498032543658 -24.2122900979192
2025-11-17T10:43:49.722 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8498032543658     dec_j2k = -24.2122900979192
2025-11-17T10:43:49.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:43:49.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:43:49.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104405891786562;171.162357330327;_
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104405891786562;171.162357330327;_
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:49.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:43:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:43:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:43:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60435)
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:43:49.727 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:43:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:43:49.735 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:43:49.735 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:43:49.735 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8637699, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104405891786562, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993087, telescope_ra=16.8757297, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.89549, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8498032543658, telescope_dec_j2k=-24.2122900979192, observability=1)
2025-11-17T10:43:50.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:43:50.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:43:50.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:43:50.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:43:50.085 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:43:51.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:43:51.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:43:51.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:43:51.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:43:51.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:43:52.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:43:52.086 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:43:52.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:43:52.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:43:52.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:43:53.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:43:53.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:43:53.087 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:53.088 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:43:53.089 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:43:53.090 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:54.090 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:54.090 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:54.090 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:43:54.090 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:43:54.090 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:43:54.091 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:43:54.092 [DEBUG] [ThreadPoolExecutor-2680_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:43:54.092 [INFO] [ThreadPoolExecutor-2680_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Status age = 14.616994619369507s
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:04.352 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:04.353 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 17;16.8798204;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89958;2460996.86393927;10.73451722;1.3;_
2025-11-17T10:44:04.353 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response 17;16.8798204;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89958;2460996.86393927;10.73451722;1.3;_
2025-11-17T10:44:04.353 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:04.353 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:04.353 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:04.354 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:04.354 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:04.354 [INFO] [Thread-67232 (handle)] [driver.py] [get_status()] Telra = 16.8798204, teldec = -24.256597
2025-11-17T10:44:04.354 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8798204 -24.256597
2025-11-17T10:44:04.354 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8798204 -24.256597
2025-11-17T10:44:04.354 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8798204 -24.256597
2025-11-17T10:44:04.355 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 17;16.8798204;-24.256597;50.108475;89.993087;50.08601;90.12017;13.89958;2460996.86393929;10.73451722;1.3;_16.8538923843024 -24.2124350165171
2025-11-17T10:44:04.355 [INFO] [Thread-67232 (handle)] [driver.py] [get_status()] ra_j2k = 16.8538923843024     dec_j2k = -24.2124350165171
2025-11-17T10:44:04.355 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:04.355 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:04.355 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 140;0.104405410443249;171.162357330327;_
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response 140;0.104405410443249;171.162357330327;_
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:04.356 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:04.357 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:04.358 [DEBUG] [Thread-67232 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:04.358 [DEBUG] [Thread-67232 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:04.358 [DEBUG] [Thread-67232 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:04.360 [DEBUG] [Thread-67232 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42769)
2025-11-17T10:44:04.360 [DEBUG] [Thread-67232 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:04.360 [DEBUG] [Thread-67232 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:04.361 [DEBUG] [Thread-67232 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:04.361 [DEBUG] [Thread-67232 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:04.361 [DEBUG] [Thread-67232 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:04.368 [DEBUG] [Thread-67232 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:04.368 [INFO] [Thread-67232 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86393927, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104405410443249, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993087, telescope_ra=16.8798204, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.89958, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8538923843024, telescope_dec_j2k=-24.2124350165171, observability=1)
2025-11-17T10:44:04.888 [DEBUG] [Thread-67233 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:04.888 [DEBUG] [Thread-67233 (handle)] [server.py] [get_status()] Status age = 0.5198676586151123s
2025-11-17T10:44:04.888 [DEBUG] [Thread-67233 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5198676586151123
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.470805644989014s
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.882752;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90251;2460996.86406065;10.73744083;1.3;_
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.882752;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90251;2460996.86406065;10.73744083;1.3;_
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:14.841 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.882752, teldec = -24.256597
2025-11-17T10:44:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.882752 -24.256597
2025-11-17T10:44:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.882752 -24.256597
2025-11-17T10:44:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.882752 -24.256597
2025-11-17T10:44:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.882752;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90251;2460996.86406067;10.73744083;1.3;_16.8568228617403 -24.212538904465
2025-11-17T10:44:14.842 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.8568228617403     dec_j2k = -24.212538904465
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104405891786562;171.162346601491;_
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104405891786562;171.162346601491;_
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42881)
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:14.846 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:14.854 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:14.854 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86406065, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104405891786562, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993087, telescope_ra=16.882752, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.90251, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8568228617403, telescope_dec_j2k=-24.212538904465, observability=1)
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.407449722290039s
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:17.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:17.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:17.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:17.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:17.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8834149;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90317;2460996.8640887;10.73810194;1.3;_
2025-11-17T10:44:17.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.8834149;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90317;2460996.8640887;10.73810194;1.3;_
2025-11-17T10:44:17.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:17.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:17.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:17.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:17.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:17.265 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.8834149, teldec = -24.256597
2025-11-17T10:44:17.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.8834149 -24.256597
2025-11-17T10:44:17.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.8834149 -24.256597
2025-11-17T10:44:17.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8834149 -24.256597
2025-11-17T10:44:17.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.8834149;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90317;2460996.86408873;10.73810194;1.3;_16.8574855082078 -24.212562399543
2025-11-17T10:44:17.266 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.8574855082078     dec_j2k = -24.212562399543
2025-11-17T10:44:17.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:17.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:17.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104406373129876;171.162357330327;_
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104406373129876;171.162357330327;_
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:17.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:17.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:17.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:17.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:17.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34941)
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:17.276 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:17.283 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:44:17.283 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8640887, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104406373129876, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993087, telescope_ra=16.8834149, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.90317, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8574855082078, telescope_dec_j2k=-24.212562399543, observability=1)
2025-11-17T10:44:17.283 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14679265022278 seconds ago
2025-11-17T10:44:22.954 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:22.954 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Status age = 5.671095848083496s
2025-11-17T10:44:22.954 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:22.954 [DEBUG] [Thread-67234 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:22.955 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:22.956 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:22.956 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 17;16.885002;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90476;2460996.86415458;10.73968472;1.3;_
2025-11-17T10:44:22.956 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response 17;16.885002;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90476;2460996.86415458;10.73968472;1.3;_
2025-11-17T10:44:22.956 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:22.957 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:22.957 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:22.957 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:22.958 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:22.958 [INFO] [Thread-67234 (handle)] [driver.py] [get_status()] Telra = 16.885002, teldec = -24.256597
2025-11-17T10:44:22.958 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] UnCookCoordinates 16.885002 -24.256597
2025-11-17T10:44:22.958 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.885002 -24.256597
2025-11-17T10:44:22.958 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.885002 -24.256597
2025-11-17T10:44:22.959 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 17;16.885002;-24.256597;50.108475;89.993087;50.08601;90.12017;13.90476;2460996.86415462;10.73968472;1.3;_16.8590720016615 -24.2126186564599
2025-11-17T10:44:22.959 [INFO] [Thread-67234 (handle)] [driver.py] [get_status()] ra_j2k = 16.8590720016615     dec_j2k = -24.2126186564599
2025-11-17T10:44:22.959 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:22.959 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:22.959 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 140;0.104406694025418;171.162351965909;_
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response 140;0.104406694025418;171.162351965909;_
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:22.960 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:22.961 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:22.962 [DEBUG] [Thread-67234 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:22.962 [DEBUG] [Thread-67234 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:22.962 [DEBUG] [Thread-67234 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59671)
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:22.964 [DEBUG] [Thread-67234 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:22.972 [DEBUG] [Thread-67234 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:22.972 [INFO] [Thread-67234 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86415458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104406694025418, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993087, telescope_ra=16.885002, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.90476, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:43:28.197772', telescope_ra_j2k=16.8590720016615, telescope_dec_j2k=-24.2126186564599, observability=1)
2025-11-17T10:44:28.341 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:28.342 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:28.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:28.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:28.342 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:28.343 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:28.343 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:28.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:28.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:28.344 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:28.344 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:44:28.344 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:28.344 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:28.344 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:44:28.345 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:44:28.346 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:29.346 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:29.346 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:29.346 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:29.346 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:44:29.347 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:29.348 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:29.349 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:29.349 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:29.349 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:29.349 [DEBUG] [ThreadPoolExecutor-2682_0] [payload.py] [to_registers()] [0]
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41875)
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:29.356 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:29.363 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:29.364 [DEBUG] [ThreadPoolExecutor-2682_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:32.216 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:44:32
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.243693590164185s
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:32.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:32.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:32.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8875696;-24.256597;50.108475;89.993086;50.08601;90.12017;13.90733;2460996.86426178;10.74224528;1.3;_
2025-11-17T10:44:32.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.8875696;-24.256597;50.108475;89.993086;50.08601;90.12017;13.90733;2460996.86426178;10.74224528;1.3;_
2025-11-17T10:44:32.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:32.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:32.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:32.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:32.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:32.220 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.8875696, teldec = -24.256597
2025-11-17T10:44:32.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8875696 -24.256597
2025-11-17T10:44:32.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8875696 -24.256597
2025-11-17T10:44:32.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8875696 -24.256597
2025-11-17T10:44:32.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.8875696;-24.256597;50.108475;89.993086;50.08601;90.12017;13.90733;2460996.86426182;10.74224528;1.3;_16.8616386217553 -24.2127096850587
2025-11-17T10:44:32.221 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.8616386217553     dec_j2k = -24.2127096850587
2025-11-17T10:44:32.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:32.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:32.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104406373129876;171.162357330327;_
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104406373129876;171.162357330327;_
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:32.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:32.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:32.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:32.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:32.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60095)
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:32.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:32.236 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:32.237 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86426178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104406373129876, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108475, telescope_az=89.993086, telescope_ra=16.8875696, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.90733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8616386217553, telescope_dec_j2k=-24.2127096850587, observability=1)
2025-11-17T10:44:41.020 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Status age = 8.784029245376587s
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:41.021 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:41.022 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:41.023 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 17;16.8900249;-24.256597;50.108474;89.993086;50.08601;90.12017;13.90978;2460996.86436369;10.74469389;1.3;_
2025-11-17T10:44:41.023 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response 17;16.8900249;-24.256597;50.108474;89.993086;50.08601;90.12017;13.90978;2460996.86436369;10.74469389;1.3;_
2025-11-17T10:44:41.023 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:41.023 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:41.023 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:41.024 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:41.024 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:41.024 [INFO] [Thread-67235 (handle)] [driver.py] [get_status()] Telra = 16.8900249, teldec = -24.256597
2025-11-17T10:44:41.024 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8900249 -24.256597
2025-11-17T10:44:41.024 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8900249 -24.256597
2025-11-17T10:44:41.024 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8900249 -24.256597
2025-11-17T10:44:41.025 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 17;16.8900249;-24.256597;50.108474;89.993086;50.08601;90.12017;13.90978;2460996.86436372;10.74469389;1.3;_16.8640929862807 -24.2127967513814
2025-11-17T10:44:41.025 [INFO] [Thread-67235 (handle)] [driver.py] [get_status()] ra_j2k = 16.8640929862807     dec_j2k = -24.2127967513814
2025-11-17T10:44:41.025 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:41.025 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:41.025 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:41.026 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 140;0.104407014920961;171.162351965909;_
2025-11-17T10:44:41.026 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response 140;0.104407014920961;171.162351965909;_
2025-11-17T10:44:41.026 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:41.026 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:41.026 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:41.027 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:41.028 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:41.028 [DEBUG] [Thread-67235 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:41.028 [DEBUG] [Thread-67235 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:41.028 [DEBUG] [Thread-67235 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59999)
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:41.031 [DEBUG] [Thread-67235 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:41.038 [DEBUG] [Thread-67235 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:41.038 [DEBUG] [Thread-67235 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:41.039 [DEBUG] [Thread-67235 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:41.039 [INFO] [Thread-67235 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86436369, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104407014920961, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.8900249, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.90978, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8640929862807, telescope_dec_j2k=-24.2127967513814, observability=1)
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.815913200378418s
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:48.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8922212;-24.256597;50.108474;89.993086;50.08601;90.12017;13.91198;2460996.86445435;10.74688417;1.3;_
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.8922212;-24.256597;50.108474;89.993086;50.08601;90.12017;13.91198;2460996.86445435;10.74688417;1.3;_
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:48.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:48.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:48.857 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:48.857 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.8922212, teldec = -24.256597
2025-11-17T10:44:48.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8922212 -24.256597
2025-11-17T10:44:48.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8922212 -24.256597
2025-11-17T10:44:48.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8922212 -24.256597
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.8922212;-24.256597;50.108474;89.993086;50.08601;90.12017;13.91198;2460996.86445438;10.74688417;1.3;_16.8662884507893 -24.2128746491882
2025-11-17T10:44:48.858 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8662884507893     dec_j2k = -24.2128746491882
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104407175368732;171.162351965909;_
2025-11-17T10:44:48.858 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104407175368732;171.162351965909;_
2025-11-17T10:44:48.859 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:48.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:48.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:48.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:48.860 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32923)
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:48.864 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:48.872 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:48.872 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86445435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104407175368732, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.8922212, telescope_dec=-24.256597, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.91198, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8662884507893, telescope_dec_j2k=-24.2128746491882, observability=1)
2025-11-17T10:44:54.364 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:54.364 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:54.364 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:54.364 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:54.364 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:54.365 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:44:54.366 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:44:54.367 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Status age = 10.259034872055054s
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:44:59.131 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:44:59.132 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:44:59.133 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 17;16.8950634;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91482;2460996.8645733;10.74971861;1.3;_
2025-11-17T10:44:59.133 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response 17;16.8950634;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91482;2460996.8645733;10.74971861;1.3;_
2025-11-17T10:44:59.133 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:44:59.133 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:44:59.133 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:44:59.134 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:59.134 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:44:59.134 [INFO] [Thread-67236 (handle)] [driver.py] [get_status()] Telra = 16.8950634, teldec = -24.256596
2025-11-17T10:44:59.134 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8950634 -24.256596
2025-11-17T10:44:59.134 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8950634 -24.256596
2025-11-17T10:44:59.134 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8950634 -24.256596
2025-11-17T10:44:59.135 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 17;16.8950634;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91482;2460996.86457332;10.74971861;1.3;_16.8691295716092 -24.2129744777095
2025-11-17T10:44:59.135 [INFO] [Thread-67236 (handle)] [driver.py] [get_status()] ra_j2k = 16.8691295716092     dec_j2k = -24.2129744777095
2025-11-17T10:44:59.135 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:44:59.135 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:44:59.135 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 140;0.104407616600103;171.162357330327;_
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response 140;0.104407616600103;171.162357330327;_
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:59.136 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:44:59.137 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:44:59.138 [DEBUG] [Thread-67236 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:59.138 [DEBUG] [Thread-67236 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:44:59.138 [DEBUG] [Thread-67236 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:44:59.140 [DEBUG] [Thread-67236 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57847)
2025-11-17T10:44:59.140 [DEBUG] [Thread-67236 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:44:59.140 [DEBUG] [Thread-67236 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:44:59.141 [DEBUG] [Thread-67236 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:44:59.141 [DEBUG] [Thread-67236 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:44:59.141 [DEBUG] [Thread-67236 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:44:59.147 [DEBUG] [Thread-67236 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:44:59.148 [DEBUG] [Thread-67236 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:44:59.148 [INFO] [Thread-67236 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8645733, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104407616600103, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.8950634, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.91482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8691295716092, telescope_dec_j2k=-24.2129744777095, observability=1)
2025-11-17T10:45:04.402 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:04.402 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Status age = 5.254480838775635s
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:04.403 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:04.404 [DEBUG] [Thread-67237 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:04.404 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:04.404 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:04.404 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:04.404 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:04.405 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 17;16.8965419;-24.256596;50.108474;89.993086;50.08601;90.12017;13.9163;2460996.86463432;10.75119306;1.3;_
2025-11-17T10:45:04.405 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response 17;16.8965419;-24.256596;50.108474;89.993086;50.08601;90.12017;13.9163;2460996.86463432;10.75119306;1.3;_
2025-11-17T10:45:04.405 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:04.405 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:04.405 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:04.406 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:04.406 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:04.406 [INFO] [Thread-67237 (handle)] [driver.py] [get_status()] Telra = 16.8965419, teldec = -24.256596
2025-11-17T10:45:04.406 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8965419 -24.256596
2025-11-17T10:45:04.406 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8965419 -24.256596
2025-11-17T10:45:04.406 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8965419 -24.256596
2025-11-17T10:45:04.407 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 17;16.8965419;-24.256596;50.108474;89.993086;50.08601;90.12017;13.9163;2460996.86463434;10.75119306;1.3;_16.8706075109413 -24.2130269380705
2025-11-17T10:45:04.407 [INFO] [Thread-67237 (handle)] [driver.py] [get_status()] ra_j2k = 16.8706075109413     dec_j2k = -24.2130269380705
2025-11-17T10:45:04.407 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:04.407 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:04.407 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 140;0.104407536376217;171.162362694745;_
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response 140;0.104407536376217;171.162362694745;_
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:04.408 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:04.409 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:04.409 [DEBUG] [Thread-67237 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:04.409 [DEBUG] [Thread-67237 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:04.409 [DEBUG] [Thread-67237 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:04.415 [DEBUG] [Thread-67237 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57589)
2025-11-17T10:45:04.415 [DEBUG] [Thread-67237 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:04.415 [DEBUG] [Thread-67237 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:04.415 [DEBUG] [Thread-67237 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:04.415 [DEBUG] [Thread-67237 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:04.416 [DEBUG] [Thread-67237 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:04.423 [DEBUG] [Thread-67237 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:04.423 [INFO] [Thread-67237 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86463432, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104407536376217, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.8965419, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.9163, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8706075109413, telescope_dec_j2k=-24.2130269380705, observability=1)
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.418452262878418s
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8994638;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91922;2460996.86475513;10.75410694;1.3;_
2025-11-17T10:45:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.8994638;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91922;2460996.86475513;10.75410694;1.3;_
2025-11-17T10:45:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:14.845 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.8994638, teldec = -24.256596
2025-11-17T10:45:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.8994638 -24.256596
2025-11-17T10:45:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.8994638 -24.256596
2025-11-17T10:45:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.8994638 -24.256596
2025-11-17T10:45:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.8994638;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91922;2460996.86475516;10.75410694;1.3;_16.8735283045578 -24.2131306331056
2025-11-17T10:45:14.846 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.8735283045578     dec_j2k = -24.2131306331056
2025-11-17T10:45:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104408338615073;171.162357330327;_
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104408338615073;171.162357330327;_
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:45:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:45:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42839)
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:14.862 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86475513, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104408338615073, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.8994638, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.91922, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8735283045578, telescope_dec_j2k=-24.2131306331056, observability=1)
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Status age = 2.3339409828186035s
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:17.196 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:17.197 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 17;16.9001094;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91987;2460996.86478238;10.75475083;1.3;_
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response 17;16.9001094;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91987;2460996.86478238;10.75475083;1.3;_
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:17.198 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:17.199 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:17.199 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:17.199 [INFO] [Thread-67238 (handle)] [driver.py] [get_status()] Telra = 16.9001094, teldec = -24.256596
2025-11-17T10:45:17.199 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9001094 -24.256596
2025-11-17T10:45:17.199 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9001094 -24.256596
2025-11-17T10:45:17.200 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9001094 -24.256596
2025-11-17T10:45:17.200 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 17;16.9001094;-24.256596;50.108474;89.993086;50.08601;90.12017;13.91987;2460996.86478241;10.75475083;1.3;_16.8741736603941 -24.2131535482741
2025-11-17T10:45:17.201 [INFO] [Thread-67238 (handle)] [driver.py] [get_status()] ra_j2k = 16.8741736603941     dec_j2k = -24.2131535482741
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 140;0.104408138055359;171.162357330327;_
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response 140;0.104408138055359;171.162357330327;_
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:17.201 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:17.202 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:17.202 [DEBUG] [Thread-67238 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:17.202 [DEBUG] [Thread-67238 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:17.202 [DEBUG] [Thread-67238 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45623)
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:17.203 [DEBUG] [Thread-67238 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:17.210 [DEBUG] [Thread-67238 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:17.210 [INFO] [Thread-67238 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86478238, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104408138055359, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108474, telescope_az=89.993086, telescope_ra=16.9001094, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.91987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:44:28.341276', telescope_ra_j2k=16.8741736603941, telescope_dec_j2k=-24.2131535482741, observability=1)
2025-11-17T10:45:17.343 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:45:17.343 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.1326305866241455s
2025-11-17T10:45:17.343 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.1326305866241455
2025-11-17T10:45:17.343 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12724685668945 seconds ago
2025-11-17T10:45:28.484 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:28.484 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:28.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:28.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:28.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:28.485 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:28.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:28.485 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:45:28.486 [INFO] [ThreadPoolExecutor-2683_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:45:28.486 [INFO] [ThreadPoolExecutor-2683_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:45:32.297 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:45:32
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.086639165878296s
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:32.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:32.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:32.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9043176;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92408;2460996.86495716;10.7589475;1.3;_
2025-11-17T10:45:32.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.9043176;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92408;2460996.86495716;10.7589475;1.3;_
2025-11-17T10:45:32.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:32.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:32.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:32.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:32.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:32.300 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.9043176, teldec = -24.256596
2025-11-17T10:45:32.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9043176 -24.256596
2025-11-17T10:45:32.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9043176 -24.256596
2025-11-17T10:45:32.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9043176 -24.256596
2025-11-17T10:45:32.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9043176;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92408;2460996.86495719;10.7589475;1.3;_16.878380271477 -24.213302946951
2025-11-17T10:45:32.301 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.878380271477     dec_j2k = -24.213302946951
2025-11-17T10:45:32.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:32.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104408980406158;171.162346601491;_
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104408980406158;171.162346601491;_
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:32.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:32.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:32.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:32.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:32.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48171)
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:32.306 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:32.313 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:32.313 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:32.313 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:32.313 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:32.313 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:32.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:32.314 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:32.314 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:32.314 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:32.314 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86495716, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104408980406158, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993086, telescope_ra=16.9043176, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.92408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.878380271477, telescope_dec_j2k=-24.213302946951, observability=1)
2025-11-17T10:45:35.324 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:35.324 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Status age = 3.010688543319702s
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:35.325 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:35.326 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:35.327 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 17;16.9051502;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92491;2460996.86499221;10.75977778;1.3;_
2025-11-17T10:45:35.327 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response 17;16.9051502;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92491;2460996.86499221;10.75977778;1.3;_
2025-11-17T10:45:35.327 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:35.327 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:35.327 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:35.328 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:35.328 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:35.328 [INFO] [Thread-67239 (handle)] [driver.py] [get_status()] Telra = 16.9051502, teldec = -24.256596
2025-11-17T10:45:35.328 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9051502 -24.256596
2025-11-17T10:45:35.328 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9051502 -24.256596
2025-11-17T10:45:35.328 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9051502 -24.256596
2025-11-17T10:45:35.329 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 17;16.9051502;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92491;2460996.86499223;10.75977778;1.3;_16.8792125576431 -24.2133325121611
2025-11-17T10:45:35.329 [INFO] [Thread-67239 (handle)] [driver.py] [get_status()] ra_j2k = 16.8792125576431     dec_j2k = -24.2133325121611
2025-11-17T10:45:35.329 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:35.329 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 140;0.104409221077815;171.162357330327;_
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response 140;0.104409221077815;171.162357330327;_
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:35.330 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:35.331 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:35.332 [DEBUG] [Thread-67239 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:35.332 [DEBUG] [Thread-67239 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:35.333 [DEBUG] [Thread-67239 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:35.333 [DEBUG] [Thread-67239 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42797)
2025-11-17T10:45:35.333 [DEBUG] [Thread-67239 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:35.333 [DEBUG] [Thread-67239 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:35.334 [DEBUG] [Thread-67239 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:35.334 [DEBUG] [Thread-67239 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:35.334 [DEBUG] [Thread-67239 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:35.341 [DEBUG] [Thread-67239 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:35.341 [INFO] [Thread-67239 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86499221, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104409221077815, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993086, telescope_ra=16.9051502, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.92491, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8792125576431, telescope_dec_j2k=-24.2133325121611, observability=1)
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.62160062789917s
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:47.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:47.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:47.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.908691;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92845;2460996.86513848;10.76330889;1.3;_
2025-11-17T10:45:47.965 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.908691;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92845;2460996.86513848;10.76330889;1.3;_
2025-11-17T10:45:47.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:47.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:47.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:47.966 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:47.966 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:47.966 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.908691, teldec = -24.256596
2025-11-17T10:45:47.966 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.908691 -24.256596
2025-11-17T10:45:47.966 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.908691 -24.256596
2025-11-17T10:45:47.966 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.908691 -24.256596
2025-11-17T10:45:47.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.908691;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92845;2460996.86513851;10.76330889;1.3;_16.8827520249802 -24.2134582678003
2025-11-17T10:45:47.967 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.8827520249802     dec_j2k = -24.2134582678003
2025-11-17T10:45:47.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:47.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:47.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:47.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104409702421129;171.162368059163;_
2025-11-17T10:45:47.968 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104409702421129;171.162368059163;_
2025-11-17T10:45:47.968 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:47.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:47.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:47.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:47.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:47.970 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:47.970 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35975)
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:47.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:47.983 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:47.984 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:47.984 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86513848, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104409702421129, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993086, telescope_ra=16.908691, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.92845, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8827520249802, telescope_dec_j2k=-24.2134582678003, observability=1)
2025-11-17T10:45:49.367 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.367 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.367 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:49.367 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:49.367 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.368 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.369 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:49.370 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:49.370 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:49.370 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:49.371 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:45:49.372 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:49.373 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Park
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:45:49.374 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:45:49.375 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 29;16.9090834;-24.256596;50.108473;89.993086;50.08601;90.12017;13.92884;2460996.8651548;10.76370028;1.3;_Park Command Successful
2025-11-17T10:45:50.375 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:45:50.375 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:45:50.375 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:45:50.376 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:45:50.376 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:45:51.376 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:45:51.376 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:45:51.376 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:45:51.377 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:45:51.377 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:45:52.377 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:45:52.377 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:45:52.378 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:45:52.379 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:45:52.379 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:45:53.379 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:45:53.379 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:45:53.379 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:53.380 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:45:53.381 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:45:53.382 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:53.393 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Status age = 5.409665107727051s
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:53.394 [DEBUG] [Thread-67240 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:53.395 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:45:53.395 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:45:53.395 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:45:53.395 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:45:53.396 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 17;16.9101937;-24.256596;50.108473;89.993085;50.08601;90.12017;13.92995;2460996.86520133;10.7648075;1.3;_
2025-11-17T10:45:53.396 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response 17;16.9101937;-24.256596;50.108473;89.993085;50.08601;90.12017;13.92995;2460996.86520133;10.7648075;1.3;_
2025-11-17T10:45:53.396 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:45:53.396 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:45:53.396 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:45:53.397 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:53.397 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:45:53.397 [INFO] [Thread-67240 (handle)] [driver.py] [get_status()] Telra = 16.9101937, teldec = -24.256596
2025-11-17T10:45:53.397 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9101937 -24.256596
2025-11-17T10:45:53.397 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9101937 -24.256596
2025-11-17T10:45:53.397 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9101937 -24.256596
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 17;16.9101937;-24.256596;50.108473;89.993085;50.08601;90.12017;13.92995;2460996.86520137;10.7648075;1.3;_16.8842541603728 -24.2135116494749
2025-11-17T10:45:53.398 [INFO] [Thread-67240 (handle)] [driver.py] [get_status()] ra_j2k = 16.8842541603728     dec_j2k = -24.2135116494749
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 140;0.1044095820853;171.162357330327;_
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response 140;0.1044095820853;171.162357330327;_
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:53.398 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:53.399 [DEBUG] [Thread-67240 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:45:53.400 [DEBUG] [Thread-67240 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45615)
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:45:53.406 [DEBUG] [Thread-67240 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:45:53.413 [DEBUG] [Thread-67240 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:45:53.413 [DEBUG] [Thread-67240 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:53.413 [DEBUG] [Thread-67240 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:45:53.414 [DEBUG] [Thread-67240 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:45:53.414 [INFO] [Thread-67240 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86520133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1044095820853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993085, telescope_ra=16.9101937, telescope_dec=-24.256596, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.92995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8842541603728, telescope_dec_j2k=-24.2135116494749, observability=1)
2025-11-17T10:45:54.382 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:54.383 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:54.383 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:45:54.383 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:45:54.383 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:45:54.384 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:45:54.385 [DEBUG] [ThreadPoolExecutor-2682_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:45:54.385 [INFO] [ThreadPoolExecutor-2682_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:46:04.457 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Status age = 11.04361891746521s
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:04.458 [DEBUG] [Thread-67241 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 17;16.9132624;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93302;2460996.86532939;10.76786778;1.3;_
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response 17;16.9132624;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93302;2460996.86532939;10.76786778;1.3;_
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:04.459 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:04.460 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:04.460 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:04.460 [INFO] [Thread-67241 (handle)] [driver.py] [get_status()] Telra = 16.9132624, teldec = -24.256595
2025-11-17T10:46:04.460 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9132624 -24.256595
2025-11-17T10:46:04.460 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9132624 -24.256595
2025-11-17T10:46:04.461 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9132624 -24.256595
2025-11-17T10:46:04.461 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 17;16.9132624;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93302;2460996.86532941;10.76786778;1.3;_16.887321709358 -24.2136196828202
2025-11-17T10:46:04.461 [INFO] [Thread-67241 (handle)] [driver.py] [get_status()] ra_j2k = 16.887321709358     dec_j2k = -24.2136196828202
2025-11-17T10:46:04.462 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:04.462 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:04.462 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 140;0.104409902980843;171.162362694745;_
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response 140;0.104409902980843;171.162362694745;_
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:04.463 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:04.464 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:04.465 [DEBUG] [Thread-67241 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:04.465 [DEBUG] [Thread-67241 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:04.465 [DEBUG] [Thread-67241 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41507)
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:04.471 [DEBUG] [Thread-67241 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:04.478 [DEBUG] [Thread-67241 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:04.478 [INFO] [Thread-67241 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86532939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104409902980843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993085, telescope_ra=16.9132624, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.93302, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.887321709358, telescope_dec_j2k=-24.2136196828202, observability=1)
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Status age = 6.9828832149505615s
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:11.461 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:11.462 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:11.463 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:11.464 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 17;16.9152163;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93498;2460996.86541046;10.76981639;1.3;_
2025-11-17T10:46:11.464 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response 17;16.9152163;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93498;2460996.86541046;10.76981639;1.3;_
2025-11-17T10:46:11.464 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:11.464 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:11.464 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:11.465 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:11.465 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:11.465 [INFO] [Thread-67242 (handle)] [driver.py] [get_status()] Telra = 16.9152163, teldec = -24.256595
2025-11-17T10:46:11.465 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9152163 -24.256595
2025-11-17T10:46:11.465 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9152163 -24.256595
2025-11-17T10:46:11.465 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9152163 -24.256595
2025-11-17T10:46:11.466 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 17;16.9152163;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93498;2460996.86541049;10.76981639;1.3;_16.8892748776191 -24.2136891212884
2025-11-17T10:46:11.466 [INFO] [Thread-67242 (handle)] [driver.py] [get_status()] ra_j2k = 16.8892748776191     dec_j2k = -24.2136891212884
2025-11-17T10:46:11.466 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:11.466 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:11.466 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:11.467 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 140;0.104410223876385;171.162362694745;_
2025-11-17T10:46:11.468 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response 140;0.104410223876385;171.162362694745;_
2025-11-17T10:46:11.468 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:11.468 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:11.468 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:11.468 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:11.469 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:11.470 [DEBUG] [Thread-67242 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:11.470 [DEBUG] [Thread-67242 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:11.470 [DEBUG] [Thread-67242 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:11.476 [DEBUG] [Thread-67242 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35921)
2025-11-17T10:46:11.476 [DEBUG] [Thread-67242 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:11.477 [DEBUG] [Thread-67242 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:11.477 [DEBUG] [Thread-67242 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:11.477 [DEBUG] [Thread-67242 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:11.477 [DEBUG] [Thread-67242 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:11.484 [DEBUG] [Thread-67242 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:11.484 [INFO] [Thread-67242 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86541046, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104410223876385, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993085, telescope_ra=16.9152163, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.93498, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8892748776191, telescope_dec_j2k=-24.2136891212884, observability=1)
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.333639144897461s
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:14.818 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9161612;-24.256589;50.108473;89.993074;50.08601;90.12016;13.93592;2460996.86544929;10.77075889;1.3;_
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.9161612;-24.256589;50.108473;89.993074;50.08601;90.12016;13.93592;2460996.86544929;10.77075889;1.3;_
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:14.819 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:14.820 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:14.821 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.9161612, teldec = -24.256589
2025-11-17T10:46:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9161612 -24.256589
2025-11-17T10:46:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9161612 -24.256589
2025-11-17T10:46:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9161612 -24.256589
2025-11-17T10:46:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9161612;-24.256589;50.108473;89.993074;50.08601;90.12016;13.93592;2460996.86544933;10.77075889;1.3;_16.8902194252428 -24.2137167058852
2025-11-17T10:46:14.822 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.8902194252428     dec_j2k = -24.2137167058852
2025-11-17T10:46:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104410424436099;171.162351965909;_
2025-11-17T10:46:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104410424436099;171.162351965909;_
2025-11-17T10:46:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60261)
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:14.825 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:14.832 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:14.832 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:14.833 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:14.833 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:14.833 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:14.833 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86544929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104410424436099, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993074, telescope_ra=16.9161612, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.93592, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8902194252428, telescope_dec_j2k=-24.2137167058852, observability=1)
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.570453643798828s
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:17.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:17.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:17.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:17.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9168797;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93664;2460996.86547924;10.77147528;1.3;_
2025-11-17T10:46:17.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.9168797;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93664;2460996.86547924;10.77147528;1.3;_
2025-11-17T10:46:17.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:17.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:17.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:17.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:17.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:17.407 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.9168797, teldec = -24.256595
2025-11-17T10:46:17.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.9168797 -24.256595
2025-11-17T10:46:17.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.9168797 -24.256595
2025-11-17T10:46:17.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9168797 -24.256595
2025-11-17T10:46:17.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9168797;-24.256595;50.108473;89.993085;50.08601;90.12017;13.93664;2460996.86547926;10.77147528;1.3;_16.8909376554428 -24.2137482449569
2025-11-17T10:46:17.408 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.8909376554428     dec_j2k = -24.2137482449569
2025-11-17T10:46:17.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:17.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:17.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104410785443585;171.162357330327;_
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104410785443585;171.162357330327;_
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:17.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:17.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:17.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:17.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:17.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:17.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57345)
2025-11-17T10:46:17.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:17.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:17.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:17.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:17.418 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:17.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:17.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:17.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:46:17.425 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86547924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104410785443585, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108473, telescope_az=89.993085, telescope_ra=16.9168797, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.93664, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:45:28.483637', telescope_ra_j2k=16.8909376554428, telescope_dec_j2k=-24.2137482449569, observability=1)
2025-11-17T10:46:17.425 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12812638282776 seconds ago
2025-11-17T10:46:28.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:28.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:28.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:28.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:28.628 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:28.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:28.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:28.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:28.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:28.629 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:46:28.629 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:28.629 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:28.629 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:46:28.630 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:46:28.631 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Status age = 12.162006139755249s
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:29.587 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 17;16.920279;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94004;2460996.86562023;10.77486528;1.3;_
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response 17;16.920279;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94004;2460996.86562023;10.77486528;1.3;_
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:29.588 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:29.589 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:29.589 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:29.590 [INFO] [Thread-67243 (handle)] [driver.py] [get_status()] Telra = 16.920279, teldec = -24.256595
2025-11-17T10:46:29.590 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] UnCookCoordinates 16.920279 -24.256595
2025-11-17T10:46:29.590 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.920279 -24.256595
2025-11-17T10:46:29.590 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.920279 -24.256595
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 17;16.920279;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94004;2460996.86562025;10.77486528;1.3;_16.8943356861744 -24.2138690952137
2025-11-17T10:46:29.591 [INFO] [Thread-67243 (handle)] [driver.py] [get_status()] ra_j2k = 16.8943356861744     dec_j2k = -24.2138690952137
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 140;0.104410344212214;171.162341237072;_
2025-11-17T10:46:29.591 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response 140;0.104410344212214;171.162341237072;_
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:29.592 [DEBUG] [Thread-67243 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40393)
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:29.597 [DEBUG] [Thread-67243 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:29.605 [DEBUG] [Thread-67243 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:29.606 [DEBUG] [Thread-67243 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:29.606 [INFO] [Thread-67243 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86562023, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104410344212214, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108472, telescope_az=89.993085, telescope_ra=16.920279, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.94004, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.8943356861744, telescope_dec_j2k=-24.2138690952137, observability=1)
2025-11-17T10:46:29.631 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:29.631 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:29.632 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:29.632 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:29.632 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:46:29.633 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:29.634 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:29.635 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:29.635 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:29.635 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:29.635 [DEBUG] [ThreadPoolExecutor-2684_0] [payload.py] [to_registers()] [0]
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47401)
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:29.639 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:29.646 [DEBUG] [ThreadPoolExecutor-2684_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:32.375 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:46:32
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.7691478729248047s
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:32.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:32.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:32.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9210361;-24.256595;50.108472;89.993085;50.08601;90.12017;13.9408;2460996.86565251;10.77562028;1.3;_
2025-11-17T10:46:32.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.9210361;-24.256595;50.108472;89.993085;50.08601;90.12017;13.9408;2460996.86565251;10.77562028;1.3;_
2025-11-17T10:46:32.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:32.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:32.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:32.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:32.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:32.378 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.9210361, teldec = -24.256595
2025-11-17T10:46:32.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9210361 -24.256595
2025-11-17T10:46:32.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9210361 -24.256595
2025-11-17T10:46:32.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9210361 -24.256595
2025-11-17T10:46:32.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9210361;-24.256595;50.108472;89.993085;50.08601;90.12017;13.9408;2460996.86565253;10.77562028;1.3;_16.8950925038827 -24.2138960160087
2025-11-17T10:46:32.379 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.8950925038827     dec_j2k = -24.2138960160087
2025-11-17T10:46:32.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:32.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:32.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104411427234669;171.162362694745;_
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104411427234669;171.162362694745;_
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:32.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:32.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:32.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:32.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:32.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:32.383 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48537)
2025-11-17T10:46:32.383 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:32.383 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:32.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:32.384 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:32.384 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:32.391 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:32.391 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86565251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104411427234669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108472, telescope_az=89.993085, telescope_ra=16.9210361, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.9408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.8950925038827, telescope_dec_j2k=-24.2138960160087, observability=1)
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.68077540397644s
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:47.072 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:47.073 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:46:47.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:46:47.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:46:47.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:46:47.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9251546;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94491;2460996.8658226;10.7797275;1.3;_
2025-11-17T10:46:47.074 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.9251546;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94491;2460996.8658226;10.7797275;1.3;_
2025-11-17T10:46:47.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:46:47.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:46:47.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:46:47.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:47.075 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:46:47.075 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.9251546, teldec = -24.256595
2025-11-17T10:46:47.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9251546 -24.256595
2025-11-17T10:46:47.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9251546 -24.256595
2025-11-17T10:46:47.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9251546 -24.256595
2025-11-17T10:46:47.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9251546;-24.256595;50.108472;89.993085;50.08601;90.12017;13.94491;2460996.86582264;10.7797275;1.3;_16.899209470833 -24.2140424909336
2025-11-17T10:46:47.076 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.899209470833     dec_j2k = -24.2140424909336
2025-11-17T10:46:47.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:46:47.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:46:47.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104411788242155;171.162362694745;_
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104411788242155;171.162362694745;_
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:47.077 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:46:47.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:46:47.079 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:47.079 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:46:47.079 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45981)
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:46:47.080 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:46:47.087 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:46:47.088 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:46:47.088 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8658226, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104411788242155, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108472, telescope_az=89.993085, telescope_ra=16.9251546, telescope_dec=-24.256595, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.94491, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.899209470833, telescope_dec_j2k=-24.2140424909336, observability=1)
2025-11-17T10:46:47.656 [DEBUG] [Thread-67244 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:46:47.656 [DEBUG] [Thread-67244 (handle)] [server.py] [get_status()] Status age = 0.5683610439300537s
2025-11-17T10:46:47.656 [DEBUG] [Thread-67244 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5683610439300537
2025-11-17T10:46:54.646 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:54.646 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:54.646 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:46:54.647 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:46:54.648 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:46:54.649 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Status age = 17.424055099487305s
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:04.512 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:04.513 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:04.514 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 17;16.9300031;-24.256594;50.108472;89.993085;50.08601;90.12017;13.94976;2460996.86602446;10.78456278;1.3;_
2025-11-17T10:47:04.514 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response 17;16.9300031;-24.256594;50.108472;89.993085;50.08601;90.12017;13.94976;2460996.86602446;10.78456278;1.3;_
2025-11-17T10:47:04.514 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:04.514 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:04.514 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:04.515 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:04.515 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:04.515 [INFO] [Thread-67245 (handle)] [driver.py] [get_status()] Telra = 16.9300031, teldec = -24.256594
2025-11-17T10:47:04.515 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9300031 -24.256594
2025-11-17T10:47:04.515 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9300031 -24.256594
2025-11-17T10:47:04.515 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9300031 -24.256594
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 17;16.9300031;-24.256594;50.108472;89.993085;50.08601;90.12017;13.94976;2460996.86602449;10.78456278;1.3;_16.9040561718099 -24.2142139936662
2025-11-17T10:47:04.516 [INFO] [Thread-67245 (handle)] [driver.py] [get_status()] ra_j2k = 16.9040561718099     dec_j2k = -24.2142139936662
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 140;0.104412470145182;171.162351965909;_
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response 140;0.104412470145182;171.162351965909;_
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:04.516 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:04.517 [DEBUG] [Thread-67245 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33891)
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:04.519 [DEBUG] [Thread-67245 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:04.526 [DEBUG] [Thread-67245 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:04.526 [DEBUG] [Thread-67245 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:04.526 [DEBUG] [Thread-67245 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:04.526 [DEBUG] [Thread-67245 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:04.527 [DEBUG] [Thread-67245 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:04.527 [DEBUG] [Thread-67245 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:04.527 [DEBUG] [Thread-67245 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:04.527 [DEBUG] [Thread-67245 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:04.527 [DEBUG] [Thread-67245 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:04.527 [INFO] [Thread-67245 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86602446, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412470145182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108472, telescope_az=89.993085, telescope_ra=16.9300031, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.94976, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.9040561718099, telescope_dec_j2k=-24.2142139936662, observability=1)
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Status age = 1.1950881481170654s
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:05.722 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:05.723 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:05.724 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:05.724 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 17;16.9303396;-24.256594;50.108472;89.993085;50.08601;90.12017;13.9501;2460996.86603847;10.78489833;1.3;_
2025-11-17T10:47:05.724 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response 17;16.9303396;-24.256594;50.108472;89.993085;50.08601;90.12017;13.9501;2460996.86603847;10.78489833;1.3;_
2025-11-17T10:47:05.724 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:05.724 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:05.725 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:05.725 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:05.726 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:05.726 [INFO] [Thread-67246 (handle)] [driver.py] [get_status()] Telra = 16.9303396, teldec = -24.256594
2025-11-17T10:47:05.726 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9303396 -24.256594
2025-11-17T10:47:05.726 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9303396 -24.256594
2025-11-17T10:47:05.726 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9303396 -24.256594
2025-11-17T10:47:05.727 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 17;16.9303396;-24.256594;50.108472;89.993085;50.08601;90.12017;13.9501;2460996.86603851;10.78489833;1.3;_16.9043925471628 -24.2142259684663
2025-11-17T10:47:05.727 [INFO] [Thread-67246 (handle)] [driver.py] [get_status()] ra_j2k = 16.9043925471628     dec_j2k = -24.2142259684663
2025-11-17T10:47:05.727 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:05.727 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:05.727 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 140;0.104412229473526;171.162351965909;_
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response 140;0.104412229473526;171.162351965909;_
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:05.728 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:05.729 [DEBUG] [Thread-67246 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:05.729 [DEBUG] [Thread-67246 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:05.729 [DEBUG] [Thread-67246 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37933)
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:05.735 [DEBUG] [Thread-67246 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:05.742 [DEBUG] [Thread-67246 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:05.743 [DEBUG] [Thread-67246 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:05.743 [INFO] [Thread-67246 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86603847, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412229473526, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108472, telescope_az=89.993085, telescope_ra=16.9303396, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.9501, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.9043925471628, telescope_dec_j2k=-24.2142259684663, observability=1)
2025-11-17T10:47:14.826 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:14.826 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.083863973617554s
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:14.828 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9328791;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95264;2460996.86614384;10.78743083;1.3;_
2025-11-17T10:47:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.9328791;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95264;2460996.86614384;10.78743083;1.3;_
2025-11-17T10:47:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:14.830 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.9328791, teldec = -24.256594
2025-11-17T10:47:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9328791 -24.256594
2025-11-17T10:47:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9328791 -24.256594
2025-11-17T10:47:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9328791 -24.256594
2025-11-17T10:47:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9328791;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95264;2460996.86614388;10.78743083;1.3;_16.9069311074111 -24.2143163508604
2025-11-17T10:47:14.831 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9069311074111     dec_j2k = -24.2143163508604
2025-11-17T10:47:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104412510257125;171.162357330327;_
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104412510257125;171.162357330327;_
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50683)
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:14.836 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:14.844 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86614384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412510257125, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.9328791, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.95264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.9069311074111, telescope_dec_j2k=-24.2143163508604, observability=1)
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.6406164169311523s
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:17.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:17.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:17.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9336258;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95339;2460996.86617462;10.78817556;1.3;_
2025-11-17T10:47:17.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.9336258;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95339;2460996.86617462;10.78817556;1.3;_
2025-11-17T10:47:17.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:17.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:17.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:17.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:17.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:17.488 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.9336258, teldec = -24.256594
2025-11-17T10:47:17.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.9336258 -24.256594
2025-11-17T10:47:17.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.9336258 -24.256594
2025-11-17T10:47:17.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9336258 -24.256594
2025-11-17T10:47:17.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9336258;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95339;2460996.86617464;10.78817556;1.3;_16.9076775314063 -24.214342930042
2025-11-17T10:47:17.489 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.9076775314063     dec_j2k = -24.214342930042
2025-11-17T10:47:17.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:17.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:17.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104412309697411;171.162346601491;_
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104412309697411;171.162346601491;_
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:17.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:17.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:17.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:17.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:17.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:17.495 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34733)
2025-11-17T10:47:17.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:17.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:17.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:17.496 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:17.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:17.503 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:47:17.503 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86617462, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412309697411, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.9336258, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.95339, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.9076775314063, telescope_dec_j2k=-24.214342930042, observability=1)
2025-11-17T10:47:17.503 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.128443479537964 seconds ago
2025-11-17T10:47:23.853 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:23.853 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Status age = 6.350422620773315s
2025-11-17T10:47:23.853 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:23.853 [DEBUG] [Thread-67247 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:23.853 [DEBUG] [Thread-67247 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:23.854 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:23.854 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:23.854 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:23.855 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:23.856 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 17;16.9353842;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95514;2460996.86624833;10.78992917;1.3;_
2025-11-17T10:47:23.856 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response 17;16.9353842;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95514;2460996.86624833;10.78992917;1.3;_
2025-11-17T10:47:23.856 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:23.856 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:23.856 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:23.857 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:23.857 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:23.857 [INFO] [Thread-67247 (handle)] [driver.py] [get_status()] Telra = 16.9353842, teldec = -24.256594
2025-11-17T10:47:23.857 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9353842 -24.256594
2025-11-17T10:47:23.857 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9353842 -24.256594
2025-11-17T10:47:23.857 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9353842 -24.256594
2025-11-17T10:47:23.858 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 17;16.9353842;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95514;2460996.86624836;10.78992917;1.3;_16.9094352820088 -24.2144055277842
2025-11-17T10:47:23.858 [INFO] [Thread-67247 (handle)] [driver.py] [get_status()] ra_j2k = 16.9094352820088     dec_j2k = -24.2144055277842
2025-11-17T10:47:23.858 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:23.858 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:23.858 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 140;0.104412750928782;171.162362694745;_
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response 140;0.104412750928782;171.162362694745;_
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:23.859 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:23.860 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:23.861 [DEBUG] [Thread-67247 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:23.861 [DEBUG] [Thread-67247 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:23.861 [DEBUG] [Thread-67247 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45237)
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:23.868 [DEBUG] [Thread-67247 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:23.875 [DEBUG] [Thread-67247 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:23.876 [DEBUG] [Thread-67247 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:23.876 [DEBUG] [Thread-67247 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:23.876 [DEBUG] [Thread-67247 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:23.876 [INFO] [Thread-67247 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86624833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412750928782, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.9353842, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.95514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:46:28.626995', telescope_ra_j2k=16.9094352820088, telescope_dec_j2k=-24.2144055277842, observability=1)
2025-11-17T10:47:28.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:28.767 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:28.768 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:28.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:28.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:28.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:28.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:28.769 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:47:28.769 [INFO] [ThreadPoolExecutor-2685_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:47:28.770 [INFO] [ThreadPoolExecutor-2685_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:47:32.452 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:47:32
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.576413631439209s
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:32.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:32.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:32.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.937778;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95754;2460996.86634785;10.79231639;1.3;_
2025-11-17T10:47:32.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.937778;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95754;2460996.86634785;10.79231639;1.3;_
2025-11-17T10:47:32.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:32.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:32.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:32.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:32.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:32.455 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.937778, teldec = -24.256594
2025-11-17T10:47:32.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.937778 -24.256594
2025-11-17T10:47:32.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.937778 -24.256594
2025-11-17T10:47:32.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.937778 -24.256594
2025-11-17T10:47:32.457 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.937778;-24.256594;50.108471;89.993084;50.08601;90.12017;13.95754;2460996.86634788;10.79231639;1.3;_16.911828199225 -24.2144907600881
2025-11-17T10:47:32.457 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.911828199225     dec_j2k = -24.2144907600881
2025-11-17T10:47:32.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:32.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:32.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10441315204821;171.162357330327;_
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10441315204821;171.162357330327;_
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:32.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:32.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44553)
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:32.463 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:32.470 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:32.470 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:32.470 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:32.470 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:32.470 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:32.471 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:32.471 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:32.471 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:32.471 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:32.471 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86634785, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441315204821, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.937778, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.95754, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.911828199225, telescope_dec_j2k=-24.2144907600881, observability=1)
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Status age = 9.440437078475952s
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:41.911 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:41.912 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:41.913 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 17;16.9404252;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96018;2460996.86645733;10.79495639;1.3;_
2025-11-17T10:47:41.913 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response 17;16.9404252;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96018;2460996.86645733;10.79495639;1.3;_
2025-11-17T10:47:41.913 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:41.913 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:41.913 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:41.914 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:41.914 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:41.914 [INFO] [Thread-67248 (handle)] [driver.py] [get_status()] Telra = 16.9404252, teldec = -24.256594
2025-11-17T10:47:41.914 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9404252 -24.256594
2025-11-17T10:47:41.914 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9404252 -24.256594
2025-11-17T10:47:41.914 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9404252 -24.256594
2025-11-17T10:47:41.915 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 17;16.9404252;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96018;2460996.86645735;10.79495639;1.3;_16.9144744247036 -24.2145850346314
2025-11-17T10:47:41.915 [INFO] [Thread-67248 (handle)] [driver.py] [get_status()] ra_j2k = 16.9144744247036     dec_j2k = -24.2145850346314
2025-11-17T10:47:41.915 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:41.915 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:41.915 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 140;0.104412951488496;171.162357330327;_
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response 140;0.104412951488496;171.162357330327;_
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:41.916 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:41.917 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:41.918 [DEBUG] [Thread-67248 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:41.918 [DEBUG] [Thread-67248 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:41.918 [DEBUG] [Thread-67248 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42461)
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:41.925 [DEBUG] [Thread-67248 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:41.932 [DEBUG] [Thread-67248 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:41.933 [DEBUG] [Thread-67248 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:41.933 [DEBUG] [Thread-67248 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:41.933 [INFO] [Thread-67248 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86645733, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104412951488496, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.9404252, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.96018, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9144744247036, telescope_dec_j2k=-24.2145850346314, observability=1)
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.250070571899414s
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:46.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:46.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:46.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9416221;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96138;2460996.86650677;10.79615;1.3;_
2025-11-17T10:47:46.185 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.9416221;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96138;2460996.86650677;10.79615;1.3;_
2025-11-17T10:47:46.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:46.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:46.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:46.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:46.186 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:46.186 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.9416221, teldec = -24.256594
2025-11-17T10:47:46.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9416221 -24.256594
2025-11-17T10:47:46.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9416221 -24.256594
2025-11-17T10:47:46.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9416221 -24.256594
2025-11-17T10:47:46.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9416221;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96138;2460996.86650679;10.79615;1.3;_16.9156708846755 -24.2146276665673
2025-11-17T10:47:46.187 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.9156708846755     dec_j2k = -24.2146276665673
2025-11-17T10:47:46.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:46.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:46.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104413994399009;171.162362694745;_
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104413994399009;171.162362694745;_
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:46.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:46.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:46.190 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:46.190 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:46.190 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59789)
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:46.196 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:46.203 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:46.204 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86650677, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104413994399009, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108471, telescope_az=89.993084, telescope_ra=16.9416221, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.96138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9156708846755, telescope_dec_j2k=-24.2146276665673, observability=1)
2025-11-17T10:47:49.649 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.649 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.649 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:49.649 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:47:49.650 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:49.651 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:49.652 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:47:49.653 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:49.654 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Park
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:47:49.655 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:47:49.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 29;16.9425758;-24.256594;50.108471;89.993084;50.08601;90.12017;13.96233;2460996.86654694;10.79710111;1.3;_Park Command Successful
2025-11-17T10:47:50.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:47:50.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:47:50.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:47:50.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:47:50.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:47:51.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:47:51.656 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:47:51.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:47:51.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:47:51.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:47:52.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:47:52.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:47:52.657 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:47:52.658 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:47:52.658 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:47:53.658 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:47:53.658 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:47:53.658 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:47:53.659 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:47:53.659 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:47:53.659 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:53.659 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:53.659 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:47:53.660 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:47:53.661 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:54.661 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:54.661 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:54.661 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:54.661 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:54.661 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:47:54.662 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:47:54.663 [DEBUG] [ThreadPoolExecutor-2684_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:54.663 [INFO] [ThreadPoolExecutor-2684_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Status age = 13.773300409317017s
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:47:59.977 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:47:59.978 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:47:59.979 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 17;16.9454426;-24.256594;50.10847;89.993084;50.08601;90.12017;13.9652;2460996.86666641;10.79996;1.3;_
2025-11-17T10:47:59.979 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response 17;16.9454426;-24.256594;50.10847;89.993084;50.08601;90.12017;13.9652;2460996.86666641;10.79996;1.3;_
2025-11-17T10:47:59.979 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:47:59.979 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:47:59.979 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:47:59.980 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:59.980 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:47:59.980 [INFO] [Thread-67249 (handle)] [driver.py] [get_status()] Telra = 16.9454426, teldec = -24.256594
2025-11-17T10:47:59.980 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9454426 -24.256594
2025-11-17T10:47:59.980 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9454426 -24.256594
2025-11-17T10:47:59.980 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9454426 -24.256594
2025-11-17T10:47:59.981 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 17;16.9454426;-24.256594;50.10847;89.993084;50.08601;90.12017;13.9652;2460996.86666645;10.79996;1.3;_16.9194899825666 -24.2147637758995
2025-11-17T10:47:59.981 [INFO] [Thread-67249 (handle)] [driver.py] [get_status()] ra_j2k = 16.9194899825666     dec_j2k = -24.2147637758995
2025-11-17T10:47:59.981 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:47:59.981 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:47:59.981 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 140;0.104413954287066;171.162357330327;_
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response 140;0.104413954287066;171.162357330327;_
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:59.982 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:47:59.983 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:47:59.984 [DEBUG] [Thread-67249 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:59.984 [DEBUG] [Thread-67249 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:47:59.984 [DEBUG] [Thread-67249 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:47:59.990 [DEBUG] [Thread-67249 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53253)
2025-11-17T10:47:59.990 [DEBUG] [Thread-67249 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:47:59.991 [DEBUG] [Thread-67249 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:47:59.991 [DEBUG] [Thread-67249 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:47:59.991 [DEBUG] [Thread-67249 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:47:59.991 [DEBUG] [Thread-67249 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:47:59.998 [DEBUG] [Thread-67249 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:47:59.998 [INFO] [Thread-67249 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86666641, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104413954287066, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993084, telescope_ra=16.9454426, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.9652, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9194899825666, telescope_dec_j2k=-24.2147637758995, observability=1)
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Status age = 4.56272029876709s
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:04.561 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:04.562 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:04.563 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 17;16.9467239;-24.256594;50.10847;89.993084;50.08601;90.12017;13.96648;2460996.86671948;10.80123778;1.3;_
2025-11-17T10:48:04.563 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response 17;16.9467239;-24.256594;50.10847;89.993084;50.08601;90.12017;13.96648;2460996.86671948;10.80123778;1.3;_
2025-11-17T10:48:04.563 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:04.563 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:04.563 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:04.564 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:04.564 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:04.564 [INFO] [Thread-67250 (handle)] [driver.py] [get_status()] Telra = 16.9467239, teldec = -24.256594
2025-11-17T10:48:04.564 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9467239 -24.256594
2025-11-17T10:48:04.564 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9467239 -24.256594
2025-11-17T10:48:04.564 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9467239 -24.256594
2025-11-17T10:48:04.565 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 17;16.9467239;-24.256594;50.10847;89.993084;50.08601;90.12017;13.96648;2460996.8667195;10.80123778;1.3;_16.9207708131731 -24.2148094332157
2025-11-17T10:48:04.565 [INFO] [Thread-67250 (handle)] [driver.py] [get_status()] ra_j2k = 16.9207708131731     dec_j2k = -24.2148094332157
2025-11-17T10:48:04.565 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:04.566 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:04.566 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 140;0.104413793839295;171.162357330327;_
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response 140;0.104413793839295;171.162357330327;_
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:48:04.567 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:48:04.568 [DEBUG] [Thread-67250 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:48:04.568 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:04.568 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:04.568 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:04.568 [DEBUG] [Thread-67250 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:48:04.569 [DEBUG] [Thread-67250 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:48:04.569 [DEBUG] [Thread-67250 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:48:04.570 [DEBUG] [Thread-67250 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58687)
2025-11-17T10:48:04.570 [DEBUG] [Thread-67250 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:04.570 [DEBUG] [Thread-67250 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:04.571 [DEBUG] [Thread-67250 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:04.571 [DEBUG] [Thread-67250 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:04.571 [DEBUG] [Thread-67250 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:04.579 [DEBUG] [Thread-67250 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:04.579 [INFO] [Thread-67250 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86671948, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104413793839295, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993084, telescope_ra=16.9467239, telescope_dec=-24.256594, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.96648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9207708131731, telescope_dec_j2k=-24.2148094332157, observability=1)
2025-11-17T10:48:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.267411947250366s
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.949595;-24.256593;50.10847;89.993084;50.08601;90.12017;13.96935;2460996.86683852;10.80410111;1.3;_
2025-11-17T10:48:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.949595;-24.256593;50.10847;89.993084;50.08601;90.12017;13.96935;2460996.86683852;10.80410111;1.3;_
2025-11-17T10:48:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:14.850 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.949595, teldec = -24.256593
2025-11-17T10:48:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.949595 -24.256593
2025-11-17T10:48:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.949595 -24.256593
2025-11-17T10:48:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.949595 -24.256593
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.949595;-24.256593;50.10847;89.993084;50.08601;90.12017;13.96935;2460996.86683855;10.80410111;1.3;_16.9236408630906 -24.2149107584194
2025-11-17T10:48:14.851 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9236408630906     dec_j2k = -24.2149107584194
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10441415484678;171.162368059163;_
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10441415484678;171.162368059163;_
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40009)
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:14.863 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86683852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441415484678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993084, telescope_ra=16.949595, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.96935, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9236408630906, telescope_dec_j2k=-24.2149107584194, observability=1)
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.6996264457702637s
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:17.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.950351;-24.256593;50.10847;89.993084;50.08601;90.12017;13.97011;2460996.86686995;10.804855;1.3;_
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.950351;-24.256593;50.10847;89.993084;50.08601;90.12017;13.97011;2460996.86686995;10.804855;1.3;_
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:17.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:17.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:17.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:17.565 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.950351, teldec = -24.256593
2025-11-17T10:48:17.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.950351 -24.256593
2025-11-17T10:48:17.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.950351 -24.256593
2025-11-17T10:48:17.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.950351 -24.256593
2025-11-17T10:48:17.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.950351;-24.256593;50.10847;89.993084;50.08601;90.12017;13.97011;2460996.86686998;10.804855;1.3;_16.9243965868914 -24.2149377060747
2025-11-17T10:48:17.566 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.9243965868914     dec_j2k = -24.2149377060747
2025-11-17T10:48:17.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:17.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:17.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104414716413979;171.162362694745;_
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104414716413979;171.162362694745;_
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:17.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:17.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:17.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:17.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:17.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35537)
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:17.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:17.580 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:48:17.581 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86686995, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104414716413979, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993084, telescope_ra=16.950351, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.97011, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:47:28.767286', telescope_ra_j2k=16.9243965868914, telescope_dec_j2k=-24.2149377060747, observability=1)
2025-11-17T10:48:17.581 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.128772020339966 seconds ago
2025-11-17T10:48:18.101 [DEBUG] [Thread-67251 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:18.101 [DEBUG] [Thread-67251 (handle)] [server.py] [get_status()] Status age = 0.5203206539154053s
2025-11-17T10:48:18.101 [DEBUG] [Thread-67251 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5203206539154053
2025-11-17T10:48:28.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:28.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:28.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:28.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:28.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:28.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:28.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:28.911 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:28.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:28.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:28.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:28.912 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:48:28.912 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:28.912 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:28.912 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:28.912 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:28.912 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:48:28.913 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:48:28.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:29.914 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:29.915 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:29.915 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:48:29.915 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:48:29.915 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:29.916 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:29.917 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:29.917 [DEBUG] [ThreadPoolExecutor-2686_0] [payload.py] [to_registers()] [0]
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37417)
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:29.919 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:29.926 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:29.926 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:48:29.926 [DEBUG] [ThreadPoolExecutor-2686_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:48:29.927 [DEBUG] [ThreadPoolExecutor-2686_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:48:29.927 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:29.927 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:29.927 [DEBUG] [ThreadPoolExecutor-2686_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:32.532 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:48:32
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.951244354248047s
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:32.532 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9545241;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97428;2460996.86704321;10.80901667;1.3;_
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.9545241;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97428;2460996.86704321;10.80901667;1.3;_
2025-11-17T10:48:32.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:32.534 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:32.534 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:32.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:32.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:32.535 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.9545241, teldec = -24.256593
2025-11-17T10:48:32.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9545241 -24.256593
2025-11-17T10:48:32.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9545241 -24.256593
2025-11-17T10:48:32.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9545241 -24.256593
2025-11-17T10:48:32.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9545241;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97428;2460996.86704324;10.80901667;1.3;_16.9285681649199 -24.2150864866292
2025-11-17T10:48:32.536 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.9285681649199     dec_j2k = -24.2150864866292
2025-11-17T10:48:32.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:32.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:32.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104414756525922;171.162368059163;_
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104414756525922;171.162368059163;_
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:32.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:32.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:32.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:32.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:32.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59499)
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:32.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:32.551 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:32.551 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86704321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104414756525922, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993083, telescope_ra=16.9545241, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.97428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9285681649199, telescope_dec_j2k=-24.2150864866292, observability=1)
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Status age = 3.6153573989868164s
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:36.167 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:36.168 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:36.169 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 17;16.9555329;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97529;2460996.86708529;10.81002278;1.3;_
2025-11-17T10:48:36.169 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response 17;16.9555329;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97529;2460996.86708529;10.81002278;1.3;_
2025-11-17T10:48:36.169 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:36.169 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:36.169 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:36.170 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:36.170 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:36.170 [INFO] [Thread-67252 (handle)] [driver.py] [get_status()] Telra = 16.9555329, teldec = -24.256593
2025-11-17T10:48:36.170 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9555329 -24.256593
2025-11-17T10:48:36.170 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9555329 -24.256593
2025-11-17T10:48:36.170 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9555329 -24.256593
2025-11-17T10:48:36.171 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 17;16.9555329;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97529;2460996.86708531;10.81002278;1.3;_16.9295765976718 -24.2151224603202
2025-11-17T10:48:36.171 [INFO] [Thread-67252 (handle)] [driver.py] [get_status()] ra_j2k = 16.9295765976718     dec_j2k = -24.2151224603202
2025-11-17T10:48:36.171 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:36.171 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:36.171 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 140;0.104415117533408;171.162351965909;_
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response 140;0.104415117533408;171.162351965909;_
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:36.172 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:36.173 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:36.174 [DEBUG] [Thread-67252 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:36.174 [DEBUG] [Thread-67252 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:36.174 [DEBUG] [Thread-67252 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49681)
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:36.176 [DEBUG] [Thread-67252 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:36.183 [DEBUG] [Thread-67252 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:36.184 [INFO] [Thread-67252 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86708529, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104415117533408, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993083, telescope_ra=16.9555329, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.97529, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9295765976718, telescope_dec_j2k=-24.2151224603202, observability=1)
2025-11-17T10:48:45.296 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:45.296 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.112961769104004s
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:45.297 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9580632;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97782;2460996.86719095;10.81254611;1.3;_
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.9580632;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97782;2460996.86719095;10.81254611;1.3;_
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:45.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:45.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:45.299 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:45.299 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.9580632, teldec = -24.256593
2025-11-17T10:48:45.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9580632 -24.256593
2025-11-17T10:48:45.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9580632 -24.256593
2025-11-17T10:48:45.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9580632 -24.256593
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9580632;-24.256593;50.10847;89.993083;50.08601;90.12017;13.97782;2460996.86719098;10.81254611;1.3;_16.9321059776803 -24.2152127036271
2025-11-17T10:48:45.301 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.9321059776803     dec_j2k = -24.2152127036271
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10441543842895;171.162362694745;_
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10441543842895;171.162362694745;_
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:45.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:45.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:45.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:45.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:45.303 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:45.303 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:45.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:45.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:45.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:45.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:45.304 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:45.304 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51653)
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:45.308 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:45.315 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:45.315 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86719095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441543842895, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10847, telescope_az=89.993083, telescope_ra=16.9580632, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.97782, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9321059776803, telescope_dec_j2k=-24.2152127036271, observability=1)
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Status age = 8.919455289840698s
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:54.235 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:48:54.236 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:48:54.237 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 17;16.9605745;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98033;2460996.86729441;10.81505056;1.3;_
2025-11-17T10:48:54.237 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response 17;16.9605745;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98033;2460996.86729441;10.81505056;1.3;_
2025-11-17T10:48:54.237 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:48:54.237 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:48:54.237 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:48:54.238 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:54.238 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:48:54.238 [INFO] [Thread-67253 (handle)] [driver.py] [get_status()] Telra = 16.9605745, teldec = -24.256593
2025-11-17T10:48:54.238 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9605745 -24.256593
2025-11-17T10:48:54.238 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9605745 -24.256593
2025-11-17T10:48:54.238 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9605745 -24.256593
2025-11-17T10:48:54.239 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 17;16.9605745;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98033;2460996.86729443;10.81505056;1.3;_16.9346163662238 -24.2153022877913
2025-11-17T10:48:54.239 [INFO] [Thread-67253 (handle)] [driver.py] [get_status()] ra_j2k = 16.9346163662238     dec_j2k = -24.2153022877913
2025-11-17T10:48:54.240 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:48:54.240 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:48:54.240 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:48:54.240 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 140;0.104415919772264;171.162362694745;_
2025-11-17T10:48:54.240 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response 140;0.104415919772264;171.162362694745;_
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:48:54.241 [DEBUG] [Thread-67253 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35687)
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:48:54.248 [DEBUG] [Thread-67253 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:48:54.256 [DEBUG] [Thread-67253 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:48:54.256 [INFO] [Thread-67253 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86729441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104415919772264, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9605745, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.98033, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9346163662238, telescope_dec_j2k=-24.2153022877913, observability=1)
2025-11-17T10:48:54.927 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:54.927 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:54.927 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:54.927 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:54.927 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:48:54.928 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:48:54.929 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:48:54.930 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:04.612 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Status age = 10.35653829574585s
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:04.613 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:04.614 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 17;16.963444;-24.256593;50.108469;89.993083;50.08601;90.12017;13.9832;2460996.86741451;10.81791222;1.3;_
2025-11-17T10:49:04.614 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response 17;16.963444;-24.256593;50.108469;89.993083;50.08601;90.12017;13.9832;2460996.86741451;10.81791222;1.3;_
2025-11-17T10:49:04.614 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:04.614 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:04.614 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:04.615 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:04.615 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:04.615 [INFO] [Thread-67254 (handle)] [driver.py] [get_status()] Telra = 16.963444, teldec = -24.256593
2025-11-17T10:49:04.615 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] UnCookCoordinates 16.963444 -24.256593
2025-11-17T10:49:04.615 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.963444 -24.256593
2025-11-17T10:49:04.616 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.963444 -24.256593
2025-11-17T10:49:04.616 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 17;16.963444;-24.256593;50.108469;89.993083;50.08601;90.12017;13.9832;2460996.86741454;10.81791222;1.3;_16.9374848267459 -24.2154046723219
2025-11-17T10:49:04.616 [INFO] [Thread-67254 (handle)] [driver.py] [get_status()] ra_j2k = 16.9374848267459     dec_j2k = -24.2154046723219
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 140;0.10441644122752;171.162341237072;_
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response 140;0.10441644122752;171.162341237072;_
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:04.617 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:04.618 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:04.618 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:04.618 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:04.618 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:04.619 [DEBUG] [Thread-67254 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:04.619 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:04.619 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:04.619 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:04.620 [DEBUG] [Thread-67254 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:04.620 [DEBUG] [Thread-67254 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:04.620 [DEBUG] [Thread-67254 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38061)
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:04.626 [DEBUG] [Thread-67254 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:04.633 [DEBUG] [Thread-67254 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:04.633 [DEBUG] [Thread-67254 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:04.633 [DEBUG] [Thread-67254 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:04.634 [DEBUG] [Thread-67254 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:04.634 [INFO] [Thread-67254 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86741451, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441644122752, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.963444, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.9832, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9374848267459, telescope_dec_j2k=-24.2154046723219, observability=1)
2025-11-17T10:49:12.343 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:12.343 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Status age = 7.709559440612793s
2025-11-17T10:49:12.343 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:12.343 [DEBUG] [Thread-67255 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:12.344 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:12.345 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 17;16.9656186;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98538;2460996.86750399;10.82008083;1.3;_
2025-11-17T10:49:12.345 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response 17;16.9656186;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98538;2460996.86750399;10.82008083;1.3;_
2025-11-17T10:49:12.345 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:12.345 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:12.345 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:12.346 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:12.346 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:12.346 [INFO] [Thread-67255 (handle)] [driver.py] [get_status()] Telra = 16.9656186, teldec = -24.256593
2025-11-17T10:49:12.346 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9656186 -24.256593
2025-11-17T10:49:12.346 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9656186 -24.256593
2025-11-17T10:49:12.346 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9656186 -24.256593
2025-11-17T10:49:12.347 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 17;16.9656186;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98538;2460996.86750402;10.82008083;1.3;_16.939658640406 -24.2154822785868
2025-11-17T10:49:12.347 [INFO] [Thread-67255 (handle)] [driver.py] [get_status()] ra_j2k = 16.939658640406     dec_j2k = -24.2154822785868
2025-11-17T10:49:12.347 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:12.347 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:12.347 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 140;0.104416521451406;171.162357330327;_
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response 140;0.104416521451406;171.162357330327;_
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:12.348 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:12.349 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:12.350 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:12.350 [DEBUG] [Thread-67255 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:12.350 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:12.350 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:12.350 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:12.351 [DEBUG] [Thread-67255 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:12.351 [DEBUG] [Thread-67255 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:12.351 [DEBUG] [Thread-67255 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:12.353 [DEBUG] [Thread-67255 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47375)
2025-11-17T10:49:12.353 [DEBUG] [Thread-67255 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:12.354 [DEBUG] [Thread-67255 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:12.354 [DEBUG] [Thread-67255 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:12.354 [DEBUG] [Thread-67255 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:12.354 [DEBUG] [Thread-67255 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:12.361 [DEBUG] [Thread-67255 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:12.361 [INFO] [Thread-67255 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86750399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104416521451406, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9656186, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.98538, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.939658640406, telescope_dec_j2k=-24.2154822785868, observability=1)
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.4881131649017334s
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9663094;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98607;2460996.867533;10.82076972;1.3;_
2025-11-17T10:49:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.9663094;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98607;2460996.867533;10.82076972;1.3;_
2025-11-17T10:49:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:14.853 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.9663094, teldec = -24.256593
2025-11-17T10:49:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9663094 -24.256593
2025-11-17T10:49:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9663094 -24.256593
2025-11-17T10:49:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9663094 -24.256593
2025-11-17T10:49:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9663094;-24.256593;50.108469;89.993083;50.08601;90.12017;13.98607;2460996.86753303;10.82076972;1.3;_16.9403491908658 -24.2155069344582
2025-11-17T10:49:14.854 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9403491908658     dec_j2k = -24.2155069344582
2025-11-17T10:49:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104417083018605;171.162351965909;_
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104417083018605;171.162351965909;_
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47967)
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:14.866 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:14.867 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.867533, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417083018605, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9663094, telescope_dec=-24.256593, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.98607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9403491908658, telescope_dec_j2k=-24.2155069344582, observability=1)
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.7737832069396973s
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:17.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:17.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:17.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:17.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:17.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9670661;-24.256592;50.108469;89.993083;50.08601;90.12017;13.98683;2460996.8675653;10.82152444;1.3;_
2025-11-17T10:49:17.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.9670661;-24.256592;50.108469;89.993083;50.08601;90.12017;13.98683;2460996.8675653;10.82152444;1.3;_
2025-11-17T10:49:17.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:17.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:17.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:17.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:17.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:17.644 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.9670661, teldec = -24.256592
2025-11-17T10:49:17.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.9670661 -24.256592
2025-11-17T10:49:17.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.9670661 -24.256592
2025-11-17T10:49:17.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9670661 -24.256592
2025-11-17T10:49:17.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.967094;-24.256592;50.108469;89.993083;50.08601;90.12017;13.98685;2460996.86756534;10.82155222;1.3;_16.9411056178519 -24.2155329440442
2025-11-17T10:49:17.645 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.9411056178519     dec_j2k = -24.2155329440442
2025-11-17T10:49:17.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:17.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:17.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104417323690262;171.162351965909;_
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104417323690262;171.162351965909;_
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:17.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:17.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:17.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:17.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32883)
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:17.653 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:17.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:17.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:17.660 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:17.660 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:17.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:17.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:17.661 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:17.661 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:17.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:49:17.661 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8675653, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417323690262, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9670661, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.98683, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:48:28.908949', telescope_ra_j2k=16.9411056178519, telescope_dec_j2k=-24.2155329440442, observability=1)
2025-11-17T10:49:17.661 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12932205200195 seconds ago
2025-11-17T10:49:29.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:29.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:29.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:29.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:29.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:29.052 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:29.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:29.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:29.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:29.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:29.053 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:49:29.053 [INFO] [ThreadPoolExecutor-2687_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:49:29.053 [INFO] [ThreadPoolExecutor-2687_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:49:30.406 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:30.406 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Status age = 12.745594024658203s
2025-11-17T10:49:30.406 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:30.407 [DEBUG] [Thread-67256 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:30.407 [DEBUG] [Thread-67256 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:30.407 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:30.407 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:30.407 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:30.408 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:30.409 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 17;16.9706323;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99039;2460996.86771307;10.82508083;1.3;_
2025-11-17T10:49:30.409 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response 17;16.9706323;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99039;2460996.86771307;10.82508083;1.3;_
2025-11-17T10:49:30.409 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:30.409 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:30.409 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:30.410 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:30.410 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:30.410 [INFO] [Thread-67256 (handle)] [driver.py] [get_status()] Telra = 16.9706323, teldec = -24.256592
2025-11-17T10:49:30.410 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9706323 -24.256592
2025-11-17T10:49:30.410 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9706323 -24.256592
2025-11-17T10:49:30.410 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9706323 -24.256592
2025-11-17T10:49:30.411 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 17;16.9706323;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99039;2460996.86771309;10.82508083;1.3;_16.9446705322671 -24.2156602578362
2025-11-17T10:49:30.411 [INFO] [Thread-67256 (handle)] [driver.py] [get_status()] ra_j2k = 16.9446705322671     dec_j2k = -24.2156602578362
2025-11-17T10:49:30.411 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:30.411 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:30.411 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 140;0.104417123130548;171.162357330327;_
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response 140;0.104417123130548;171.162357330327;_
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:30.412 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:30.413 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:30.414 [DEBUG] [Thread-67256 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:30.414 [DEBUG] [Thread-67256 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:30.414 [DEBUG] [Thread-67256 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:30.417 [DEBUG] [Thread-67256 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47697)
2025-11-17T10:49:30.418 [DEBUG] [Thread-67256 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:30.418 [DEBUG] [Thread-67256 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:30.418 [DEBUG] [Thread-67256 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:30.418 [DEBUG] [Thread-67256 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:30.418 [DEBUG] [Thread-67256 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:30.425 [DEBUG] [Thread-67256 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:30.425 [INFO] [Thread-67256 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86771307, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417123130548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9706323, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.99039, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9446705322671, telescope_dec_j2k=-24.2156602578362, observability=1)
2025-11-17T10:49:32.612 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:49:32
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.18703031539917s
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:32.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9712476;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99101;2460996.86773858;10.82569444;1.3;_
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.9712476;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99101;2460996.86773858;10.82569444;1.3;_
2025-11-17T10:49:32.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:32.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:32.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:32.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:32.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:32.615 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.9712476, teldec = -24.256592
2025-11-17T10:49:32.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9712476 -24.256592
2025-11-17T10:49:32.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9712476 -24.256592
2025-11-17T10:49:32.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9712476 -24.256592
2025-11-17T10:49:32.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9712476;-24.256592;50.108469;89.993083;50.08601;90.12017;13.99101;2460996.86773861;10.82569444;1.3;_16.9452856107877 -24.2156822278459
2025-11-17T10:49:32.616 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.9452856107877     dec_j2k = -24.2156822278459
2025-11-17T10:49:32.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:32.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:32.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104417564361919;171.162368059163;_
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104417564361919;171.162368059163;_
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:32.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:32.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:32.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:32.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:32.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34071)
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:32.625 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:32.633 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:32.633 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86773858, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417564361919, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108469, telescope_az=89.993083, telescope_ra=16.9712476, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.99101, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9452856107877, telescope_dec_j2k=-24.2156822278459, observability=1)
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.768755197525024s
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:44.402 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:44.403 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:44.403 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:44.403 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:44.403 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:44.403 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9745343;-24.256598;50.108468;89.993093;50.08601;90.12018;13.99429;2460996.86787505;10.82897194;1.3;_
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;16.9745343;-24.256598;50.108468;89.993093;50.08601;90.12018;13.99429;2460996.86787505;10.82897194;1.3;_
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:44.404 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:44.405 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:44.405 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:44.405 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 16.9745343, teldec = -24.256598
2025-11-17T10:49:44.405 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9745343 -24.256598
2025-11-17T10:49:44.405 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9745343 -24.256598
2025-11-17T10:49:44.405 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9745343 -24.256598
2025-11-17T10:49:44.406 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;16.9745343;-24.256598;50.108468;89.993093;50.08601;90.12018;13.99429;2460996.86787507;10.82897194;1.3;_16.9485711282328 -24.2158056016132
2025-11-17T10:49:44.406 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.9485711282328     dec_j2k = -24.2158056016132
2025-11-17T10:49:44.406 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:44.406 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:44.406 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104417524249976;171.162351965909;_
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104417524249976;171.162351965909;_
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:44.407 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:44.408 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:44.408 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:44.408 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:44.408 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:44.408 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:44.409 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:44.409 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42329)
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:44.410 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:44.417 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:44.417 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:44.417 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:44.417 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:44.417 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:44.418 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:44.418 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:44.418 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:44.418 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:44.418 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86787505, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417524249976, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993093, telescope_ra=16.9745343, telescope_dec=-24.256598, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.99429, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9485711282328, telescope_dec_j2k=-24.2158056016132, observability=1)
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Status age = 4.062506914138794s
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:48.480 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:49:48.481 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:49:48.482 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 17;16.9756727;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99543;2460996.86792225;10.8301075;1.3;_
2025-11-17T10:49:48.482 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response 17;16.9756727;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99543;2460996.86792225;10.8301075;1.3;_
2025-11-17T10:49:48.482 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:49:48.482 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:49:48.482 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:49:48.483 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:48.483 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:49:48.483 [INFO] [Thread-67257 (handle)] [driver.py] [get_status()] Telra = 16.9756727, teldec = -24.256592
2025-11-17T10:49:48.483 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9756727 -24.256592
2025-11-17T10:49:48.483 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9756727 -24.256592
2025-11-17T10:49:48.484 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9756727 -24.256592
2025-11-17T10:49:48.485 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 17;16.9756727;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99543;2460996.86792227;10.8301075;1.3;_16.9497091208269 -24.2158402634275
2025-11-17T10:49:48.485 [INFO] [Thread-67257 (handle)] [driver.py] [get_status()] ra_j2k = 16.9497091208269     dec_j2k = -24.2158402634275
2025-11-17T10:49:48.485 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:49:48.485 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:49:48.485 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:49:48.485 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 140;0.104417805033576;171.162357330327;_
2025-11-17T10:49:48.486 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response 140;0.104417805033576;171.162357330327;_
2025-11-17T10:49:48.486 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:49:48.486 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:48.486 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:48.486 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:49:48.487 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:49:48.488 [DEBUG] [Thread-67257 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:48.488 [DEBUG] [Thread-67257 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:49:48.488 [DEBUG] [Thread-67257 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35049)
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:49:48.494 [DEBUG] [Thread-67257 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:49:48.501 [DEBUG] [Thread-67257 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:49:48.502 [DEBUG] [Thread-67257 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:49:48.502 [DEBUG] [Thread-67257 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:49:48.502 [INFO] [Thread-67257 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86792225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104417805033576, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9756727, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.99543, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9497091208269, telescope_dec_j2k=-24.2158402634275, observability=1)
2025-11-17T10:49:49.930 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.930 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.930 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:49.930 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:49.930 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:49:49.931 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:49.932 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:49.933 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:49.934 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:49.934 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.934 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:49.934 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:49.934 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.935 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:49.936 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:49.936 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:49.936 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:49.936 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:49.936 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Park
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:49:49.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 29;16.9760655;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99582;2460996.86793909;10.83049917;1.3;_Park Command Successful
2025-11-17T10:49:50.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:49:50.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:49:50.937 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:49:50.938 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:49:50.938 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:49:51.938 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:49:51.938 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:49:51.938 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:49:51.939 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:49:51.939 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:49:52.939 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:49:52.939 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:49:52.939 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:49:52.940 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:49:52.940 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:49:53.940 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:49:53.940 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:49:53.940 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:53.941 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:49:53.942 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:49:53.943 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:49:53.943 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:54.943 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:49:54.944 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:49:54.945 [DEBUG] [ThreadPoolExecutor-2686_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:49:54.945 [INFO] [ThreadPoolExecutor-2686_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:50:04.667 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:04.667 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Status age = 16.165757417678833s
2025-11-17T10:50:04.667 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:04.668 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:04.669 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 17;16.9801862;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99995;2460996.8681096;10.83460861;1.3;_
2025-11-17T10:50:04.669 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response 17;16.9801862;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99995;2460996.8681096;10.83460861;1.3;_
2025-11-17T10:50:04.669 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:04.669 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:04.669 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:04.670 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:04.670 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:04.670 [INFO] [Thread-67258 (handle)] [driver.py] [get_status()] Telra = 16.9801862, teldec = -24.256592
2025-11-17T10:50:04.670 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9801862 -24.256592
2025-11-17T10:50:04.670 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9801862 -24.256592
2025-11-17T10:50:04.671 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9801862 -24.256592
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 17;16.9801862;-24.256592;50.108468;89.993082;50.08601;90.12017;13.99995;2460996.86810963;10.83460861;1.3;_16.9542210042965 -24.2160015141378
2025-11-17T10:50:04.673 [INFO] [Thread-67258 (handle)] [driver.py] [get_status()] ra_j2k = 16.9542210042965     dec_j2k = -24.2160015141378
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 140;0.104418326488832;171.162357330327;_
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response 140;0.104418326488832;171.162357330327;_
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:04.673 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:04.674 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:04.674 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:04.674 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:04.674 [DEBUG] [Thread-67258 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:04.675 [DEBUG] [Thread-67258 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:04.680 [DEBUG] [Thread-67258 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33703)
2025-11-17T10:50:04.681 [DEBUG] [Thread-67258 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:04.681 [DEBUG] [Thread-67258 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:04.681 [DEBUG] [Thread-67258 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:04.681 [DEBUG] [Thread-67258 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:04.681 [DEBUG] [Thread-67258 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:04.688 [DEBUG] [Thread-67258 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:04.688 [INFO] [Thread-67258 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8681096, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104418326488832, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9801862, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=13.99995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9542210042965, telescope_dec_j2k=-24.2160015141378, observability=1)
2025-11-17T10:50:06.618 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:06.618 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Status age = 1.9302136898040771s
2025-11-17T10:50:06.618 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:06.618 [DEBUG] [Thread-67259 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:06.618 [DEBUG] [Thread-67259 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:06.619 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:06.620 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 17;16.9807193;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00048;2460996.86813218;10.83514028;1.3;_
2025-11-17T10:50:06.620 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response 17;16.9807193;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00048;2460996.86813218;10.83514028;1.3;_
2025-11-17T10:50:06.620 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:06.620 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:06.620 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:06.621 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:06.621 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:06.621 [INFO] [Thread-67259 (handle)] [driver.py] [get_status()] Telra = 16.9807193, teldec = -24.256592
2025-11-17T10:50:06.621 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9807193 -24.256592
2025-11-17T10:50:06.621 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9807193 -24.256592
2025-11-17T10:50:06.621 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9807193 -24.256592
2025-11-17T10:50:06.622 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 17;16.9807193;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00048;2460996.8681322;10.83514028;1.3;_16.9547539137107 -24.2160205636961
2025-11-17T10:50:06.622 [INFO] [Thread-67259 (handle)] [driver.py] [get_status()] ra_j2k = 16.9547539137107     dec_j2k = -24.2160205636961
2025-11-17T10:50:06.622 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:06.622 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:06.623 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:06.623 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 140;0.10441800559329;171.162357330327;_
2025-11-17T10:50:06.623 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response 140;0.10441800559329;171.162357330327;_
2025-11-17T10:50:06.623 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:06.623 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:06.624 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:06.624 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:06.625 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:06.626 [DEBUG] [Thread-67259 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:06.626 [DEBUG] [Thread-67259 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:06.626 [DEBUG] [Thread-67259 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52849)
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:06.632 [DEBUG] [Thread-67259 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:06.639 [DEBUG] [Thread-67259 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:06.639 [INFO] [Thread-67259 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86813218, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441800559329, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9807193, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.00048, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9547539137107, telescope_dec_j2k=-24.2160205636961, observability=1)
2025-11-17T10:50:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.181030035018921s
2025-11-17T10:50:14.820 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:14.821 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:14.822 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9830008;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00276;2460996.86822711;10.83741556;1.3;_
2025-11-17T10:50:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.9830008;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00276;2460996.86822711;10.83741556;1.3;_
2025-11-17T10:50:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:14.824 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.9830008, teldec = -24.256592
2025-11-17T10:50:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9830008 -24.256592
2025-11-17T10:50:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9830008 -24.256592
2025-11-17T10:50:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9830008 -24.256592
2025-11-17T10:50:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9830008;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00276;2460996.86822714;10.83741556;1.3;_16.9570345988906 -24.2161020989999
2025-11-17T10:50:14.825 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9570345988906     dec_j2k = -24.2161020989999
2025-11-17T10:50:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10441900839186;171.162357330327;_
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10441900839186;171.162357330327;_
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44299)
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:14.839 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86822711, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10441900839186, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9830008, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.00276, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9570345988906, telescope_dec_j2k=-24.2161020989999, observability=1)
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.88169527053833s
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:17.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:17.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:17.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9838147;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00357;2460996.86826068;10.83822722;1.3;_
2025-11-17T10:50:17.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;16.9838147;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00357;2460996.86826068;10.83822722;1.3;_
2025-11-17T10:50:17.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:17.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:17.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:17.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:17.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:17.724 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 16.9838147, teldec = -24.256592
2025-11-17T10:50:17.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 16.9838147 -24.256592
2025-11-17T10:50:17.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 16.9838147 -24.256592
2025-11-17T10:50:17.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9838147 -24.256592
2025-11-17T10:50:17.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;16.9838147;-24.256592;50.108468;89.993082;50.08601;90.12017;14.00357;2460996.86826071;10.83822722;1.3;_16.957848208537 -24.2161311894262
2025-11-17T10:50:17.725 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.957848208537     dec_j2k = -24.2161311894262
2025-11-17T10:50:17.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:17.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:17.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104418888056031;171.162357330327;_
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104418888056031;171.162357330327;_
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:17.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:17.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58113)
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:17.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:17.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:17.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:17.738 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:17.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:50:17.738 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86826068, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104418888056031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9838147, telescope_dec=-24.256592, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.00357, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.957848208537, telescope_dec_j2k=-24.2161311894262, observability=1)
2025-11-17T10:50:17.738 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12590050697327 seconds ago
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Status age = 6.947103977203369s
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:24.685 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 17;16.9857612;-24.256591;50.108468;89.993082;50.08601;90.12017;14.00552;2460996.86834127;10.84016833;1.3;_
2025-11-17T10:50:24.686 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response 17;16.9857612;-24.256591;50.108468;89.993082;50.08601;90.12017;14.00552;2460996.86834127;10.84016833;1.3;_
2025-11-17T10:50:24.687 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:24.687 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:24.687 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:24.688 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:24.688 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:24.688 [INFO] [Thread-67260 (handle)] [driver.py] [get_status()] Telra = 16.9857612, teldec = -24.256591
2025-11-17T10:50:24.688 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9857612 -24.256591
2025-11-17T10:50:24.688 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9857612 -24.256591
2025-11-17T10:50:24.688 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9857612 -24.256591
2025-11-17T10:50:24.689 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 17;16.9857612;-24.256591;50.108468;89.993082;50.08601;90.12017;14.00552;2460996.86834131;10.84016833;1.3;_16.9597940150188 -24.2161997689747
2025-11-17T10:50:24.689 [INFO] [Thread-67260 (handle)] [driver.py] [get_status()] ra_j2k = 16.9597940150188     dec_j2k = -24.2161997689747
2025-11-17T10:50:24.689 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:24.689 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:24.689 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 140;0.104419409511288;171.162357330327;_
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response 140;0.104419409511288;171.162357330327;_
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:24.690 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:24.691 [DEBUG] [Thread-67260 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:24.691 [DEBUG] [Thread-67260 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:24.691 [DEBUG] [Thread-67260 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:24.692 [DEBUG] [Thread-67260 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46409)
2025-11-17T10:50:24.693 [DEBUG] [Thread-67260 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:24.693 [DEBUG] [Thread-67260 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:24.693 [DEBUG] [Thread-67260 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:24.693 [DEBUG] [Thread-67260 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:24.693 [DEBUG] [Thread-67260 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:24.700 [DEBUG] [Thread-67260 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:24.700 [INFO] [Thread-67260 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86834127, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104419409511288, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108468, telescope_az=89.993082, telescope_ra=16.9857612, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.00552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:49:29.050729', telescope_ra_j2k=16.9597940150188, telescope_dec_j2k=-24.2161997689747, observability=1)
2025-11-17T10:50:29.193 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:29.193 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:29.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:29.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:29.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:29.194 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:29.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:29.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:29.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:29.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:29.195 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:50:29.195 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:29.195 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:29.195 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:29.195 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:29.195 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:50:29.196 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:50:29.197 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:30.197 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:30.197 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:30.197 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:30.197 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:30.197 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:50:30.198 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:30.199 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:30.200 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:30.200 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:30.200 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:30.200 [DEBUG] [ThreadPoolExecutor-2688_0] [payload.py] [to_registers()] [0]
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38559)
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:30.203 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:30.210 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:30.211 [DEBUG] [ThreadPoolExecutor-2688_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:32.694 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:50:32
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.993830680847168s
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:32.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:32.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:32.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:32.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:32.695 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9879861;-24.256591;50.108467;89.993082;50.08601;90.12017;14.00775;2460996.86843398;10.84238722;1.3;_
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;16.9879861;-24.256591;50.108467;89.993082;50.08601;90.12017;14.00775;2460996.86843398;10.84238722;1.3;_
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:32.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:32.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:32.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:32.697 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 16.9879861, teldec = -24.256591
2025-11-17T10:50:32.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9879861 -24.256591
2025-11-17T10:50:32.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9879861 -24.256591
2025-11-17T10:50:32.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9879861 -24.256591
2025-11-17T10:50:32.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;16.9879861;-24.256591;50.108467;89.993082;50.08601;90.12017;14.00775;2460996.868434;10.84238722;1.3;_16.962018123287 -24.2162793134005
2025-11-17T10:50:32.698 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.962018123287     dec_j2k = -24.2162793134005
2025-11-17T10:50:32.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:32.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:32.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:32.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104418888056031;171.162351965909;_
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104418888056031;171.162351965909;_
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:32.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:32.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:32.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:32.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36509)
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:32.706 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:32.713 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:32.713 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86843398, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104418888056031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108467, telescope_az=89.993082, telescope_ra=16.9879861, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.00775, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.962018123287, telescope_dec_j2k=-24.2162793134005, observability=1)
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Status age = 10.083856582641602s
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:42.797 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:42.798 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:42.798 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:42.798 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:42.798 [DEBUG] [Thread-67261 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:42.798 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 17;16.9908062;-24.256585;50.108467;89.993071;50.08601;90.12016;14.01057;2460996.86855091;10.84519972;1.3;_
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response 17;16.9908062;-24.256585;50.108467;89.993071;50.08601;90.12016;14.01057;2460996.86855091;10.84519972;1.3;_
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:50:42.799 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:50:42.800 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:50:42.800 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:42.801 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:50:42.801 [INFO] [Thread-67261 (handle)] [driver.py] [get_status()] Telra = 16.9908062, teldec = -24.256585
2025-11-17T10:50:42.801 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9908062 -24.256585
2025-11-17T10:50:42.801 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9908062 -24.256585
2025-11-17T10:50:42.801 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9908062 -24.256585
2025-11-17T10:50:42.802 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 17;16.9908062;-24.256585;50.108467;89.993071;50.08601;90.12016;14.01057;2460996.86855095;10.84519972;1.3;_16.9648372227335 -24.2163741578543
2025-11-17T10:50:42.802 [INFO] [Thread-67261 (handle)] [driver.py] [get_status()] ra_j2k = 16.9648372227335     dec_j2k = -24.2163741578543
2025-11-17T10:50:42.802 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:50:42.802 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:50:42.802 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 140;0.10442001119043;171.162351965909;_
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response 140;0.10442001119043;171.162351965909;_
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:42.803 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:50:42.804 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:50:42.805 [DEBUG] [Thread-67261 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:42.805 [DEBUG] [Thread-67261 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:50:42.805 [DEBUG] [Thread-67261 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:50:42.809 [DEBUG] [Thread-67261 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45151)
2025-11-17T10:50:42.810 [DEBUG] [Thread-67261 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:50:42.810 [DEBUG] [Thread-67261 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:50:42.810 [DEBUG] [Thread-67261 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:50:42.810 [DEBUG] [Thread-67261 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:50:42.810 [DEBUG] [Thread-67261 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:50:42.817 [DEBUG] [Thread-67261 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:50:42.817 [INFO] [Thread-67261 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86855091, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10442001119043, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108467, telescope_az=89.993071, telescope_ra=16.9908062, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.01057, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.9648372227335, telescope_dec_j2k=-24.2163741578543, observability=1)
2025-11-17T10:50:43.514 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:50:43.514 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.696660041809082s
2025-11-17T10:50:43.514 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.696660041809082
2025-11-17T10:50:55.211 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:55.211 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:55.211 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:55.211 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:55.211 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:50:55.212 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:50:55.213 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:50:55.214 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Status age = 18.052655696868896s
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:00.870 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:00.871 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:00.872 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 17;16.9958223;-24.256591;50.108467;89.993082;50.08601;90.12017;14.01558;2460996.86876009;10.85020194;1.3;_
2025-11-17T10:51:00.872 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response 17;16.9958223;-24.256591;50.108467;89.993082;50.08601;90.12017;14.01558;2460996.86876009;10.85020194;1.3;_
2025-11-17T10:51:00.872 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:00.872 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:00.872 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:00.873 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:00.873 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:00.873 [INFO] [Thread-67262 (handle)] [driver.py] [get_status()] Telra = 16.9958223, teldec = -24.256591
2025-11-17T10:51:00.873 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9958223 -24.256591
2025-11-17T10:51:00.873 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9958223 -24.256591
2025-11-17T10:51:00.873 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9958223 -24.256591
2025-11-17T10:51:00.874 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 17;16.9958223;-24.256591;50.108467;89.993082;50.08601;90.12017;14.01558;2460996.86876012;10.85020194;1.3;_16.9698515449332 -24.2165595846167
2025-11-17T10:51:00.874 [INFO] [Thread-67262 (handle)] [driver.py] [get_status()] ra_j2k = 16.9698515449332     dec_j2k = -24.2165595846167
2025-11-17T10:51:00.874 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:00.874 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:00.874 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 140;0.104419329287402;171.162362694745;_
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response 140;0.104419329287402;171.162362694745;_
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:00.875 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:00.876 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:00.877 [DEBUG] [Thread-67262 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:00.877 [DEBUG] [Thread-67262 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:00.877 [DEBUG] [Thread-67262 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37073)
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:00.879 [DEBUG] [Thread-67262 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:00.887 [DEBUG] [Thread-67262 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:00.887 [INFO] [Thread-67262 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86876009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104419329287402, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108467, telescope_az=89.993082, telescope_ra=16.9958223, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.01558, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.9698515449332, telescope_dec_j2k=-24.2165595846167, observability=1)
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Status age = 3.8338098526000977s
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:04.721 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:04.722 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:04.723 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 17;16.9969047;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01666;2460996.86880466;10.85128139;1.3;_
2025-11-17T10:51:04.723 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response 17;16.9969047;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01666;2460996.86880466;10.85128139;1.3;_
2025-11-17T10:51:04.723 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:04.723 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:04.724 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:04.724 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:04.724 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:04.724 [INFO] [Thread-67263 (handle)] [driver.py] [get_status()] Telra = 16.9969047, teldec = -24.256591
2025-11-17T10:51:04.725 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9969047 -24.256591
2025-11-17T10:51:04.725 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9969047 -24.256591
2025-11-17T10:51:04.725 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9969047 -24.256591
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 17;16.9969047;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01666;2460996.86880469;10.85128139;1.3;_16.970933562409 -24.2165983116494
2025-11-17T10:51:04.726 [INFO] [Thread-67263 (handle)] [driver.py] [get_status()] ra_j2k = 16.970933562409     dec_j2k = -24.2165983116494
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 140;0.104420091414315;171.162351965909;_
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response 140;0.104420091414315;171.162351965909;_
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:04.726 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:04.727 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:04.728 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:04.728 [DEBUG] [Thread-67263 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:04.728 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:04.728 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:04.728 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:04.729 [DEBUG] [Thread-67263 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:04.729 [DEBUG] [Thread-67263 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:04.729 [DEBUG] [Thread-67263 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41469)
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:04.732 [DEBUG] [Thread-67263 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:04.739 [DEBUG] [Thread-67263 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:04.739 [DEBUG] [Thread-67263 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:04.739 [DEBUG] [Thread-67263 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:04.739 [DEBUG] [Thread-67263 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:04.740 [DEBUG] [Thread-67263 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:04.740 [DEBUG] [Thread-67263 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:04.740 [DEBUG] [Thread-67263 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:04.740 [DEBUG] [Thread-67263 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:04.740 [DEBUG] [Thread-67263 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:04.740 [INFO] [Thread-67263 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86880466, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420091414315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108467, telescope_az=89.993081, telescope_ra=16.9969047, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.01666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.970933562409, telescope_dec_j2k=-24.2165983116494, observability=1)
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.08402681350708s
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9997246;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01948;2460996.8689216;10.85409361;1.3;_
2025-11-17T10:51:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;16.9997246;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01948;2460996.8689216;10.85409361;1.3;_
2025-11-17T10:51:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:14.827 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 16.9997246, teldec = -24.256591
2025-11-17T10:51:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 16.9997246 -24.256591
2025-11-17T10:51:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 16.9997246 -24.256591
2025-11-17T10:51:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 16.9997246 -24.256591
2025-11-17T10:51:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;16.9997246;-24.256591;50.108467;89.993081;50.08601;90.12017;14.01948;2460996.86892162;10.85409361;1.3;_16.9737524672651 -24.2166992199855
2025-11-17T10:51:14.828 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9737524672651     dec_j2k = -24.2166992199855
2025-11-17T10:51:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104420452421801;171.162357330327;_
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104420452421801;171.162357330327;_
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51369)
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:14.832 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:14.839 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8689216, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420452421801, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108467, telescope_az=89.993081, telescope_ra=16.9997246, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.01948, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.9737524672651, telescope_dec_j2k=-24.2166992199855, observability=1)
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.95839786529541s
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:17.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:17.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:17.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0005555;-24.256591;50.108466;89.993081;50.08601;90.12017;14.02031;2460996.86895602;10.85492222;1.3;_
2025-11-17T10:51:17.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.0005555;-24.256591;50.108466;89.993081;50.08601;90.12017;14.02031;2460996.86895602;10.85492222;1.3;_
2025-11-17T10:51:17.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:17.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:17.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:17.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:17.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:17.801 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.0005555, teldec = -24.256591
2025-11-17T10:51:17.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.0005555 -24.256591
2025-11-17T10:51:17.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.0005555 -24.256591
2025-11-17T10:51:17.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0005555 -24.256591
2025-11-17T10:51:17.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0005555;-24.256591;50.108466;89.993081;50.08601;90.12017;14.02031;2460996.86895604;10.85492222;1.3;_16.9745830744315 -24.2167289574947
2025-11-17T10:51:17.802 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.9745830744315     dec_j2k = -24.2167289574947
2025-11-17T10:51:17.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:17.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:17.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104420853541229;171.162362694745;_
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104420853541229;171.162362694745;_
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:17.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:17.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:17.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:17.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:17.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:17.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:17.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:17.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:17.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:17.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48763)
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:17.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:17.816 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:51:17.816 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86895602, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420853541229, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0005555, telescope_dec=-24.256591, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.02031, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.9745830744315, telescope_dec_j2k=-24.2167289574947, observability=1)
2025-11-17T10:51:17.816 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12243413925171 seconds ago
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Status age = 1.1185352802276611s
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:18.935 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:18.936 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:18.937 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 17;17.0008637;-24.256584;50.108466;89.993071;50.08601;90.12016;14.02062;2460996.86896918;10.85522972;1.3;_
2025-11-17T10:51:18.937 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response 17;17.0008637;-24.256584;50.108466;89.993071;50.08601;90.12016;14.02062;2460996.86896918;10.85522972;1.3;_
2025-11-17T10:51:18.937 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:18.937 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:18.937 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:18.938 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:18.938 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:18.938 [INFO] [Thread-67264 (handle)] [driver.py] [get_status()] Telra = 17.0008637, teldec = -24.256584
2025-11-17T10:51:18.938 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0008637 -24.256584
2025-11-17T10:51:18.938 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0008637 -24.256584
2025-11-17T10:51:18.939 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0008637 -24.256584
2025-11-17T10:51:18.939 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 17;17.0008637;-24.256584;50.108466;89.993071;50.08601;90.12016;14.02062;2460996.8689692;10.85522972;1.3;_16.9748911671973 -24.2167329885922
2025-11-17T10:51:18.940 [INFO] [Thread-67264 (handle)] [driver.py] [get_status()] ra_j2k = 16.9748911671973     dec_j2k = -24.2167329885922
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 140;0.104420532645686;171.162351965909;_
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response 140;0.104420532645686;171.162351965909;_
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:18.940 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:18.941 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:18.941 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:18.941 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:18.942 [DEBUG] [Thread-67264 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:18.943 [DEBUG] [Thread-67264 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:18.943 [DEBUG] [Thread-67264 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54097)
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:18.945 [DEBUG] [Thread-67264 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:18.952 [DEBUG] [Thread-67264 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:18.953 [DEBUG] [Thread-67264 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:18.953 [INFO] [Thread-67264 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86896918, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420532645686, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993071, telescope_ra=17.0008637, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.02062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:50:29.192764', telescope_ra_j2k=16.9748911671973, telescope_dec_j2k=-24.2167329885922, observability=1)
2025-11-17T10:51:29.334 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:29.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:29.336 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:29.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:29.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:29.337 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:51:29.337 [INFO] [ThreadPoolExecutor-2689_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:51:29.337 [INFO] [ThreadPoolExecutor-2689_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:51:32.774 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:51:32
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.82138705253601s
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:32.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:32.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:32.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:32.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:32.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:32.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:32.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:32.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:32.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0047099;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02447;2460996.86912936;10.85906528;1.3;_
2025-11-17T10:51:32.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.0047099;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02447;2460996.86912936;10.85906528;1.3;_
2025-11-17T10:51:32.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:32.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:32.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:32.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:32.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:32.778 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.0047099, teldec = -24.25659
2025-11-17T10:51:32.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0047099 -24.25659
2025-11-17T10:51:32.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0047099 -24.25659
2025-11-17T10:51:32.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0047099 -24.25659
2025-11-17T10:51:32.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0047099;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02447;2460996.86912939;10.85906528;1.3;_16.9787360131626 -24.2168766706476
2025-11-17T10:51:32.779 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.9787360131626     dec_j2k = -24.2168766706476
2025-11-17T10:51:32.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:32.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:32.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104420933765114;171.162357330327;_
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104420933765114;171.162357330327;_
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:32.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:32.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:32.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:32.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:32.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42683)
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:32.784 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:32.792 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:32.793 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86912936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420933765114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0047099, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.02447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9787360131626, telescope_dec_j2k=-24.2168766706476, observability=1)
2025-11-17T10:51:37.069 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:37.069 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Status age = 4.276995897293091s
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:37.070 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:37.071 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:37.072 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 17;17.0059051;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02566;2460996.86917907;10.86025722;1.3;_
2025-11-17T10:51:37.072 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response 17;17.0059051;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02566;2460996.86917907;10.86025722;1.3;_
2025-11-17T10:51:37.072 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:37.072 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:37.072 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:37.073 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:37.073 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:37.073 [INFO] [Thread-67265 (handle)] [driver.py] [get_status()] Telra = 17.0059051, teldec = -24.25659
2025-11-17T10:51:37.073 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0059051 -24.25659
2025-11-17T10:51:37.073 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0059051 -24.25659
2025-11-17T10:51:37.073 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0059051 -24.25659
2025-11-17T10:51:37.074 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 17;17.005933;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02569;2460996.8691791;10.860285;1.3;_16.9799307935331 -24.2169194636451
2025-11-17T10:51:37.074 [INFO] [Thread-67265 (handle)] [driver.py] [get_status()] ra_j2k = 16.9799307935331     dec_j2k = -24.2169194636451
2025-11-17T10:51:37.074 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:37.074 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 140;0.104420973877057;171.162351965909;_
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response 140;0.104420973877057;171.162351965909;_
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:37.075 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:37.076 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:37.077 [DEBUG] [Thread-67265 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:37.077 [DEBUG] [Thread-67265 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:37.077 [DEBUG] [Thread-67265 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35641)
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:37.078 [DEBUG] [Thread-67265 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:37.085 [DEBUG] [Thread-67265 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:37.086 [DEBUG] [Thread-67265 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:37.086 [INFO] [Thread-67265 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86917907, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104420973877057, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0059051, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.02566, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9799307935331, telescope_dec_j2k=-24.2169194636451, observability=1)
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.520176410675049s
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:42.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:42.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:42.607 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:42.608 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:42.608 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:42.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:42.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:42.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:42.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0074644;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02722;2460996.86924316;10.86181222;1.3;_
2025-11-17T10:51:42.609 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0074644;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02722;2460996.86924316;10.86181222;1.3;_
2025-11-17T10:51:42.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:42.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:42.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:42.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:42.610 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:42.610 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0074644, teldec = -24.25659
2025-11-17T10:51:42.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0074644 -24.25659
2025-11-17T10:51:42.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0074644 -24.25659
2025-11-17T10:51:42.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0074644 -24.25659
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0074644;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02722;2460996.86924318;10.86181222;1.3;_16.9814895466242 -24.2169752989179
2025-11-17T10:51:42.611 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.9814895466242     dec_j2k = -24.2169752989179
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104421174436771;171.162346601491;_
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104421174436771;171.162346601491;_
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:42.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:42.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:42.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:42.613 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:51:42.613 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59033)
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:42.617 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:42.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:42.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:42.624 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:42.624 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:42.625 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:42.625 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:42.625 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:42.625 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:42.625 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:42.625 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86924316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104421174436771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0074644, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.02722, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9814895466242, telescope_dec_j2k=-24.2169752989179, observability=1)
2025-11-17T10:51:50.214 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:51:50.215 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:50.216 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:50.217 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.217 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:50.217 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:50.217 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.217 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:50.218 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.219 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.219 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:51:50.219 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:51:50.219 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:51:50.219 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.220 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:50.220 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:50.220 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:50.220 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:50.220 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Park
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:51:50.221 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:51:50.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 29;17.0095832;-24.25659;50.108466;89.993081;50.08601;90.12017;14.02934;2460996.86933127;10.86392528;1.3;_Park Command Successful
2025-11-17T10:51:51.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:51:51.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:51:51.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:51:51.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:51:51.222 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T10:51:52.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:51:52.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:51:52.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:51:52.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:51:52.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:51:53.223 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:51:53.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:51:53.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:51:53.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:51:53.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:51:54.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:51:54.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:51:54.224 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:54.225 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:51:54.226 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:51:54.227 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Status age = 12.511353254318237s
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:55.136 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:51:55.137 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:51:55.138 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 17;17.0109553;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03071;2460996.86938817;10.86529361;1.3;_
2025-11-17T10:51:55.138 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response 17;17.0109553;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03071;2460996.86938817;10.86529361;1.3;_
2025-11-17T10:51:55.138 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:51:55.138 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:51:55.138 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:51:55.139 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:55.139 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:51:55.139 [INFO] [Thread-67266 (handle)] [driver.py] [get_status()] Telra = 17.0109553, teldec = -24.25659
2025-11-17T10:51:55.139 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0109553 -24.25659
2025-11-17T10:51:55.139 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0109553 -24.25659
2025-11-17T10:51:55.139 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0109553 -24.25659
2025-11-17T10:51:55.140 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 17;17.0109553;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03071;2460996.86938819;10.86529361;1.3;_16.984979224502 -24.2171003254195
2025-11-17T10:51:55.140 [INFO] [Thread-67266 (handle)] [driver.py] [get_status()] ra_j2k = 16.984979224502     dec_j2k = -24.2171003254195
2025-11-17T10:51:55.140 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:51:55.140 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:51:55.140 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:51:55.141 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 140;0.104422056899513;171.162351965909;_
2025-11-17T10:51:55.141 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response 140;0.104422056899513;171.162351965909;_
2025-11-17T10:51:55.141 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:51:55.141 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:55.141 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:55.142 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:55.142 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:55.142 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:55.143 [DEBUG] [Thread-67266 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:55.143 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:51:55.143 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:51:55.143 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:51:55.143 [DEBUG] [Thread-67266 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:55.144 [DEBUG] [Thread-67266 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:51:55.144 [DEBUG] [Thread-67266 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:51:55.146 [DEBUG] [Thread-67266 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57929)
2025-11-17T10:51:55.146 [DEBUG] [Thread-67266 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:51:55.146 [DEBUG] [Thread-67266 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:51:55.146 [DEBUG] [Thread-67266 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:51:55.146 [DEBUG] [Thread-67266 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:51:55.147 [DEBUG] [Thread-67266 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:51:55.154 [DEBUG] [Thread-67266 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:51:55.154 [INFO] [Thread-67266 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86938817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422056899513, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0109553, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.03071, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.984979224502, telescope_dec_j2k=-24.2171003254195, observability=1)
2025-11-17T10:51:55.227 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:55.227 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:55.227 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:51:55.227 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:51:55.227 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:51:55.228 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:51:55.229 [DEBUG] [ThreadPoolExecutor-2688_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:51:55.229 [INFO] [ThreadPoolExecutor-2688_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:52:04.774 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Status age = 9.620291233062744s
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:04.775 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:04.776 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 17;17.0136293;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03339;2460996.86949972;10.86796028;1.3;_
2025-11-17T10:52:04.777 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response 17;17.0136293;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03339;2460996.86949972;10.86796028;1.3;_
2025-11-17T10:52:04.777 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:04.777 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:04.777 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:04.778 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:04.778 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:04.778 [INFO] [Thread-67267 (handle)] [driver.py] [get_status()] Telra = 17.0136293, teldec = -24.25659
2025-11-17T10:52:04.778 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0136293 -24.25659
2025-11-17T10:52:04.778 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0136293 -24.25659
2025-11-17T10:52:04.778 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0136293 -24.25659
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 17;17.0136293;-24.25659;50.108466;89.993081;50.08601;90.12017;14.03339;2460996.86949976;10.86796028;1.3;_16.9876522904959 -24.2171961176841
2025-11-17T10:52:04.779 [INFO] [Thread-67267 (handle)] [driver.py] [get_status()] ra_j2k = 16.9876522904959     dec_j2k = -24.2171961176841
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 140;0.104422498130884;171.162362694745;_
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response 140;0.104422498130884;171.162362694745;_
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:04.779 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:04.780 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:04.781 [DEBUG] [Thread-67267 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:04.781 [DEBUG] [Thread-67267 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:04.781 [DEBUG] [Thread-67267 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34961)
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:04.784 [DEBUG] [Thread-67267 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:04.791 [DEBUG] [Thread-67267 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:04.792 [INFO] [Thread-67267 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86949972, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422498130884, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108466, telescope_az=89.993081, telescope_ra=17.0136293, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.03339, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9876522904959, telescope_dec_j2k=-24.2171961176841, observability=1)
2025-11-17T10:52:13.194 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:13.194 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Status age = 8.402917861938477s
2025-11-17T10:52:13.194 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:13.194 [DEBUG] [Thread-67268 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:13.195 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:13.196 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 17;17.015991;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03575;2460996.86959718;10.87031556;1.3;_
2025-11-17T10:52:13.196 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response 17;17.015991;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03575;2460996.86959718;10.87031556;1.3;_
2025-11-17T10:52:13.196 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:13.196 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:13.196 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:13.197 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:13.197 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:13.197 [INFO] [Thread-67268 (handle)] [driver.py] [get_status()] Telra = 17.015991, teldec = -24.25659
2025-11-17T10:52:13.197 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] UnCookCoordinates 17.015991 -24.25659
2025-11-17T10:52:13.197 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.015991 -24.25659
2025-11-17T10:52:13.197 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.015991 -24.25659
2025-11-17T10:52:13.198 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 17;17.015991;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03575;2460996.8695972;10.87031556;1.3;_16.9900131671099 -24.2172807388075
2025-11-17T10:52:13.198 [INFO] [Thread-67268 (handle)] [driver.py] [get_status()] ra_j2k = 16.9900131671099     dec_j2k = -24.2172807388075
2025-11-17T10:52:13.199 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:13.199 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:13.199 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:13.199 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 140;0.104422819026426;171.162362694745;_
2025-11-17T10:52:13.199 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response 140;0.104422819026426;171.162362694745;_
2025-11-17T10:52:13.200 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:13.200 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:13.200 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:13.200 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:13.200 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:13.201 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:13.201 [DEBUG] [Thread-67268 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:13.201 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:13.201 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:13.201 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:13.202 [DEBUG] [Thread-67268 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:13.202 [DEBUG] [Thread-67268 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:13.202 [DEBUG] [Thread-67268 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58959)
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:13.208 [DEBUG] [Thread-67268 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:13.215 [DEBUG] [Thread-67268 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:13.216 [DEBUG] [Thread-67268 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:13.216 [INFO] [Thread-67268 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86959718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422819026426, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.993081, telescope_ra=17.015991, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.03575, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9900131671099, telescope_dec_j2k=-24.2172807388075, observability=1)
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6263823509216309s
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0164398;-24.25659;50.108465;89.993081;50.08601;90.12017;14.0362;2460996.86961625;10.87076306;1.3;_
2025-11-17T10:52:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.0164398;-24.25659;50.108465;89.993081;50.08601;90.12017;14.0362;2460996.86961625;10.87076306;1.3;_
2025-11-17T10:52:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:14.845 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.0164398, teldec = -24.25659
2025-11-17T10:52:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0164398 -24.25659
2025-11-17T10:52:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0164398 -24.25659
2025-11-17T10:52:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0164398 -24.25659
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0164398;-24.25659;50.108465;89.993081;50.08601;90.12017;14.0362;2460996.86961627;10.87076306;1.3;_16.9904618108027 -24.2172968213338
2025-11-17T10:52:14.846 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 16.9904618108027     dec_j2k = -24.2172968213338
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104422859138369;171.162357330327;_
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104422859138369;171.162357330327;_
2025-11-17T10:52:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:14.851 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45583)
2025-11-17T10:52:14.852 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:14.852 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:14.852 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:14.852 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:14.852 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:14.859 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:14.859 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86961625, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422859138369, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.993081, telescope_ra=17.0164398, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.0362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9904618108027, telescope_dec_j2k=-24.2172968213338, observability=1)
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.01654314994812s
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:17.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:17.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:17.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0172801;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03704;2460996.86965137;10.87160111;1.3;_
2025-11-17T10:52:17.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.0172801;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03704;2460996.86965137;10.87160111;1.3;_
2025-11-17T10:52:17.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:17.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:17.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:17.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:17.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:17.879 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.0172801, teldec = -24.25659
2025-11-17T10:52:17.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.0172801 -24.25659
2025-11-17T10:52:17.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.0172801 -24.25659
2025-11-17T10:52:17.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0172801 -24.25659
2025-11-17T10:52:17.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0172801;-24.25659;50.108465;89.993081;50.08601;90.12017;14.03704;2460996.86965139;10.87160111;1.3;_16.9913018182846 -24.217326934574
2025-11-17T10:52:17.880 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 16.9913018182846     dec_j2k = -24.217326934574
2025-11-17T10:52:17.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104422538242827;171.162357330327;_
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104422538242827;171.162357330327;_
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:17.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:17.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:17.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:17.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:17.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47321)
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:17.887 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:17.894 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:52:17.894 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.86965137, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422538242827, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.993081, telescope_ra=17.0172801, telescope_dec=-24.25659, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.03704, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:51:29.334337', telescope_ra_j2k=16.9913018182846, telescope_dec_j2k=-24.217326934574, observability=1)
2025-11-17T10:52:17.894 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12063717842102 seconds ago
2025-11-17T10:52:29.478 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:29.478 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:29.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:29.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:29.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:29.479 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:29.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:29.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:29.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:29.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:29.480 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:52:29.480 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:29.480 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:29.480 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:29.480 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:52:29.481 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:52:29.482 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:30.482 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:30.482 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:30.482 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:30.482 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:30.482 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:52:30.484 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:30.485 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:30.486 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:30.486 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:30.486 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:30.486 [DEBUG] [ThreadPoolExecutor-2690_0] [payload.py] [to_registers()] [0]
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40697)
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:30.493 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:30.501 [DEBUG] [ThreadPoolExecutor-2690_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Status age = 13.440528869628906s
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:31.335 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:31.336 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:31.336 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:31.336 [DEBUG] [Thread-67269 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:31.336 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:31.336 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:31.337 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:31.337 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:31.338 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 17;17.0210426;-24.256589;50.108465;89.99308;50.08601;90.12017;14.0408;2460996.86980714;10.87535333;1.3;_
2025-11-17T10:52:31.338 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response 17;17.0210426;-24.256589;50.108465;89.99308;50.08601;90.12017;14.0408;2460996.86980714;10.87535333;1.3;_
2025-11-17T10:52:31.338 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:31.338 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:31.338 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:31.339 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:31.339 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:31.339 [INFO] [Thread-67269 (handle)] [driver.py] [get_status()] Telra = 17.0210426, teldec = -24.256589
2025-11-17T10:52:31.339 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0210426 -24.256589
2025-11-17T10:52:31.339 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0210426 -24.256589
2025-11-17T10:52:31.339 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0210426 -24.256589
2025-11-17T10:52:31.340 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 17;17.0210426;-24.256589;50.108465;89.99308;50.08601;90.12017;14.0408;2460996.86980718;10.87535333;1.3;_16.9950630109451 -24.2174607926998
2025-11-17T10:52:31.340 [INFO] [Thread-67269 (handle)] [driver.py] [get_status()] ra_j2k = 16.9950630109451     dec_j2k = -24.2174607926998
2025-11-17T10:52:31.340 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:31.340 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:31.340 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 140;0.104422979474197;171.162357330327;_
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response 140;0.104422979474197;171.162357330327;_
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:31.341 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:31.342 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:31.343 [DEBUG] [Thread-67269 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:31.343 [DEBUG] [Thread-67269 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:31.343 [DEBUG] [Thread-67269 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38169)
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:31.344 [DEBUG] [Thread-67269 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:31.351 [DEBUG] [Thread-67269 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:31.352 [INFO] [Thread-67269 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86980714, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104422979474197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.99308, telescope_ra=17.0210426, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.0408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=16.9950630109451, telescope_dec_j2k=-24.2174607926998, observability=1)
2025-11-17T10:52:32.853 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:52:32
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.5014894008636475s
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:32.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:32.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:32.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0214538;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04121;2460996.86982471;10.87576333;1.3;_
2025-11-17T10:52:32.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.0214538;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04121;2460996.86982471;10.87576333;1.3;_
2025-11-17T10:52:32.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:32.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:32.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:32.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:32.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:32.856 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.0214538, teldec = -24.256589
2025-11-17T10:52:32.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0214538 -24.256589
2025-11-17T10:52:32.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0214538 -24.256589
2025-11-17T10:52:32.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0214538 -24.256589
2025-11-17T10:52:32.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0214538;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04121;2460996.86982473;10.87576333;1.3;_16.9954740682681 -24.2174755335869
2025-11-17T10:52:32.857 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 16.9954740682681     dec_j2k = -24.2174755335869
2025-11-17T10:52:32.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:32.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:32.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:32.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104423541041397;171.162362694745;_
2025-11-17T10:52:32.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104423541041397;171.162362694745;_
2025-11-17T10:52:32.859 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:32.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:32.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:32.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:32.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:32.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:32.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:32.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:32.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:32.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:32.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:32.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:32.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59229)
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:32.865 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:32.872 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:32.873 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:32.873 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.86982471, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104423541041397, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.99308, telescope_ra=17.0214538, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.04121, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=16.9954740682681, telescope_dec_j2k=-24.2174755335869, observability=1)
2025-11-17T10:52:41.717 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:41.717 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.844476222991943s
2025-11-17T10:52:41.717 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:41.718 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:41.719 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:41.719 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:41.719 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:41.719 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:41.719 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:41.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0239096;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04367;2460996.8699273;10.8782125;1.3;_
2025-11-17T10:52:41.720 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0239096;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04367;2460996.8699273;10.8782125;1.3;_
2025-11-17T10:52:41.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:41.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:41.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:41.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:41.721 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:41.721 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0239096, teldec = -24.256589
2025-11-17T10:52:41.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0239096 -24.256589
2025-11-17T10:52:41.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0239096 -24.256589
2025-11-17T10:52:41.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0239096 -24.256589
2025-11-17T10:52:41.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0239378;-24.256589;50.108465;89.99308;50.08601;90.12017;14.0437;2460996.86992734;10.87824056;1.3;_16.9979290170722 -24.2175635799694
2025-11-17T10:52:41.722 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 16.9979290170722     dec_j2k = -24.2175635799694
2025-11-17T10:52:41.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:41.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:41.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104423260257797;171.162368059163;_
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104423260257797;171.162368059163;_
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:41.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:41.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:41.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:41.725 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:41.725 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37519)
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:41.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:41.733 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:41.734 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8699273, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104423260257797, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.99308, telescope_ra=17.0239096, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.04367, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=16.9979290170722, telescope_dec_j2k=-24.2175635799694, observability=1)
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Status age = 7.653715133666992s
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:49.387 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:52:49.388 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:52:49.389 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 17;17.0260566;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04582;2460996.87001608;10.88035361;1.3;_
2025-11-17T10:52:49.389 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response 17;17.0260566;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04582;2460996.87001608;10.88035361;1.3;_
2025-11-17T10:52:49.389 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:52:49.389 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:52:49.389 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:52:49.390 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:49.390 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:52:49.390 [INFO] [Thread-67270 (handle)] [driver.py] [get_status()] Telra = 17.0260566, teldec = -24.256589
2025-11-17T10:52:49.390 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0260566 -24.256589
2025-11-17T10:52:49.390 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0260566 -24.256589
2025-11-17T10:52:49.390 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0260566 -24.256589
2025-11-17T10:52:49.391 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 17;17.0260566;-24.256589;50.108465;89.99308;50.08601;90.12017;14.04582;2460996.8700161;10.88035361;1.3;_17.0000752741862 -24.2176405687624
2025-11-17T10:52:49.391 [INFO] [Thread-67270 (handle)] [driver.py] [get_status()] ra_j2k = 17.0000752741862     dec_j2k = -24.2176405687624
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 140;0.104423380593625;171.162351965909;_
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response 140;0.104423380593625;171.162351965909;_
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:49.392 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:49.393 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:49.393 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:49.393 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:52:49.393 [DEBUG] [Thread-67270 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:52:49.394 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:52:49.394 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:52:49.394 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:52:49.395 [DEBUG] [Thread-67270 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:49.395 [DEBUG] [Thread-67270 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:52:49.395 [DEBUG] [Thread-67270 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38557)
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:52:49.398 [DEBUG] [Thread-67270 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:52:49.405 [DEBUG] [Thread-67270 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:52:49.405 [INFO] [Thread-67270 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87001608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104423380593625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108465, telescope_az=89.99308, telescope_ra=17.0260566, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.04582, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0000752741862, telescope_dec_j2k=-24.2176405687624, observability=1)
2025-11-17T10:52:55.501 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:55.501 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:52:55.502 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:52:55.503 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:52:55.503 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:52:55.503 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:52:55.504 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Status age = 15.419776201248169s
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:04.825 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:04.826 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:04.827 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 17;17.0303701;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05013;2460996.87019476;10.88465528;1.3;_
2025-11-17T10:53:04.827 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response 17;17.0303701;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05013;2460996.87019476;10.88465528;1.3;_
2025-11-17T10:53:04.827 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:04.827 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:04.827 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:04.828 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:04.828 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:04.828 [INFO] [Thread-67271 (handle)] [driver.py] [get_status()] Telra = 17.0303701, teldec = -24.256589
2025-11-17T10:53:04.828 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0303701 -24.256589
2025-11-17T10:53:04.828 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0303701 -24.256589
2025-11-17T10:53:04.828 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0303701 -24.256589
2025-11-17T10:53:04.829 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 17;17.0303701;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05013;2460996.87019478;10.88465528;1.3;_17.0043872852717 -24.2177952839545
2025-11-17T10:53:04.829 [INFO] [Thread-67271 (handle)] [driver.py] [get_status()] ra_j2k = 17.0043872852717     dec_j2k = -24.2177952839545
2025-11-17T10:53:04.829 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:04.829 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:04.829 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 140;0.104424062496653;171.162362694745;_
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response 140;0.104424062496653;171.162362694745;_
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:04.830 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:04.831 [DEBUG] [Thread-67271 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:04.832 [DEBUG] [Thread-67271 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:04.832 [DEBUG] [Thread-67271 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57367)
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:04.834 [DEBUG] [Thread-67271 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:04.841 [DEBUG] [Thread-67271 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:04.842 [DEBUG] [Thread-67271 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:04.842 [DEBUG] [Thread-67271 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:04.842 [INFO] [Thread-67271 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87019476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104424062496653, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.99308, telescope_ra=17.0303701, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.05013, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0043872852717, telescope_dec_j2k=-24.2177952839545, observability=1)
2025-11-17T10:53:07.452 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:07.452 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Status age = 2.610701322555542s
2025-11-17T10:53:07.452 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:07.452 [DEBUG] [Thread-67272 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 17;17.0310987;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05086;2460996.87022515;10.88538194;1.3;_
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response 17;17.0310987;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05086;2460996.87022515;10.88538194;1.3;_
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:07.453 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:07.454 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:07.454 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:07.455 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:07.455 [INFO] [Thread-67272 (handle)] [driver.py] [get_status()] Telra = 17.0310987, teldec = -24.256589
2025-11-17T10:53:07.455 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0310987 -24.256589
2025-11-17T10:53:07.455 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0310987 -24.256589
2025-11-17T10:53:07.455 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0310987 -24.256589
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 17;17.0310987;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05086;2460996.87022518;10.88538194;1.3;_17.0051156342522 -24.2178214221844
2025-11-17T10:53:07.456 [INFO] [Thread-67272 (handle)] [driver.py] [get_status()] ra_j2k = 17.0051156342522     dec_j2k = -24.2178214221844
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 140;0.104424383392196;171.162346601491;_
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response 140;0.104424383392196;171.162346601491;_
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:07.456 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:07.457 [DEBUG] [Thread-67272 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40839)
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:07.458 [DEBUG] [Thread-67272 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:07.465 [DEBUG] [Thread-67272 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:07.465 [DEBUG] [Thread-67272 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:07.465 [DEBUG] [Thread-67272 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:07.465 [DEBUG] [Thread-67272 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:07.465 [DEBUG] [Thread-67272 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:07.466 [DEBUG] [Thread-67272 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:07.466 [DEBUG] [Thread-67272 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:07.466 [DEBUG] [Thread-67272 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:07.466 [DEBUG] [Thread-67272 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:07.466 [INFO] [Thread-67272 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87022515, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104424383392196, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.99308, telescope_ra=17.0310987, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.05086, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0051156342522, telescope_dec_j2k=-24.2178214221844, observability=1)
2025-11-17T10:53:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.380787372589111s
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0331616;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05292;2460996.87031075;10.88743917;1.3;_
2025-11-17T10:53:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.0331616;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05292;2460996.87031075;10.88743917;1.3;_
2025-11-17T10:53:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:14.850 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.0331616, teldec = -24.256589
2025-11-17T10:53:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0331616 -24.256589
2025-11-17T10:53:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0331616 -24.256589
2025-11-17T10:53:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0331616 -24.256589
2025-11-17T10:53:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0331616;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05292;2460996.87031078;10.88743917;1.3;_17.0071778242806 -24.2178954357798
2025-11-17T10:53:14.851 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.0071778242806     dec_j2k = -24.2178954357798
2025-11-17T10:53:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104424503728024;171.162351965909;_
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104424503728024;171.162351965909;_
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47373)
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:14.864 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87031075, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104424503728024, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.99308, telescope_ra=17.0331616, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.05292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0071778242806, telescope_dec_j2k=-24.2178954357798, observability=1)
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.0902657508850098s
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:17.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:17.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:17.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0340212;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05378;2460996.87034672;10.88829639;1.3;_
2025-11-17T10:53:17.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.0340212;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05378;2460996.87034672;10.88829639;1.3;_
2025-11-17T10:53:17.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:17.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:17.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:17.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:17.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:17.958 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.0340212, teldec = -24.256589
2025-11-17T10:53:17.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.0340212 -24.256589
2025-11-17T10:53:17.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.0340212 -24.256589
2025-11-17T10:53:17.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0340212 -24.256589
2025-11-17T10:53:17.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0340212;-24.256589;50.108464;89.99308;50.08601;90.12017;14.05378;2460996.87034675;10.88829639;1.3;_17.0080371287641 -24.2179262803103
2025-11-17T10:53:17.959 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0080371287641     dec_j2k = -24.2179262803103
2025-11-17T10:53:17.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:17.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:17.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104425346078823;171.162362694745;_
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104425346078823;171.162362694745;_
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:17.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:17.961 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:17.962 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:17.962 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:17.962 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43751)
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:17.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:17.971 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:53:17.971 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87034672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104425346078823, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.99308, telescope_ra=17.0340212, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.05378, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0080371287641, telescope_dec_j2k=-24.2179262803103, observability=1)
2025-11-17T10:53:17.971 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11854934692383 seconds ago
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Status age = 7.600844383239746s
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:25.572 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:25.573 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:25.574 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 17;17.0361403;-24.256589;50.108464;89.99308;50.08601;90.12017;14.0559;2460996.87043488;10.89040972;1.3;_
2025-11-17T10:53:25.574 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response 17;17.0361403;-24.256589;50.108464;89.99308;50.08601;90.12017;14.0559;2460996.87043488;10.89040972;1.3;_
2025-11-17T10:53:25.574 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:25.574 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:25.574 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:25.575 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:25.575 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:25.575 [INFO] [Thread-67273 (handle)] [driver.py] [get_status()] Telra = 17.0361403, teldec = -24.256589
2025-11-17T10:53:25.575 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0361403 -24.256589
2025-11-17T10:53:25.575 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0361403 -24.256589
2025-11-17T10:53:25.576 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0361403 -24.256589
2025-11-17T10:53:25.576 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 17;17.0361403;-24.256589;50.108464;89.99308;50.08601;90.12017;14.0559;2460996.87043491;10.89040972;1.3;_17.0101555010693 -24.2180023273817
2025-11-17T10:53:25.577 [INFO] [Thread-67273 (handle)] [driver.py] [get_status()] ra_j2k = 17.0101555010693     dec_j2k = -24.2180023273817
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 140;0.104424944959395;171.162362694745;_
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response 140;0.104424944959395;171.162362694745;_
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:25.577 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:25.578 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:25.578 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:25.578 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:25.578 [DEBUG] [Thread-67273 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:25.578 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:25.579 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:25.579 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:25.580 [DEBUG] [Thread-67273 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:25.580 [DEBUG] [Thread-67273 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:25.580 [DEBUG] [Thread-67273 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43571)
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:25.585 [DEBUG] [Thread-67273 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:25.592 [DEBUG] [Thread-67273 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:25.593 [INFO] [Thread-67273 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87043488, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104424944959395, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.99308, telescope_ra=17.0361403, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.0559, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:52:29.478071', telescope_ra_j2k=17.0101555010693, telescope_dec_j2k=-24.2180023273817, observability=1)
2025-11-17T10:53:29.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:29.620 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:29.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:29.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:29.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:29.621 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:29.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:29.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:29.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:29.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:29.622 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:53:29.622 [INFO] [ThreadPoolExecutor-2691_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:53:29.622 [INFO] [ThreadPoolExecutor-2691_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:53:32.934 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:53:32
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.341469049453735s
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:32.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:32.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:32.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0382032;-24.256589;50.108464;89.993079;50.08601;90.12017;14.05796;2460996.87052009;10.89246694;1.3;_
2025-11-17T10:53:32.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.0382032;-24.256589;50.108464;89.993079;50.08601;90.12017;14.05796;2460996.87052009;10.89246694;1.3;_
2025-11-17T10:53:32.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:32.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:32.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:32.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:32.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:32.937 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.0382032, teldec = -24.256589
2025-11-17T10:53:32.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0382032 -24.256589
2025-11-17T10:53:32.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0382032 -24.256589
2025-11-17T10:53:32.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0382032 -24.256589
2025-11-17T10:53:32.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0382032;-24.256589;50.108464;89.993079;50.08601;90.12017;14.05796;2460996.87052012;10.89246694;1.3;_17.0122176937902 -24.2180763694082
2025-11-17T10:53:32.938 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.0122176937902     dec_j2k = -24.2180763694082
2025-11-17T10:53:32.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:32.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:32.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104425787310194;171.162368059163;_
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104425787310194;171.162368059163;_
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:32.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:32.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:32.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:32.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:32.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39615)
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:32.946 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:32.953 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:32.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:32.954 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87052009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104425787310194, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.993079, telescope_ra=17.0382032, telescope_dec=-24.256589, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.05796, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0122176937902, telescope_dec_j2k=-24.2180763694082, observability=1)
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.87068247795105s
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:40.824 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:40.825 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:40.825 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:40.825 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:40.825 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:40.825 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0403716;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06013;2460996.87061141;10.89465778;1.3;_
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0403716;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06013;2460996.87061141;10.89465778;1.3;_
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:40.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:40.827 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0403716, teldec = -24.256588
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0403716 -24.256588
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0403716 -24.256588
2025-11-17T10:53:40.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0403716 -24.256588
2025-11-17T10:53:40.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0404;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06016;2460996.87061144;10.89465778;1.3;_17.0143853517198 -24.2181532106029
2025-11-17T10:53:40.828 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0143853517198     dec_j2k = -24.2181532106029
2025-11-17T10:53:40.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:40.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:40.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:40.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104425867534079;171.162357330327;_
2025-11-17T10:53:40.829 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104425867534079;171.162357330327;_
2025-11-17T10:53:40.829 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:40.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:40.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:40.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:40.830 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:40.831 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:40.831 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:40.831 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52651)
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:40.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:40.842 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:40.842 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87061141, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104425867534079, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.993079, telescope_ra=17.0403716, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.06013, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0143853517198, telescope_dec_j2k=-24.2181532106029, observability=1)
2025-11-17T10:53:43.643 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Status age = 2.801574468612671s
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:53:43.644 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:53:43.645 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 17;17.0411847;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06094;2460996.87064404;10.89544028;1.3;_
2025-11-17T10:53:43.646 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response 17;17.0411847;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06094;2460996.87064404;10.89544028;1.3;_
2025-11-17T10:53:43.646 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:53:43.646 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:53:43.646 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:53:43.647 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:43.647 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:53:43.647 [INFO] [Thread-67274 (handle)] [driver.py] [get_status()] Telra = 17.0411847, teldec = -24.256588
2025-11-17T10:53:43.647 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0411847 -24.256588
2025-11-17T10:53:43.647 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0411847 -24.256588
2025-11-17T10:53:43.647 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0411847 -24.256588
2025-11-17T10:53:43.648 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 17;17.0411847;-24.256588;50.108464;89.993079;50.08601;90.12017;14.06094;2460996.87064407;10.89544028;1.3;_17.0151981737026 -24.2181824025389
2025-11-17T10:53:43.648 [INFO] [Thread-67274 (handle)] [driver.py] [get_status()] ra_j2k = 17.0151981737026     dec_j2k = -24.2181824025389
2025-11-17T10:53:43.648 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:53:43.648 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:53:43.648 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:53:43.648 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 140;0.104425546638537;171.162351965909;_
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response 140;0.104425546638537;171.162351965909;_
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:43.649 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:43.650 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:43.650 [DEBUG] [Thread-67274 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:43.650 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:53:43.650 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:53:43.650 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:53:43.651 [DEBUG] [Thread-67274 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:43.651 [DEBUG] [Thread-67274 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:53:43.651 [DEBUG] [Thread-67274 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33699)
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:53:43.655 [DEBUG] [Thread-67274 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:53:43.662 [DEBUG] [Thread-67274 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:53:43.662 [DEBUG] [Thread-67274 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:43.662 [DEBUG] [Thread-67274 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:53:43.662 [DEBUG] [Thread-67274 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:53:43.662 [DEBUG] [Thread-67274 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:53:43.663 [DEBUG] [Thread-67274 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:53:43.663 [DEBUG] [Thread-67274 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:53:43.663 [DEBUG] [Thread-67274 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:53:43.663 [DEBUG] [Thread-67274 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:53:43.663 [INFO] [Thread-67274 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87064404, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104425546638537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108464, telescope_az=89.993079, telescope_ra=17.0411847, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.06094, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0151981737026, telescope_dec_j2k=-24.2181824025389, observability=1)
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.505 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:50.506 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:50.507 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:50.507 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.507 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:50.508 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:53:50.509 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:50.510 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Park
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:53:50.511 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:53:50.512 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 29;17.0430796;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06284;2460996.87072352;10.89733;1.3;_Park Command Successful
2025-11-17T10:53:51.512 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:53:51.512 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:53:51.512 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:53:51.513 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:53:51.513 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:53:52.513 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:53:52.513 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:53:52.513 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:53:52.514 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:53:52.514 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:53:53.514 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:53:53.514 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:53:53.514 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:53:53.515 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:53:53.515 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:53:54.515 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:53:54.515 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:53:54.515 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:54.516 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:53:54.517 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:53:54.518 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:55.518 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:55.518 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:55.518 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:53:55.518 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:53:55.518 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:53:55.519 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:53:55.520 [DEBUG] [ThreadPoolExecutor-2690_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:53:55.520 [INFO] [ThreadPoolExecutor-2690_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Status age = 18.045412063598633s
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:01.708 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:01.709 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:01.710 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 17;17.0462014;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06596;2460996.87085312;10.90044333;1.3;_
2025-11-17T10:54:01.710 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response 17;17.0462014;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06596;2460996.87085312;10.90044333;1.3;_
2025-11-17T10:54:01.710 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:01.710 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:01.710 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:01.711 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:01.711 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:01.711 [INFO] [Thread-67275 (handle)] [driver.py] [get_status()] Telra = 17.0462014, teldec = -24.256588
2025-11-17T10:54:01.711 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0462014 -24.256588
2025-11-17T10:54:01.711 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0462014 -24.256588
2025-11-17T10:54:01.711 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0462014 -24.256588
2025-11-17T10:54:01.712 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 17;17.0462014;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06596;2460996.87085315;10.90044333;1.3;_17.0202131621681 -24.2183625519143
2025-11-17T10:54:01.712 [INFO] [Thread-67275 (handle)] [driver.py] [get_status()] ra_j2k = 17.0202131621681     dec_j2k = -24.2183625519143
2025-11-17T10:54:01.712 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:01.712 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:01.712 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 140;0.104426790108764;171.162351965909;_
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response 140;0.104426790108764;171.162351965909;_
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:01.713 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:01.714 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:01.714 [DEBUG] [Thread-67275 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:01.714 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:01.714 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:01.714 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:01.715 [DEBUG] [Thread-67275 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:01.715 [DEBUG] [Thread-67275 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:01.715 [DEBUG] [Thread-67275 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60867)
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:01.720 [DEBUG] [Thread-67275 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:01.727 [DEBUG] [Thread-67275 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:01.727 [DEBUG] [Thread-67275 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:01.727 [DEBUG] [Thread-67275 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:01.727 [DEBUG] [Thread-67275 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:01.728 [DEBUG] [Thread-67275 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:01.728 [DEBUG] [Thread-67275 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:01.728 [DEBUG] [Thread-67275 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:01.728 [DEBUG] [Thread-67275 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:01.728 [DEBUG] [Thread-67275 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:01.728 [INFO] [Thread-67275 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87085312, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104426790108764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.0462014, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.06596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0202131621681, telescope_dec_j2k=-24.2183625519143, observability=1)
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Status age = 3.1429431438446045s
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:04.871 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:04.872 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:04.873 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 17;17.0470894;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06685;2460996.87088973;10.90132889;1.3;_
2025-11-17T10:54:04.873 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response 17;17.0470894;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06685;2460996.87088973;10.90132889;1.3;_
2025-11-17T10:54:04.873 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:04.873 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:04.873 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:04.874 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:04.874 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:04.874 [INFO] [Thread-67276 (handle)] [driver.py] [get_status()] Telra = 17.0470894, teldec = -24.256588
2025-11-17T10:54:04.874 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0470894 -24.256588
2025-11-17T10:54:04.874 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0470894 -24.256588
2025-11-17T10:54:04.874 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0470894 -24.256588
2025-11-17T10:54:04.875 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 17;17.0470894;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06685;2460996.87088976;10.90132889;1.3;_17.0211008598908 -24.2183944470387
2025-11-17T10:54:04.875 [INFO] [Thread-67276 (handle)] [driver.py] [get_status()] ra_j2k = 17.0211008598908     dec_j2k = -24.2183944470387
2025-11-17T10:54:04.875 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:04.875 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:04.875 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 140;0.104426629660993;171.162357330327;_
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response 140;0.104426629660993;171.162357330327;_
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:04.876 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:04.877 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:04.878 [DEBUG] [Thread-67276 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:04.878 [DEBUG] [Thread-67276 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:04.878 [DEBUG] [Thread-67276 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:54:04.879 [DEBUG] [Thread-67276 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48619)
2025-11-17T10:54:04.879 [DEBUG] [Thread-67276 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:04.880 [DEBUG] [Thread-67276 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:04.880 [DEBUG] [Thread-67276 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:04.880 [DEBUG] [Thread-67276 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:04.880 [DEBUG] [Thread-67276 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:04.887 [DEBUG] [Thread-67276 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:04.887 [INFO] [Thread-67276 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87088973, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104426629660993, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.0470894, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.06685, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0211008598908, telescope_dec_j2k=-24.2183944470387, observability=1)
2025-11-17T10:54:14.822 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.935344219207764s
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:14.823 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0498483;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06961;2460996.87100492;10.90408028;1.3;_
2025-11-17T10:54:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.0498483;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06961;2460996.87100492;10.90408028;1.3;_
2025-11-17T10:54:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:14.826 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.0498483, teldec = -24.256588
2025-11-17T10:54:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0498483 -24.256588
2025-11-17T10:54:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0498483 -24.256588
2025-11-17T10:54:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0498483 -24.256588
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0498483;-24.256588;50.108463;89.993079;50.08601;90.12017;14.06961;2460996.87100494;10.90408028;1.3;_17.0238588220589 -24.2184935546146
2025-11-17T10:54:14.827 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.0238588220589     dec_j2k = -24.2184935546146
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104426749996821;171.162357330327;_
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104426749996821;171.162357330327;_
2025-11-17T10:54:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:14.833 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60079)
2025-11-17T10:54:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:14.834 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:14.841 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:14.841 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87100492, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104426749996821, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.0498483, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.06961, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0238588220589, telescope_dec_j2k=-24.2184935546146, observability=1)
2025-11-17T10:54:18.031 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.1901142597198486s
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:18.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:18.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.050745;-24.256588;50.108463;89.993079;50.08601;90.12017;14.0705;2460996.87104205;10.90497444;1.3;_
2025-11-17T10:54:18.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.050745;-24.256588;50.108463;89.993079;50.08601;90.12017;14.0705;2460996.87104205;10.90497444;1.3;_
2025-11-17T10:54:18.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:18.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:18.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:18.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:18.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:18.034 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.050745, teldec = -24.256588
2025-11-17T10:54:18.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.050745 -24.256588
2025-11-17T10:54:18.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.050745 -24.256588
2025-11-17T10:54:18.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.050745 -24.256588
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.050745;-24.256588;50.108463;89.993079;50.08601;90.12017;14.0705;2460996.87104207;10.90497444;1.3;_17.0247552176688 -24.2185257710641
2025-11-17T10:54:18.036 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0247552176688     dec_j2k = -24.2185257710641
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10442687033265;171.162362694745;_
2025-11-17T10:54:18.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10442687033265;171.162362694745;_
2025-11-17T10:54:18.037 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:18.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:18.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:18.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:18.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:18.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:18.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:18.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60547)
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:18.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:18.049 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:18.050 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:18.050 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:54:18.050 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87104205, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10442687033265, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.050745, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.0705, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0247552176688, telescope_dec_j2k=-24.2185257710641, observability=1)
2025-11-17T10:54:18.050 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11593699455261 seconds ago
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Status age = 1.7853047847747803s
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:19.835 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 17;17.0512678;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07103;2460996.87106292;10.90549583;1.3;_
2025-11-17T10:54:19.836 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response 17;17.0512678;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07103;2460996.87106292;10.90549583;1.3;_
2025-11-17T10:54:19.837 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:19.837 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:19.837 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:19.837 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:19.838 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:19.838 [INFO] [Thread-67277 (handle)] [driver.py] [get_status()] Telra = 17.0512678, teldec = -24.256588
2025-11-17T10:54:19.838 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0512678 -24.256588
2025-11-17T10:54:19.838 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0512678 -24.256588
2025-11-17T10:54:19.838 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0512678 -24.256588
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 17;17.0512678;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07103;2460996.87106295;10.90549583;1.3;_17.0252778402976 -24.2185445551126
2025-11-17T10:54:19.839 [INFO] [Thread-67277 (handle)] [driver.py] [get_status()] ra_j2k = 17.0252778402976     dec_j2k = -24.2185445551126
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 140;0.104427351675963;171.162362694745;_
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response 140;0.104427351675963;171.162362694745;_
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:19.839 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:19.840 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:19.841 [DEBUG] [Thread-67277 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:19.841 [DEBUG] [Thread-67277 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:19.841 [DEBUG] [Thread-67277 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:19.842 [DEBUG] [Thread-67277 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54491)
2025-11-17T10:54:19.843 [DEBUG] [Thread-67277 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:19.843 [DEBUG] [Thread-67277 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:19.843 [DEBUG] [Thread-67277 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:19.843 [DEBUG] [Thread-67277 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:19.843 [DEBUG] [Thread-67277 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:19.850 [DEBUG] [Thread-67277 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:19.850 [INFO] [Thread-67277 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87106292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104427351675963, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.0512678, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.07103, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:53:29.619513', telescope_ra_j2k=17.0252778402976, telescope_dec_j2k=-24.2185445551126, observability=1)
2025-11-17T10:54:29.762 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:29.763 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:29.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:29.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:29.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:29.764 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:29.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:29.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:29.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:29.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:29.765 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:54:29.765 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:29.765 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:29.765 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:29.765 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:29.765 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:54:29.766 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:54:29.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:30.767 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:54:30.768 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:30.769 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:30.770 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:30.770 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:30.770 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:30.770 [DEBUG] [ThreadPoolExecutor-2692_0] [payload.py] [to_registers()] [0]
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40863)
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:30.771 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:30.778 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:30.778 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:54:30.778 [DEBUG] [ThreadPoolExecutor-2692_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:54:30.778 [DEBUG] [ThreadPoolExecutor-2692_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:54:30.779 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:30.779 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:30.779 [DEBUG] [ThreadPoolExecutor-2692_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:33.014 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:54:33
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.163801670074463s
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:33.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:33.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:33.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0549178;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07468;2460996.87121546;10.90913583;1.3;_
2025-11-17T10:54:33.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.0549178;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07468;2460996.87121546;10.90913583;1.3;_
2025-11-17T10:54:33.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:33.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:33.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:33.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:33.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:33.017 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.0549178, teldec = -24.256588
2025-11-17T10:54:33.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0549178 -24.256588
2025-11-17T10:54:33.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0549178 -24.256588
2025-11-17T10:54:33.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0549178 -24.256588
2025-11-17T10:54:33.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0549178;-24.256588;50.108463;89.993079;50.08601;90.12017;14.07468;2460996.87121549;10.90913583;1.3;_17.0289266039303 -24.2186757190143
2025-11-17T10:54:33.018 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.0289266039303     dec_j2k = -24.2186757190143
2025-11-17T10:54:33.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104426950556535;171.162362694745;_
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104426950556535;171.162362694745;_
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:33.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:33.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:33.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:33.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:33.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:33.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:33.025 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36599)
2025-11-17T10:54:33.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:33.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:33.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:33.026 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:33.026 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:33.033 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:33.033 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87121546, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104426950556535, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108463, telescope_az=89.993079, telescope_ra=17.0549178, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.07468, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0289266039303, telescope_dec_j2k=-24.2186757190143, observability=1)
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Status age = 4.87584376335144s
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:37.909 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:37.910 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 17;17.0562899;-24.256588;50.108462;89.993079;50.08601;90.12017;14.07605;2460996.87127211;10.91050417;1.3;_
2025-11-17T10:54:37.911 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response 17;17.0562899;-24.256588;50.108462;89.993079;50.08601;90.12017;14.07605;2460996.87127211;10.91050417;1.3;_
2025-11-17T10:54:37.911 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:37.911 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:37.911 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:37.912 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:37.912 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:37.912 [INFO] [Thread-67278 (handle)] [driver.py] [get_status()] Telra = 17.0562899, teldec = -24.256588
2025-11-17T10:54:37.912 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0562899 -24.256588
2025-11-17T10:54:37.912 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0562899 -24.256588
2025-11-17T10:54:37.912 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0562899 -24.256588
2025-11-17T10:54:37.913 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 17;17.0562899;-24.256588;50.108462;89.993079;50.08601;90.12017;14.07605;2460996.87127214;10.91050417;1.3;_17.0302982400515 -24.2187250351141
2025-11-17T10:54:37.913 [INFO] [Thread-67278 (handle)] [driver.py] [get_status()] ra_j2k = 17.0302982400515     dec_j2k = -24.2187250351141
2025-11-17T10:54:37.913 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:37.913 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:37.913 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 140;0.104427752795391;171.162357330327;_
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response 140;0.104427752795391;171.162357330327;_
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:37.914 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:37.915 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:37.916 [DEBUG] [Thread-67278 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:37.916 [DEBUG] [Thread-67278 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:37.916 [DEBUG] [Thread-67278 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51333)
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:37.918 [DEBUG] [Thread-67278 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:37.925 [DEBUG] [Thread-67278 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:37.925 [DEBUG] [Thread-67278 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:37.925 [DEBUG] [Thread-67278 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:37.926 [DEBUG] [Thread-67278 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:37.926 [INFO] [Thread-67278 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87127211, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104427752795391, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993079, telescope_ra=17.0562899, telescope_dec=-24.256588, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.07605, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0302982400515, telescope_dec_j2k=-24.2187250351141, observability=1)
2025-11-17T10:54:39.955 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:39.955 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.029515504837036s
2025-11-17T10:54:39.955 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:39.955 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:39.955 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:39.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:39.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:39.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:39.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:39.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0568692;-24.256587;50.108462;89.993079;50.08601;90.12017;14.07663;2460996.87129581;10.91108194;1.3;_
2025-11-17T10:54:39.958 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0568692;-24.256587;50.108462;89.993079;50.08601;90.12017;14.07663;2460996.87129581;10.91108194;1.3;_
2025-11-17T10:54:39.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:39.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:39.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:39.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:39.959 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:39.959 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0568692, teldec = -24.256587
2025-11-17T10:54:39.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0568692 -24.256587
2025-11-17T10:54:39.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0568692 -24.256587
2025-11-17T10:54:39.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0568692 -24.256587
2025-11-17T10:54:39.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0568692;-24.256587;50.108462;89.993079;50.08601;90.12017;14.07663;2460996.87129583;10.91108194;1.3;_17.0308773445408 -24.218744857905
2025-11-17T10:54:39.960 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0308773445408     dec_j2k = -24.218744857905
2025-11-17T10:54:39.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104428073690934;171.162357330327;_
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104428073690934;171.162357330327;_
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:39.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:39.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:54:39.963 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41627)
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:39.969 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:39.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:39.976 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87129581, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104428073690934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993079, telescope_ra=17.0568692, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.07663, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0308773445408, telescope_dec_j2k=-24.218744857905, observability=1)
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:55.779 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:55.780 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:55.781 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:55.781 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:54:55.781 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:54:55.781 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:54:55.781 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Status age = 16.000643968582153s
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:54:55.977 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:54:55.978 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:54:55.979 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 17;17.0613284;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08109;2460996.87148124;10.91552889;1.3;_
2025-11-17T10:54:55.979 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response 17;17.0613284;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08109;2460996.87148124;10.91552889;1.3;_
2025-11-17T10:54:55.979 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:54:55.979 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:54:55.979 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:54:55.980 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:55.980 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:54:55.980 [INFO] [Thread-67279 (handle)] [driver.py] [get_status()] Telra = 17.0613284, teldec = -24.256587
2025-11-17T10:54:55.980 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0613284 -24.256587
2025-11-17T10:54:55.981 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0613284 -24.256587
2025-11-17T10:54:55.981 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0613284 -24.256587
2025-11-17T10:54:55.981 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 17;17.0613284;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08109;2460996.87148126;10.91552889;1.3;_17.0353350410203 -24.2189051724622
2025-11-17T10:54:55.982 [INFO] [Thread-67279 (handle)] [driver.py] [get_status()] ra_j2k = 17.0353350410203     dec_j2k = -24.2189051724622
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 140;0.104427712683448;171.162368059163;_
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response 140;0.104427712683448;171.162368059163;_
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:55.982 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:54:55.983 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:54:55.984 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:54:55.984 [DEBUG] [Thread-67279 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:55.984 [DEBUG] [Thread-67279 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:54:55.985 [DEBUG] [Thread-67279 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:54:55.989 [DEBUG] [Thread-67279 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48371)
2025-11-17T10:54:55.989 [DEBUG] [Thread-67279 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:54:55.990 [DEBUG] [Thread-67279 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:54:55.990 [DEBUG] [Thread-67279 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:54:55.990 [DEBUG] [Thread-67279 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:54:55.990 [DEBUG] [Thread-67279 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:54:55.997 [DEBUG] [Thread-67279 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:54:55.997 [INFO] [Thread-67279 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87148124, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104427712683448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993078, telescope_ra=17.0613284, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.08109, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0353350410203, telescope_dec_j2k=-24.2189051724622, observability=1)
2025-11-17T10:55:04.921 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Status age = 8.924487352371216s
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:04.922 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:04.923 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 17;17.0638124;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08357;2460996.87158476;10.91800611;1.3;_
2025-11-17T10:55:04.923 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response 17;17.0638124;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08357;2460996.87158476;10.91800611;1.3;_
2025-11-17T10:55:04.923 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:04.923 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:04.923 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:04.924 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:04.924 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:04.924 [INFO] [Thread-67280 (handle)] [driver.py] [get_status()] Telra = 17.0638124, teldec = -24.256587
2025-11-17T10:55:04.924 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0638124 -24.256587
2025-11-17T10:55:04.924 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0638124 -24.256587
2025-11-17T10:55:04.924 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0638124 -24.256587
2025-11-17T10:55:04.925 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 17;17.0638124;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08357;2460996.87158478;10.91800611;1.3;_17.0378182057213 -24.2189944988032
2025-11-17T10:55:04.925 [INFO] [Thread-67280 (handle)] [driver.py] [get_status()] ra_j2k = 17.0378182057213     dec_j2k = -24.2189944988032
2025-11-17T10:55:04.925 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:04.925 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:04.925 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 140;0.10442859514619;171.162362694745;_
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response 140;0.10442859514619;171.162362694745;_
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:04.926 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:04.927 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:04.929 [DEBUG] [Thread-67280 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:04.929 [DEBUG] [Thread-67280 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:04.929 [DEBUG] [Thread-67280 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:04.931 [DEBUG] [Thread-67280 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45103)
2025-11-17T10:55:04.932 [DEBUG] [Thread-67280 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:04.932 [DEBUG] [Thread-67280 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:04.932 [DEBUG] [Thread-67280 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:04.932 [DEBUG] [Thread-67280 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:04.932 [DEBUG] [Thread-67280 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:04.939 [DEBUG] [Thread-67280 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:55:04.939 [INFO] [Thread-67280 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87158476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10442859514619, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993078, telescope_ra=17.0638124, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.08357, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0378182057213, telescope_dec_j2k=-24.2189944988032, observability=1)
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Status age = 9.160868167877197s
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:14.100 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:14.101 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:14.101 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:14.101 [DEBUG] [Thread-67281 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:14.101 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:14.101 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:14.102 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:14.102 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:14.102 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 17;17.0663702;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08613;2460996.871691;10.92055694;1.3;_
2025-11-17T10:55:14.103 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response 17;17.0663702;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08613;2460996.871691;10.92055694;1.3;_
2025-11-17T10:55:14.103 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:14.103 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:14.103 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:14.104 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:14.104 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:14.104 [INFO] [Thread-67281 (handle)] [driver.py] [get_status()] Telra = 17.0663702, teldec = -24.256587
2025-11-17T10:55:14.104 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0663702 -24.256587
2025-11-17T10:55:14.104 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0663702 -24.256587
2025-11-17T10:55:14.104 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0663702 -24.256587
2025-11-17T10:55:14.105 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 17;17.0663702;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08613;2460996.87169103;10.92055694;1.3;_17.0403751472792 -24.2190864962064
2025-11-17T10:55:14.105 [INFO] [Thread-67281 (handle)] [driver.py] [get_status()] ra_j2k = 17.0403751472792     dec_j2k = -24.2190864962064
2025-11-17T10:55:14.105 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:14.105 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:14.105 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 140;0.104428555034247;171.162362694745;_
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response 140;0.104428555034247;171.162362694745;_
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:14.106 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:55:14.107 [DEBUG] [Thread-67281 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:55:14.108 [DEBUG] [Thread-67281 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38503)
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:14.113 [DEBUG] [Thread-67281 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:14.121 [DEBUG] [Thread-67281 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:55:14.121 [INFO] [Thread-67281 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.871691, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104428555034247, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993078, telescope_ra=17.0663702, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.08613, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0403751472792, telescope_dec_j2k=-24.2190864962064, observability=1)
2025-11-17T10:55:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.7209179401397705s
2025-11-17T10:55:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7209179401397705
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.988757371902466s
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:18.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:18.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:18.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0674908;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08725;2460996.87173741;10.92167444;1.3;_
2025-11-17T10:55:18.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.0674908;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08725;2460996.87173741;10.92167444;1.3;_
2025-11-17T10:55:18.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:18.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:18.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:18.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:18.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:18.113 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.0674908, teldec = -24.256587
2025-11-17T10:55:18.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.0674908 -24.256587
2025-11-17T10:55:18.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.0674908 -24.256587
2025-11-17T10:55:18.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0674908 -24.256587
2025-11-17T10:55:18.114 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0674908;-24.256587;50.108462;89.993078;50.08601;90.12017;14.08725;2460996.87173743;10.92167444;1.3;_17.0414953717216 -24.2191268067451
2025-11-17T10:55:18.114 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0414953717216     dec_j2k = -24.2191268067451
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104429036377561;171.162357330327;_
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104429036377561;171.162357330327;_
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:18.115 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:18.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:18.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:18.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:18.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:18.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:18.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:18.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:18.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:18.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:18.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41241)
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:18.123 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:18.130 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:18.131 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:55:18.131 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87173741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104429036377561, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108462, telescope_az=89.993078, telescope_ra=17.0674908, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.08725, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:54:29.762553', telescope_ra_j2k=17.0414953717216, telescope_dec_j2k=-24.2191268067451, observability=1)
2025-11-17T10:55:18.131 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.116909980773926 seconds ago
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:29.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:29.906 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:29.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:29.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:29.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:29.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:29.907 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:55:29.907 [INFO] [ThreadPoolExecutor-2693_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:55:29.907 [INFO] [ThreadPoolExecutor-2693_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Status age = 14.029587030410767s
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:32.160 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:32.161 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:32.162 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 17;17.0713934;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09115;2460996.87190002;10.92556639;1.3;_
2025-11-17T10:55:32.162 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response 17;17.0713934;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09115;2460996.87190002;10.92556639;1.3;_
2025-11-17T10:55:32.162 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:32.162 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:32.162 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:32.163 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:32.163 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:32.163 [INFO] [Thread-67282 (handle)] [driver.py] [get_status()] Telra = 17.0713934, teldec = -24.256587
2025-11-17T10:55:32.163 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0713934 -24.256587
2025-11-17T10:55:32.163 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0713934 -24.256587
2025-11-17T10:55:32.163 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0713934 -24.256587
2025-11-17T10:55:32.164 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 17;17.0713934;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09115;2460996.87190005;10.92556639;1.3;_17.0453966663506 -24.2192672181517
2025-11-17T10:55:32.164 [INFO] [Thread-67282 (handle)] [driver.py] [get_status()] ra_j2k = 17.0453966663506     dec_j2k = -24.2192672181517
2025-11-17T10:55:32.164 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:32.164 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:32.164 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 140;0.104429317161161;171.162362694745;_
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response 140;0.104429317161161;171.162362694745;_
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:32.165 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:32.166 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:32.167 [DEBUG] [Thread-67282 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:32.167 [DEBUG] [Thread-67282 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:32.167 [DEBUG] [Thread-67282 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48041)
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:32.169 [DEBUG] [Thread-67282 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:32.176 [DEBUG] [Thread-67282 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:55:32.176 [INFO] [Thread-67282 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87190002, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104429317161161, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993078, telescope_ra=17.0713934, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.09115, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0453966663506, telescope_dec_j2k=-24.2192672181517, observability=1)
2025-11-17T10:55:33.094 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:55:33
2025-11-17T10:55:33.094 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:33.094 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.9175913333892822s
2025-11-17T10:55:33.094 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9175913333892822
2025-11-17T10:55:39.069 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.893096446990967s
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:39.070 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:39.071 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:39.071 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:39.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:39.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:39.071 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:39.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0733356;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09309;2460996.87198;10.92750333;1.3;_
2025-11-17T10:55:39.072 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0733356;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09309;2460996.87198;10.92750333;1.3;_
2025-11-17T10:55:39.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:39.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:39.072 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:39.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:39.073 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:39.073 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0733356, teldec = -24.256587
2025-11-17T10:55:39.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0733356 -24.256587
2025-11-17T10:55:39.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0733356 -24.256587
2025-11-17T10:55:39.073 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0733356 -24.256587
2025-11-17T10:55:39.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0733356;-24.256587;50.108461;89.993078;50.08601;90.12017;14.09309;2460996.87198002;10.92750333;1.3;_17.0473382181833 -24.2193371114588
2025-11-17T10:55:39.074 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0473382181833     dec_j2k = -24.2193371114588
2025-11-17T10:55:39.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:39.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:39.074 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104429718280589;171.162357330327;_
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104429718280589;171.162357330327;_
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:39.075 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:39.076 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:39.077 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:39.077 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:39.077 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:39.082 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57111)
2025-11-17T10:55:39.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:39.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:39.082 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:39.083 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:39.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:39.090 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:39.091 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:55:39.091 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87198, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104429718280589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993078, telescope_ra=17.0733356, telescope_dec=-24.256587, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.09309, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0473382181833, telescope_dec_j2k=-24.2193371114588, observability=1)
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Status age = 11.190353393554688s
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:50.281 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:55:50.283 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:55:50.284 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 17;17.0764363;-24.256586;50.108461;89.993078;50.08601;90.12017;14.09619;2460996.87210976;10.93059556;1.3;_
2025-11-17T10:55:50.284 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response 17;17.0764363;-24.256586;50.108461;89.993078;50.08601;90.12017;14.09619;2460996.87210976;10.93059556;1.3;_
2025-11-17T10:55:50.284 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:55:50.284 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:55:50.284 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:55:50.285 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:50.285 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:55:50.285 [INFO] [Thread-67283 (handle)] [driver.py] [get_status()] Telra = 17.0764363, teldec = -24.256586
2025-11-17T10:55:50.285 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0764363 -24.256586
2025-11-17T10:55:50.285 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0764363 -24.256586
2025-11-17T10:55:50.285 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0764363 -24.256586
2025-11-17T10:55:50.286 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 17;17.0764363;-24.256586;50.108461;89.993078;50.08601;90.12017;14.09619;2460996.87210979;10.93059556;1.3;_17.0504378856155 -24.2194477159828
2025-11-17T10:55:50.286 [INFO] [Thread-67283 (handle)] [driver.py] [get_status()] ra_j2k = 17.0504378856155     dec_j2k = -24.2194477159828
2025-11-17T10:55:50.286 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:55:50.286 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:55:50.286 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 140;0.104430440295559;171.162351965909;_
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response 140;0.104430440295559;171.162351965909;_
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:50.287 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:55:50.288 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:55:50.289 [DEBUG] [Thread-67283 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:50.289 [DEBUG] [Thread-67283 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:55:50.289 [DEBUG] [Thread-67283 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58869)
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:55:50.292 [DEBUG] [Thread-67283 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:55:50.299 [DEBUG] [Thread-67283 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:55:50.300 [INFO] [Thread-67283 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87210976, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104430440295559, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993078, telescope_ra=17.0764363, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.09619, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0504378856155, telescope_dec_j2k=-24.2194477159828, observability=1)
2025-11-17T10:55:50.782 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.782 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.782 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:50.782 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:50.782 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:55:50.783 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:50.784 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:50.785 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:55:50.786 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:50.787 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Park
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:55:50.788 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:55:50.789 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 29;17.0765759;-24.256586;50.108461;89.993078;50.08601;90.12017;14.09633;2460996.87211561;10.93073472;1.3;_Park Command Successful
2025-11-17T10:55:51.789 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:55:51.789 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:55:51.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:55:51.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:55:51.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:55:52.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:55:52.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:55:52.790 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:55:52.791 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:55:52.791 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:55:53.791 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:55:53.791 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:55:53.792 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:55:53.792 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:55:53.792 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:54.793 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:55:54.794 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:55:54.795 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:55.795 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:55.795 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:55.795 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:55:55.795 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:55:55.796 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:55:55.797 [DEBUG] [ThreadPoolExecutor-2692_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:55:55.797 [INFO] [ThreadPoolExecutor-2692_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Status age = 14.684532880783081s
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:04.984 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:04.985 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:04.986 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 17;17.0805548;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10031;2460996.87227993;10.93470278;1.3;_
2025-11-17T10:56:04.986 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response 17;17.0805548;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10031;2460996.87227993;10.93470278;1.3;_
2025-11-17T10:56:04.986 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:04.986 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:04.986 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:04.987 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:04.987 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:04.987 [INFO] [Thread-67284 (handle)] [driver.py] [get_status()] Telra = 17.0805548, teldec = -24.256586
2025-11-17T10:56:04.987 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0805548 -24.256586
2025-11-17T10:56:04.987 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0805548 -24.256586
2025-11-17T10:56:04.987 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0805548 -24.256586
2025-11-17T10:56:04.988 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 17;17.0805548;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10031;2460996.87227995;10.93470278;1.3;_17.0545550177171 -24.2195959935638
2025-11-17T10:56:04.988 [INFO] [Thread-67284 (handle)] [driver.py] [get_status()] ra_j2k = 17.0545550177171     dec_j2k = -24.2195959935638
2025-11-17T10:56:04.988 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:04.988 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:04.988 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 140;0.104430480407502;171.162362694745;_
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response 140;0.104430480407502;171.162362694745;_
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:04.989 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:04.990 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:04.991 [DEBUG] [Thread-67284 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:04.991 [DEBUG] [Thread-67284 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:04.991 [DEBUG] [Thread-67284 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33637)
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:04.996 [DEBUG] [Thread-67284 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:05.003 [DEBUG] [Thread-67284 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:05.003 [INFO] [Thread-67284 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87227993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104430480407502, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993077, telescope_ra=17.0805548, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10031, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0545550177171, telescope_dec_j2k=-24.2195959935638, observability=1)
2025-11-17T10:56:08.348 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:08.348 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Status age = 3.34494948387146s
2025-11-17T10:56:08.348 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:08.348 [DEBUG] [Thread-67285 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:08.348 [DEBUG] [Thread-67285 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:08.349 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:08.350 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 17;17.081479;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10124;2460996.87231887;10.93562444;1.3;_
2025-11-17T10:56:08.350 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response 17;17.081479;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10124;2460996.87231887;10.93562444;1.3;_
2025-11-17T10:56:08.350 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:08.350 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:08.350 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:08.351 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:08.351 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:08.351 [INFO] [Thread-67285 (handle)] [driver.py] [get_status()] Telra = 17.081479, teldec = -24.256586
2025-11-17T10:56:08.351 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] UnCookCoordinates 17.081479 -24.256586
2025-11-17T10:56:08.351 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.081479 -24.256586
2025-11-17T10:56:08.352 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.081479 -24.256586
2025-11-17T10:56:08.352 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 17;17.081479;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10124;2460996.87231889;10.93562444;1.3;_17.0554789113637 -24.2196292734755
2025-11-17T10:56:08.353 [INFO] [Thread-67285 (handle)] [driver.py] [get_status()] ra_j2k = 17.0554789113637     dec_j2k = -24.2196292734755
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 140;0.104430761191102;171.162368059163;_
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response 140;0.104430761191102;171.162368059163;_
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:08.353 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:08.354 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:08.354 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:08.354 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:08.354 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:08.355 [DEBUG] [Thread-67285 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:08.356 [DEBUG] [Thread-67285 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42895)
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:08.362 [DEBUG] [Thread-67285 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:08.370 [DEBUG] [Thread-67285 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:08.371 [INFO] [Thread-67285 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87231887, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104430761191102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993077, telescope_ra=17.081479, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10124, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0554789113637, telescope_dec_j2k=-24.2196292734755, observability=1)
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.47431755065918s
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0832901;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10305;2460996.87239406;10.93743056;1.3;_
2025-11-17T10:56:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.0832901;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10305;2460996.87239406;10.93743056;1.3;_
2025-11-17T10:56:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:14.848 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.0832901, teldec = -24.256586
2025-11-17T10:56:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0832901 -24.256586
2025-11-17T10:56:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0832901 -24.256586
2025-11-17T10:56:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0832901 -24.256586
2025-11-17T10:56:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.0832901;-24.256586;50.108461;89.993077;50.08601;90.12017;14.10305;2460996.87239409;10.93743056;1.3;_17.057289411665 -24.2196944966313
2025-11-17T10:56:14.849 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.057289411665     dec_j2k = -24.2196944966313
2025-11-17T10:56:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104431041974701;171.162362694745;_
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104431041974701;171.162362694745;_
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:14.853 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35735)
2025-11-17T10:56:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:14.853 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:14.854 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:14.861 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87239406, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104431041974701, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108461, telescope_az=89.993077, telescope_ra=17.0832901, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10305, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.057289411665, telescope_dec_j2k=-24.2196944966313, observability=1)
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.329803705215454s
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:18.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0842332;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10399;2460996.87243278;10.93837111;1.3;_
2025-11-17T10:56:18.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.0842332;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10399;2460996.87243278;10.93837111;1.3;_
2025-11-17T10:56:18.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:18.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:18.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:18.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:18.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:18.194 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.0842332, teldec = -24.256586
2025-11-17T10:56:18.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.0842332 -24.256586
2025-11-17T10:56:18.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.0842332 -24.256586
2025-11-17T10:56:18.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0842332 -24.256586
2025-11-17T10:56:18.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.0842332;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10399;2460996.87243281;10.93837111;1.3;_17.0582321997197 -24.2197284638933
2025-11-17T10:56:18.195 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0582321997197     dec_j2k = -24.2197284638933
2025-11-17T10:56:18.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:18.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:18.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10443116231053;171.162357330327;_
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10443116231053;171.162357330327;_
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:18.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:18.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:18.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:56:18.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:56:18.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:56:18.199 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44425)
2025-11-17T10:56:18.199 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:18.199 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:18.200 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:18.200 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:18.200 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:18.206 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:18.207 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:56:18.207 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87243278, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10443116231053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0842332, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10399, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0582321997197, telescope_dec_j2k=-24.2197284638933, observability=1)
2025-11-17T10:56:18.207 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.113304138183594 seconds ago
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Status age = 8.20807671546936s
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:26.415 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:26.416 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:26.417 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 17;17.0865206;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10628;2460996.87252797;10.94065222;1.3;_
2025-11-17T10:56:26.417 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response 17;17.0865206;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10628;2460996.87252797;10.94065222;1.3;_
2025-11-17T10:56:26.417 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:26.417 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:26.417 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:26.418 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:26.418 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:26.418 [INFO] [Thread-67286 (handle)] [driver.py] [get_status()] Telra = 17.0865206, teldec = -24.256586
2025-11-17T10:56:26.418 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0865206 -24.256586
2025-11-17T10:56:26.418 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0865206 -24.256586
2025-11-17T10:56:26.419 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0865206 -24.256586
2025-11-17T10:56:26.419 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 17;17.0865206;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10628;2460996.872528;10.94065222;1.3;_17.0605188440867 -24.2198108579252
2025-11-17T10:56:26.419 [INFO] [Thread-67286 (handle)] [driver.py] [get_status()] ra_j2k = 17.0605188440867     dec_j2k = -24.2198108579252
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 140;0.104430961750816;171.162357330327;_
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response 140;0.104430961750816;171.162357330327;_
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:26.420 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:26.421 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:26.421 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:26.421 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:26.422 [DEBUG] [Thread-67286 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:26.423 [DEBUG] [Thread-67286 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:26.427 [DEBUG] [Thread-67286 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34777)
2025-11-17T10:56:26.428 [DEBUG] [Thread-67286 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:26.428 [DEBUG] [Thread-67286 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:26.428 [DEBUG] [Thread-67286 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:26.428 [DEBUG] [Thread-67286 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:26.428 [DEBUG] [Thread-67286 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:26.435 [DEBUG] [Thread-67286 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:26.435 [INFO] [Thread-67286 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87252797, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104430961750816, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0865206, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10628, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:55:29.904801', telescope_ra_j2k=17.0605188440867, telescope_dec_j2k=-24.2198108579252, observability=1)
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:30.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:30.050 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:30.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:30.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:30.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:30.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:30.051 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:56:30.051 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:30.051 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:30.051 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:30.051 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:30.051 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:56:30.052 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:56:30.053 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:31.053 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:31.053 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:31.053 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:31.053 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:31.053 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:56:31.054 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:31.055 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:31.056 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:31.056 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:31.056 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:31.056 [DEBUG] [ThreadPoolExecutor-2694_0] [payload.py] [to_registers()] [0]
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46845)
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:31.061 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:31.068 [DEBUG] [ThreadPoolExecutor-2694_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:33.155 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:56:33
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.719586372375488s
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:33.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:33.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:33.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:33.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0883823;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10814;2460996.87260598;10.94250889;1.3;_
2025-11-17T10:56:33.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.0883823;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10814;2460996.87260598;10.94250889;1.3;_
2025-11-17T10:56:33.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:33.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:33.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:33.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:33.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:33.159 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.0883823, teldec = -24.256586
2025-11-17T10:56:33.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0883823 -24.256586
2025-11-17T10:56:33.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0883823 -24.256586
2025-11-17T10:56:33.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0883823 -24.256586
2025-11-17T10:56:33.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.0883823;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10814;2460996.87260602;10.94250889;1.3;_17.0623799300867 -24.2198779279587
2025-11-17T10:56:33.160 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.0623799300867     dec_j2k = -24.2198779279587
2025-11-17T10:56:33.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:33.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:33.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104431563429958;171.162368059163;_
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104431563429958;171.162368059163;_
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:33.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:33.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:33.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:33.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:33.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33703)
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:33.169 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:33.176 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:33.177 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:33.177 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:33.177 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87260598, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104431563429958, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0883823, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10814, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0623799300867, telescope_dec_j2k=-24.2198779279587, observability=1)
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.008093357086182s
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:38.185 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:38.186 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0897828;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10954;2460996.87266419;10.94390556;1.3;_
2025-11-17T10:56:38.187 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.0897828;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10954;2460996.87266419;10.94390556;1.3;_
2025-11-17T10:56:38.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:38.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:38.187 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:38.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:38.188 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:38.188 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.0897828, teldec = -24.256586
2025-11-17T10:56:38.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0897828 -24.256586
2025-11-17T10:56:38.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0897828 -24.256586
2025-11-17T10:56:38.188 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0897828 -24.256586
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.0897828;-24.256586;50.10846;89.993077;50.08601;90.12017;14.10954;2460996.87266422;10.94390556;1.3;_17.0637799687875 -24.2199283886379
2025-11-17T10:56:38.189 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0637799687875     dec_j2k = -24.2199283886379
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104431523318015;171.162351965909;_
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104431523318015;171.162351965909;_
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:38.189 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:38.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:38.192 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:38.192 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49607)
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:38.194 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:38.201 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:38.202 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87266419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104431523318015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0897828, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.10954, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0637799687875, telescope_dec_j2k=-24.2199283886379, observability=1)
2025-11-17T10:56:44.533 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:56:44.533 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Status age = 6.331844091415405s
2025-11-17T10:56:44.533 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:56:44.533 [DEBUG] [Thread-67287 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:44.533 [DEBUG] [Thread-67287 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:44.534 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:44.534 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:44.534 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:56:44.535 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:56:44.536 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 17;17.0915663;-24.256586;50.10846;89.993077;50.08601;90.12017;14.11132;2460996.87273769;10.94568417;1.3;_
2025-11-17T10:56:44.536 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response 17;17.0915663;-24.256586;50.10846;89.993077;50.08601;90.12017;14.11132;2460996.87273769;10.94568417;1.3;_
2025-11-17T10:56:44.536 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:56:44.536 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:56:44.536 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:56:44.537 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:44.537 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:56:44.537 [INFO] [Thread-67287 (handle)] [driver.py] [get_status()] Telra = 17.0915663, teldec = -24.256586
2025-11-17T10:56:44.538 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0915663 -24.256586
2025-11-17T10:56:44.538 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0915663 -24.256586
2025-11-17T10:56:44.538 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0915663 -24.256586
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 17;17.0915663;-24.256586;50.10846;89.993077;50.08601;90.12017;14.11132;2460996.87273771;10.94568417;1.3;_17.065562882074 -24.2199926563643
2025-11-17T10:56:44.539 [INFO] [Thread-67287 (handle)] [driver.py] [get_status()] ra_j2k = 17.065562882074     dec_j2k = -24.2199926563643
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 140;0.104431683765786;171.162362694745;_
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response 140;0.104431683765786;171.162362694745;_
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:44.539 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:56:44.540 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:56:44.541 [DEBUG] [Thread-67287 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:44.541 [DEBUG] [Thread-67287 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:56:44.542 [DEBUG] [Thread-67287 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:56:44.545 [DEBUG] [Thread-67287 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55459)
2025-11-17T10:56:44.545 [DEBUG] [Thread-67287 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:56:44.546 [DEBUG] [Thread-67287 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:56:44.546 [DEBUG] [Thread-67287 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:56:44.546 [DEBUG] [Thread-67287 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:56:44.546 [DEBUG] [Thread-67287 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:56:44.553 [DEBUG] [Thread-67287 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:56:44.553 [INFO] [Thread-67287 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87273769, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104431683765786, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0915663, telescope_dec=-24.256586, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.11132, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.065562882074, telescope_dec_j2k=-24.2199926563643, observability=1)
2025-11-17T10:56:56.068 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:56.069 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:56.069 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:56.069 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:56.069 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:56:56.070 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:56:56.071 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:56:56.072 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Status age = 18.05433702468872s
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:02.608 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:02.609 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:02.610 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 17;17.0965806;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11634;2460996.87294688;10.95068472;1.3;_
2025-11-17T10:57:02.610 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response 17;17.0965806;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11634;2460996.87294688;10.95068472;1.3;_
2025-11-17T10:57:02.610 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:02.610 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:02.610 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:02.611 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:02.611 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:02.611 [INFO] [Thread-67288 (handle)] [driver.py] [get_status()] Telra = 17.0965806, teldec = -24.256585
2025-11-17T10:57:02.611 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0965806 -24.256585
2025-11-17T10:57:02.611 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0965806 -24.256585
2025-11-17T10:57:02.611 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0965806 -24.256585
2025-11-17T10:57:02.612 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 17;17.0965806;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11634;2460996.8729469;10.95068472;1.3;_17.0705755371608 -24.2201723889055
2025-11-17T10:57:02.612 [INFO] [Thread-67288 (handle)] [driver.py] [get_status()] ra_j2k = 17.0705755371608     dec_j2k = -24.2201723889055
2025-11-17T10:57:02.612 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:02.612 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:02.612 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 140;0.104433007459899;171.162351965909;_
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response 140;0.104433007459899;171.162351965909;_
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:02.613 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:02.614 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:02.614 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:02.614 [DEBUG] [Thread-67288 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:02.614 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:02.614 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:02.615 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:02.615 [DEBUG] [Thread-67288 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:02.615 [DEBUG] [Thread-67288 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:02.616 [DEBUG] [Thread-67288 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:02.621 [DEBUG] [Thread-67288 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43955)
2025-11-17T10:57:02.621 [DEBUG] [Thread-67288 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:02.621 [DEBUG] [Thread-67288 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:02.622 [DEBUG] [Thread-67288 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:02.622 [DEBUG] [Thread-67288 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:02.622 [DEBUG] [Thread-67288 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:02.629 [DEBUG] [Thread-67288 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:02.629 [INFO] [Thread-67288 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87294688, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433007459899, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0965806, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.11634, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0705755371608, telescope_dec_j2k=-24.2201723889055, observability=1)
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Status age = 2.4119222164154053s
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:05.041 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:05.042 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:05.043 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 17;17.0972711;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11703;2460996.87297503;10.95137333;1.3;_
2025-11-17T10:57:05.043 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response 17;17.0972711;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11703;2460996.87297503;10.95137333;1.3;_
2025-11-17T10:57:05.043 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:05.044 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:05.044 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:05.044 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:05.045 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:05.045 [INFO] [Thread-67289 (handle)] [driver.py] [get_status()] Telra = 17.0972711, teldec = -24.256585
2025-11-17T10:57:05.045 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] UnCookCoordinates 17.0972711 -24.256585
2025-11-17T10:57:05.045 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.0972711 -24.256585
2025-11-17T10:57:05.045 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.0972711 -24.256585
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 17;17.0972711;-24.256585;50.10846;89.993077;50.08601;90.12017;14.11703;2460996.87297507;10.95137333;1.3;_17.0712658111323 -24.2201972819749
2025-11-17T10:57:05.046 [INFO] [Thread-67289 (handle)] [driver.py] [get_status()] ra_j2k = 17.0712658111323     dec_j2k = -24.2201972819749
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 140;0.104432686564356;171.162357330327;_
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response 140;0.104432686564356;171.162357330327;_
2025-11-17T10:57:05.046 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:05.047 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:05.047 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:05.047 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:05.048 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:05.049 [DEBUG] [Thread-67289 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:05.049 [DEBUG] [Thread-67289 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:05.049 [DEBUG] [Thread-67289 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53233)
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:05.053 [DEBUG] [Thread-67289 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:05.060 [DEBUG] [Thread-67289 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:05.060 [INFO] [Thread-67289 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87297503, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104432686564356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10846, telescope_az=89.993077, telescope_ra=17.0972711, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.11703, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0712658111323, telescope_dec_j2k=-24.2201972819749, observability=1)
2025-11-17T10:57:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.793120622634888s
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.100008;-24.256585;50.108459;89.993076;50.08601;90.12017;14.11977;2460996.87308861;10.95410278;1.3;_
2025-11-17T10:57:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.100008;-24.256585;50.108459;89.993076;50.08601;90.12017;14.11977;2460996.87308861;10.95410278;1.3;_
2025-11-17T10:57:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:14.857 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.100008, teldec = -24.256585
2025-11-17T10:57:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.100008 -24.256585
2025-11-17T10:57:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.100008 -24.256585
2025-11-17T10:57:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.100008 -24.256585
2025-11-17T10:57:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.100008;-24.256585;50.108459;89.993076;50.08601;90.12017;14.11977;2460996.87308863;10.95410278;1.3;_17.0740018164561 -24.2202959614681
2025-11-17T10:57:14.858 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.0740018164561     dec_j2k = -24.2202959614681
2025-11-17T10:57:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104433248131556;171.162346601491;_
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104433248131556;171.162346601491;_
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:14.868 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39223)
2025-11-17T10:57:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:14.869 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:14.877 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:14.877 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87308861, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433248131556, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.100008, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.11977, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0740018164561, telescope_dec_j2k=-24.2202959614681, observability=1)
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.390673875808716s
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:18.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:18.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:18.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:18.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:18.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1009506;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12071;2460996.87312812;10.95504278;1.3;_
2025-11-17T10:57:18.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1009506;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12071;2460996.87312812;10.95504278;1.3;_
2025-11-17T10:57:18.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:18.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:18.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:18.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:18.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:18.271 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1009506, teldec = -24.256585
2025-11-17T10:57:18.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1009506 -24.256585
2025-11-17T10:57:18.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1009506 -24.256585
2025-11-17T10:57:18.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1009506 -24.256585
2025-11-17T10:57:18.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1009506;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12071;2460996.87312815;10.95504278;1.3;_17.0749441087774 -24.2203299515693
2025-11-17T10:57:18.272 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0749441087774     dec_j2k = -24.2203299515693
2025-11-17T10:57:18.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:18.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:18.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104433288243498;171.162351965909;_
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104433288243498;171.162351965909;_
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:18.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:18.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:18.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:18.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:18.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41677)
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:18.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:18.284 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:57:18.284 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87312812, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433288243498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.1009506, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.12071, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0749441087774, telescope_dec_j2k=-24.2203299515693, observability=1)
2025-11-17T10:57:18.284 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.129475593566895 seconds ago
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Status age = 2.381430149078369s
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:20.666 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:20.667 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:20.668 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 17;17.1016233;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12138;2460996.87315588;10.95571361;1.3;_
2025-11-17T10:57:20.668 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response 17;17.1016233;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12138;2460996.87315588;10.95571361;1.3;_
2025-11-17T10:57:20.668 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:20.668 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:20.668 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:20.669 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:20.669 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:20.669 [INFO] [Thread-67290 (handle)] [driver.py] [get_status()] Telra = 17.1016233, teldec = -24.256585
2025-11-17T10:57:20.669 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1016233 -24.256585
2025-11-17T10:57:20.669 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1016233 -24.256585
2025-11-17T10:57:20.669 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1016233 -24.256585
2025-11-17T10:57:20.670 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 17;17.1016233;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12138;2460996.8731559;10.95571361;1.3;_17.0756165893396 -24.2203542104887
2025-11-17T10:57:20.670 [INFO] [Thread-67290 (handle)] [driver.py] [get_status()] ra_j2k = 17.0756165893396     dec_j2k = -24.2203542104887
2025-11-17T10:57:20.670 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:20.670 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:20.670 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 140;0.104433288243498;171.162351965909;_
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response 140;0.104433288243498;171.162351965909;_
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:20.671 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:20.672 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:20.672 [DEBUG] [Thread-67290 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:20.672 [DEBUG] [Thread-67290 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:20.672 [DEBUG] [Thread-67290 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36053)
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:20.676 [DEBUG] [Thread-67290 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:20.683 [DEBUG] [Thread-67290 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:20.683 [DEBUG] [Thread-67290 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:20.683 [DEBUG] [Thread-67290 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:20.684 [DEBUG] [Thread-67290 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:20.684 [INFO] [Thread-67290 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87315588, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433288243498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.1016233, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.12138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:56:30.048699', telescope_ra_j2k=17.0756165893396, telescope_dec_j2k=-24.2203542104887, observability=1)
2025-11-17T10:57:30.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:30.191 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:30.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:30.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:30.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:30.192 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:30.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:30.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:30.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:30.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:30.193 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:57:30.193 [INFO] [ThreadPoolExecutor-2695_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:57:30.193 [INFO] [ThreadPoolExecutor-2695_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:57:33.237 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:57:33
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.55324935913086s
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:33.237 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:33.238 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:33.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1051334;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12489;2460996.87330138;10.95921417;1.3;_
2025-11-17T10:57:33.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.1051334;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12489;2460996.87330138;10.95921417;1.3;_
2025-11-17T10:57:33.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:33.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:33.239 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:33.240 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:33.240 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:33.241 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.1051334, teldec = -24.256585
2025-11-17T10:57:33.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1051334 -24.256585
2025-11-17T10:57:33.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1051334 -24.256585
2025-11-17T10:57:33.241 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1051334 -24.256585
2025-11-17T10:57:33.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1051334;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12489;2460996.8733014;10.95921417;1.3;_17.0791255462415 -24.2204808106175
2025-11-17T10:57:33.242 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.0791255462415     dec_j2k = -24.2204808106175
2025-11-17T10:57:33.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:33.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:33.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:33.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104433368467384;171.162357330327;_
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104433368467384;171.162357330327;_
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:33.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:33.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:33.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:33.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:33.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:33.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:33.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:33.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:57:33.249 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55043)
2025-11-17T10:57:33.250 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:33.250 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:33.250 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:33.250 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:33.250 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:33.257 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:33.257 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87330138, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433368467384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.1051334, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.12489, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0791255462415, telescope_dec_j2k=-24.2204808106175, observability=1)
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.040927171707153s
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:37.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:37.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:37.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1062439;-24.256585;50.108459;89.993076;50.08601;90.12017;14.126;2460996.87334837;10.96032167;1.3;_
2025-11-17T10:57:37.300 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.1062439;-24.256585;50.108459;89.993076;50.08601;90.12017;14.126;2460996.87334837;10.96032167;1.3;_
2025-11-17T10:57:37.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:37.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:37.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:37.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:37.301 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:37.301 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.1062439, teldec = -24.256585
2025-11-17T10:57:37.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1062439 -24.256585
2025-11-17T10:57:37.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1062439 -24.256585
2025-11-17T10:57:37.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1062439 -24.256585
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1062439;-24.256585;50.108459;89.993076;50.08601;90.12017;14.126;2460996.8733484;10.96032167;1.3;_17.0802356852648 -24.2205208700218
2025-11-17T10:57:37.302 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0802356852648     dec_j2k = -24.2205208700218
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104433970146526;171.162346601491;_
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104433970146526;171.162346601491;_
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:37.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:37.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:37.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:37.304 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:37.304 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58645)
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:37.305 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:37.313 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:37.313 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87334837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433970146526, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.1062439, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.126, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0802356852648, telescope_dec_j2k=-24.2205208700218, observability=1)
2025-11-17T10:57:38.783 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Status age = 1.4703564643859863s
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:38.784 [DEBUG] [Thread-67291 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 17;17.1066643;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12642;2460996.87336557;10.96074083;1.3;_
2025-11-17T10:57:38.785 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response 17;17.1066643;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12642;2460996.87336557;10.96074083;1.3;_
2025-11-17T10:57:38.786 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:38.786 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:38.786 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:38.787 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:38.787 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:38.787 [INFO] [Thread-67291 (handle)] [driver.py] [get_status()] Telra = 17.1066643, teldec = -24.256585
2025-11-17T10:57:38.787 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1066643 -24.256585
2025-11-17T10:57:38.787 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1066643 -24.256585
2025-11-17T10:57:38.787 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1066643 -24.256585
2025-11-17T10:57:38.788 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 17;17.1066643;-24.256585;50.108459;89.993076;50.08601;90.12017;14.12642;2460996.8733656;10.96074083;1.3;_17.0806559486944 -24.220536036062
2025-11-17T10:57:38.788 [INFO] [Thread-67291 (handle)] [driver.py] [get_status()] ra_j2k = 17.0806559486944     dec_j2k = -24.220536036062
2025-11-17T10:57:38.788 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:38.788 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:38.788 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 140;0.104433889922641;171.162357330327;_
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response 140;0.104433889922641;171.162357330327;_
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:38.789 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:38.790 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:38.791 [DEBUG] [Thread-67291 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:38.791 [DEBUG] [Thread-67291 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:38.791 [DEBUG] [Thread-67291 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:38.794 [DEBUG] [Thread-67291 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40317)
2025-11-17T10:57:38.795 [DEBUG] [Thread-67291 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:38.795 [DEBUG] [Thread-67291 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:38.795 [DEBUG] [Thread-67291 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:38.795 [DEBUG] [Thread-67291 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:38.795 [DEBUG] [Thread-67291 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:38.802 [DEBUG] [Thread-67291 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:38.802 [INFO] [Thread-67291 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87336557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104433889922641, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108459, telescope_az=89.993076, telescope_ra=17.1066643, telescope_dec=-24.256585, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.12642, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0806559486944, telescope_dec_j2k=-24.220536036062, observability=1)
2025-11-17T10:57:51.072 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.072 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:57:51.073 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:51.074 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:51.075 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:57:51.076 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:51.077 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Park
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:57:51.078 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:57:51.079 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 29;17.1100906;-24.256584;50.108459;89.993076;50.08601;90.12017;14.12985;2460996.87350786;10.96415778;1.3;_Park Command Successful
2025-11-17T10:57:52.079 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:57:52.079 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:57:52.079 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:57:52.080 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:57:52.080 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:57:53.080 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:57:53.080 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:57:53.081 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:57:53.081 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:57:53.081 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:57:54.081 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:57:54.081 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:57:54.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:57:54.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:57:54.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:57:55.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:57:55.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:57:55.082 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:57:55.083 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:57:55.084 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:56.084 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:56.085 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:56.085 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:56.085 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:56.085 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:57:56.086 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:57:56.087 [DEBUG] [ThreadPoolExecutor-2694_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:56.087 [INFO] [ThreadPoolExecutor-2694_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:57:56.852 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Status age = 18.05014419555664s
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:57:56.853 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:57:56.854 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:57:56.854 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 17;17.1117053;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13146;2460996.8735747;10.96576806;1.3;_
2025-11-17T10:57:56.854 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response 17;17.1117053;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13146;2460996.8735747;10.96576806;1.3;_
2025-11-17T10:57:56.854 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:57:56.855 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:57:56.855 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:57:56.856 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:56.856 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:57:56.856 [INFO] [Thread-67292 (handle)] [driver.py] [get_status()] Telra = 17.1117053, teldec = -24.256584
2025-11-17T10:57:56.856 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1117053 -24.256584
2025-11-17T10:57:56.856 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1117053 -24.256584
2025-11-17T10:57:56.856 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1117053 -24.256584
2025-11-17T10:57:56.857 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 17;17.1117053;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13146;2460996.87357473;10.96576806;1.3;_17.0856953148644 -24.2207169266355
2025-11-17T10:57:56.857 [INFO] [Thread-67292 (handle)] [driver.py] [get_status()] ra_j2k = 17.0856953148644     dec_j2k = -24.2207169266355
2025-11-17T10:57:56.857 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:57:56.857 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:57:56.857 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 140;0.104434571825668;171.162357330327;_
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response 140;0.104434571825668;171.162357330327;_
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:56.858 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:57:56.859 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:57:56.860 [DEBUG] [Thread-67292 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:56.860 [DEBUG] [Thread-67292 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:57:56.860 [DEBUG] [Thread-67292 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53535)
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:57:56.863 [DEBUG] [Thread-67292 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:57:56.870 [DEBUG] [Thread-67292 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:57:56.870 [DEBUG] [Thread-67292 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:56.870 [DEBUG] [Thread-67292 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:57:56.871 [DEBUG] [Thread-67292 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:57:56.871 [INFO] [Thread-67292 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8735747, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104434571825668, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993076, telescope_ra=17.1117053, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.13146, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0856953148644, telescope_dec_j2k=-24.2207169266355, observability=1)
2025-11-17T10:58:05.101 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Status age = 8.230778455734253s
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:05.102 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:05.103 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 17;17.113996;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13375;2460996.87367017;10.9680525;1.3;_
2025-11-17T10:58:05.103 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response 17;17.113996;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13375;2460996.87367017;10.9680525;1.3;_
2025-11-17T10:58:05.103 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:05.103 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:05.103 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:05.104 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:05.104 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:05.104 [INFO] [Thread-67293 (handle)] [driver.py] [get_status()] Telra = 17.113996, teldec = -24.256584
2025-11-17T10:58:05.104 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] UnCookCoordinates 17.113996 -24.256584
2025-11-17T10:58:05.104 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.113996 -24.256584
2025-11-17T10:58:05.104 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.113996 -24.256584
2025-11-17T10:58:05.105 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 17;17.113996;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13375;2460996.8736702;10.9680525;1.3;_17.087985274531 -24.2207996015847
2025-11-17T10:58:05.105 [INFO] [Thread-67293 (handle)] [driver.py] [get_status()] ra_j2k = 17.087985274531     dec_j2k = -24.2207996015847
2025-11-17T10:58:05.105 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:05.105 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:05.105 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 140;0.104434932833153;171.162351965909;_
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response 140;0.104434932833153;171.162351965909;_
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:05.106 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:05.107 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:05.108 [DEBUG] [Thread-67293 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:58:05.108 [DEBUG] [Thread-67293 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:58:05.108 [DEBUG] [Thread-67293 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:58:05.109 [DEBUG] [Thread-67293 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41255)
2025-11-17T10:58:05.109 [DEBUG] [Thread-67293 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:05.109 [DEBUG] [Thread-67293 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:05.109 [DEBUG] [Thread-67293 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:05.109 [DEBUG] [Thread-67293 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:05.110 [DEBUG] [Thread-67293 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:05.116 [DEBUG] [Thread-67293 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:05.117 [DEBUG] [Thread-67293 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:58:05.117 [INFO] [Thread-67293 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87367017, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104434932833153, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993076, telescope_ra=17.113996, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.13375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.087985274531, telescope_dec_j2k=-24.2207996015847, observability=1)
2025-11-17T10:58:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.707428693771362s
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1167223;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13648;2460996.87378271;10.97077139;1.3;_
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.1167223;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13648;2460996.87378271;10.97077139;1.3;_
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:14.827 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.1167223, teldec = -24.256584
2025-11-17T10:58:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1167223 -24.256584
2025-11-17T10:58:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1167223 -24.256584
2025-11-17T10:58:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1167223 -24.256584
2025-11-17T10:58:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1167223;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13648;2460996.87378273;10.97077139;1.3;_17.0907106951991 -24.2208980153755
2025-11-17T10:58:14.829 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.0907106951991     dec_j2k = -24.2208980153755
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104435093280925;171.162357330327;_
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104435093280925;171.162357330327;_
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42607)
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:14.834 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:58:14.842 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87378271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104435093280925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993076, telescope_ra=17.1167223, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.13648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0907106951991, telescope_dec_j2k=-24.2208980153755, observability=1)
2025-11-17T10:58:14.919 [DEBUG] [Thread-67294 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:14.919 [DEBUG] [Thread-67294 (handle)] [server.py] [get_status()] Status age = 0.07669591903686523s
2025-11-17T10:58:14.919 [DEBUG] [Thread-67294 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.07669591903686523
2025-11-17T10:58:18.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:58:18.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.5021181106567383s
2025-11-17T10:58:18.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:18.344 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:18.345 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:18.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1177028;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13746;2460996.87382345;10.97174917;1.3;_
2025-11-17T10:58:18.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1177028;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13746;2460996.87382345;10.97174917;1.3;_
2025-11-17T10:58:18.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:18.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:18.346 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:18.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:18.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:18.347 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1177028, teldec = -24.256584
2025-11-17T10:58:18.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1177028 -24.256584
2025-11-17T10:58:18.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1177028 -24.256584
2025-11-17T10:58:18.347 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1177028 -24.256584
2025-11-17T10:58:18.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1177028;-24.256584;50.108458;89.993076;50.08601;90.12017;14.13746;2460996.87382347;10.97174917;1.3;_17.0916908794258 -24.2209334140002
2025-11-17T10:58:18.348 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.0916908794258     dec_j2k = -24.2209334140002
2025-11-17T10:58:18.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:18.348 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:18.349 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104434611937611;171.162351965909;_
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104434611937611;171.162351965909;_
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:18.350 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:18.351 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:18.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:18.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:18.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:18.357 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43161)
2025-11-17T10:58:18.358 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:18.358 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:18.358 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:18.358 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:18.358 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:18.365 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:58:18.365 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87382345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104434611937611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993076, telescope_ra=17.1177028, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.13746, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:57:30.190754', telescope_ra_j2k=17.0916908794258, telescope_dec_j2k=-24.2209334140002, observability=1)
2025-11-17T10:58:18.365 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12839365005493 seconds ago
2025-11-17T10:58:30.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:30.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:30.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:30.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:30.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:30.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:30.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:30.334 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:30.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:30.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:30.335 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:30.335 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T10:58:30.336 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T10:58:30.337 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:31.337 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:31.337 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:31.337 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:31.337 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:31.337 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:58:31.338 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:31.339 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:31.340 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:31.340 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:31.340 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:31.340 [DEBUG] [ThreadPoolExecutor-2696_0] [payload.py] [to_registers()] [0]
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42327)
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:31.341 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:31.348 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:31.348 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:58:31.349 [DEBUG] [ThreadPoolExecutor-2696_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T10:58:31.349 [DEBUG] [ThreadPoolExecutor-2696_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T10:58:31.349 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:31.349 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:31.349 [DEBUG] [ThreadPoolExecutor-2696_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Status age = 14.660223245620728s
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:33.025 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:33.026 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:33.027 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:33.027 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 17;17.1217926;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14155;2460996.87399337;10.97582778;1.3;_
2025-11-17T10:58:33.027 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response 17;17.1217926;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14155;2460996.87399337;10.97582778;1.3;_
2025-11-17T10:58:33.027 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:33.028 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:33.028 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:33.028 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:33.029 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:33.029 [INFO] [Thread-67295 (handle)] [driver.py] [get_status()] Telra = 17.1217926, teldec = -24.256584
2025-11-17T10:58:33.029 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1217926 -24.256584
2025-11-17T10:58:33.029 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1217926 -24.256584
2025-11-17T10:58:33.029 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1217926 -24.256584
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 17;17.1217926;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14155;2460996.8739934;10.97582778;1.3;_17.0957793649968 -24.221081092714
2025-11-17T10:58:33.030 [INFO] [Thread-67295 (handle)] [driver.py] [get_status()] ra_j2k = 17.0957793649968     dec_j2k = -24.221081092714
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 140;0.104435534512296;171.162362694745;_
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response 140;0.104435534512296;171.162362694745;_
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:33.030 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:33.031 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:33.032 [DEBUG] [Thread-67295 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:33.032 [DEBUG] [Thread-67295 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:33.032 [DEBUG] [Thread-67295 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49801)
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:33.034 [DEBUG] [Thread-67295 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:33.041 [DEBUG] [Thread-67295 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:33.041 [DEBUG] [Thread-67295 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:33.041 [DEBUG] [Thread-67295 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:33.041 [DEBUG] [Thread-67295 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:33.041 [DEBUG] [Thread-67295 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:33.042 [DEBUG] [Thread-67295 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:33.042 [DEBUG] [Thread-67295 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:33.042 [DEBUG] [Thread-67295 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:33.042 [DEBUG] [Thread-67295 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:58:33.042 [INFO] [Thread-67295 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87399337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104435534512296, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993075, telescope_ra=17.1217926, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.14155, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.0957793649968, telescope_dec_j2k=-24.221081092714, observability=1)
2025-11-17T10:58:33.318 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:58:33
2025-11-17T10:58:33.318 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:33.318 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.27626466751098633s
2025-11-17T10:58:33.318 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.27626466751098633
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.36708402633667s
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:36.409 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1227168;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14248;2460996.87403252;10.97674944;1.3;_
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.1227168;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14248;2460996.87403252;10.97674944;1.3;_
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:36.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:36.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:36.411 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:36.411 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.1227168, teldec = -24.256584
2025-11-17T10:58:36.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1227168 -24.256584
2025-11-17T10:58:36.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1227168 -24.256584
2025-11-17T10:58:36.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1227168 -24.256584
2025-11-17T10:58:36.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1227168;-24.256584;50.108458;89.993075;50.08601;90.12017;14.14248;2460996.87403255;10.97674944;1.3;_17.0967032685709 -24.2211144705223
2025-11-17T10:58:36.412 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.0967032685709     dec_j2k = -24.2211144705223
2025-11-17T10:58:36.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:36.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:36.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104435253728696;171.162351965909;_
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104435253728696;171.162351965909;_
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:36.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:36.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:36.414 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:36.414 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47349)
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:36.421 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:36.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:36.430 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:36.430 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:58:36.430 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87403252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104435253728696, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108458, telescope_az=89.993075, telescope_ra=17.1227168, telescope_dec=-24.256584, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.14248, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.0967032685709, telescope_dec_j2k=-24.2211144705223, observability=1)
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Status age = 14.672301292419434s
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:51.102 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:51.103 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:51.103 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:51.104 [DEBUG] [Thread-67296 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:51.104 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:58:51.104 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:58:51.104 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:58:51.104 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:58:51.105 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 17;17.1268146;-24.256583;50.108457;89.993075;50.08601;90.12017;14.14657;2460996.8742026;10.98083611;1.3;_
2025-11-17T10:58:51.105 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response 17;17.1268146;-24.256583;50.108457;89.993075;50.08601;90.12017;14.14657;2460996.8742026;10.98083611;1.3;_
2025-11-17T10:58:51.105 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:58:51.105 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:58:51.105 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:58:51.106 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:51.106 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:58:51.106 [INFO] [Thread-67296 (handle)] [driver.py] [get_status()] Telra = 17.1268146, teldec = -24.256583
2025-11-17T10:58:51.106 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1268146 -24.256583
2025-11-17T10:58:51.106 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1268146 -24.256583
2025-11-17T10:58:51.106 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1268146 -24.256583
2025-11-17T10:58:51.107 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 17;17.1268146;-24.256583;50.108457;89.993075;50.08601;90.12017;14.14657;2460996.87420263;10.98083611;1.3;_17.1007997571299 -24.2212614899212
2025-11-17T10:58:51.107 [INFO] [Thread-67296 (handle)] [driver.py] [get_status()] ra_j2k = 17.1007997571299     dec_j2k = -24.2212614899212
2025-11-17T10:58:51.107 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:58:51.107 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:58:51.107 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 140;0.104435775183952;171.162357330327;_
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response 140;0.104435775183952;171.162357330327;_
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:51.108 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:58:51.109 [DEBUG] [Thread-67296 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59299)
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:58:51.116 [DEBUG] [Thread-67296 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:58:51.123 [DEBUG] [Thread-67296 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:58:51.124 [INFO] [Thread-67296 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8742026, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104435775183952, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1268146, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.14657, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.1007997571299, telescope_dec_j2k=-24.2212614899212, observability=1)
2025-11-17T10:58:56.349 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:56.349 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:56.349 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:56.349 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:56.349 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:58:56.351 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] CloseShutters
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T10:58:56.352 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T10:58:56.353 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Status age = 14.02613115310669s
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:05.150 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 17;17.1307128;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15047;2460996.87436517;10.98472361;1.3;_
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response 17;17.1307128;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15047;2460996.87436517;10.98472361;1.3;_
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:05.151 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:05.152 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:05.152 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:05.153 [INFO] [Thread-67297 (handle)] [driver.py] [get_status()] Telra = 17.1307128, teldec = -24.256583
2025-11-17T10:59:05.153 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1307128 -24.256583
2025-11-17T10:59:05.153 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1307128 -24.256583
2025-11-17T10:59:05.153 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1307128 -24.256583
2025-11-17T10:59:05.154 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 17;17.1307128;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15047;2460996.8743652;10.98472361;1.3;_17.104696713453 -24.2214023384593
2025-11-17T10:59:05.154 [INFO] [Thread-67297 (handle)] [driver.py] [get_status()] ra_j2k = 17.104696713453     dec_j2k = -24.2214023384593
2025-11-17T10:59:05.154 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:05.154 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:05.154 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 140;0.104435855407838;171.162351965909;_
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response 140;0.104435855407838;171.162351965909;_
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:05.155 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:05.156 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:05.157 [DEBUG] [Thread-67297 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:05.157 [DEBUG] [Thread-67297 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:05.157 [DEBUG] [Thread-67297 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:05.160 [DEBUG] [Thread-67297 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54825)
2025-11-17T10:59:05.160 [DEBUG] [Thread-67297 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:05.161 [DEBUG] [Thread-67297 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:05.161 [DEBUG] [Thread-67297 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:05.161 [DEBUG] [Thread-67297 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:05.161 [DEBUG] [Thread-67297 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:05.168 [DEBUG] [Thread-67297 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:05.168 [INFO] [Thread-67297 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87436517, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104435855407838, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1307128, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.104696713453, telescope_dec_j2k=-24.2214023384593, observability=1)
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Status age = 3.9981467723846436s
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:09.166 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:09.167 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:09.168 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 17;17.1318517;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15161;2460996.87441167;10.98585944;1.3;_
2025-11-17T10:59:09.168 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response 17;17.1318517;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15161;2460996.87441167;10.98585944;1.3;_
2025-11-17T10:59:09.168 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:09.168 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:09.168 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:09.169 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:09.169 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:09.169 [INFO] [Thread-67298 (handle)] [driver.py] [get_status()] Telra = 17.1318517, teldec = -24.256583
2025-11-17T10:59:09.169 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1318517 -24.256583
2025-11-17T10:59:09.169 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1318517 -24.256583
2025-11-17T10:59:09.169 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1318517 -24.256583
2025-11-17T10:59:09.170 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 17;17.1318517;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15161;2460996.87441169;10.98585944;1.3;_17.1058352508488 -24.2214434960046
2025-11-17T10:59:09.170 [INFO] [Thread-67298 (handle)] [driver.py] [get_status()] ra_j2k = 17.1058352508488     dec_j2k = -24.2214434960046
2025-11-17T10:59:09.170 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:09.170 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:09.170 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 140;0.104436216415323;171.162362694745;_
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response 140;0.104436216415323;171.162362694745;_
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:09.171 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:09.172 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:09.173 [DEBUG] [Thread-67298 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:09.173 [DEBUG] [Thread-67298 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:09.173 [DEBUG] [Thread-67298 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:09.177 [DEBUG] [Thread-67298 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52841)
2025-11-17T10:59:09.177 [DEBUG] [Thread-67298 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:09.177 [DEBUG] [Thread-67298 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:09.177 [DEBUG] [Thread-67298 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:09.178 [DEBUG] [Thread-67298 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:09.178 [DEBUG] [Thread-67298 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:09.184 [DEBUG] [Thread-67298 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:09.185 [DEBUG] [Thread-67298 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:09.185 [INFO] [Thread-67298 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87441167, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104436216415323, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1318517, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.1058352508488, telescope_dec_j2k=-24.2214434960046, observability=1)
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.648597478866577s
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:14.835 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1334105;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15317;2460996.87447727;10.98741389;1.3;_
2025-11-17T10:59:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.1334105;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15317;2460996.87447727;10.98741389;1.3;_
2025-11-17T10:59:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:14.837 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.1334105, teldec = -24.256583
2025-11-17T10:59:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1334105 -24.256583
2025-11-17T10:59:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1334105 -24.256583
2025-11-17T10:59:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1334105 -24.256583
2025-11-17T10:59:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1334105;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15317;2460996.87447729;10.98741389;1.3;_17.1073935551055 -24.2214998331307
2025-11-17T10:59:14.838 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1073935551055     dec_j2k = -24.2214998331307
2025-11-17T10:59:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104436416975037;171.162357330327;_
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104436416975037;171.162357330327;_
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43071)
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:14.842 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:14.851 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87447727, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104436416975037, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1334105, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15317, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.1073935551055, telescope_dec_j2k=-24.2214998331307, observability=1)
2025-11-17T10:59:18.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T10:59:18.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.5749142169952393s
2025-11-17T10:59:18.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:18.425 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:18.426 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:18.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:18.427 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:18.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:18.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:18.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:18.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1344207;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15418;2460996.87451883;10.98842139;1.3;_
2025-11-17T10:59:18.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1344207;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15418;2460996.87451883;10.98842139;1.3;_
2025-11-17T10:59:18.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:18.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:18.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:18.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:18.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:18.429 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1344207, teldec = -24.256583
2025-11-17T10:59:18.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1344207 -24.256583
2025-11-17T10:59:18.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1344207 -24.256583
2025-11-17T10:59:18.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1344207 -24.256583
2025-11-17T10:59:18.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1344207;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15418;2460996.87451887;10.98842139;1.3;_17.1084034341717 -24.2215363463476
2025-11-17T10:59:18.430 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.1084034341717     dec_j2k = -24.2215363463476
2025-11-17T10:59:18.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:18.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:18.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104437219213893;171.162351965909;_
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104437219213893;171.162351965909;_
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:18.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:18.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41179)
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:18.439 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:18.446 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:18.447 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T10:59:18.447 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87451883, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104437219213893, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1344207, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.1084034341717, telescope_dec_j2k=-24.2215363463476, observability=1)
2025-11-17T10:59:18.447 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12926650047302 seconds ago
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Status age = 8.841257095336914s
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:27.288 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:27.289 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:27.290 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 17;17.1368994;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15666;2460996.87462141;10.99089333;1.3;_
2025-11-17T10:59:27.290 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response 17;17.1368994;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15666;2460996.87462141;10.99089333;1.3;_
2025-11-17T10:59:27.290 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:27.290 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:27.290 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:27.291 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:27.291 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:27.291 [INFO] [Thread-67299 (handle)] [driver.py] [get_status()] Telra = 17.1368994, teldec = -24.256583
2025-11-17T10:59:27.291 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1368994 -24.256583
2025-11-17T10:59:27.291 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1368994 -24.256583
2025-11-17T10:59:27.291 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1368994 -24.256583
2025-11-17T10:59:27.292 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 17;17.1368994;-24.256583;50.108457;89.993075;50.08601;90.12017;14.15666;2460996.87462144;10.99089333;1.3;_17.110881347835 -24.2216259485764
2025-11-17T10:59:27.292 [INFO] [Thread-67299 (handle)] [driver.py] [get_status()] ra_j2k = 17.110881347835     dec_j2k = -24.2216259485764
2025-11-17T10:59:27.292 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:27.292 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:27.292 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 140;0.104437259325836;171.162362694745;_
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response 140;0.104437259325836;171.162362694745;_
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:27.293 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:27.294 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:27.295 [DEBUG] [Thread-67299 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:27.295 [DEBUG] [Thread-67299 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:27.295 [DEBUG] [Thread-67299 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:27.302 [DEBUG] [Thread-67299 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46335)
2025-11-17T10:59:27.302 [DEBUG] [Thread-67299 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:27.302 [DEBUG] [Thread-67299 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:27.302 [DEBUG] [Thread-67299 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:27.303 [DEBUG] [Thread-67299 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:27.303 [DEBUG] [Thread-67299 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:27.310 [DEBUG] [Thread-67299 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:27.310 [INFO] [Thread-67299 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87462141, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104437259325836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993075, telescope_ra=17.1368994, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:58:30.332314', telescope_ra_j2k=17.110881347835, telescope_dec_j2k=-24.2216259485764, observability=1)
2025-11-17T10:59:30.474 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:30.474 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:30.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:30.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:30.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:30.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:30.476 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:30.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:30.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:30.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:30.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:30.477 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T10:59:30.477 [INFO] [ThreadPoolExecutor-2697_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T10:59:30.477 [INFO] [ThreadPoolExecutor-2697_0] [server.py] [done()] Shutdown complete...
2025-11-17T10:59:33.379 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T10:59:33
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.068824052810669s
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:33.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:33.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:33.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1385918;-24.256583;50.108457;89.993074;50.08601;90.12017;14.15835;2460996.87469191;10.99258111;1.3;_
2025-11-17T10:59:33.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.1385918;-24.256583;50.108457;89.993074;50.08601;90.12017;14.15835;2460996.87469191;10.99258111;1.3;_
2025-11-17T10:59:33.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:33.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:33.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:33.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:33.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:33.382 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.1385918, teldec = -24.256583
2025-11-17T10:59:33.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1385918 -24.256583
2025-11-17T10:59:33.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1385918 -24.256583
2025-11-17T10:59:33.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1385918 -24.256583
2025-11-17T10:59:33.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1385918;-24.256583;50.108457;89.993074;50.08601;90.12017;14.15835;2460996.87469193;10.99258111;1.3;_17.1125732118644 -24.2216871357017
2025-11-17T10:59:33.383 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.1125732118644     dec_j2k = -24.2216871357017
2025-11-17T10:59:33.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:33.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104437259325836;171.162351965909;_
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104437259325836;171.162351965909;_
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:33.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:33.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:33.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:33.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:33.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:33.393 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59347)
2025-11-17T10:59:33.393 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:33.393 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:33.394 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:33.394 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:33.394 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:33.401 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:33.401 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87469191, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104437259325836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108457, telescope_az=89.993074, telescope_ra=17.1385918, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15835, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1125732118644, telescope_dec_j2k=-24.2216871357017, observability=1)
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.1209259033203125s
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:35.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1391815;-24.256583;50.108456;89.993074;50.08601;90.12017;14.15894;2460996.8747167;10.99316917;1.3;_
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.1391815;-24.256583;50.108456;89.993074;50.08601;90.12017;14.15894;2460996.8747167;10.99316917;1.3;_
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:35.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:35.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:35.524 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:35.524 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.1391815, teldec = -24.256583
2025-11-17T10:59:35.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1391815 -24.256583
2025-11-17T10:59:35.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1391815 -24.256583
2025-11-17T10:59:35.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1391815 -24.256583
2025-11-17T10:59:35.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1391815;-24.256583;50.108456;89.993074;50.08601;90.12017;14.15894;2460996.87471672;10.99316917;1.3;_17.1131627252866 -24.2217084574163
2025-11-17T10:59:35.525 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.1131627252866     dec_j2k = -24.2217084574163
2025-11-17T10:59:35.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:35.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:35.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104437299437779;171.162346601491;_
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104437299437779;171.162346601491;_
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:35.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:35.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:35.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:35.528 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:35.528 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43657)
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:35.535 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:35.542 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:35.542 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8747167, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104437299437779, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.1391815, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.15894, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1131627252866, telescope_dec_j2k=-24.2217084574163, observability=1)
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Getting status
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Status age = 9.807460308074951s
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T10:59:45.350 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 17;17.141909;-24.256583;50.108456;89.993074;50.08601;90.12017;14.16167;2460996.87483045;10.99588917;1.3;_
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response 17;17.141909;-24.256583;50.108456;89.993074;50.08601;90.12017;14.16167;2460996.87483045;10.99588917;1.3;_
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T10:59:45.351 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T10:59:45.352 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:45.352 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T10:59:45.352 [INFO] [Thread-67300 (handle)] [driver.py] [get_status()] Telra = 17.141909, teldec = -24.256583
2025-11-17T10:59:45.352 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] UnCookCoordinates 17.141909 -24.256583
2025-11-17T10:59:45.352 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.141909 -24.256583
2025-11-17T10:59:45.352 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.141909 -24.256583
2025-11-17T10:59:45.353 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 17;17.141909;-24.256583;50.108456;89.993074;50.08601;90.12017;14.16167;2460996.87483047;10.99588917;1.3;_17.115889363503 -24.2218070865104
2025-11-17T10:59:45.353 [INFO] [Thread-67300 (handle)] [driver.py] [get_status()] ra_j2k = 17.115889363503     dec_j2k = -24.2218070865104
2025-11-17T10:59:45.354 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T10:59:45.354 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T10:59:45.354 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 140;0.104437861004978;171.162357330327;_
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response 140;0.104437861004978;171.162357330327;_
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:45.355 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T10:59:45.356 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T10:59:45.356 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T10:59:45.356 [DEBUG] [Thread-67300 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:45.356 [DEBUG] [Thread-67300 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T10:59:45.357 [DEBUG] [Thread-67300 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T10:59:45.359 [DEBUG] [Thread-67300 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37805)
2025-11-17T10:59:45.360 [DEBUG] [Thread-67300 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T10:59:45.360 [DEBUG] [Thread-67300 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T10:59:45.360 [DEBUG] [Thread-67300 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T10:59:45.360 [DEBUG] [Thread-67300 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T10:59:45.360 [DEBUG] [Thread-67300 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T10:59:45.368 [DEBUG] [Thread-67300 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T10:59:45.368 [INFO] [Thread-67300 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87483045, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104437861004978, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.141909, telescope_dec=-24.256583, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.16167, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.115889363503, telescope_dec_j2k=-24.2218070865104, observability=1)
2025-11-17T10:59:51.353 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.353 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.353 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:51.353 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:51.353 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T10:59:51.354 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:51.355 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:51.356 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T10:59:51.357 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:51.358 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Park
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command Park
2025-11-17T10:59:51.359 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to Park
2025-11-17T10:59:51.360 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 29;17.1436078;-24.256583;50.108456;89.993074;50.08601;90.12017;14.16337;2460996.8749;10.99758333;1.3;_Park Command Successful
2025-11-17T10:59:52.360 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:59:52.360 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:59:52.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:59:52.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:59:52.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:59:53.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:59:53.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:59:53.361 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:59:53.362 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:59:53.362 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:59:54.362 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T10:59:54.362 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T10:59:54.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T10:59:54.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:59:54.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T10:59:55.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] ParkRotator
2025-11-17T10:59:55.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T10:59:55.363 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:55.364 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T10:59:55.365 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T10:59:55.366 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:56.366 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:56.366 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:56.366 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] GetDomeData
2025-11-17T10:59:56.366 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T10:59:56.366 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle requested
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [server.py] [dome()] Dome handle being returned
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T10:59:56.367 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T10:59:56.368 [DEBUG] [ThreadPoolExecutor-2696_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T10:59:56.368 [INFO] [ThreadPoolExecutor-2696_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Status age = 18.057773113250732s
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:03.426 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:03.427 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:03.428 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 17;17.1469525;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16671;2460996.87503968;11.00091889;1.3;_
2025-11-17T11:00:03.428 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response 17;17.1469525;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16671;2460996.87503968;11.00091889;1.3;_
2025-11-17T11:00:03.428 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:03.428 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:03.428 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:03.429 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:03.429 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:03.429 [INFO] [Thread-67301 (handle)] [driver.py] [get_status()] Telra = 17.1469525, teldec = -24.256582
2025-11-17T11:00:03.429 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1469525 -24.256582
2025-11-17T11:00:03.429 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1469525 -24.256582
2025-11-17T11:00:03.430 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1469525 -24.256582
2025-11-17T11:00:03.430 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 17;17.1469525;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16671;2460996.8750397;11.00091889;1.3;_17.1209312752702 -24.2219885128421
2025-11-17T11:00:03.431 [INFO] [Thread-67301 (handle)] [driver.py] [get_status()] ra_j2k = 17.1209312752702     dec_j2k = -24.2219885128421
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 140;0.104438863803548;171.162351965909;_
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response 140;0.104438863803548;171.162351965909;_
2025-11-17T11:00:03.431 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:03.432 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:03.433 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:03.433 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:03.433 [DEBUG] [Thread-67301 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:03.433 [DEBUG] [Thread-67301 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:03.433 [DEBUG] [Thread-67301 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51239)
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:03.440 [DEBUG] [Thread-67301 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:03.447 [DEBUG] [Thread-67301 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:03.448 [INFO] [Thread-67301 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87503968, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104438863803548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.1469525, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.16671, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1209312752702, telescope_dec_j2k=-24.2219885128421, observability=1)
2025-11-17T11:00:05.200 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:05.200 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Status age = 1.7528116703033447s
2025-11-17T11:00:05.200 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:05.200 [DEBUG] [Thread-67302 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:05.200 [DEBUG] [Thread-67302 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:05.201 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:05.202 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 17;17.147458;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16722;2460996.87506021;11.00142306;1.3;_
2025-11-17T11:00:05.202 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response 17;17.147458;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16722;2460996.87506021;11.00142306;1.3;_
2025-11-17T11:00:05.202 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:05.202 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:05.202 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:05.203 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:05.203 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:05.203 [INFO] [Thread-67302 (handle)] [driver.py] [get_status()] Telra = 17.147458, teldec = -24.256582
2025-11-17T11:00:05.203 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] UnCookCoordinates 17.147458 -24.256582
2025-11-17T11:00:05.203 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.147458 -24.256582
2025-11-17T11:00:05.204 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.147458 -24.256582
2025-11-17T11:00:05.204 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 17;17.147458;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16722;2460996.87506023;11.00142306;1.3;_17.1214366164321 -24.2220068005178
2025-11-17T11:00:05.204 [INFO] [Thread-67302 (handle)] [driver.py] [get_status()] ra_j2k = 17.1214366164321     dec_j2k = -24.2220068005178
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 140;0.104438903915491;171.162368059163;_
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response 140;0.104438903915491;171.162368059163;_
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:05.205 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:05.206 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:05.206 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:05.206 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:05.206 [DEBUG] [Thread-67302 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:05.207 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:05.207 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:05.207 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:05.207 [DEBUG] [Thread-67302 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:05.207 [DEBUG] [Thread-67302 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:05.208 [DEBUG] [Thread-67302 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46603)
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:05.210 [DEBUG] [Thread-67302 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:05.218 [DEBUG] [Thread-67302 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:05.218 [INFO] [Thread-67302 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87506021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104438903915491, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.147458, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.16722, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1214366164321, telescope_dec_j2k=-24.2220068005178, observability=1)
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.634880304336548s
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1501328;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16989;2460996.87517192;11.00409056;1.3;_
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.1501328;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16989;2460996.87517192;11.00409056;1.3;_
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:14.855 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.1501328, teldec = -24.256582
2025-11-17T11:00:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1501328 -24.256582
2025-11-17T11:00:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1501328 -24.256582
2025-11-17T11:00:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1501328 -24.256582
2025-11-17T11:00:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1501328;-24.256582;50.108456;89.993074;50.08601;90.12017;14.16989;2460996.87517194;11.00409056;1.3;_17.1241105770696 -24.2221035782631
2025-11-17T11:00:14.857 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1241105770696     dec_j2k = -24.2221035782631
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104439144587148;171.162346601491;_
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104439144587148;171.162346601491;_
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60899)
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:14.871 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:14.871 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87517192, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104439144587148, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.1501328, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.16989, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1241105770696, telescope_dec_j2k=-24.2221035782631, observability=1)
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.636232852935791s
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:18.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:18.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1511598;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17092;2460996.87521422;11.00511472;1.3;_
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1511598;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17092;2460996.87521422;11.00511472;1.3;_
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:18.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:18.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:18.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:18.510 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1511598, teldec = -24.256582
2025-11-17T11:00:18.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1511598 -24.256582
2025-11-17T11:00:18.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1511598 -24.256582
2025-11-17T11:00:18.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1511598 -24.256582
2025-11-17T11:00:18.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1511598;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17092;2460996.87521425;11.00511472;1.3;_17.1251372552903 -24.222140741117
2025-11-17T11:00:18.511 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.1251372552903     dec_j2k = -24.222140741117
2025-11-17T11:00:18.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:18.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:18.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:18.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104439425370748;171.162362694745;_
2025-11-17T11:00:18.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104439425370748;171.162362694745;_
2025-11-17T11:00:18.512 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:18.512 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:18.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:18.513 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:18.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:18.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:18.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43351)
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:18.516 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:18.523 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:18.524 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:18.524 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:00:18.524 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87521422, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104439425370748, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.1511598, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.17092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1251372552903, telescope_dec_j2k=-24.222140741117, observability=1)
2025-11-17T11:00:18.524 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.144949197769165 seconds ago
2025-11-17T11:00:21.538 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Status age = 3.014850616455078s
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:21.539 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:21.540 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:21.541 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 17;17.1520007;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17176;2460996.87524932;11.00595333;1.3;_
2025-11-17T11:00:21.541 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response 17;17.1520007;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17176;2460996.87524932;11.00595333;1.3;_
2025-11-17T11:00:21.541 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:21.541 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:21.541 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:21.542 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:21.542 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:21.542 [INFO] [Thread-67303 (handle)] [driver.py] [get_status()] Telra = 17.1520007, teldec = -24.256582
2025-11-17T11:00:21.542 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1520007 -24.256582
2025-11-17T11:00:21.542 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1520007 -24.256582
2025-11-17T11:00:21.542 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1520007 -24.256582
2025-11-17T11:00:21.543 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 17;17.1520007;-24.256582;50.108456;89.993074;50.08601;90.12017;14.17176;2460996.87524934;11.00595333;1.3;_17.1259778920252 -24.2221711717079
2025-11-17T11:00:21.543 [INFO] [Thread-67303 (handle)] [driver.py] [get_status()] ra_j2k = 17.1259778920252     dec_j2k = -24.2221711717079
2025-11-17T11:00:21.543 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:21.543 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:21.543 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 140;0.104439906714061;171.162357330327;_
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response 140;0.104439906714061;171.162357330327;_
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:21.545 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:21.546 [DEBUG] [Thread-67303 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:21.546 [DEBUG] [Thread-67303 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:21.546 [DEBUG] [Thread-67303 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:21.550 [DEBUG] [Thread-67303 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55807)
2025-11-17T11:00:21.550 [DEBUG] [Thread-67303 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:21.550 [DEBUG] [Thread-67303 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:21.550 [DEBUG] [Thread-67303 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:21.551 [DEBUG] [Thread-67303 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:21.551 [DEBUG] [Thread-67303 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:21.557 [DEBUG] [Thread-67303 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:21.557 [DEBUG] [Thread-67303 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:21.558 [DEBUG] [Thread-67303 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:21.558 [INFO] [Thread-67303 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87524932, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104439906714061, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108456, telescope_az=89.993074, telescope_ra=17.1520007, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.17176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T10:59:30.474295', telescope_ra_j2k=17.1259778920252, telescope_dec_j2k=-24.2221711717079, observability=1)
2025-11-17T11:00:30.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:30.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:30.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:30.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:30.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:30.618 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:30.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:30.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:30.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:30.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:30.619 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:00:30.619 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:00:30.620 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:00:30.621 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:31.621 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:31.621 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:31.622 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:31.622 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:31.622 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:00:31.623 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:31.624 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:31.625 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:31.625 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:31.625 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:31.625 [DEBUG] [ThreadPoolExecutor-2698_0] [payload.py] [to_registers()] [0]
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58493)
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:31.627 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:31.634 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:31.635 [DEBUG] [ThreadPoolExecutor-2698_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:33.462 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:00:33
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.904417276382446s
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:33.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:33.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:33.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1553181;-24.256582;50.108455;89.993074;50.08601;90.12017;14.17508;2460996.87538731;11.00926167;1.3;_
2025-11-17T11:00:33.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.1553181;-24.256582;50.108455;89.993074;50.08601;90.12017;14.17508;2460996.87538731;11.00926167;1.3;_
2025-11-17T11:00:33.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:33.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:33.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:33.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:33.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:33.465 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.1553181, teldec = -24.256582
2025-11-17T11:00:33.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1553181 -24.256582
2025-11-17T11:00:33.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1553181 -24.256582
2025-11-17T11:00:33.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1553181 -24.256582
2025-11-17T11:00:33.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1553181;-24.256582;50.108455;89.993074;50.08601;90.12017;14.17508;2460996.87538734;11.00926167;1.3;_17.1292942552337 -24.2222912390241
2025-11-17T11:00:33.466 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.1292942552337     dec_j2k = -24.2222912390241
2025-11-17T11:00:33.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:33.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104440227609604;171.162351965909;_
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104440227609604;171.162351965909;_
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:33.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:33.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:33.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:33.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:33.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:33.471 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57035)
2025-11-17T11:00:33.471 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:33.472 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:33.472 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:33.472 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:33.472 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:33.479 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:33.479 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87538731, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104440227609604, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993074, telescope_ra=17.1553181, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.17508, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1292942552337, telescope_dec_j2k=-24.2222912390241, observability=1)
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.1809749603271484s
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:34.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:34.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:34.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1556454;-24.256582;50.108455;89.993074;50.08601;90.12017;14.1754;2460996.87540118;11.00958806;1.3;_
2025-11-17T11:00:34.662 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.1556454;-24.256582;50.108455;89.993074;50.08601;90.12017;14.1754;2460996.87540118;11.00958806;1.3;_
2025-11-17T11:00:34.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:34.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:34.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:34.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:34.663 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:34.663 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.1556454, teldec = -24.256582
2025-11-17T11:00:34.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1556454 -24.256582
2025-11-17T11:00:34.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1556454 -24.256582
2025-11-17T11:00:34.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1556454 -24.256582
2025-11-17T11:00:34.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1556454;-24.256582;50.108455;89.993074;50.08601;90.12017;14.1754;2460996.8754012;11.00958806;1.3;_17.1296214530982 -24.2223030865123
2025-11-17T11:00:34.664 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.1296214530982     dec_j2k = -24.2223030865123
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104439625930462;171.162357330327;_
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104439625930462;171.162357330327;_
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:34.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:34.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:34.666 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:34.667 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:34.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:34.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:34.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:34.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:34.668 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:34.668 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:34.670 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42307)
2025-11-17T11:00:34.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:34.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:34.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:34.671 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:34.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:34.678 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:34.678 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87540118, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104439625930462, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993074, telescope_ra=17.1556454, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.1754, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1296214530982, telescope_dec_j2k=-24.2223030865123, observability=1)
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Status age = 4.938652276992798s
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:39.617 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:39.618 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:39.619 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 17;17.1570395;-24.256582;50.108455;89.993073;50.08601;90.12017;14.1768;2460996.87545855;11.01097833;1.3;_
2025-11-17T11:00:39.619 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response 17;17.1570395;-24.256582;50.108455;89.993073;50.08601;90.12017;14.1768;2460996.87545855;11.01097833;1.3;_
2025-11-17T11:00:39.619 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:39.619 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:39.619 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:39.620 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:39.620 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:39.620 [INFO] [Thread-67304 (handle)] [driver.py] [get_status()] Telra = 17.1570395, teldec = -24.256582
2025-11-17T11:00:39.620 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1570395 -24.256582
2025-11-17T11:00:39.620 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1570395 -24.256582
2025-11-17T11:00:39.620 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1570395 -24.256582
2025-11-17T11:00:39.621 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 17;17.1570395;-24.256582;50.108455;89.993073;50.08601;90.12017;14.1768;2460996.87545858;11.01097833;1.3;_17.1310151183771 -24.2223535525655
2025-11-17T11:00:39.621 [INFO] [Thread-67304 (handle)] [driver.py] [get_status()] ra_j2k = 17.1310151183771     dec_j2k = -24.2223535525655
2025-11-17T11:00:39.621 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:39.621 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:39.621 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:39.621 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 140;0.104440347945432;171.162346601491;_
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response 140;0.104440347945432;171.162346601491;_
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:39.622 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:39.623 [DEBUG] [Thread-67304 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:39.623 [DEBUG] [Thread-67304 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:39.623 [DEBUG] [Thread-67304 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37533)
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:39.625 [DEBUG] [Thread-67304 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:39.632 [DEBUG] [Thread-67304 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:39.633 [DEBUG] [Thread-67304 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:39.633 [INFO] [Thread-67304 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87545855, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104440347945432, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993073, telescope_ra=17.1570395, telescope_dec=-24.256582, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.1768, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1310151183771, telescope_dec_j2k=-24.2223535525655, observability=1)
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:56.635 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:56.636 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:00:56.637 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Status age = 18.09310746192932s
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:00:57.726 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:00:57.727 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:00:57.727 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:00:57.727 [DEBUG] [Thread-67305 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:00:57.727 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 17;17.1620816;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18184;2460996.87566815;11.01600667;1.3;_
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response 17;17.1620816;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18184;2460996.87566815;11.01600667;1.3;_
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:00:57.728 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:00:57.729 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:57.729 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:00:57.729 [INFO] [Thread-67305 (handle)] [driver.py] [get_status()] Telra = 17.1620816, teldec = -24.256581
2025-11-17T11:00:57.729 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1620816 -24.256581
2025-11-17T11:00:57.729 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1620816 -24.256581
2025-11-17T11:00:57.729 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1620816 -24.256581
2025-11-17T11:00:57.730 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 17;17.1620816;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18184;2460996.87566817;11.01600667;1.3;_17.136055650544 -24.2225351147072
2025-11-17T11:00:57.730 [INFO] [Thread-67305 (handle)] [driver.py] [get_status()] ra_j2k = 17.136055650544     dec_j2k = -24.2225351147072
2025-11-17T11:00:57.730 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:00:57.730 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:00:57.730 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 140;0.104440949624574;171.162351965909;_
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response 140;0.104440949624574;171.162351965909;_
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:57.731 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:00:57.732 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:00:57.733 [DEBUG] [Thread-67305 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:57.733 [DEBUG] [Thread-67305 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:00:57.734 [DEBUG] [Thread-67305 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46633)
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:00:57.738 [DEBUG] [Thread-67305 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:00:57.745 [DEBUG] [Thread-67305 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:00:57.745 [DEBUG] [Thread-67305 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:57.745 [DEBUG] [Thread-67305 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:00:57.745 [DEBUG] [Thread-67305 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:00:57.745 [DEBUG] [Thread-67305 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:00:57.746 [DEBUG] [Thread-67305 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:00:57.746 [DEBUG] [Thread-67305 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:00:57.746 [DEBUG] [Thread-67305 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:00:57.746 [DEBUG] [Thread-67305 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:00:57.746 [INFO] [Thread-67305 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87566815, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104440949624574, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993073, telescope_ra=17.1620816, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.18184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.136055650544, telescope_dec_j2k=-24.2225351147072, observability=1)
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Status age = 7.501274347305298s
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:05.247 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:01:05.248 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:01:05.249 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 17;17.164174;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18393;2460996.8757552;11.01809333;1.3;_
2025-11-17T11:01:05.249 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response 17;17.164174;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18393;2460996.8757552;11.01809333;1.3;_
2025-11-17T11:01:05.249 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:01:05.249 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:01:05.249 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:01:05.250 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:05.250 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:05.250 [INFO] [Thread-67306 (handle)] [driver.py] [get_status()] Telra = 17.164174, teldec = -24.256581
2025-11-17T11:01:05.250 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] UnCookCoordinates 17.164174 -24.256581
2025-11-17T11:01:05.250 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.164174 -24.256581
2025-11-17T11:01:05.250 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.164174 -24.256581
2025-11-17T11:01:05.251 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 17;17.164174;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18393;2460996.87575522;11.01809333;1.3;_17.1381474017895 -24.2226108934639
2025-11-17T11:01:05.251 [INFO] [Thread-67306 (handle)] [driver.py] [get_status()] ra_j2k = 17.1381474017895     dec_j2k = -24.2226108934639
2025-11-17T11:01:05.251 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:01:05.251 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:01:05.251 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 140;0.104440989736517;171.162351965909;_
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response 140;0.104440989736517;171.162351965909;_
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:05.252 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:05.253 [DEBUG] [Thread-67306 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:05.253 [DEBUG] [Thread-67306 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:05.253 [DEBUG] [Thread-67306 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:05.257 [DEBUG] [Thread-67306 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42223)
2025-11-17T11:01:05.257 [DEBUG] [Thread-67306 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:01:05.257 [DEBUG] [Thread-67306 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:01:05.257 [DEBUG] [Thread-67306 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:01:05.257 [DEBUG] [Thread-67306 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:01:05.258 [DEBUG] [Thread-67306 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:01:05.265 [DEBUG] [Thread-67306 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:01:05.265 [INFO] [Thread-67306 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8757552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104440989736517, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993073, telescope_ra=17.164174, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.18393, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1381474017895, telescope_dec_j2k=-24.2226108934639, observability=1)
2025-11-17T11:01:14.856 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:14.856 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.59122633934021s
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1668538;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18661;2460996.87586641;11.02076583;1.3;_
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.1668538;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18661;2460996.87586641;11.02076583;1.3;_
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:01:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:01:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:01:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:14.860 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.1668538, teldec = -24.256581
2025-11-17T11:01:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1668538 -24.256581
2025-11-17T11:01:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1668538 -24.256581
2025-11-17T11:01:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1668538 -24.256581
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1668538;-24.256581;50.108455;89.993073;50.08601;90.12017;14.18661;2460996.87586645;11.02076583;1.3;_17.1408263725847 -24.2227079610427
2025-11-17T11:01:14.861 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1408263725847     dec_j2k = -24.2227079610427
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104440668840975;171.162362694745;_
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104440668840975;171.162362694745;_
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:14.869 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46025)
2025-11-17T11:01:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:01:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:01:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:01:14.869 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:01:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:01:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:01:14.877 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87586641, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104440668840975, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108455, telescope_az=89.993073, telescope_ra=17.1668538, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.18661, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1408263725847, telescope_dec_j2k=-24.2227079610427, observability=1)
2025-11-17T11:01:15.792 [DEBUG] [Thread-67307 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:15.793 [DEBUG] [Thread-67307 (handle)] [server.py] [get_status()] Status age = 0.915391206741333s
2025-11-17T11:01:15.793 [DEBUG] [Thread-67307 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.915391206741333
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.706512212753296s
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:18.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:01:18.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:01:18.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1678819;-24.256581;50.108454;89.993073;50.08601;90.12017;14.18764;2460996.87590956;11.02179111;1.3;_
2025-11-17T11:01:18.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1678819;-24.256581;50.108454;89.993073;50.08601;90.12017;14.18764;2460996.87590956;11.02179111;1.3;_
2025-11-17T11:01:18.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:01:18.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:01:18.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:01:18.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:18.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:18.588 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1678819, teldec = -24.256581
2025-11-17T11:01:18.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1678819 -24.256581
2025-11-17T11:01:18.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1678819 -24.256581
2025-11-17T11:01:18.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1678819 -24.256581
2025-11-17T11:01:18.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1678819;-24.256581;50.108454;89.993073;50.08601;90.12017;14.18764;2460996.87590959;11.02179111;1.3;_17.1418541549611 -24.2227452054193
2025-11-17T11:01:18.589 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.1418541549611     dec_j2k = -24.2227452054193
2025-11-17T11:01:18.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:01:18.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:01:18.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104441591415659;171.162357330327;_
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104441591415659;171.162357330327;_
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:18.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:18.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:18.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:18.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:18.594 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60453)
2025-11-17T11:01:18.594 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:01:18.594 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:01:18.594 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:01:18.595 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:01:18.595 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:01:18.601 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:01:18.602 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:01:18.602 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87590956, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104441591415659, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108454, telescope_az=89.993073, telescope_ra=17.1678819, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.18764, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:00:30.616918', telescope_ra_j2k=17.1418541549611, telescope_dec_j2k=-24.2227452054193, observability=1)
2025-11-17T11:01:18.602 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.13986945152283 seconds ago
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:30.760 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:30.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:30.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:30.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:30.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:30.761 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:01:30.761 [INFO] [ThreadPoolExecutor-2699_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:01:30.761 [INFO] [ThreadPoolExecutor-2699_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:01:33.540 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:01:33
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.938035488128662s
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:33.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:01:33.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:01:33.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1720656;-24.256581;50.108454;89.993073;50.08601;90.12017;14.19182;2460996.87608266;11.02596333;1.3;_
2025-11-17T11:01:33.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.1720656;-24.256581;50.108454;89.993073;50.08601;90.12017;14.19182;2460996.87608266;11.02596333;1.3;_
2025-11-17T11:01:33.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:01:33.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:01:33.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:01:33.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:33.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:33.543 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.1720656, teldec = -24.256581
2025-11-17T11:01:33.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1720656 -24.256581
2025-11-17T11:01:33.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1720656 -24.256581
2025-11-17T11:01:33.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1720656 -24.256581
2025-11-17T11:01:33.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.1720656;-24.256581;50.108454;89.993073;50.08601;90.12017;14.19182;2460996.87608269;11.02596333;1.3;_17.1460365652959 -24.2228967920572
2025-11-17T11:01:33.544 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.1460365652959     dec_j2k = -24.2228967920572
2025-11-17T11:01:33.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:01:33.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:01:33.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104441832087316;171.162362694745;_
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104441832087316;171.162362694745;_
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:33.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:33.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:33.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:01:33.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:01:33.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33141)
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:01:33.550 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:01:33.557 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:01:33.557 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87608266, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104441832087316, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108454, telescope_az=89.993073, telescope_ra=17.1720656, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.19182, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1460365652959, telescope_dec_j2k=-24.2228967920572, observability=1)
2025-11-17T11:01:33.769 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:33.769 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.2120499610900879s
2025-11-17T11:01:33.769 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2120499610900879
2025-11-17T11:01:33.851 [DEBUG] [Thread-67308 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:33.851 [DEBUG] [Thread-67308 (handle)] [server.py] [get_status()] Status age = 0.29410624504089355s
2025-11-17T11:01:33.851 [DEBUG] [Thread-67308 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.29410624504089355
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:01:51.638 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:01:51.639 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.639 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.639 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.639 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:51.640 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:51.640 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:51.640 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.640 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:51.641 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:01:51.642 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:51.643 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Park
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:01:51.644 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:01:51.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 29;17.1771077;-24.256581;50.108454;89.993072;50.08601;90.12017;14.19687;2460996.87629219;11.03099167;1.3;_Park Command Successful
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Status age = 18.426663160324097s
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:51.984 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:01:51.985 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:01:51.986 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 17;17.1771916;-24.256581;50.108454;89.993072;50.08601;90.12017;14.19695;2460996.87629613;11.03107528;1.3;_
2025-11-17T11:01:51.986 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response 17;17.1771916;-24.256581;50.108454;89.993072;50.08601;90.12017;14.19695;2460996.87629613;11.03107528;1.3;_
2025-11-17T11:01:51.986 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:01:51.986 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:01:51.986 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:01:51.987 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:51.987 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:01:51.987 [INFO] [Thread-67309 (handle)] [driver.py] [get_status()] Telra = 17.1771916, teldec = -24.256581
2025-11-17T11:01:51.987 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1771916 -24.256581
2025-11-17T11:01:51.987 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1771916 -24.256581
2025-11-17T11:01:51.987 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1771916 -24.256581
2025-11-17T11:01:51.988 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 17;17.1771916;-24.256581;50.108454;89.993072;50.08601;90.12017;14.19695;2460996.87629616;11.03107528;1.3;_17.1511609914111 -24.2230825778549
2025-11-17T11:01:51.988 [INFO] [Thread-67309 (handle)] [driver.py] [get_status()] ra_j2k = 17.1511609914111     dec_j2k = -24.2230825778549
2025-11-17T11:01:51.988 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:01:51.988 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:01:51.988 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 140;0.104442072758973;171.162351965909;_
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response 140;0.104442072758973;171.162351965909;_
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:51.989 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:01:51.990 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:01:51.991 [DEBUG] [Thread-67309 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:51.991 [DEBUG] [Thread-67309 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:01:51.991 [DEBUG] [Thread-67309 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:01:51.997 [DEBUG] [Thread-67309 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45647)
2025-11-17T11:01:51.997 [DEBUG] [Thread-67309 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:01:51.998 [DEBUG] [Thread-67309 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:01:51.998 [DEBUG] [Thread-67309 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:01:51.998 [DEBUG] [Thread-67309 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:01:51.998 [DEBUG] [Thread-67309 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:01:52.005 [DEBUG] [Thread-67309 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:01:52.005 [INFO] [Thread-67309 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87629613, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104442072758973, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108454, telescope_az=89.993072, telescope_ra=17.1771916, telescope_dec=-24.256581, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.19695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1511609914111, telescope_dec_j2k=-24.2230825778549, observability=1)
2025-11-17T11:01:52.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:01:52.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:01:52.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:01:52.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:01:52.645 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:01:53.646 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:01:53.646 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:01:53.646 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:01:53.647 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:01:53.647 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:01:54.647 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:01:54.647 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:01:54.647 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:01:54.648 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:01:54.648 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:01:55.648 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:01:55.649 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:01:55.649 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:55.650 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:01:55.651 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:01:55.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:01:56.652 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:01:56.653 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:01:56.653 [DEBUG] [ThreadPoolExecutor-2698_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:01:56.653 [INFO] [ThreadPoolExecutor-2698_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Status age = 13.314895391464233s
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:05.320 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:05.321 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:05.322 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 17;17.1808986;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20066;2460996.87645049;11.03477222;1.3;_
2025-11-17T11:02:05.322 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response 17;17.1808986;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20066;2460996.87645049;11.03477222;1.3;_
2025-11-17T11:02:05.322 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:05.322 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:05.322 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:05.323 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:05.323 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:05.323 [INFO] [Thread-67310 (handle)] [driver.py] [get_status()] Telra = 17.1808986, teldec = -24.25658
2025-11-17T11:02:05.323 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1808986 -24.25658
2025-11-17T11:02:05.323 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1808986 -24.25658
2025-11-17T11:02:05.323 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1808986 -24.25658
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 17;17.1808986;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20066;2460996.87645051;11.03477222;1.3;_17.1548668577016 -24.223215972732
2025-11-17T11:02:05.324 [INFO] [Thread-67310 (handle)] [driver.py] [get_status()] ra_j2k = 17.1548668577016     dec_j2k = -24.223215972732
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 140;0.104442554102286;171.162351965909;_
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response 140;0.104442554102286;171.162351965909;_
2025-11-17T11:02:05.324 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:05.325 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:05.326 [DEBUG] [Thread-67310 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:05.326 [DEBUG] [Thread-67310 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:05.326 [DEBUG] [Thread-67310 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35809)
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:05.329 [DEBUG] [Thread-67310 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:05.336 [DEBUG] [Thread-67310 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:05.336 [INFO] [Thread-67310 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87645049, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104442554102286, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1808986, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20066, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1548668577016, telescope_dec_j2k=-24.223215972732, observability=1)
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Status age = 4.703113317489624s
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:10.039 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:10.040 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:10.040 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:10.040 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:10.040 [DEBUG] [Thread-67311 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 17;17.1822342;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20199;2460996.8765051;11.03610417;1.3;_
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response 17;17.1822342;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20199;2460996.8765051;11.03610417;1.3;_
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:10.041 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:10.042 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:10.042 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:10.043 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:10.043 [INFO] [Thread-67311 (handle)] [driver.py] [get_status()] Telra = 17.1822342, teldec = -24.25658
2025-11-17T11:02:10.043 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1822342 -24.25658
2025-11-17T11:02:10.043 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1822342 -24.25658
2025-11-17T11:02:10.043 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1822342 -24.25658
2025-11-17T11:02:10.044 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 17;17.1822342;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20199;2460996.87650514;11.03610417;1.3;_17.1562020500491 -24.2232644020224
2025-11-17T11:02:10.044 [INFO] [Thread-67311 (handle)] [driver.py] [get_status()] ra_j2k = 17.1562020500491     dec_j2k = -24.2232644020224
2025-11-17T11:02:10.044 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:10.044 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:10.044 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 140;0.104443155781429;171.162357330327;_
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response 140;0.104443155781429;171.162357330327;_
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:10.045 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:10.046 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:10.047 [DEBUG] [Thread-67311 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:10.047 [DEBUG] [Thread-67311 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:10.047 [DEBUG] [Thread-67311 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48607)
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:10.052 [DEBUG] [Thread-67311 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:10.060 [DEBUG] [Thread-67311 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:10.061 [INFO] [Thread-67311 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8765051, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104443155781429, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1822342, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20199, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1562020500491, telescope_dec_j2k=-24.2232644020224, observability=1)
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.766734838485718s
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1835693;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20333;2460996.87656052;11.03743556;1.3;_
2025-11-17T11:02:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.1835693;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20333;2460996.87656052;11.03743556;1.3;_
2025-11-17T11:02:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:14.830 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.1835693, teldec = -24.25658
2025-11-17T11:02:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1835693 -24.25658
2025-11-17T11:02:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1835693 -24.25658
2025-11-17T11:02:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1835693 -24.25658
2025-11-17T11:02:14.831 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.1835693;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20333;2460996.87656054;11.03743556;1.3;_17.1575367430169 -24.2233128174062
2025-11-17T11:02:14.831 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1575367430169     dec_j2k = -24.2233128174062
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104443356341143;171.162351965909;_
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104443356341143;171.162351965909;_
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:14.832 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:02:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:02:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:02:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:14.833 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:14.834 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54383)
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:14.837 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:14.844 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:14.844 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:14.844 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:14.845 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:14.845 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:14.845 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:14.845 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87656052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104443356341143, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1835693, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1575367430169, telescope_dec_j2k=-24.2233128174062, observability=1)
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.8172426223754883s
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:18.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1846244;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20438;2460996.8766049;11.03848778;1.3;_
2025-11-17T11:02:18.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.1846244;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20438;2460996.8766049;11.03848778;1.3;_
2025-11-17T11:02:18.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:18.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:18.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:18.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:18.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:18.665 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.1846244, teldec = -24.25658
2025-11-17T11:02:18.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.1846244 -24.25658
2025-11-17T11:02:18.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.1846244 -24.25658
2025-11-17T11:02:18.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1846244 -24.25658
2025-11-17T11:02:18.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.1846244;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20438;2460996.87660493;11.03848778;1.3;_17.1585915216792 -24.2233510819965
2025-11-17T11:02:18.666 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.1585915216792     dec_j2k = -24.2233510819965
2025-11-17T11:02:18.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:18.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:18.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104443195893371;171.162357330327;_
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104443195893371;171.162357330327;_
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:18.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:18.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:18.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:18.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:18.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60515)
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:18.673 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:18.680 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:18.681 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:02:18.681 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8766049, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104443195893371, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1846244, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20438, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1585915216792, telescope_dec_j2k=-24.2233510819965, observability=1)
2025-11-17T11:02:18.681 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.141042709350586 seconds ago
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Status age = 9.424201011657715s
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:28.105 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 17;17.1872502;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20701;2460996.87671419;11.04110639;1.3;_
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response 17;17.1872502;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20701;2460996.87671419;11.04110639;1.3;_
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:28.106 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:28.107 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:28.107 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:28.107 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:28.107 [INFO] [Thread-67312 (handle)] [driver.py] [get_status()] Telra = 17.1872502, teldec = -24.25658
2025-11-17T11:02:28.108 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1872502 -24.25658
2025-11-17T11:02:28.108 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1872502 -24.25658
2025-11-17T11:02:28.108 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1872502 -24.25658
2025-11-17T11:02:28.108 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 17;17.1872502;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20701;2460996.87671421;11.04110639;1.3;_17.1612165232421 -24.2234463215037
2025-11-17T11:02:28.109 [INFO] [Thread-67312 (handle)] [driver.py] [get_status()] ra_j2k = 17.1612165232421     dec_j2k = -24.2234463215037
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 140;0.104444238803884;171.162346601491;_
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response 140;0.104444238803884;171.162346601491;_
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:28.109 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:28.110 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:28.111 [DEBUG] [Thread-67312 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:28.111 [DEBUG] [Thread-67312 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:28.111 [DEBUG] [Thread-67312 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:28.115 [DEBUG] [Thread-67312 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49221)
2025-11-17T11:02:28.115 [DEBUG] [Thread-67312 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:28.116 [DEBUG] [Thread-67312 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:28.116 [DEBUG] [Thread-67312 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:28.116 [DEBUG] [Thread-67312 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:28.116 [DEBUG] [Thread-67312 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:28.123 [DEBUG] [Thread-67312 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:28.123 [INFO] [Thread-67312 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87671419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104444238803884, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1872502, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20701, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:01:30.759587', telescope_ra_j2k=17.1612165232421, telescope_dec_j2k=-24.2234463215037, observability=1)
2025-11-17T11:02:30.901 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:30.901 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:30.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:30.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:30.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:30.902 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:30.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:30.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:30.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:30.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:30.903 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:02:30.903 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:02:30.904 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:02:30.905 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:02:30.905 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:31.905 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:31.906 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:31.906 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:31.906 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:31.906 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:02:31.907 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:31.908 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:31.909 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:31.909 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:31.909 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:31.909 [DEBUG] [ThreadPoolExecutor-2700_0] [payload.py] [to_registers()] [0]
2025-11-17T11:02:31.915 [DEBUG] [ThreadPoolExecutor-2700_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45673)
2025-11-17T11:02:31.916 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:31.916 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:31.916 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:02:31.916 [DEBUG] [ThreadPoolExecutor-2700_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:31.916 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:31.923 [DEBUG] [ThreadPoolExecutor-2700_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:32.861 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.738528251647949s
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:32.862 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1885877;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20835;2460996.87676925;11.04244028;1.3;_
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.1885877;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20835;2460996.87676925;11.04244028;1.3;_
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:32.863 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:32.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:32.864 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:32.864 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.1885877, teldec = -24.25658
2025-11-17T11:02:32.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1885877 -24.25658
2025-11-17T11:02:32.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1885877 -24.25658
2025-11-17T11:02:32.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1885877 -24.25658
2025-11-17T11:02:32.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.1885877;-24.25658;50.108453;89.993072;50.08601;90.12017;14.20835;2460996.87676927;11.04244028;1.3;_17.1625536172388 -24.2234948397645
2025-11-17T11:02:32.865 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.1625536172388     dec_j2k = -24.2234948397645
2025-11-17T11:02:32.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:32.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104444198691942;171.162351965909;_
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104444198691942;171.162351965909;_
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:32.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:32.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:32.867 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:32.867 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:32.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:32.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:32.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:32.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:32.868 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:32.869 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39263)
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:32.873 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:32.880 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:32.881 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87676925, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104444198691942, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1885877, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.20835, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1625536172388, telescope_dec_j2k=-24.2234948397645, observability=1)
2025-11-17T11:02:33.618 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:02:33
2025-11-17T11:02:33.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:33.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.7376077175140381s
2025-11-17T11:02:33.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7376077175140381
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Status age = 13.375117540359497s
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:02:46.256 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:02:46.257 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 17;17.1923207;-24.25658;50.108453;89.993072;50.08601;90.12017;14.21208;2460996.87692427;11.04616306;1.3;_
2025-11-17T11:02:46.257 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response 17;17.1923207;-24.25658;50.108453;89.993072;50.08601;90.12017;14.21208;2460996.87692427;11.04616306;1.3;_
2025-11-17T11:02:46.257 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:02:46.257 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:02:46.257 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:02:46.258 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:46.258 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:02:46.258 [INFO] [Thread-67313 (handle)] [driver.py] [get_status()] Telra = 17.1923207, teldec = -24.25658
2025-11-17T11:02:46.258 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1923207 -24.25658
2025-11-17T11:02:46.259 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1923207 -24.25658
2025-11-17T11:02:46.259 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1923207 -24.25658
2025-11-17T11:02:46.259 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 17;17.1923207;-24.25658;50.108453;89.993072;50.08601;90.12017;14.21208;2460996.87692429;11.04616306;1.3;_17.166285486556 -24.2236302778436
2025-11-17T11:02:46.260 [INFO] [Thread-67313 (handle)] [driver.py] [get_status()] ra_j2k = 17.166285486556     dec_j2k = -24.2236302778436
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 140;0.104445201490512;171.162368059163;_
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response 140;0.104445201490512;171.162368059163;_
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:46.260 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:46.261 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:02:46.262 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:02:46.263 [DEBUG] [Thread-67313 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:46.263 [DEBUG] [Thread-67313 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:02:46.263 [DEBUG] [Thread-67313 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43005)
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:02:46.267 [DEBUG] [Thread-67313 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:02:46.275 [DEBUG] [Thread-67313 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:02:46.275 [DEBUG] [Thread-67313 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:46.275 [DEBUG] [Thread-67313 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:02:46.275 [DEBUG] [Thread-67313 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:02:46.275 [DEBUG] [Thread-67313 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:02:46.276 [DEBUG] [Thread-67313 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:02:46.276 [DEBUG] [Thread-67313 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:02:46.276 [DEBUG] [Thread-67313 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:02:46.276 [DEBUG] [Thread-67313 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:02:46.276 [INFO] [Thread-67313 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87692427, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104445201490512, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108453, telescope_az=89.993072, telescope_ra=17.1923207, telescope_dec=-24.25658, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.21208, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.166285486556, telescope_dec_j2k=-24.2236302778436, observability=1)
2025-11-17T11:02:56.924 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:56.924 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:56.924 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:56.924 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:56.924 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:02:56.925 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:02:56.926 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:02:56.927 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:04.325 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:04.325 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Status age = 18.04967999458313s
2025-11-17T11:03:04.325 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:04.325 [DEBUG] [Thread-67314 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:04.326 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:04.327 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 17;17.1973403;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2171;2460996.87713341;11.05116889;1.3;_
2025-11-17T11:03:04.327 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response 17;17.1973403;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2171;2460996.87713341;11.05116889;1.3;_
2025-11-17T11:03:04.327 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:04.327 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:04.327 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:04.328 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:04.328 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:04.328 [INFO] [Thread-67314 (handle)] [driver.py] [get_status()] Telra = 17.1973403, teldec = -24.256579
2025-11-17T11:03:04.329 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] UnCookCoordinates 17.1973403 -24.256579
2025-11-17T11:03:04.329 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.1973403 -24.256579
2025-11-17T11:03:04.329 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.1973403 -24.256579
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 17;17.1973403;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2171;2460996.87713344;11.05116889;1.3;_17.1713035721377 -24.2238114469497
2025-11-17T11:03:04.330 [INFO] [Thread-67314 (handle)] [driver.py] [get_status()] ra_j2k = 17.1713035721377     dec_j2k = -24.2238114469497
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 140;0.104445883393539;171.162351965909;_
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response 140;0.104445883393539;171.162351965909;_
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:04.330 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:04.331 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:04.331 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:04.331 [DEBUG] [Thread-67314 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:04.331 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:04.331 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:04.332 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:04.332 [DEBUG] [Thread-67314 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:04.332 [DEBUG] [Thread-67314 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:04.332 [DEBUG] [Thread-67314 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:04.339 [DEBUG] [Thread-67314 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43073)
2025-11-17T11:03:04.340 [DEBUG] [Thread-67314 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:04.340 [DEBUG] [Thread-67314 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:04.340 [DEBUG] [Thread-67314 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:04.340 [DEBUG] [Thread-67314 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:04.340 [DEBUG] [Thread-67314 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:04.347 [DEBUG] [Thread-67314 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:04.347 [INFO] [Thread-67314 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87713341, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104445883393539, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.1973403, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.2171, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1713035721377, telescope_dec_j2k=-24.2238114469497, observability=1)
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Status age = 1.0178112983703613s
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:05.365 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:05.366 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:05.367 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 17;17.19764;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2174;2460996.87714545;11.05146778;1.3;_
2025-11-17T11:03:05.367 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response 17;17.19764;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2174;2460996.87714545;11.05146778;1.3;_
2025-11-17T11:03:05.367 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:05.367 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:05.368 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:05.368 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:05.368 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:05.368 [INFO] [Thread-67315 (handle)] [driver.py] [get_status()] Telra = 17.19764, teldec = -24.256579
2025-11-17T11:03:05.368 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] UnCookCoordinates 17.19764 -24.256579
2025-11-17T11:03:05.369 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.19764 -24.256579
2025-11-17T11:03:05.369 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.19764 -24.256579
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 17;17.19764;-24.256579;50.108452;89.993071;50.08601;90.12017;14.2174;2460996.87714547;11.05146778;1.3;_17.1716031819157 -24.2238223253887
2025-11-17T11:03:05.370 [INFO] [Thread-67315 (handle)] [driver.py] [get_status()] ra_j2k = 17.1716031819157     dec_j2k = -24.2238223253887
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 140;0.104446404848796;171.162362694745;_
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response 140;0.104446404848796;171.162362694745;_
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:05.370 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:05.371 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:05.371 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:05.371 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:05.372 [DEBUG] [Thread-67315 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:05.372 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:05.372 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:05.372 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:05.373 [DEBUG] [Thread-67315 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:05.373 [DEBUG] [Thread-67315 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:05.373 [DEBUG] [Thread-67315 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:05.378 [DEBUG] [Thread-67315 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33537)
2025-11-17T11:03:05.378 [DEBUG] [Thread-67315 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:05.379 [DEBUG] [Thread-67315 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:05.379 [DEBUG] [Thread-67315 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:05.379 [DEBUG] [Thread-67315 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:05.379 [DEBUG] [Thread-67315 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:05.386 [DEBUG] [Thread-67315 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:05.386 [INFO] [Thread-67315 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87714545, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104446404848796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.19764, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.2174, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1716031819157, telescope_dec_j2k=-24.2238223253887, observability=1)
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.449782609939575s
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:14.836 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:14.837 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2002869;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22005;2460996.87725507;11.0541075;1.3;_
2025-11-17T11:03:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.2002869;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22005;2460996.87725507;11.0541075;1.3;_
2025-11-17T11:03:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:14.839 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.2002869, teldec = -24.256579
2025-11-17T11:03:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2002869 -24.256579
2025-11-17T11:03:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2002869 -24.256579
2025-11-17T11:03:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2002869 -24.256579
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2002869;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22005;2460996.87725509;11.0541075;1.3;_17.1742492861139 -24.2239184110142
2025-11-17T11:03:14.841 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1742492861139     dec_j2k = -24.2239184110142
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104446485072681;171.162362694745;_
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104446485072681;171.162362694745;_
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39711)
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:14.859 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:14.859 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87725507, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104446485072681, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.2002869, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1742492861139, telescope_dec_j2k=-24.2239184110142, observability=1)
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.881929636001587s
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:18.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:18.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:18.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:18.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2013738;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22113;2460996.87730028;11.05519139;1.3;_
2025-11-17T11:03:18.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2013738;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22113;2460996.87730028;11.05519139;1.3;_
2025-11-17T11:03:18.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:18.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:18.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:18.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:18.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:18.745 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2013738, teldec = -24.256579
2025-11-17T11:03:18.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2013738 -24.256579
2025-11-17T11:03:18.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2013738 -24.256579
2025-11-17T11:03:18.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2013738 -24.256579
2025-11-17T11:03:18.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2013738;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22113;2460996.8773003;11.05519139;1.3;_17.1753358598657 -24.2239578714987
2025-11-17T11:03:18.746 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.1753358598657     dec_j2k = -24.2239578714987
2025-11-17T11:03:18.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:18.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:18.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104447006527938;171.162357330327;_
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104447006527938;171.162357330327;_
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:18.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:18.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:18.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:18.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:18.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52025)
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:18.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:18.762 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:03:18.762 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87730028, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104447006527938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.2013738, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22113, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1753358598657, telescope_dec_j2k=-24.2239578714987, observability=1)
2025-11-17T11:03:18.762 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14446949958801 seconds ago
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Status age = 3.6306114196777344s
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:22.393 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:22.394 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:22.395 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 17;17.2023829;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22214;2460996.87734253;11.05619778;1.3;_
2025-11-17T11:03:22.395 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response 17;17.2023829;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22214;2460996.87734253;11.05619778;1.3;_
2025-11-17T11:03:22.395 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:22.395 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:22.395 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:22.396 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:22.396 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:22.396 [INFO] [Thread-67316 (handle)] [driver.py] [get_status()] Telra = 17.2023829, teldec = -24.256579
2025-11-17T11:03:22.396 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2023829 -24.256579
2025-11-17T11:03:22.396 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2023829 -24.256579
2025-11-17T11:03:22.396 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2023829 -24.256579
2025-11-17T11:03:22.397 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 17;17.2023829;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22214;2460996.87734256;11.05619778;1.3;_17.1763446572482 -24.2239945098678
2025-11-17T11:03:22.397 [INFO] [Thread-67316 (handle)] [driver.py] [get_status()] ra_j2k = 17.1763446572482     dec_j2k = -24.2239945098678
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 140;0.104447207087652;171.162357330327;_
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response 140;0.104447207087652;171.162357330327;_
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:22.398 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:22.399 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:22.400 [DEBUG] [Thread-67316 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:22.401 [DEBUG] [Thread-67316 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:22.401 [DEBUG] [Thread-67316 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59563)
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:22.405 [DEBUG] [Thread-67316 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:22.413 [DEBUG] [Thread-67316 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:22.414 [INFO] [Thread-67316 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87734253, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104447207087652, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.2023829, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22214, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:02:30.900594', telescope_ra_j2k=17.1763446572482, telescope_dec_j2k=-24.2239945098678, observability=1)
2025-11-17T11:03:31.043 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:31.043 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:31.043 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:31.043 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:31.043 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:31.044 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:31.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:31.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:31.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:31.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:31.045 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:03:31.045 [INFO] [ThreadPoolExecutor-2701_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:03:31.045 [INFO] [ThreadPoolExecutor-2701_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.55768346786499s
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:31.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:31.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:31.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.205053;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22481;2460996.87745339;11.05886056;1.3;_
2025-11-17T11:03:31.973 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.205053;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22481;2460996.87745339;11.05886056;1.3;_
2025-11-17T11:03:31.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:31.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:31.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:31.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:31.974 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:31.974 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.205053, teldec = -24.256579
2025-11-17T11:03:31.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.205053 -24.256579
2025-11-17T11:03:31.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.205053 -24.256579
2025-11-17T11:03:31.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.205053 -24.256579
2025-11-17T11:03:31.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.205053;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22481;2460996.87745341;11.05886056;1.3;_17.1790139578062 -24.2240914671533
2025-11-17T11:03:31.975 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.1790139578062     dec_j2k = -24.2240914671533
2025-11-17T11:03:31.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:31.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:31.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104448651117593;171.162368059163;_
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104448651117593;171.162368059163;_
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:31.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:31.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:31.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:31.978 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:31.978 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43421)
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:31.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:31.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:31.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:31.992 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87745339, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104448651117593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.205053, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22481, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1790139578062, telescope_dec_j2k=-24.2240914671533, observability=1)
2025-11-17T11:03:33.679 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:03:33
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.6870603561401367s
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:33.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2055296;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22529;2460996.87747315;11.05933583;1.3;_
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2055296;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22529;2460996.87747315;11.05933583;1.3;_
2025-11-17T11:03:33.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:33.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:33.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:33.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:33.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:33.682 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2055296, teldec = -24.256579
2025-11-17T11:03:33.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2055296 -24.256579
2025-11-17T11:03:33.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2055296 -24.256579
2025-11-17T11:03:33.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2055296 -24.256579
2025-11-17T11:03:33.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2055296;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22529;2460996.87747318;11.05933583;1.3;_17.1794904153067 -24.2241087752974
2025-11-17T11:03:33.683 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.1794904153067     dec_j2k = -24.2241087752974
2025-11-17T11:03:33.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:33.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:33.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104448530781765;171.162357330327;_
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104448530781765;171.162357330327;_
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:33.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:33.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:33.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:33.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:33.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:33.690 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47209)
2025-11-17T11:03:33.690 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:33.690 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:33.690 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:33.690 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:33.691 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:33.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:33.698 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87747315, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104448530781765, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.2055296, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22529, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1794904153067, telescope_dec_j2k=-24.2241087752974, observability=1)
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Status age = 6.8134472370147705s
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:40.512 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:40.513 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:40.514 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 17;17.2074259;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22718;2460996.87755225;11.06122694;1.3;_
2025-11-17T11:03:40.514 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response 17;17.2074259;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22718;2460996.87755225;11.06122694;1.3;_
2025-11-17T11:03:40.514 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:40.514 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:40.514 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:40.515 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:40.515 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:40.515 [INFO] [Thread-67317 (handle)] [driver.py] [get_status()] Telra = 17.2074259, teldec = -24.256579
2025-11-17T11:03:40.516 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2074259 -24.256579
2025-11-17T11:03:40.516 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2074259 -24.256579
2025-11-17T11:03:40.516 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2074259 -24.256579
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 17;17.2074259;-24.256579;50.108452;89.993071;50.08601;90.12017;14.22718;2460996.87755227;11.06122694;1.3;_17.1813861489198 -24.2241776462808
2025-11-17T11:03:40.517 [INFO] [Thread-67317 (handle)] [driver.py] [get_status()] ra_j2k = 17.1813861489198     dec_j2k = -24.2241776462808
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 140;0.104449774251991;171.162351965909;_
2025-11-17T11:03:40.517 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response 140;0.104449774251991;171.162351965909;_
2025-11-17T11:03:40.518 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:40.518 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:40.518 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:40.518 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:40.519 [DEBUG] [Thread-67317 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45651)
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:40.521 [DEBUG] [Thread-67317 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:40.529 [DEBUG] [Thread-67317 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:40.529 [INFO] [Thread-67317 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87755225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104449774251991, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108452, telescope_az=89.993071, telescope_ra=17.2074259, telescope_dec=-24.256579, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.22718, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1813861489198, telescope_dec_j2k=-24.2241776462808, observability=1)
2025-11-17T11:03:51.927 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.927 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.927 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:51.927 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:03:51.928 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:51.929 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:51.930 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:03:51.931 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:51.932 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Park
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:03:51.933 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:03:51.934 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 29;17.210604;-24.256579;50.108451;89.993071;50.08601;90.12017;14.23036;2460996.87768442;11.06439639;1.3;_Park Command Successful
2025-11-17T11:03:52.934 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:03:52.934 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:03:52.934 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:03:52.935 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:03:52.935 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:03:53.936 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:03:53.936 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:03:53.936 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:03:53.936 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:03:53.936 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:03:54.937 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:03:54.937 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:03:54.937 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:03:54.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:03:54.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:03:55.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:03:55.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:03:55.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:03:55.938 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:03:55.939 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:03:55.940 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:56.940 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:56.940 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:56.940 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:56.940 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:56.940 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:03:56.941 [DEBUG] [ThreadPoolExecutor-2700_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:56.941 [INFO] [ThreadPoolExecutor-2700_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Status age = 18.04840397834778s
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:03:58.578 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 17;17.2124669;-24.256578;50.108451;89.993071;50.08601;90.12017;14.23222;2460996.87776133;11.06625417;1.3;_
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response 17;17.2124669;-24.256578;50.108451;89.993071;50.08601;90.12017;14.23222;2460996.87776133;11.06625417;1.3;_
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:03:58.579 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:03:58.580 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:03:58.580 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:58.580 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:03:58.581 [INFO] [Thread-67318 (handle)] [driver.py] [get_status()] Telra = 17.2124669, teldec = -24.256578
2025-11-17T11:03:58.581 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2124669 -24.256578
2025-11-17T11:03:58.581 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2124669 -24.256578
2025-11-17T11:03:58.581 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2124669 -24.256578
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 17;17.2124669;-24.256578;50.108451;89.993071;50.08601;90.12017;14.23222;2460996.87776137;11.06625417;1.3;_17.1864256480642 -24.22435976873
2025-11-17T11:03:58.582 [INFO] [Thread-67318 (handle)] [driver.py] [get_status()] ra_j2k = 17.1864256480642     dec_j2k = -24.22435976873
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 140;0.104450536378905;171.162362694745;_
2025-11-17T11:03:58.582 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response 140;0.104450536378905;171.162362694745;_
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:58.583 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:03:58.584 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:03:58.584 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:03:58.584 [DEBUG] [Thread-67318 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:58.584 [DEBUG] [Thread-67318 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:03:58.584 [DEBUG] [Thread-67318 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:03:58.590 [DEBUG] [Thread-67318 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46445)
2025-11-17T11:03:58.590 [DEBUG] [Thread-67318 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:03:58.590 [DEBUG] [Thread-67318 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:03:58.591 [DEBUG] [Thread-67318 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:03:58.591 [DEBUG] [Thread-67318 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:03:58.591 [DEBUG] [Thread-67318 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:03:58.597 [DEBUG] [Thread-67318 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:03:58.598 [DEBUG] [Thread-67318 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:03:58.598 [INFO] [Thread-67318 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87776133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104450536378905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.993071, telescope_ra=17.2124669, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.23222, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1864256480642, telescope_dec_j2k=-24.22435976873, observability=1)
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Status age = 6.821131944656372s
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:05.419 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:05.420 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:05.420 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:05.421 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 17;17.2143629;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23412;2460996.87784052;11.068145;1.3;_
2025-11-17T11:04:05.422 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response 17;17.2143629;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23412;2460996.87784052;11.068145;1.3;_
2025-11-17T11:04:05.422 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:05.422 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:05.422 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:05.423 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:05.423 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:05.423 [INFO] [Thread-67319 (handle)] [driver.py] [get_status()] Telra = 17.2143629, teldec = -24.256578
2025-11-17T11:04:05.423 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2143629 -24.256578
2025-11-17T11:04:05.423 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2143629 -24.256578
2025-11-17T11:04:05.423 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2143629 -24.256578
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 17;17.2143629;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23412;2460996.87784056;11.068145;1.3;_17.1883210852247 -24.2244286590716
2025-11-17T11:04:05.424 [INFO] [Thread-67319 (handle)] [driver.py] [get_status()] ra_j2k = 17.1883210852247     dec_j2k = -24.2244286590716
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 140;0.104450937498333;171.162357330327;_
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response 140;0.104450937498333;171.162357330327;_
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:05.424 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:05.425 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:05.426 [DEBUG] [Thread-67319 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:05.426 [DEBUG] [Thread-67319 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:05.426 [DEBUG] [Thread-67319 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:05.428 [DEBUG] [Thread-67319 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53263)
2025-11-17T11:04:05.428 [DEBUG] [Thread-67319 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:05.428 [DEBUG] [Thread-67319 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:05.428 [DEBUG] [Thread-67319 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:05.428 [DEBUG] [Thread-67319 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:05.429 [DEBUG] [Thread-67319 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:05.436 [DEBUG] [Thread-67319 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:05.437 [INFO] [Thread-67319 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87784052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104450937498333, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.2143629, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.23412, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1883210852247, telescope_dec_j2k=-24.2244286590716, observability=1)
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.407626390457153s
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.216977;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23674;2460996.87794961;11.07075194;1.3;_
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.216977;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23674;2460996.87794961;11.07075194;1.3;_
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:14.847 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.216977, teldec = -24.256578
2025-11-17T11:04:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.216977 -24.256578
2025-11-17T11:04:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.216977 -24.256578
2025-11-17T11:04:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.216977 -24.256578
2025-11-17T11:04:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.216977;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23674;2460996.87794963;11.07075194;1.3;_17.1909344107629 -24.2245236547577
2025-11-17T11:04:14.848 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.1909344107629     dec_j2k = -24.2245236547577
2025-11-17T11:04:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104451458953589;171.162362694745;_
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104451458953589;171.162362694745;_
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:14.856 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40915)
2025-11-17T11:04:14.856 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:14.857 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:14.864 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87794961, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104451458953589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.216977, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.23674, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1909344107629, telescope_dec_j2k=-24.2245236547577, observability=1)
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Status age = 1.7877237796783447s
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:16.652 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:16.653 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:16.653 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:16.654 [DEBUG] [Thread-67320 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:16.654 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:16.654 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:16.654 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:16.654 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:16.655 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 17;17.2174814;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23724;2460996.87797053;11.071255;1.3;_
2025-11-17T11:04:16.655 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response 17;17.2174814;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23724;2460996.87797053;11.071255;1.3;_
2025-11-17T11:04:16.655 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:16.655 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:16.655 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:16.656 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:16.656 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:16.656 [INFO] [Thread-67320 (handle)] [driver.py] [get_status()] Telra = 17.2174814, teldec = -24.256578
2025-11-17T11:04:16.656 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2174814 -24.256578
2025-11-17T11:04:16.656 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2174814 -24.256578
2025-11-17T11:04:16.656 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2174814 -24.256578
2025-11-17T11:04:16.657 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 17;17.2174814;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23724;2460996.87797057;11.071255;1.3;_17.1914386615346 -24.2245419863138
2025-11-17T11:04:16.657 [INFO] [Thread-67320 (handle)] [driver.py] [get_status()] ra_j2k = 17.1914386615346     dec_j2k = -24.2245419863138
2025-11-17T11:04:16.657 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:16.657 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:16.657 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 140;0.10445117816999;171.162362694745;_
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response 140;0.10445117816999;171.162362694745;_
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:16.658 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:16.659 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:16.660 [DEBUG] [Thread-67320 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:16.660 [DEBUG] [Thread-67320 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:16.660 [DEBUG] [Thread-67320 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53781)
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:16.663 [DEBUG] [Thread-67320 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:16.670 [DEBUG] [Thread-67320 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:16.671 [INFO] [Thread-67320 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87797053, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10445117816999, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.2174814, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.23724, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1914386615346, telescope_dec_j2k=-24.2245419863138, observability=1)
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.151252508163452s
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:18.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:18.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:18.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:18.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2180979;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23786;2460996.87799564;11.07186972;1.3;_
2025-11-17T11:04:18.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2180979;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23786;2460996.87799564;11.07186972;1.3;_
2025-11-17T11:04:18.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:18.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:18.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:18.825 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:18.825 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:18.825 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2180979, teldec = -24.256578
2025-11-17T11:04:18.825 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2180979 -24.256578
2025-11-17T11:04:18.825 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2180979 -24.256578
2025-11-17T11:04:18.825 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2180979 -24.256578
2025-11-17T11:04:18.826 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2180979;-24.256578;50.108451;89.99307;50.08601;90.12017;14.23786;2460996.87799567;11.07186972;1.3;_17.192054979232 -24.2245643927411
2025-11-17T11:04:18.826 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.192054979232     dec_j2k = -24.2245643927411
2025-11-17T11:04:18.826 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:18.826 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:18.826 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104451539177475;171.162346601491;_
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104451539177475;171.162346601491;_
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:18.827 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:18.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:18.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:18.828 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34509)
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:18.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:18.840 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:18.841 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:04:18.841 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87799564, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104451539177475, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.2180979, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.23786, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.192054979232, telescope_dec_j2k=-24.2245643927411, observability=1)
2025-11-17T11:04:18.841 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16215753555298 seconds ago
2025-11-17T11:04:31.077 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.236704587936401s
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:31.078 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:31.079 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:31.080 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2215236;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24128;2460996.8781375;11.07528611;1.3;_
2025-11-17T11:04:31.080 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.2215236;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24128;2460996.8781375;11.07528611;1.3;_
2025-11-17T11:04:31.080 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:31.080 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:31.080 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:31.081 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:31.081 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:31.081 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.2215236, teldec = -24.256578
2025-11-17T11:04:31.081 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2215236 -24.256578
2025-11-17T11:04:31.081 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2215236 -24.256578
2025-11-17T11:04:31.081 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2215236 -24.256578
2025-11-17T11:04:31.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2215236;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24128;2460996.87813752;11.07528611;1.3;_17.1954796680545 -24.2246889141028
2025-11-17T11:04:31.082 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.1954796680545     dec_j2k = -24.2246889141028
2025-11-17T11:04:31.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:31.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:31.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104451860073017;171.162357330327;_
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104451860073017;171.162357330327;_
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:31.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:31.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:31.084 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:31.084 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:31.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:31.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:31.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:31.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:31.085 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:31.085 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47895)
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:31.091 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:31.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:31.098 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:31.098 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:31.098 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:31.099 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:31.099 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:31.099 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:31.099 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:31.099 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:31.099 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8781375, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104451860073017, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.2215236, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.24128, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:03:31.042685', telescope_ra_j2k=17.1954796680545, telescope_dec_j2k=-24.2246889141028, observability=1)
2025-11-17T11:04:31.186 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:31.186 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:31.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:31.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:31.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:31.187 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:31.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:31.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:31.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:31.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:31.188 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:04:31.188 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:31.188 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:31.188 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:31.188 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:04:31.189 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:32.190 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:32.191 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:32.192 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:32.192 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:32.192 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:32.192 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:32.193 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:32.193 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:32.193 [DEBUG] [ThreadPoolExecutor-2702_0] [payload.py] [to_registers()] [0]
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33379)
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:32.199 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:32.206 [DEBUG] [ThreadPoolExecutor-2702_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:33.759 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:04:33
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.660155773162842s
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:33.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2222509;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24201;2460996.87816852;11.07601139;1.3;_
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2222509;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24201;2460996.87816852;11.07601139;1.3;_
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:33.761 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2222509, teldec = -24.256578
2025-11-17T11:04:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2222509 -24.256578
2025-11-17T11:04:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2222509 -24.256578
2025-11-17T11:04:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2222509 -24.256578
2025-11-17T11:04:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2222509;-24.256578;50.108451;89.99307;50.08601;90.12017;14.24201;2460996.87816854;11.07601139;1.3;_17.1962067537718 -24.22471535429
2025-11-17T11:04:33.762 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.1962067537718     dec_j2k = -24.22471535429
2025-11-17T11:04:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10445218096856;171.162362694745;_
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10445218096856;171.162362694745;_
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:33.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:33.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:33.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:33.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:04:33.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34741)
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:33.767 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:33.774 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:33.775 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87816852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10445218096856, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108451, telescope_az=89.99307, telescope_ra=17.2222509, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.24201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.1962067537718, telescope_dec_j2k=-24.22471535429, observability=1)
2025-11-17T11:04:34.774 [DEBUG] [Thread-67321 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:34.774 [DEBUG] [Thread-67321 (handle)] [server.py] [get_status()] Status age = 0.9998733997344971s
2025-11-17T11:04:34.774 [DEBUG] [Thread-67321 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9998733997344971
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Status age = 19.0667781829834s
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:52.841 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:52.842 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:52.842 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:52.842 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:52.842 [DEBUG] [Thread-67322 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 17;17.2275724;-24.256578;50.10845;89.99307;50.08601;90.12017;14.24733;2460996.87838939;11.08131833;1.3;_
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response 17;17.2275724;-24.256578;50.10845;89.99307;50.08601;90.12017;14.24733;2460996.87838939;11.08131833;1.3;_
2025-11-17T11:04:52.843 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:04:52.844 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:04:52.844 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:04:52.845 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:52.845 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:04:52.845 [INFO] [Thread-67322 (handle)] [driver.py] [get_status()] Telra = 17.2275724, teldec = -24.256578
2025-11-17T11:04:52.845 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2275724 -24.256578
2025-11-17T11:04:52.845 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2275724 -24.256578
2025-11-17T11:04:52.845 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2275724 -24.256578
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 17;17.2275724;-24.256578;50.10845;89.99307;50.08601;90.12017;14.24733;2460996.87838942;11.08131833;1.3;_17.2015266901466 -24.2249088480027
2025-11-17T11:04:52.846 [INFO] [Thread-67322 (handle)] [driver.py] [get_status()] ra_j2k = 17.2015266901466     dec_j2k = -24.2249088480027
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 140;0.104453424438787;171.162362694745;_
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response 140;0.104453424438787;171.162362694745;_
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:04:52.846 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:52.847 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:52.847 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:04:52.848 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:04:52.849 [DEBUG] [Thread-67322 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:52.849 [DEBUG] [Thread-67322 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:04:52.849 [DEBUG] [Thread-67322 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54679)
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:04:52.854 [DEBUG] [Thread-67322 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:04:52.861 [DEBUG] [Thread-67322 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:04:52.862 [DEBUG] [Thread-67322 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:04:52.862 [DEBUG] [Thread-67322 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:04:52.862 [DEBUG] [Thread-67322 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:04:52.862 [INFO] [Thread-67322 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87838939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104453424438787, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10845, telescope_az=89.99307, telescope_ra=17.2275724, telescope_dec=-24.256578, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.24733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.2015266901466, telescope_dec_j2k=-24.2249088480027, observability=1)
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:04:57.207 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:04:57.208 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:04:57.209 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:04:57.209 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:05.479 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Status age = 12.617921113967896s
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:05.480 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:05.481 [DEBUG] [Thread-67323 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:05.481 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:05.481 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:05.481 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:05.481 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:05.482 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 17;17.2311031;-24.256577;50.10845;89.99307;50.08601;90.12017;14.25086;2460996.87853566;11.08483944;1.3;_
2025-11-17T11:05:05.482 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response 17;17.2311031;-24.256577;50.10845;89.99307;50.08601;90.12017;14.25086;2460996.87853566;11.08483944;1.3;_
2025-11-17T11:05:05.482 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:05.482 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:05.482 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:05.483 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:05.483 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:05.483 [INFO] [Thread-67323 (handle)] [driver.py] [get_status()] Telra = 17.2311031, teldec = -24.256577
2025-11-17T11:05:05.483 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2311031 -24.256577
2025-11-17T11:05:05.483 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2311031 -24.256577
2025-11-17T11:05:05.483 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2311031 -24.256577
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 17;17.2311031;-24.256577;50.10845;89.99307;50.08601;90.12017;14.25086;2460996.87853569;11.08483944;1.3;_17.2050563570234 -24.2250362622176
2025-11-17T11:05:05.484 [INFO] [Thread-67323 (handle)] [driver.py] [get_status()] ra_j2k = 17.2050563570234     dec_j2k = -24.2250362622176
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 140;0.104454347013471;171.162362694745;_
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response 140;0.104454347013471;171.162362694745;_
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:05.484 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:05.485 [DEBUG] [Thread-67323 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46669)
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:05.492 [DEBUG] [Thread-67323 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:05.499 [DEBUG] [Thread-67323 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:05.499 [DEBUG] [Thread-67323 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:05.499 [DEBUG] [Thread-67323 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:05.499 [DEBUG] [Thread-67323 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:05.500 [DEBUG] [Thread-67323 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:05.500 [DEBUG] [Thread-67323 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:05.500 [DEBUG] [Thread-67323 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:05.500 [DEBUG] [Thread-67323 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:05.500 [DEBUG] [Thread-67323 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:05.500 [INFO] [Thread-67323 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87853566, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104454347013471, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10845, telescope_az=89.99307, telescope_ra=17.2311031, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25086, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.2050563570234, telescope_dec_j2k=-24.2250362622176, observability=1)
2025-11-17T11:05:10.908 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:10.908 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Status age = 5.408567190170288s
2025-11-17T11:05:10.908 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:10.908 [DEBUG] [Thread-67324 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:10.908 [DEBUG] [Thread-67324 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:10.909 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:10.910 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:10.910 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 17;17.2326167;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25237;2460996.8785985;11.08634889;1.3;_
2025-11-17T11:05:10.911 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response 17;17.2326167;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25237;2460996.8785985;11.08634889;1.3;_
2025-11-17T11:05:10.911 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:10.911 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:10.911 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:10.912 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:10.912 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:10.912 [INFO] [Thread-67324 (handle)] [driver.py] [get_status()] Telra = 17.2326167, teldec = -24.256577
2025-11-17T11:05:10.912 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2326167 -24.256577
2025-11-17T11:05:10.912 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2326167 -24.256577
2025-11-17T11:05:10.912 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2326167 -24.256577
2025-11-17T11:05:10.913 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 17;17.2326167;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25237;2460996.87859853;11.08634889;1.3;_17.2065695150486 -24.2250913215555
2025-11-17T11:05:10.913 [INFO] [Thread-67324 (handle)] [driver.py] [get_status()] ra_j2k = 17.2065695150486     dec_j2k = -24.2250913215555
2025-11-17T11:05:10.913 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:10.913 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:10.913 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 140;0.10445575093147;171.162351965909;_
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response 140;0.10445575093147;171.162351965909;_
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:10.914 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:10.915 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:10.916 [DEBUG] [Thread-67324 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:10.916 [DEBUG] [Thread-67324 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:10.916 [DEBUG] [Thread-67324 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60931)
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:10.919 [DEBUG] [Thread-67324 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:10.926 [DEBUG] [Thread-67324 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:10.927 [INFO] [Thread-67324 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8785985, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10445575093147, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10845, telescope_az=89.993069, telescope_ra=17.2326167, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25237, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.2065695150486, telescope_dec_j2k=-24.2250913215555, observability=1)
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.9377970695495605s
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2337019;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25346;2460996.87864428;11.08743111;1.3;_
2025-11-17T11:05:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.2337019;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25346;2460996.87864428;11.08743111;1.3;_
2025-11-17T11:05:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:14.867 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.2337019, teldec = -24.256577
2025-11-17T11:05:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2337019 -24.256577
2025-11-17T11:05:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2337019 -24.256577
2025-11-17T11:05:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2337019 -24.256577
2025-11-17T11:05:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2337019;-24.256577;50.10845;89.993069;50.08601;90.12017;14.25346;2460996.87864431;11.08743111;1.3;_17.207654398539 -24.2251308004027
2025-11-17T11:05:14.868 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.207654398539     dec_j2k = -24.2251308004027
2025-11-17T11:05:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104454587685128;171.162346601491;_
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104454587685128;171.162346601491;_
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39655)
2025-11-17T11:05:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:14.876 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87864428, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104454587685128, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10845, telescope_az=89.993069, telescope_ra=17.2337019, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25346, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.207654398539, telescope_dec_j2k=-24.2251308004027, observability=1)
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.018286466598511s
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:18.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:18.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:18.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:18.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:18.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:18.902 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:18.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:18.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:18.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:18.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2348411;-24.256577;50.10845;89.993069;50.08601;90.12017;14.2546;2460996.87869102;11.08856722;1.3;_
2025-11-17T11:05:18.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2348411;-24.256577;50.10845;89.993069;50.08601;90.12017;14.2546;2460996.87869102;11.08856722;1.3;_
2025-11-17T11:05:18.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:18.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:18.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:18.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:18.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:18.905 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2348411, teldec = -24.256577
2025-11-17T11:05:18.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2348411 -24.256577
2025-11-17T11:05:18.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2348411 -24.256577
2025-11-17T11:05:18.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2348411 -24.256577
2025-11-17T11:05:18.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2348411;-24.256577;50.10845;89.993069;50.08601;90.12017;14.2546;2460996.87869104;11.08856722;1.3;_17.2087932666135 -24.2251722465729
2025-11-17T11:05:18.906 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.2087932666135     dec_j2k = -24.2251722465729
2025-11-17T11:05:18.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:18.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:18.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.1044541865657;171.162351965909;_
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.1044541865657;171.162351965909;_
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:18.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:18.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:18.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:18.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:18.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56711)
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:18.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:18.922 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:18.923 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:18.923 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:18.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:05:18.923 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87869102, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1044541865657, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10845, telescope_az=89.993069, telescope_ra=17.2348411, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.2546, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.2087932666135, telescope_dec_j2k=-24.2251722465729, observability=1)
2025-11-17T11:05:18.923 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16396903991699 seconds ago
2025-11-17T11:05:29.039 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:29.039 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Status age = 10.116589307785034s
2025-11-17T11:05:29.039 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:29.039 [DEBUG] [Thread-67325 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:29.039 [DEBUG] [Thread-67325 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:29.040 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:29.041 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 17;17.23766;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25742;2460996.87880834;11.09137833;1.3;_
2025-11-17T11:05:29.041 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response 17;17.23766;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25742;2460996.87880834;11.09137833;1.3;_
2025-11-17T11:05:29.041 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:29.041 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:29.041 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:29.042 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:29.042 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:29.042 [INFO] [Thread-67325 (handle)] [driver.py] [get_status()] Telra = 17.23766, teldec = -24.256577
2025-11-17T11:05:29.042 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] UnCookCoordinates 17.23766 -24.256577
2025-11-17T11:05:29.042 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.23766 -24.256577
2025-11-17T11:05:29.042 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.23766 -24.256577
2025-11-17T11:05:29.043 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 17;17.23766;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25742;2460996.87880837;11.09137833;1.3;_17.211611346748 -24.2252748157661
2025-11-17T11:05:29.043 [INFO] [Thread-67325 (handle)] [driver.py] [get_status()] ra_j2k = 17.211611346748     dec_j2k = -24.2252748157661
2025-11-17T11:05:29.043 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:29.043 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:29.043 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 140;0.104455309700099;171.162362694745;_
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response 140;0.104455309700099;171.162362694745;_
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:29.044 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:29.045 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:29.046 [DEBUG] [Thread-67325 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:29.046 [DEBUG] [Thread-67325 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:29.046 [DEBUG] [Thread-67325 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53119)
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:29.047 [DEBUG] [Thread-67325 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:29.054 [DEBUG] [Thread-67325 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:29.055 [INFO] [Thread-67325 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87880834, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104455309700099, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993069, telescope_ra=17.23766, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25742, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.211611346748, telescope_dec_j2k=-24.2252748157661, observability=1)
2025-11-17T11:05:30.189 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:30.189 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.134819746017456s
2025-11-17T11:05:30.189 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:30.189 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:30.189 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:30.190 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:30.190 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:30.190 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:30.190 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:30.190 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:30.191 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:30.191 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:30.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:30.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:30.191 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:30.192 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2379588;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25772;2460996.87882166;11.09167639;1.3;_
2025-11-17T11:05:30.192 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.2379588;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25772;2460996.87882166;11.09167639;1.3;_
2025-11-17T11:05:30.192 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:30.192 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:30.192 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:30.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:30.193 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:30.193 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.2379588, teldec = -24.256577
2025-11-17T11:05:30.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2379588 -24.256577
2025-11-17T11:05:30.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2379588 -24.256577
2025-11-17T11:05:30.193 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2379588 -24.256577
2025-11-17T11:05:30.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2379867;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25774;2460996.87882169;11.09170417;1.3;_17.211910059966 -24.2252856890171
2025-11-17T11:05:30.194 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.211910059966     dec_j2k = -24.2252856890171
2025-11-17T11:05:30.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:30.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:30.194 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10445518936427;171.162362694745;_
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10445518936427;171.162362694745;_
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:30.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:30.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:30.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:30.197 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:30.197 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:30.203 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49067)
2025-11-17T11:05:30.203 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:30.204 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:30.204 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:30.204 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:30.204 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:30.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:30.211 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87882166, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10445518936427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993069, telescope_ra=17.2379588, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:04:31.185595', telescope_ra_j2k=17.211910059966, telescope_dec_j2k=-24.2252856890171, observability=1)
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:31.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:31.327 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:31.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:31.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:31.329 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:05:31.329 [INFO] [ThreadPoolExecutor-2703_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:05:31.329 [INFO] [ThreadPoolExecutor-2703_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:05:33.835 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:05:33
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.6244993209838867s
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:33.836 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:33.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2389953;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25875;2460996.87886385;11.09271;1.3;_
2025-11-17T11:05:33.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2389953;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25875;2460996.87886385;11.09271;1.3;_
2025-11-17T11:05:33.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:33.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:33.837 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:33.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:33.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:33.838 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2389953, teldec = -24.256577
2025-11-17T11:05:33.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2389953 -24.256577
2025-11-17T11:05:33.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2389953 -24.256577
2025-11-17T11:05:33.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2389953 -24.256577
2025-11-17T11:05:33.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2389953;-24.256577;50.108449;89.993069;50.08601;90.12017;14.25875;2460996.87886388;11.09271;1.3;_17.2129462591122 -24.2253234085141
2025-11-17T11:05:33.839 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.2129462591122     dec_j2k = -24.2253234085141
2025-11-17T11:05:33.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:33.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:33.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:33.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104455269588156;171.162346601491;_
2025-11-17T11:05:33.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104455269588156;171.162346601491;_
2025-11-17T11:05:33.840 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:33.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:33.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:33.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:33.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:33.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:33.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:33.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:33.849 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45609)
2025-11-17T11:05:33.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:33.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:33.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:33.850 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:33.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:33.857 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:33.857 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87886385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104455269588156, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993069, telescope_ra=17.2389953, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.25875, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2129462591122, telescope_dec_j2k=-24.2253234085141, observability=1)
2025-11-17T11:05:47.101 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Status age = 13.244513750076294s
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:47.102 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 17;17.2426739;-24.256577;50.108449;89.993069;50.08601;90.12017;14.26243;2460996.8790174;11.09637861;1.3;_
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response 17;17.2426739;-24.256577;50.108449;89.993069;50.08601;90.12017;14.26243;2460996.8790174;11.09637861;1.3;_
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:05:47.103 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:05:47.104 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:47.104 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:05:47.105 [INFO] [Thread-67326 (handle)] [driver.py] [get_status()] Telra = 17.2426739, teldec = -24.256577
2025-11-17T11:05:47.105 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2426739 -24.256577
2025-11-17T11:05:47.105 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2426739 -24.256577
2025-11-17T11:05:47.105 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2426739 -24.256577
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 17;17.2426739;-24.256577;50.108449;89.993069;50.08601;90.12017;14.26243;2460996.87901742;11.09637861;1.3;_17.2166237936498 -24.2254572965488
2025-11-17T11:05:47.106 [INFO] [Thread-67326 (handle)] [driver.py] [get_status()] ra_j2k = 17.2166237936498     dec_j2k = -24.2254572965488
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 140;0.10445575093147;171.162351965909;_
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response 140;0.10445575093147;171.162351965909;_
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:47.106 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:05:47.107 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:05:47.108 [DEBUG] [Thread-67326 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:47.108 [DEBUG] [Thread-67326 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:05:47.108 [DEBUG] [Thread-67326 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:05:47.110 [DEBUG] [Thread-67326 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45625)
2025-11-17T11:05:47.110 [DEBUG] [Thread-67326 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:05:47.110 [DEBUG] [Thread-67326 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:05:47.111 [DEBUG] [Thread-67326 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:05:47.111 [DEBUG] [Thread-67326 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:05:47.111 [DEBUG] [Thread-67326 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:05:47.118 [DEBUG] [Thread-67326 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:05:47.118 [DEBUG] [Thread-67326 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:47.118 [DEBUG] [Thread-67326 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:05:47.118 [DEBUG] [Thread-67326 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:05:47.118 [DEBUG] [Thread-67326 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:05:47.119 [DEBUG] [Thread-67326 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:05:47.119 [DEBUG] [Thread-67326 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:05:47.119 [DEBUG] [Thread-67326 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:05:47.119 [DEBUG] [Thread-67326 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:05:47.119 [INFO] [Thread-67326 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8790174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10445575093147, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993069, telescope_ra=17.2426739, telescope_dec=-24.256577, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.26243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2166237936498, telescope_dec_j2k=-24.2254572965488, observability=1)
2025-11-17T11:05:52.210 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.210 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.210 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:52.210 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:52.210 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:05:52.211 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:52.212 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:52.213 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:05:52.214 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:52.215 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:52.216 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:52.216 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:52.216 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:52.217 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:52.217 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Park
2025-11-17T11:05:52.217 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:05:52.217 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:05:52.217 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 29;17.2441204;-24.256577;50.108449;89.993069;50.08601;90.12017;14.26388;2460996.87907659;11.09782111;1.3;_Park Command Successful
2025-11-17T11:05:53.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:05:53.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:05:53.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:05:53.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:05:53.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:05:54.218 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:05:54.219 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:05:54.219 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:05:54.219 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:05:54.219 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:05:55.219 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:05:55.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:05:55.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:05:55.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:05:55.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:05:56.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:05:56.220 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:56.221 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:05:56.222 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:05:56.223 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:57.223 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:57.223 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:57.223 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:05:57.223 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:05:57.223 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:05:57.224 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:05:57.225 [DEBUG] [ThreadPoolExecutor-2702_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:05:57.225 [INFO] [ThreadPoolExecutor-2702_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:06:05.249 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:05.249 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Status age = 18.13066291809082s
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:05.250 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 17;17.2477442;-24.256576;50.108449;89.993069;50.08601;90.12017;14.2675;2460996.87922744;11.101435;1.3;_
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response 17;17.2477442;-24.256576;50.108449;89.993069;50.08601;90.12017;14.2675;2460996.87922744;11.101435;1.3;_
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:05.251 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:05.252 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:05.253 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:05.253 [INFO] [Thread-67327 (handle)] [driver.py] [get_status()] Telra = 17.2477442, teldec = -24.256576
2025-11-17T11:06:05.253 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2477442 -24.256576
2025-11-17T11:06:05.253 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2477442 -24.256576
2025-11-17T11:06:05.253 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2477442 -24.256576
2025-11-17T11:06:05.255 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 17;17.2477442;-24.256576;50.108449;89.993069;50.08601;90.12017;14.2675;2460996.87922749;11.101435;1.3;_17.2216926311389 -24.2256408867717
2025-11-17T11:06:05.255 [INFO] [Thread-67327 (handle)] [driver.py] [get_status()] ra_j2k = 17.2216926311389     dec_j2k = -24.2256408867717
2025-11-17T11:06:05.255 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:05.255 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 140;0.104456312498669;171.162357330327;_
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response 140;0.104456312498669;171.162357330327;_
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:05.258 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:05.259 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:05.260 [DEBUG] [Thread-67327 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:05.260 [DEBUG] [Thread-67327 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:05.260 [DEBUG] [Thread-67327 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46965)
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:05.266 [DEBUG] [Thread-67327 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:05.273 [DEBUG] [Thread-67327 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:05.274 [INFO] [Thread-67327 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87922744, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104456312498669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993069, telescope_ra=17.2477442, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.2675, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2216926311389, telescope_dec_j2k=-24.2256408867717, observability=1)
2025-11-17T11:06:05.538 [DEBUG] [Thread-67328 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:05.539 [DEBUG] [Thread-67328 (handle)] [server.py] [get_status()] Status age = 0.26510071754455566s
2025-11-17T11:06:05.539 [DEBUG] [Thread-67328 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.26510071754455566
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.550220251083374s
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:14.824 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:14.825 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2504187;-24.256576;50.108449;89.993068;50.08601;90.12017;14.27018;2460996.87933826;11.10410222;1.3;_
2025-11-17T11:06:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.2504187;-24.256576;50.108449;89.993068;50.08601;90.12017;14.27018;2460996.87933826;11.10410222;1.3;_
2025-11-17T11:06:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:14.826 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:14.827 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.2504187, teldec = -24.256576
2025-11-17T11:06:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2504187 -24.256576
2025-11-17T11:06:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2504187 -24.256576
2025-11-17T11:06:14.827 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2504187 -24.256576
2025-11-17T11:06:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2504187;-24.256576;50.108449;89.993068;50.08601;90.12017;14.27018;2460996.87933829;11.10410222;1.3;_17.2243663623165 -24.2257382779277
2025-11-17T11:06:14.828 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.2243663623165     dec_j2k = -24.2257382779277
2025-11-17T11:06:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:14.828 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104456392722554;171.162351965909;_
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104456392722554;171.162351965909;_
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:14.829 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:14.830 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54305)
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:14.831 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:14.839 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87933826, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104456392722554, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108449, telescope_az=89.993068, telescope_ra=17.2504187, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27018, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2243663623165, telescope_dec_j2k=-24.2257382779277, observability=1)
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.143400430679321s
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:18.983 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:18.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:18.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2515577;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27132;2460996.8793864;11.10523806;1.3;_
2025-11-17T11:06:18.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2515577;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27132;2460996.8793864;11.10523806;1.3;_
2025-11-17T11:06:18.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:18.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:18.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:18.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:18.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:18.986 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2515577, teldec = -24.256576
2025-11-17T11:06:18.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2515577 -24.256576
2025-11-17T11:06:18.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2515577 -24.256576
2025-11-17T11:06:18.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2515577 -24.256576
2025-11-17T11:06:18.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2515577;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27132;2460996.87938642;11.10523806;1.3;_17.2255050354678 -24.2257797590677
2025-11-17T11:06:18.987 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.2255050354678     dec_j2k = -24.2257797590677
2025-11-17T11:06:18.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:18.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:18.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104456954289754;171.162351965909;_
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104456954289754;171.162351965909;_
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:18.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:18.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:18.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:18.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:18.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33399)
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:18.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:19.004 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:06:19.005 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8793864, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104456954289754, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2515577, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27132, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2255050354678, telescope_dec_j2k=-24.2257797590677, observability=1)
2025-11-17T11:06:19.005 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.169214963912964 seconds ago
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Status age = 4.311561822891235s
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:23.316 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 17;17.2527624;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27252;2460996.87943654;11.10643944;1.3;_
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response 17;17.2527624;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27252;2460996.87943654;11.10643944;1.3;_
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:23.317 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:23.318 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:23.318 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:23.318 [INFO] [Thread-67329 (handle)] [driver.py] [get_status()] Telra = 17.2527624, teldec = -24.256576
2025-11-17T11:06:23.319 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2527624 -24.256576
2025-11-17T11:06:23.319 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2527624 -24.256576
2025-11-17T11:06:23.319 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2527624 -24.256576
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 17;17.2527624;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27252;2460996.87943656;11.10643944;1.3;_17.2267093901381 -24.2258236360309
2025-11-17T11:06:23.320 [INFO] [Thread-67329 (handle)] [driver.py] [get_status()] ra_j2k = 17.2267093901381     dec_j2k = -24.2258236360309
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 140;0.104456914177811;171.162351965909;_
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response 140;0.104456914177811;171.162351965909;_
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:23.320 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:23.321 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:23.321 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:23.322 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:23.322 [DEBUG] [Thread-67329 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:06:23.322 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:23.322 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:23.322 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:23.323 [DEBUG] [Thread-67329 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:23.323 [DEBUG] [Thread-67329 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:23.323 [DEBUG] [Thread-67329 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:06:23.325 [DEBUG] [Thread-67329 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45215)
2025-11-17T11:06:23.325 [DEBUG] [Thread-67329 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:23.325 [DEBUG] [Thread-67329 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:23.325 [DEBUG] [Thread-67329 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:23.326 [DEBUG] [Thread-67329 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:23.326 [DEBUG] [Thread-67329 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:23.333 [DEBUG] [Thread-67329 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:23.333 [INFO] [Thread-67329 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87943654, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104456914177811, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2527624, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2267093901381, telescope_dec_j2k=-24.2258236360309, observability=1)
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.970696449279785s
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:29.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:29.305 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:29.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:29.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2544353;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27419;2460996.87950586;11.10810778;1.3;_
2025-11-17T11:06:29.306 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.2544353;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27419;2460996.87950586;11.10810778;1.3;_
2025-11-17T11:06:29.306 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:29.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:29.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:29.307 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:29.308 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:29.308 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.2544353, teldec = -24.256576
2025-11-17T11:06:29.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2544353 -24.256576
2025-11-17T11:06:29.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2544353 -24.256576
2025-11-17T11:06:29.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2544353 -24.256576
2025-11-17T11:06:29.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2544353;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27419;2460996.87950589;11.10810778;1.3;_17.2283818112329 -24.2258845708123
2025-11-17T11:06:29.309 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.2283818112329     dec_j2k = -24.2258845708123
2025-11-17T11:06:29.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:29.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:29.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104457435633067;171.162346601491;_
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104457435633067;171.162346601491;_
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:29.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:29.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:29.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:29.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:29.312 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:29.316 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51633)
2025-11-17T11:06:29.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:29.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:29.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:29.316 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:29.317 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:29.324 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:29.324 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.87950586, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104457435633067, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2544353, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27419, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:05:31.326849', telescope_ra_j2k=17.2283818112329, telescope_dec_j2k=-24.2258845708123, observability=1)
2025-11-17T11:06:31.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:31.476 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:31.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:31.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:31.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:31.477 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:31.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:31.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:31.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:31.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:31.478 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:06:31.478 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:31.478 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:31.478 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:06:31.479 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:06:31.480 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:32.480 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:32.480 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:32.480 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:32.481 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:32.481 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:32.481 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:06:32.482 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:32.483 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:32.484 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:32.484 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:32.484 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:32.484 [DEBUG] [ThreadPoolExecutor-2704_0] [payload.py] [to_registers()] [0]
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59603)
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:32.491 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:32.498 [DEBUG] [ThreadPoolExecutor-2704_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:33.918 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:06:33
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.593788385391235s
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:33.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:33.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:33.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:33.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:33.919 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:33.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:33.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:33.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:33.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2557366;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27549;2460996.87955927;11.10940556;1.3;_
2025-11-17T11:06:33.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2557366;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27549;2460996.87955927;11.10940556;1.3;_
2025-11-17T11:06:33.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:33.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:33.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:33.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:33.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:33.922 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2557366, teldec = -24.256576
2025-11-17T11:06:33.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2557366 -24.256576
2025-11-17T11:06:33.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2557366 -24.256576
2025-11-17T11:06:33.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2557366 -24.256576
2025-11-17T11:06:33.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2557366;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27549;2460996.87955929;11.10940556;1.3;_17.229682739217 -24.2259319744345
2025-11-17T11:06:33.923 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.229682739217     dec_j2k = -24.2259319744345
2025-11-17T11:06:33.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:33.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:33.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104457596080839;171.162373423581;_
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104457596080839;171.162373423581;_
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:33.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:06:33.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56277)
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:33.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:33.938 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:33.938 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87955927, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104457596080839, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2557366, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27549, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.229682739217, telescope_dec_j2k=-24.2259319744345, observability=1)
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Status age = 7.439716339111328s
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:41.378 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:41.379 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:41.379 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:41.379 [DEBUG] [Thread-67330 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:41.380 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:41.380 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:41.380 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:41.380 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:41.380 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 17;17.2578036;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27756;2460996.8796456;11.11146694;1.3;_
2025-11-17T11:06:41.381 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response 17;17.2578036;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27756;2460996.8796456;11.11146694;1.3;_
2025-11-17T11:06:41.381 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:41.381 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:41.381 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:41.382 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:41.382 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:41.382 [INFO] [Thread-67330 (handle)] [driver.py] [get_status()] Telra = 17.2578036, teldec = -24.256576
2025-11-17T11:06:41.382 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2578036 -24.256576
2025-11-17T11:06:41.382 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2578036 -24.256576
2025-11-17T11:06:41.382 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2578036 -24.256576
2025-11-17T11:06:41.383 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 17;17.2578036;-24.256576;50.108448;89.993068;50.08601;90.12017;14.27756;2460996.87964564;11.11146694;1.3;_17.2317491492211 -24.2260072785052
2025-11-17T11:06:41.383 [INFO] [Thread-67330 (handle)] [driver.py] [get_status()] ra_j2k = 17.2317491492211     dec_j2k = -24.2260072785052
2025-11-17T11:06:41.383 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:41.383 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:41.383 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 140;0.104458358207752;171.162351965909;_
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response 140;0.104458358207752;171.162351965909;_
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:41.384 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:41.385 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:41.386 [DEBUG] [Thread-67330 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:41.386 [DEBUG] [Thread-67330 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:41.386 [DEBUG] [Thread-67330 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38301)
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:41.392 [DEBUG] [Thread-67330 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:41.399 [DEBUG] [Thread-67330 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:41.400 [DEBUG] [Thread-67330 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:41.400 [DEBUG] [Thread-67330 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:41.400 [INFO] [Thread-67330 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8796456, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104458358207752, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2578036, telescope_dec=-24.256576, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.27756, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.2317491492211, telescope_dec_j2k=-24.2260072785052, observability=1)
2025-11-17T11:06:57.498 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:57.498 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:57.499 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:57.499 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:57.499 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:57.502 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:06:57.503 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:06:57.504 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Status age = 18.102038621902466s
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:06:59.502 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:06:59.503 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:06:59.504 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 17;17.2628472;-24.256575;50.108448;89.993068;50.08601;90.12017;14.28261;2460996.87985537;11.11649667;1.3;_
2025-11-17T11:06:59.504 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response 17;17.2628472;-24.256575;50.108448;89.993068;50.08601;90.12017;14.28261;2460996.87985537;11.11649667;1.3;_
2025-11-17T11:06:59.504 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:06:59.504 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:06:59.504 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:06:59.505 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:59.505 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:06:59.505 [INFO] [Thread-67331 (handle)] [driver.py] [get_status()] Telra = 17.2628472, teldec = -24.256575
2025-11-17T11:06:59.505 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2628472 -24.256575
2025-11-17T11:06:59.505 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2628472 -24.256575
2025-11-17T11:06:59.505 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2628472 -24.256575
2025-11-17T11:06:59.506 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 17;17.2628472;-24.256575;50.108448;89.993068;50.08601;90.12017;14.28261;2460996.87985539;11.11649667;1.3;_17.236791314524 -24.2261900639173
2025-11-17T11:06:59.506 [INFO] [Thread-67331 (handle)] [driver.py] [get_status()] ra_j2k = 17.236791314524     dec_j2k = -24.2261900639173
2025-11-17T11:06:59.507 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:06:59.507 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:06:59.507 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:06:59.507 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 140;0.104459080222722;171.162368059163;_
2025-11-17T11:06:59.507 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response 140;0.104459080222722;171.162368059163;_
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:06:59.508 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:06:59.509 [DEBUG] [Thread-67331 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:59.509 [DEBUG] [Thread-67331 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:06:59.509 [DEBUG] [Thread-67331 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:06:59.512 [DEBUG] [Thread-67331 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42269)
2025-11-17T11:06:59.513 [DEBUG] [Thread-67331 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:06:59.513 [DEBUG] [Thread-67331 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:06:59.513 [DEBUG] [Thread-67331 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:06:59.513 [DEBUG] [Thread-67331 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:06:59.513 [DEBUG] [Thread-67331 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:06:59.520 [DEBUG] [Thread-67331 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:06:59.520 [INFO] [Thread-67331 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87985537, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104459080222722, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108448, telescope_az=89.993068, telescope_ra=17.2628472, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.28261, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.236791314524, telescope_dec_j2k=-24.2261900639173, observability=1)
2025-11-17T11:07:05.576 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Status age = 6.0563740730285645s
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:05.577 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:05.578 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 17;17.2645423;-24.256575;50.108447;89.993068;50.08601;90.12017;14.2843;2460996.87992566;11.11818722;1.3;_
2025-11-17T11:07:05.578 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response 17;17.2645423;-24.256575;50.108447;89.993068;50.08601;90.12017;14.2843;2460996.87992566;11.11818722;1.3;_
2025-11-17T11:07:05.578 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:05.578 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:05.578 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:05.579 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:05.579 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:05.579 [INFO] [Thread-67332 (handle)] [driver.py] [get_status()] Telra = 17.2645423, teldec = -24.256575
2025-11-17T11:07:05.579 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2645423 -24.256575
2025-11-17T11:07:05.579 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2645423 -24.256575
2025-11-17T11:07:05.579 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2645423 -24.256575
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 17;17.2645423;-24.256575;50.108447;89.993068;50.08601;90.12017;14.2843;2460996.87992569;11.11818722;1.3;_17.2384859337798 -24.226251844613
2025-11-17T11:07:05.580 [INFO] [Thread-67332 (handle)] [driver.py] [get_status()] ra_j2k = 17.2384859337798     dec_j2k = -24.226251844613
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 140;0.104458959886894;171.162368059163;_
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response 140;0.104458959886894;171.162368059163;_
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:05.580 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:05.581 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:05.581 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:05.581 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:05.581 [DEBUG] [Thread-67332 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:05.581 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:05.582 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:05.582 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:05.583 [DEBUG] [Thread-67332 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:05.583 [DEBUG] [Thread-67332 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:05.583 [DEBUG] [Thread-67332 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50487)
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:05.589 [DEBUG] [Thread-67332 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:05.596 [DEBUG] [Thread-67332 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:05.597 [DEBUG] [Thread-67332 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:05.597 [INFO] [Thread-67332 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.87992566, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104458959886894, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993068, telescope_ra=17.2645423, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.2843, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.2384859337798, telescope_dec_j2k=-24.226251844613, observability=1)
2025-11-17T11:07:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.246937990188599s
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2671138;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28687;2460996.88003293;11.12075167;1.3;_
2025-11-17T11:07:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.2671138;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28687;2460996.88003293;11.12075167;1.3;_
2025-11-17T11:07:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:14.846 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.2671138, teldec = -24.256575
2025-11-17T11:07:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2671138 -24.256575
2025-11-17T11:07:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2671138 -24.256575
2025-11-17T11:07:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2671138 -24.256575
2025-11-17T11:07:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2671138;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28687;2460996.88003295;11.12075167;1.3;_17.2410567059299 -24.2263455790099
2025-11-17T11:07:14.847 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.2410567059299     dec_j2k = -24.2263455790099
2025-11-17T11:07:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104458919774951;171.162357330327;_
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104458919774951;171.162357330327;_
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41263)
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:14.854 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:14.861 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88003293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104458919774951, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993068, telescope_ra=17.2671138, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.28687, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.2410567059299, telescope_dec_j2k=-24.2263455790099, observability=1)
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Status age = 2.7054967880249023s
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:17.567 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:17.568 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:17.569 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 17;17.267889;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28765;2460996.88006446;11.12152472;1.3;_
2025-11-17T11:07:17.569 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response 17;17.267889;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28765;2460996.88006446;11.12152472;1.3;_
2025-11-17T11:07:17.569 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:17.569 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:17.569 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:17.570 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:17.570 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:17.570 [INFO] [Thread-67333 (handle)] [driver.py] [get_status()] Telra = 17.267889, teldec = -24.256575
2025-11-17T11:07:17.570 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] UnCookCoordinates 17.267889 -24.256575
2025-11-17T11:07:17.570 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.267889 -24.256575
2025-11-17T11:07:17.570 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.267889 -24.256575
2025-11-17T11:07:17.571 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 17;17.267889;-24.256575;50.108447;89.993068;50.08601;90.12017;14.28765;2460996.88006448;11.12152472;1.3;_17.241831686856 -24.2263738388221
2025-11-17T11:07:17.571 [INFO] [Thread-67333 (handle)] [driver.py] [get_status()] ra_j2k = 17.241831686856     dec_j2k = -24.2263738388221
2025-11-17T11:07:17.571 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:17.571 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:17.571 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 140;0.104459882461578;171.162351965909;_
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response 140;0.104459882461578;171.162351965909;_
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:17.572 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:17.573 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:17.574 [DEBUG] [Thread-67333 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:17.574 [DEBUG] [Thread-67333 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:17.574 [DEBUG] [Thread-67333 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:17.575 [DEBUG] [Thread-67333 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39821)
2025-11-17T11:07:17.575 [DEBUG] [Thread-67333 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:17.575 [DEBUG] [Thread-67333 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:17.576 [DEBUG] [Thread-67333 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:17.576 [DEBUG] [Thread-67333 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:17.576 [DEBUG] [Thread-67333 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:17.583 [DEBUG] [Thread-67333 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:17.583 [INFO] [Thread-67333 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88006446, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104459882461578, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993068, telescope_ra=17.267889, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.28765, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.241831686856, telescope_dec_j2k=-24.2263738388221, observability=1)
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.4816584587097168s
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:19.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:19.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:19.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2683091;-24.256569;50.108447;89.993057;50.08601;90.12016;14.28807;2460996.88008179;11.12194389;1.3;_
2025-11-17T11:07:19.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2683091;-24.256569;50.108447;89.993057;50.08601;90.12016;14.28807;2460996.88008179;11.12194389;1.3;_
2025-11-17T11:07:19.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:19.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:19.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:19.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:19.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:19.068 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2683091, teldec = -24.256569
2025-11-17T11:07:19.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2683091 -24.256569
2025-11-17T11:07:19.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2683091 -24.256569
2025-11-17T11:07:19.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2683091 -24.256569
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2683091;-24.256569;50.108447;89.993057;50.08601;90.12016;14.28807;2460996.88008182;11.12194389;1.3;_17.2422516693701 -24.2263831543235
2025-11-17T11:07:19.069 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.2422516693701     dec_j2k = -24.2263831543235
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104459280782436;171.162357330327;_
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104459280782436;171.162357330327;_
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:19.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:19.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37457)
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:19.077 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:19.084 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:07:19.084 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88008179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104459280782436, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993057, telescope_ra=17.2683091, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.28807, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.2422516693701, telescope_dec_j2k=-24.2263831543235, observability=1)
2025-11-17T11:07:19.084 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.1666522026062 seconds ago
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.329561471939087s
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:28.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:28.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:28.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.270905;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29066;2460996.88019;11.1245325;1.3;_
2025-11-17T11:07:28.416 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.270905;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29066;2460996.88019;11.1245325;1.3;_
2025-11-17T11:07:28.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:28.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:28.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:28.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:28.417 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:28.417 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.270905, teldec = -24.256575
2025-11-17T11:07:28.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.270905 -24.256575
2025-11-17T11:07:28.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.270905 -24.256575
2025-11-17T11:07:28.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.270905 -24.256575
2025-11-17T11:07:28.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.270905;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29066;2460996.88019002;11.1245325;1.3;_17.2448468360351 -24.2264837990119
2025-11-17T11:07:28.418 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.2448468360351     dec_j2k = -24.2264837990119
2025-11-17T11:07:28.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:28.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:28.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104459882461578;171.162351965909;_
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104459882461578;171.162351965909;_
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:28.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:28.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:28.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:28.421 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:28.421 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49141)
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:28.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:28.435 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:28.436 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:28.436 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88019, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104459882461578, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993067, telescope_ra=17.270905, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.29066, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:06:31.475593', telescope_ra_j2k=17.2448468360351, telescope_dec_j2k=-24.2264837990119, observability=1)
2025-11-17T11:07:31.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:31.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:31.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:31.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:31.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:31.619 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:31.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:31.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:31.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:31.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:31.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:31.620 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:07:31.621 [INFO] [ThreadPoolExecutor-2705_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:07:31.621 [INFO] [ThreadPoolExecutor-2705_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:07:34.000 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:07:34
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.564357042312622s
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:34.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:34.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:34.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2724646;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29222;2460996.88025465;11.12608778;1.3;_
2025-11-17T11:07:34.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2724646;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29222;2460996.88025465;11.12608778;1.3;_
2025-11-17T11:07:34.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:34.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:34.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:34.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:34.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:34.003 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2724646, teldec = -24.256575
2025-11-17T11:07:34.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2724646 -24.256575
2025-11-17T11:07:34.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2724646 -24.256575
2025-11-17T11:07:34.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2724646 -24.256575
2025-11-17T11:07:34.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2724646;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29222;2460996.88025468;11.12608778;1.3;_17.2464059970107 -24.2265406680579
2025-11-17T11:07:34.005 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.2464059970107     dec_j2k = -24.2265406680579
2025-11-17T11:07:34.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:34.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:34.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104459842349636;171.162362694745;_
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104459842349636;171.162362694745;_
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:34.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:34.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:34.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:34.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:07:34.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:07:34.009 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33293)
2025-11-17T11:07:34.010 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:34.010 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:34.010 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:34.010 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:34.010 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:34.017 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:34.017 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88025465, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104459842349636, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993067, telescope_ra=17.2724646, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.29222, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2464059970107, telescope_dec_j2k=-24.2265406680579, observability=1)
2025-11-17T11:07:35.633 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:35.633 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Status age = 1.6163086891174316s
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:35.634 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:35.635 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 17;17.272903;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29266;2460996.88027355;11.126525;1.3;_
2025-11-17T11:07:35.636 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response 17;17.272903;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29266;2460996.88027355;11.126525;1.3;_
2025-11-17T11:07:35.636 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:35.636 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:35.636 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:35.637 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:35.637 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:35.637 [INFO] [Thread-67334 (handle)] [driver.py] [get_status()] Telra = 17.272903, teldec = -24.256575
2025-11-17T11:07:35.637 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] UnCookCoordinates 17.272903 -24.256575
2025-11-17T11:07:35.637 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.272903 -24.256575
2025-11-17T11:07:35.637 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.272903 -24.256575
2025-11-17T11:07:35.638 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 17;17.272903;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29266;2460996.88027359;11.126525;1.3;_17.2468442737176 -24.2265566547564
2025-11-17T11:07:35.638 [INFO] [Thread-67334 (handle)] [driver.py] [get_status()] ra_j2k = 17.2468442737176     dec_j2k = -24.2265566547564
2025-11-17T11:07:35.638 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:35.638 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:35.638 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 140;0.104460484140721;171.162357330327;_
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response 140;0.104460484140721;171.162357330327;_
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:35.639 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:35.640 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:35.641 [DEBUG] [Thread-67334 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:35.641 [DEBUG] [Thread-67334 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:35.641 [DEBUG] [Thread-67334 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48123)
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:35.643 [DEBUG] [Thread-67334 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:35.650 [DEBUG] [Thread-67334 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:35.650 [INFO] [Thread-67334 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88027355, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104460484140721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993067, telescope_ra=17.272903, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.29266, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2468442737176, telescope_dec_j2k=-24.2265566547564, observability=1)
2025-11-17T11:07:52.504 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.504 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.504 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:52.504 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:52.504 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:07:52.505 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:52.506 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:52.507 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:07:52.508 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:52.509 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Park
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:07:52.510 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:07:52.511 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 29;17.2776189;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29738;2460996.88046888;11.13122806;1.3;_Park Command Successful
2025-11-17T11:07:53.511 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:07:53.511 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:07:53.511 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:07:53.512 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:07:53.512 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Status age = 18.12083911895752s
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:53.771 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:07:53.772 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:07:53.773 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:07:53.773 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 17;17.2779549;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29771;2460996.88048348;11.13156306;1.3;_
2025-11-17T11:07:53.773 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response 17;17.2779549;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29771;2460996.88048348;11.13156306;1.3;_
2025-11-17T11:07:53.773 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:07:53.774 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:07:53.774 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:07:53.774 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:53.774 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:07:53.775 [INFO] [Thread-67335 (handle)] [driver.py] [get_status()] Telra = 17.2779549, teldec = -24.256575
2025-11-17T11:07:53.775 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2779549 -24.256575
2025-11-17T11:07:53.775 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2779549 -24.256575
2025-11-17T11:07:53.775 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2779549 -24.256575
2025-11-17T11:07:53.776 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 17;17.2779549;-24.256575;50.108447;89.993067;50.08601;90.12017;14.29771;2460996.88048352;11.13156306;1.3;_17.2518947566149 -24.226740907059
2025-11-17T11:07:53.776 [INFO] [Thread-67335 (handle)] [driver.py] [get_status()] ra_j2k = 17.2518947566149     dec_j2k = -24.226740907059
2025-11-17T11:07:53.776 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:07:53.776 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:07:53.776 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 140;0.104460604476549;171.162362694745;_
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response 140;0.104460604476549;171.162362694745;_
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:53.777 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:07:53.778 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:07:53.779 [DEBUG] [Thread-67335 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:53.779 [DEBUG] [Thread-67335 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:07:53.779 [DEBUG] [Thread-67335 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33837)
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:07:53.783 [DEBUG] [Thread-67335 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:07:53.790 [DEBUG] [Thread-67335 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:07:53.791 [DEBUG] [Thread-67335 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:07:53.791 [DEBUG] [Thread-67335 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:07:53.791 [DEBUG] [Thread-67335 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:07:53.791 [INFO] [Thread-67335 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88048348, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104460604476549, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108447, telescope_az=89.993067, telescope_ra=17.2779549, telescope_dec=-24.256575, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.29771, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2518947566149, telescope_dec_j2k=-24.226740907059, observability=1)
2025-11-17T11:07:54.512 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:07:54.512 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:07:54.512 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:07:54.513 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:07:54.513 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:07:55.513 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:07:55.513 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:07:55.513 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:07:55.514 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:07:55.514 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:56.515 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:56.516 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:56.516 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:56.516 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:07:56.517 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:57.518 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:57.518 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:57.518 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:07:57.518 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:07:57.518 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:07:57.519 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:07:57.520 [DEBUG] [ThreadPoolExecutor-2704_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:07:57.520 [INFO] [ThreadPoolExecutor-2704_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Status age = 11.838140964508057s
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:05.629 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:05.630 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:05.631 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 17;17.2812647;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30102;2460996.88062073;11.13486389;1.3;_
2025-11-17T11:08:05.631 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response 17;17.2812647;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30102;2460996.88062073;11.13486389;1.3;_
2025-11-17T11:08:05.631 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:05.631 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:05.631 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:05.632 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:05.632 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:05.632 [INFO] [Thread-67336 (handle)] [driver.py] [get_status()] Telra = 17.2812647, teldec = -24.256574
2025-11-17T11:08:05.633 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2812647 -24.256574
2025-11-17T11:08:05.633 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2812647 -24.256574
2025-11-17T11:08:05.633 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2812647 -24.256574
2025-11-17T11:08:05.633 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 17;17.2812647;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30102;2460996.88062075;11.13486389;1.3;_17.2552036320387 -24.2268606512437
2025-11-17T11:08:05.634 [INFO] [Thread-67336 (handle)] [driver.py] [get_status()] ra_j2k = 17.2552036320387     dec_j2k = -24.2268606512437
2025-11-17T11:08:05.634 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:05.634 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:05.634 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:05.634 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 140;0.104461366603462;171.162362694745;_
2025-11-17T11:08:05.634 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response 140;0.104461366603462;171.162362694745;_
2025-11-17T11:08:05.635 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:05.635 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:05.635 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:05.635 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:05.636 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:05.637 [DEBUG] [Thread-67336 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:05.637 [DEBUG] [Thread-67336 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:05.637 [DEBUG] [Thread-67336 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39613)
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:05.644 [DEBUG] [Thread-67336 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:05.651 [DEBUG] [Thread-67336 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:05.651 [INFO] [Thread-67336 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88062073, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461366603462, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993067, telescope_ra=17.2812647, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30102, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2552036320387, telescope_dec_j2k=-24.2268606512437, observability=1)
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Status age = 6.187673568725586s
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:11.839 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:11.840 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:11.841 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 17;17.2829914;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30275;2460996.8806926;11.13658583;1.3;_
2025-11-17T11:08:11.841 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response 17;17.2829914;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30275;2460996.8806926;11.13658583;1.3;_
2025-11-17T11:08:11.841 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:11.841 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:11.841 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:11.842 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:11.842 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:11.842 [INFO] [Thread-67337 (handle)] [driver.py] [get_status()] Telra = 17.2829914, teldec = -24.256574
2025-11-17T11:08:11.842 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2829914 -24.256574
2025-11-17T11:08:11.842 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2829914 -24.256574
2025-11-17T11:08:11.842 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2829914 -24.256574
2025-11-17T11:08:11.843 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 17;17.2829914;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30275;2460996.88069263;11.13658583;1.3;_17.2569298507414 -24.2269236518687
2025-11-17T11:08:11.843 [INFO] [Thread-67337 (handle)] [driver.py] [get_status()] ra_j2k = 17.2569298507414     dec_j2k = -24.2269236518687
2025-11-17T11:08:11.843 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:11.843 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:11.843 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 140;0.104461486939291;171.162357330327;_
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response 140;0.104461486939291;171.162357330327;_
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:11.844 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:11.845 [DEBUG] [Thread-67337 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:11.845 [DEBUG] [Thread-67337 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:11.845 [DEBUG] [Thread-67337 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39471)
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:11.851 [DEBUG] [Thread-67337 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:11.858 [DEBUG] [Thread-67337 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:11.858 [INFO] [Thread-67337 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8806926, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461486939291, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993067, telescope_ra=17.2829914, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2569298507414, telescope_dec_j2k=-24.2269236518687, observability=1)
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.9938912391662598s
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2838323;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30359;2460996.88072748;11.13742444;1.3;_
2025-11-17T11:08:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.2838323;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30359;2460996.88072748;11.13742444;1.3;_
2025-11-17T11:08:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:14.855 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.2838323, teldec = -24.256574
2025-11-17T11:08:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2838323 -24.256574
2025-11-17T11:08:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2838323 -24.256574
2025-11-17T11:08:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2838323 -24.256574
2025-11-17T11:08:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.2838323;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30359;2460996.8807275;11.13742444;1.3;_17.2577705166358 -24.2269543353546
2025-11-17T11:08:14.856 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.2577705166358     dec_j2k = -24.2269543353546
2025-11-17T11:08:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104461727610948;171.162362694745;_
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104461727610948;171.162362694745;_
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55601)
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:14.863 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:14.871 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88072748, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461727610948, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993067, telescope_ra=17.2838323, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2577705166358, telescope_dec_j2k=-24.2269543353546, observability=1)
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.273237228393555s
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:19.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:19.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2850275;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30479;2460996.88077714;11.13861639;1.3;_
2025-11-17T11:08:19.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.2850275;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30479;2460996.88077714;11.13861639;1.3;_
2025-11-17T11:08:19.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:19.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:19.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:19.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:19.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:19.147 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.2850275, teldec = -24.256574
2025-11-17T11:08:19.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.2850275 -24.256574
2025-11-17T11:08:19.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.2850275 -24.256574
2025-11-17T11:08:19.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2850275 -24.256574
2025-11-17T11:08:19.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.2850275;-24.256574;50.108446;89.993067;50.08601;90.12017;14.30479;2460996.88077718;11.13861639;1.3;_17.2589653842153 -24.2269979494193
2025-11-17T11:08:19.148 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.2589653842153     dec_j2k = -24.2269979494193
2025-11-17T11:08:19.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:19.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:19.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104461366603462;171.162357330327;_
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104461366603462;171.162357330327;_
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:19.149 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:19.150 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:19.150 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:19.150 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:19.155 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57683)
2025-11-17T11:08:19.156 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:19.156 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:19.156 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:19.156 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:19.156 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:19.163 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:08:19.163 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88077714, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461366603462, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993067, telescope_ra=17.2850275, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30479, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2589653842153, telescope_dec_j2k=-24.2269979494193, observability=1)
2025-11-17T11:08:19.163 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16365051269531 seconds ago
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.363637208938599s
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:27.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:27.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:27.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2873706;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30713;2460996.88087418;11.14095306;1.3;_
2025-11-17T11:08:27.529 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.2873706;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30713;2460996.88087418;11.14095306;1.3;_
2025-11-17T11:08:27.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:27.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:27.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:27.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:27.530 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:27.530 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.2873706, teldec = -24.256574
2025-11-17T11:08:27.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2873706 -24.256574
2025-11-17T11:08:27.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2873706 -24.256574
2025-11-17T11:08:27.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2873706 -24.256574
2025-11-17T11:08:27.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.2873706;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30713;2460996.8808742;11.14095306;1.3;_17.2613078336259 -24.2270834602783
2025-11-17T11:08:27.531 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.2613078336259     dec_j2k = -24.2270834602783
2025-11-17T11:08:27.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:27.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:27.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104461687499005;171.162357330327;_
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104461687499005;171.162357330327;_
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:27.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:27.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:08:27.533 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:08:27.533 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:08:27.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:27.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:27.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:27.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:08:27.534 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:08:27.534 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38335)
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:27.540 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:27.547 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:27.547 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88087418, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461687499005, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993066, telescope_ra=17.2873706, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30713, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2613078336259, telescope_dec_j2k=-24.2270834602783, observability=1)
2025-11-17T11:08:29.903 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Status age = 2.356137990951538s
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:29.904 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:29.905 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 17;17.2880332;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30779;2460996.88090168;11.14161389;1.3;_
2025-11-17T11:08:29.905 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response 17;17.2880332;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30779;2460996.88090168;11.14161389;1.3;_
2025-11-17T11:08:29.905 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:29.905 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:29.905 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:29.906 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:29.906 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:29.906 [INFO] [Thread-67338 (handle)] [driver.py] [get_status()] Telra = 17.2880332, teldec = -24.256574
2025-11-17T11:08:29.907 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2880332 -24.256574
2025-11-17T11:08:29.907 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2880332 -24.256574
2025-11-17T11:08:29.907 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2880332 -24.256574
2025-11-17T11:08:29.908 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 17;17.2880332;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30779;2460996.8809017;11.14161389;1.3;_17.2619702499106 -24.2271076438021
2025-11-17T11:08:29.908 [INFO] [Thread-67338 (handle)] [driver.py] [get_status()] ra_j2k = 17.2619702499106     dec_j2k = -24.2271076438021
2025-11-17T11:08:29.908 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:29.908 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:29.908 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 140;0.104461968282604;171.162351965909;_
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response 140;0.104461968282604;171.162351965909;_
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:29.909 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:29.910 [DEBUG] [Thread-67338 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:29.910 [DEBUG] [Thread-67338 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:29.910 [DEBUG] [Thread-67338 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39771)
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:29.915 [DEBUG] [Thread-67338 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:29.922 [DEBUG] [Thread-67338 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:29.922 [INFO] [Thread-67338 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88090168, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104461968282604, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993066, telescope_ra=17.2880332, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:07:31.617927', telescope_ra_j2k=17.2619702499106, telescope_dec_j2k=-24.2271076438021, observability=1)
2025-11-17T11:08:31.764 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:31.765 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:31.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:31.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:31.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:31.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:31.766 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:08:31.766 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:31.767 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:08:31.768 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:08:31.768 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:08:31.768 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:32.768 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:32.769 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:32.770 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:32.771 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:32.771 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:32.771 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:32.771 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:32.772 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:32.772 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:32.772 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:32.772 [DEBUG] [ThreadPoolExecutor-2706_0] [payload.py] [to_registers()] [0]
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50581)
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:32.774 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:32.781 [DEBUG] [ThreadPoolExecutor-2706_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:34.078 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:08:34
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.1560444831848145s
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:34.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:34.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:34.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2892037;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30896;2460996.88095;11.14278111;1.3;_
2025-11-17T11:08:34.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.2892037;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30896;2460996.88095;11.14278111;1.3;_
2025-11-17T11:08:34.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:34.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:34.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:34.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:34.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:34.081 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.2892037, teldec = -24.256574
2025-11-17T11:08:34.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2892037 -24.256574
2025-11-17T11:08:34.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2892037 -24.256574
2025-11-17T11:08:34.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2892037 -24.256574
2025-11-17T11:08:34.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.2892037;-24.256574;50.108446;89.993066;50.08601;90.12017;14.30896;2460996.88095002;11.14278111;1.3;_17.2631404256564 -24.2271503668794
2025-11-17T11:08:34.082 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.2631404256564     dec_j2k = -24.2271503668794
2025-11-17T11:08:34.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:34.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:34.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104462249066204;171.162368059163;_
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104462249066204;171.162368059163;_
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:34.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:34.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:34.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:34.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:34.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:34.091 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52845)
2025-11-17T11:08:34.092 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:34.092 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:34.092 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:34.092 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:34.092 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:34.099 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:34.099 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104462249066204, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108446, telescope_az=89.993066, telescope_ra=17.2892037, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.30896, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2631404256564, telescope_dec_j2k=-24.2271503668794, observability=1)
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Status age = 13.923964023590088s
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:48.023 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:08:48.024 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:08:48.025 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 17;17.2930762;-24.256574;50.108445;89.993066;50.08601;90.12017;14.31283;2460996.8811114;11.14664306;1.3;_
2025-11-17T11:08:48.025 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response 17;17.2930762;-24.256574;50.108445;89.993066;50.08601;90.12017;14.31283;2460996.8811114;11.14664306;1.3;_
2025-11-17T11:08:48.025 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:08:48.025 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:08:48.025 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:08:48.026 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:48.026 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:08:48.026 [INFO] [Thread-67339 (handle)] [driver.py] [get_status()] Telra = 17.2930762, teldec = -24.256574
2025-11-17T11:08:48.026 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2930762 -24.256574
2025-11-17T11:08:48.026 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2930762 -24.256574
2025-11-17T11:08:48.026 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2930762 -24.256574
2025-11-17T11:08:48.027 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 17;17.2930762;-24.256574;50.108445;89.993066;50.08601;90.12017;14.31283;2460996.88111142;11.14664306;1.3;_17.2670118554721 -24.2272917330658
2025-11-17T11:08:48.027 [INFO] [Thread-67339 (handle)] [driver.py] [get_status()] ra_j2k = 17.2670118554721     dec_j2k = -24.2272917330658
2025-11-17T11:08:48.027 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:08:48.027 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:08:48.027 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 140;0.10446277052146;171.162357330327;_
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response 140;0.10446277052146;171.162357330327;_
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:48.028 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:08:48.029 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:08:48.030 [DEBUG] [Thread-67339 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:48.030 [DEBUG] [Thread-67339 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:08:48.030 [DEBUG] [Thread-67339 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39729)
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:08:48.033 [DEBUG] [Thread-67339 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:08:48.040 [DEBUG] [Thread-67339 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:08:48.041 [DEBUG] [Thread-67339 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:08:48.041 [DEBUG] [Thread-67339 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:08:48.041 [INFO] [Thread-67339 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8811114, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10446277052146, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993066, telescope_ra=17.2930762, telescope_dec=-24.256574, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.31283, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2670118554721, telescope_dec_j2k=-24.2272917330658, observability=1)
2025-11-17T11:08:57.781 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:57.781 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:57.781 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:57.781 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:08:57.782 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:08:57.783 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:08:57.784 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Status age = 17.6432101726532s
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:05.684 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:05.685 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:05.686 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 17;17.2980083;-24.256573;50.108445;89.993066;50.08601;90.12017;14.31777;2460996.88131581;11.15156167;1.3;_
2025-11-17T11:09:05.686 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response 17;17.2980083;-24.256573;50.108445;89.993066;50.08601;90.12017;14.31777;2460996.88131581;11.15156167;1.3;_
2025-11-17T11:09:05.686 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:05.686 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:05.686 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:05.687 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:05.687 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:05.687 [INFO] [Thread-67340 (handle)] [driver.py] [get_status()] Telra = 17.2980083, teldec = -24.256573
2025-11-17T11:09:05.687 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] UnCookCoordinates 17.2980083 -24.256573
2025-11-17T11:09:05.687 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.2980083 -24.256573
2025-11-17T11:09:05.687 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.2980083 -24.256573
2025-11-17T11:09:05.688 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 17;17.2980083;-24.256573;50.108445;89.993066;50.08601;90.12017;14.31777;2460996.88131583;11.15156167;1.3;_17.2719425984025 -24.2274708255741
2025-11-17T11:09:05.688 [INFO] [Thread-67340 (handle)] [driver.py] [get_status()] ra_j2k = 17.2719425984025     dec_j2k = -24.2274708255741
2025-11-17T11:09:05.688 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:05.688 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:05.688 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 140;0.104462810633403;171.162357330327;_
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response 140;0.104462810633403;171.162357330327;_
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:05.689 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:05.690 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:05.690 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:05.690 [DEBUG] [Thread-67340 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:05.691 [DEBUG] [Thread-67340 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48291)
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:05.693 [DEBUG] [Thread-67340 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:05.700 [DEBUG] [Thread-67340 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:05.700 [DEBUG] [Thread-67340 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:05.700 [DEBUG] [Thread-67340 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:05.701 [DEBUG] [Thread-67340 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:05.701 [INFO] [Thread-67340 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88131581, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104462810633403, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993066, telescope_ra=17.2980083, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.31777, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2719425984025, telescope_dec_j2k=-24.2274708255741, observability=1)
2025-11-17T11:09:06.089 [DEBUG] [Thread-67341 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:06.089 [DEBUG] [Thread-67341 (handle)] [server.py] [get_status()] Status age = 0.3882005214691162s
2025-11-17T11:09:06.089 [DEBUG] [Thread-67341 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3882005214691162
2025-11-17T11:09:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.154526710510254s
2025-11-17T11:09:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:14.855 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:14.856 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3005522;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32031;2460996.88142196;11.15409861;1.3;_
2025-11-17T11:09:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.3005522;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32031;2460996.88142196;11.15409861;1.3;_
2025-11-17T11:09:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:14.859 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.3005522, teldec = -24.256573
2025-11-17T11:09:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3005522 -24.256573
2025-11-17T11:09:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3005522 -24.256573
2025-11-17T11:09:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3005522 -24.256573
2025-11-17T11:09:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3005522;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32031;2460996.88142199;11.15409861;1.3;_17.2744858008633 -24.2275637342505
2025-11-17T11:09:14.860 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.2744858008633     dec_j2k = -24.2275637342505
2025-11-17T11:09:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104463933767802;171.162362694745;_
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104463933767802;171.162362694745;_
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:09:14.864 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42603)
2025-11-17T11:09:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:14.864 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:14.865 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:14.872 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88142196, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104463933767802, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993066, telescope_ra=17.3005522, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32031, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2744858008633, telescope_dec_j2k=-24.2275637342505, observability=1)
2025-11-17T11:09:19.223 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.351350545883179s
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:19.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:19.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:19.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3017767;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32153;2460996.88147252;11.15531972;1.3;_
2025-11-17T11:09:19.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.3017767;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32153;2460996.88147252;11.15531972;1.3;_
2025-11-17T11:09:19.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:19.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:19.226 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:19.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:19.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:19.227 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.3017767, teldec = -24.256573
2025-11-17T11:09:19.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.3017767 -24.256573
2025-11-17T11:09:19.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.3017767 -24.256573
2025-11-17T11:09:19.227 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3017767 -24.256573
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3017767;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32153;2460996.88147255;11.15531972;1.3;_17.2757099657154 -24.227608460401
2025-11-17T11:09:19.228 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.2757099657154     dec_j2k = -24.227608460401
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104463933767802;171.162357330327;_
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104463933767802;171.162357330327;_
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:19.228 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:19.229 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:19.230 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:19.230 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:19.230 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37563)
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:19.235 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:19.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:09:19.243 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88147252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104463933767802, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993066, telescope_ra=17.3017767, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32153, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2757099657154, telescope_dec_j2k=-24.227608460401, observability=1)
2025-11-17T11:09:19.243 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.16522431373596 seconds ago
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Status age = 4.912434339523315s
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:24.156 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 17;17.3031351;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32289;2460996.88152959;11.15667444;1.3;_
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response 17;17.3031351;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32289;2460996.88152959;11.15667444;1.3;_
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:24.157 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:24.158 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:24.158 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:24.158 [INFO] [Thread-67342 (handle)] [driver.py] [get_status()] Telra = 17.3031351, teldec = -24.256573
2025-11-17T11:09:24.158 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3031351 -24.256573
2025-11-17T11:09:24.158 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3031351 -24.256573
2025-11-17T11:09:24.159 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3031351 -24.256573
2025-11-17T11:09:24.159 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 17;17.3031351;-24.256573;50.108445;89.993066;50.08601;90.12017;14.32289;2460996.88152962;11.15667444;1.3;_17.2770679943832 -24.2276580810229
2025-11-17T11:09:24.159 [INFO] [Thread-67342 (handle)] [driver.py] [get_status()] ra_j2k = 17.2770679943832     dec_j2k = -24.2276580810229
2025-11-17T11:09:24.160 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:24.160 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:24.160 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:24.160 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 140;0.104463933767802;171.162368059163;_
2025-11-17T11:09:24.160 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response 140;0.104463933767802;171.162368059163;_
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:24.161 [DEBUG] [Thread-67342 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:24.162 [DEBUG] [Thread-67342 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48731)
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:24.167 [DEBUG] [Thread-67342 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:24.174 [DEBUG] [Thread-67342 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:24.175 [DEBUG] [Thread-67342 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:24.175 [DEBUG] [Thread-67342 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:24.175 [INFO] [Thread-67342 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88152959, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104463933767802, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993066, telescope_ra=17.3031351, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32289, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2770679943832, telescope_dec_j2k=-24.2276580810229, observability=1)
2025-11-17T11:09:26.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:26.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.46675181388855s
2025-11-17T11:09:26.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3038365;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32359;2460996.88155836;11.15737389;1.3;_
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.3038365;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32359;2460996.88155836;11.15737389;1.3;_
2025-11-17T11:09:26.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:26.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:26.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:26.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:26.644 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:26.644 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.3038365, teldec = -24.256573
2025-11-17T11:09:26.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3038365 -24.256573
2025-11-17T11:09:26.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3038365 -24.256573
2025-11-17T11:09:26.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3038365 -24.256573
2025-11-17T11:09:26.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3038365;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32359;2460996.88155839;11.15737389;1.3;_17.2777692028398 -24.2276837037656
2025-11-17T11:09:26.645 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.2777692028398     dec_j2k = -24.2276837037656
2025-11-17T11:09:26.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:26.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:26.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104463652984202;171.162351965909;_
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104463652984202;171.162351965909;_
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:26.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:26.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:26.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:26.648 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:09:26.648 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:09:26.652 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58163)
2025-11-17T11:09:26.653 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:26.653 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:26.653 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:26.653 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:26.653 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:26.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:26.660 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88155836, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104463652984202, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993065, telescope_ra=17.3038365, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:08:31.764377', telescope_ra_j2k=17.2777692028398, telescope_dec_j2k=-24.2276837037656, observability=1)
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:31.909 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:31.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:31.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:31.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:31.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:31.910 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:09:31.910 [INFO] [ThreadPoolExecutor-2707_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:09:31.911 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:09:34.160 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:09:34
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.499791145324707s
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:34.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:34.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:34.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3059216;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32568;2460996.88164539;11.15945333;1.3;_
2025-11-17T11:09:34.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3059216;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32568;2460996.88164539;11.15945333;1.3;_
2025-11-17T11:09:34.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:34.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:34.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:34.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:34.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:34.163 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3059216, teldec = -24.256573
2025-11-17T11:09:34.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3059216 -24.256573
2025-11-17T11:09:34.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3059216 -24.256573
2025-11-17T11:09:34.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3059216 -24.256573
2025-11-17T11:09:34.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3059216;-24.256573;50.108445;89.993065;50.08601;90.12017;14.32568;2460996.88164542;11.15945333;1.3;_17.2798537341949 -24.2277598802525
2025-11-17T11:09:34.164 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.2798537341949     dec_j2k = -24.2277598802525
2025-11-17T11:09:34.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:34.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:34.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:34.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104463813431973;171.162362694745;_
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104463813431973;171.162362694745;_
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:34.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:34.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:34.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:34.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:34.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:34.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:34.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:34.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:34.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50521)
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:34.174 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:34.181 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:34.181 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88164539, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104463813431973, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108445, telescope_az=89.993065, telescope_ra=17.3059216, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2798537341949, telescope_dec_j2k=-24.2277598802525, observability=1)
2025-11-17T11:09:42.294 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:09:42.294 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Status age = 8.113052368164062s
2025-11-17T11:09:42.294 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:09:42.294 [DEBUG] [Thread-67343 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:42.295 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:09:42.296 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:09:42.296 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:09:42.296 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:09:42.296 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 17;17.3081864;-24.256573;50.108444;89.993065;50.08601;90.12017;14.32794;2460996.88173954;11.16171194;1.3;_
2025-11-17T11:09:42.297 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response 17;17.3081864;-24.256573;50.108444;89.993065;50.08601;90.12017;14.32794;2460996.88173954;11.16171194;1.3;_
2025-11-17T11:09:42.297 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:09:42.297 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:09:42.297 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:09:42.298 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:42.298 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:09:42.298 [INFO] [Thread-67343 (handle)] [driver.py] [get_status()] Telra = 17.3081864, teldec = -24.256573
2025-11-17T11:09:42.298 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3081864 -24.256573
2025-11-17T11:09:42.298 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3081864 -24.256573
2025-11-17T11:09:42.298 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3081864 -24.256573
2025-11-17T11:09:42.299 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 17;17.3081864;-24.256573;50.108444;89.993065;50.08601;90.12017;14.32794;2460996.88173957;11.16171194;1.3;_17.2821179178471 -24.227842632001
2025-11-17T11:09:42.299 [INFO] [Thread-67343 (handle)] [driver.py] [get_status()] ra_j2k = 17.2821179178471     dec_j2k = -24.227842632001
2025-11-17T11:09:42.299 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:09:42.299 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:09:42.299 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 140;0.104464294775287;171.162351965909;_
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response 140;0.104464294775287;171.162351965909;_
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:42.300 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:09:42.301 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:09:42.302 [DEBUG] [Thread-67343 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:42.302 [DEBUG] [Thread-67343 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:09:42.302 [DEBUG] [Thread-67343 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60401)
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:09:42.305 [DEBUG] [Thread-67343 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:09:42.312 [DEBUG] [Thread-67343 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:09:42.313 [DEBUG] [Thread-67343 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:09:42.313 [INFO] [Thread-67343 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88173954, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104464294775287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.3081864, telescope_dec=-24.256573, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.32794, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2821179178471, telescope_dec_j2k=-24.227842632001, observability=1)
2025-11-17T11:09:52.784 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.784 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.784 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:52.784 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:52.784 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:09:52.785 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:52.786 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:52.787 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:09:52.788 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:52.789 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Park
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:09:52.790 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:09:52.791 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 29;17.31111;-24.256573;50.108444;89.993065;50.08601;90.12017;14.33087;2460996.88186101;11.1646275;1.3;_Park Command Successful
2025-11-17T11:09:53.791 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:09:53.791 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:09:53.792 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:09:53.792 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:09:53.792 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:09:54.792 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:09:54.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:09:54.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:09:54.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:09:54.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:09:55.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:09:55.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:09:55.793 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:09:55.794 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:09:55.794 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:56.795 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:56.796 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:56.797 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:09:56.797 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:09:56.797 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:09:56.797 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:57.798 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:57.798 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:57.798 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:09:57.798 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:09:57.798 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:09:57.799 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:09:57.800 [DEBUG] [ThreadPoolExecutor-2706_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:09:57.800 [INFO] [ThreadPoolExecutor-2706_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:10:00.351 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:00.351 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Status age = 18.03862476348877s
2025-11-17T11:10:00.351 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:00.351 [DEBUG] [Thread-67344 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:00.351 [DEBUG] [Thread-67344 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:00.352 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:00.353 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:00.353 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:00.353 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:00.353 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 17;17.3132294;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33299;2460996.88194853;11.16674111;1.3;_
2025-11-17T11:10:00.353 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response 17;17.3132294;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33299;2460996.88194853;11.16674111;1.3;_
2025-11-17T11:10:00.354 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:00.354 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:00.354 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:00.355 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:00.355 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:00.355 [INFO] [Thread-67344 (handle)] [driver.py] [get_status()] Telra = 17.3132294, teldec = -24.256572
2025-11-17T11:10:00.355 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3132294 -24.256572
2025-11-17T11:10:00.355 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3132294 -24.256572
2025-11-17T11:10:00.355 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3132294 -24.256572
2025-11-17T11:10:00.356 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 17;17.3132294;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33299;2460996.88194856;11.16674111;1.3;_17.2871595505104 -24.2280259320877
2025-11-17T11:10:00.356 [INFO] [Thread-67344 (handle)] [driver.py] [get_status()] ra_j2k = 17.2871595505104     dec_j2k = -24.2280259320877
2025-11-17T11:10:00.356 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:00.356 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:00.356 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 140;0.1044650569022;171.162351965909;_
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response 140;0.1044650569022;171.162351965909;_
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:00.357 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:00.358 [DEBUG] [Thread-67344 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:00.358 [DEBUG] [Thread-67344 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:00.358 [DEBUG] [Thread-67344 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59535)
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:00.365 [DEBUG] [Thread-67344 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:00.372 [DEBUG] [Thread-67344 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:00.372 [DEBUG] [Thread-67344 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:00.372 [DEBUG] [Thread-67344 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:00.373 [DEBUG] [Thread-67344 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:00.373 [INFO] [Thread-67344 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88194853, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1044650569022, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.3132294, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.33299, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2871595505104, telescope_dec_j2k=-24.2280259320877, observability=1)
2025-11-17T11:10:05.734 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:05.734 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Status age = 5.361582517623901s
2025-11-17T11:10:05.734 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:05.735 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 17;17.3147343;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33449;2460996.88201083;11.16824194;1.3;_
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response 17;17.3147343;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33449;2460996.88201083;11.16824194;1.3;_
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:05.736 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:05.737 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:05.737 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:05.737 [INFO] [Thread-67345 (handle)] [driver.py] [get_status()] Telra = 17.3147343, teldec = -24.256572
2025-11-17T11:10:05.737 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3147343 -24.256572
2025-11-17T11:10:05.737 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3147343 -24.256572
2025-11-17T11:10:05.737 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3147343 -24.256572
2025-11-17T11:10:05.738 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 17;17.3147343;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33449;2460996.88201086;11.16824194;1.3;_17.2886640437257 -24.2280809398115
2025-11-17T11:10:05.738 [INFO] [Thread-67345 (handle)] [driver.py] [get_status()] ra_j2k = 17.2886640437257     dec_j2k = -24.2280809398115
2025-11-17T11:10:05.738 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:05.739 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:05.739 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:05.739 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 140;0.104465257461914;171.162362694745;_
2025-11-17T11:10:05.739 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response 140;0.104465257461914;171.162362694745;_
2025-11-17T11:10:05.739 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:05.740 [DEBUG] [Thread-67345 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60749)
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:05.748 [DEBUG] [Thread-67345 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:05.756 [DEBUG] [Thread-67345 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:05.756 [INFO] [Thread-67345 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88201083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104465257461914, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.3147343, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.33449, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2886640437257, telescope_dec_j2k=-24.2280809398115, observability=1)
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.117969512939453s
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.317264;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33702;2460996.88211662;11.17076472;1.3;_
2025-11-17T11:10:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.317264;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33702;2460996.88211662;11.17076472;1.3;_
2025-11-17T11:10:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:14.877 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.317264, teldec = -24.256572
2025-11-17T11:10:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.317264 -24.256572
2025-11-17T11:10:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.317264 -24.256572
2025-11-17T11:10:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.317264 -24.256572
2025-11-17T11:10:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.317264;-24.256572;50.108444;89.993065;50.08601;90.12017;14.33702;2460996.88211664;11.17076472;1.3;_17.291193061283 -24.2281734168455
2025-11-17T11:10:14.878 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.291193061283     dec_j2k = -24.2281734168455
2025-11-17T11:10:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104466059700771;171.162357330327;_
2025-11-17T11:10:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104466059700771;171.162357330327;_
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:14.888 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36721)
2025-11-17T11:10:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:14.889 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:14.896 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88211662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104466059700771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.317264, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.33702, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.291193061283, telescope_dec_j2k=-24.2281734168455, observability=1)
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Status age = 3.515825033187866s
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:18.412 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:18.413 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:18.413 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:18.413 [DEBUG] [Thread-67346 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 17;17.3182447;-24.256572;50.108444;89.993065;50.08601;90.12017;14.338;2460996.88215757;11.17174278;1.3;_
2025-11-17T11:10:18.414 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response 17;17.3182447;-24.256572;50.108444;89.993065;50.08601;90.12017;14.338;2460996.88215757;11.17174278;1.3;_
2025-11-17T11:10:18.415 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:18.415 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:18.415 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:18.416 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:18.416 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:18.416 [INFO] [Thread-67346 (handle)] [driver.py] [get_status()] Telra = 17.3182447, teldec = -24.256572
2025-11-17T11:10:18.416 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3182447 -24.256572
2025-11-17T11:10:18.416 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3182447 -24.256572
2025-11-17T11:10:18.416 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3182447 -24.256572
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 17;17.3182447;-24.256572;50.108444;89.993065;50.08601;90.12017;14.338;2460996.8821576;11.17174278;1.3;_17.2921734971736 -24.2282092713271
2025-11-17T11:10:18.417 [INFO] [Thread-67346 (handle)] [driver.py] [get_status()] ra_j2k = 17.2921734971736     dec_j2k = -24.2282092713271
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 140;0.104465738805228;171.162351965909;_
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response 140;0.104465738805228;171.162351965909;_
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:18.417 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:18.418 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:18.419 [DEBUG] [Thread-67346 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:18.419 [DEBUG] [Thread-67346 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:18.419 [DEBUG] [Thread-67346 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40361)
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:18.423 [DEBUG] [Thread-67346 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:18.430 [DEBUG] [Thread-67346 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:18.431 [DEBUG] [Thread-67346 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:18.431 [INFO] [Thread-67346 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88215757, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104465738805228, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.3182447, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.338, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2921734971736, telescope_dec_j2k=-24.2282092713271, observability=1)
2025-11-17T11:10:19.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:10:19.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.8717880249023438s
2025-11-17T11:10:19.303 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.8717880249023438
2025-11-17T11:10:19.303 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.14292097091675 seconds ago
2025-11-17T11:10:25.750 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:25.750 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.31951117515564s
2025-11-17T11:10:25.750 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:25.751 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:25.752 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:25.752 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:25.752 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:25.752 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:25.752 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:25.753 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3203079;-24.256572;50.108444;89.993065;50.08601;90.12017;14.34007;2460996.88224251;11.17380028;1.3;_
2025-11-17T11:10:25.753 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.3203079;-24.256572;50.108444;89.993065;50.08601;90.12017;14.34007;2460996.88224251;11.17380028;1.3;_
2025-11-17T11:10:25.753 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:25.753 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:25.753 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:25.754 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:25.754 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:25.754 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.3203079, teldec = -24.256572
2025-11-17T11:10:25.754 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3203079 -24.256572
2025-11-17T11:10:25.754 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3203079 -24.256572
2025-11-17T11:10:25.754 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3203079 -24.256572
2025-11-17T11:10:25.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3203079;-24.256572;50.108444;89.993065;50.08601;90.12017;14.34007;2460996.88224253;11.17380028;1.3;_17.2942361423719 -24.2282847084787
2025-11-17T11:10:25.755 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.2942361423719     dec_j2k = -24.2282847084787
2025-11-17T11:10:25.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:25.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:25.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104465257461914;171.162357330327;_
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104465257461914;171.162357330327;_
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:25.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:25.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:25.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:25.758 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:25.758 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57981)
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:25.764 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:25.772 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:25.773 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:25.773 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88224251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104465257461914, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108444, telescope_az=89.993065, telescope_ra=17.3203079, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.34007, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:09:31.908602', telescope_ra_j2k=17.2942361423719, telescope_dec_j2k=-24.2282847084787, observability=1)
2025-11-17T11:10:32.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:32.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:32.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:32.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:32.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:32.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:32.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:32.053 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:32.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:32.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:32.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:32.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:32.054 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:10:32.054 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:32.054 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:32.054 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:32.054 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:32.054 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:10:32.055 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:10:32.056 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:33.056 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:33.056 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:33.056 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:33.056 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:33.056 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:10:33.057 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:33.058 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:33.059 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:33.059 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:33.059 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:33.059 [DEBUG] [ThreadPoolExecutor-2708_0] [payload.py] [to_registers()] [0]
2025-11-17T11:10:33.064 [DEBUG] [ThreadPoolExecutor-2708_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57007)
2025-11-17T11:10:33.065 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:33.065 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:33.065 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:10:33.065 [DEBUG] [ThreadPoolExecutor-2708_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:33.065 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:33.072 [DEBUG] [ThreadPoolExecutor-2708_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:34.242 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:10:34
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.469420194625854s
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:34.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:34.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:34.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3226699;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34243;2460996.88234079;11.17615583;1.3;_
2025-11-17T11:10:34.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3226699;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34243;2460996.88234079;11.17615583;1.3;_
2025-11-17T11:10:34.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:34.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:34.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:34.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:34.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:34.245 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3226699, teldec = -24.256572
2025-11-17T11:10:34.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3226699 -24.256572
2025-11-17T11:10:34.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3226699 -24.256572
2025-11-17T11:10:34.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3226699 -24.256572
2025-11-17T11:10:34.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3226699;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34243;2460996.88234081;11.17615583;1.3;_17.2965975086074 -24.2283710812882
2025-11-17T11:10:34.246 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.2965975086074     dec_j2k = -24.2283710812882
2025-11-17T11:10:34.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:34.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:34.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104466059700771;171.162357330327;_
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104466059700771;171.162357330327;_
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:34.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:34.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:34.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:34.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:34.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53871)
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:34.256 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:34.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:34.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:34.263 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:34.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:34.264 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88234079, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104466059700771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.3226699, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.34243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.2965975086074, telescope_dec_j2k=-24.2283710812882, observability=1)
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Status age = 2.285355806350708s
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:36.549 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:36.550 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:36.551 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 17;17.3233144;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34307;2460996.88236749;11.17679861;1.3;_
2025-11-17T11:10:36.551 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response 17;17.3233144;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34307;2460996.88236749;11.17679861;1.3;_
2025-11-17T11:10:36.551 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:36.551 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:36.552 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:36.552 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:36.552 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:36.552 [INFO] [Thread-67347 (handle)] [driver.py] [get_status()] Telra = 17.3233144, teldec = -24.256572
2025-11-17T11:10:36.553 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3233144 -24.256572
2025-11-17T11:10:36.553 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3233144 -24.256572
2025-11-17T11:10:36.553 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3233144 -24.256572
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 17;17.3233144;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34307;2460996.88236752;11.17679861;1.3;_17.297241835934 -24.2283946511014
2025-11-17T11:10:36.554 [INFO] [Thread-67347 (handle)] [driver.py] [get_status()] ra_j2k = 17.297241835934     dec_j2k = -24.2283946511014
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 140;0.104466460820199;171.162351965909;_
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response 140;0.104466460820199;171.162351965909;_
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:36.554 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:36.555 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:36.556 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:36.556 [DEBUG] [Thread-67347 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:36.556 [DEBUG] [Thread-67347 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:36.556 [DEBUG] [Thread-67347 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:36.558 [DEBUG] [Thread-67347 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53677)
2025-11-17T11:10:36.559 [DEBUG] [Thread-67347 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:36.559 [DEBUG] [Thread-67347 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:36.559 [DEBUG] [Thread-67347 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:36.559 [DEBUG] [Thread-67347 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:36.559 [DEBUG] [Thread-67347 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:36.566 [DEBUG] [Thread-67347 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:36.566 [DEBUG] [Thread-67347 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:36.567 [DEBUG] [Thread-67347 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:36.567 [INFO] [Thread-67347 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88236749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104466460820199, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.3233144, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.34307, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.297241835934, telescope_dec_j2k=-24.2283946511014, observability=1)
2025-11-17T11:10:54.608 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:10:54.608 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Status age = 18.041548013687134s
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:54.609 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:10:54.610 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:10:54.610 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:10:54.610 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:10:54.611 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 17;17.3283273;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34808;2460996.8825765;11.18179778;1.3;_
2025-11-17T11:10:54.611 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response 17;17.3283273;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34808;2460996.8825765;11.18179778;1.3;_
2025-11-17T11:10:54.611 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:10:54.611 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:10:54.611 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:10:54.612 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:54.612 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:10:54.612 [INFO] [Thread-67348 (handle)] [driver.py] [get_status()] Telra = 17.3283273, teldec = -24.256572
2025-11-17T11:10:54.612 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3283273 -24.256572
2025-11-17T11:10:54.612 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3283273 -24.256572
2025-11-17T11:10:54.612 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3283273 -24.256572
2025-11-17T11:10:54.613 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 17;17.3283273;-24.256572;50.108443;89.993064;50.08601;90.12017;14.34808;2460996.88257654;11.18179778;1.3;_17.3022533966471 -24.2285780048914
2025-11-17T11:10:54.613 [INFO] [Thread-67348 (handle)] [driver.py] [get_status()] ra_j2k = 17.3022533966471     dec_j2k = -24.2285780048914
2025-11-17T11:10:54.613 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:10:54.613 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:10:54.613 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 140;0.104466380596313;171.162357330327;_
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response 140;0.104466380596313;171.162357330327;_
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:10:54.614 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:10:54.615 [DEBUG] [Thread-67348 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:54.615 [DEBUG] [Thread-67348 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:10:54.615 [DEBUG] [Thread-67348 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38603)
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:10:54.622 [DEBUG] [Thread-67348 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:10:54.630 [DEBUG] [Thread-67348 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:10:54.630 [INFO] [Thread-67348 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8825765, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104466380596313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.3283273, telescope_dec=-24.256572, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.34808, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3022533966471, telescope_dec_j2k=-24.2285780048914, observability=1)
2025-11-17T11:10:58.072 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:58.072 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:58.072 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:58.072 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:58.073 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:10:58.074 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:10:58.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Status age = 11.154904842376709s
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:05.785 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:05.786 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:05.787 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 17;17.3314456;-24.256571;50.108443;89.993064;50.08601;90.12017;14.3512;2460996.88270587;11.1849075;1.3;_
2025-11-17T11:11:05.787 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response 17;17.3314456;-24.256571;50.108443;89.993064;50.08601;90.12017;14.3512;2460996.88270587;11.1849075;1.3;_
2025-11-17T11:11:05.787 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:05.787 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:05.787 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:05.788 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:05.788 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:05.788 [INFO] [Thread-67349 (handle)] [driver.py] [get_status()] Telra = 17.3314456, teldec = -24.256571
2025-11-17T11:11:05.788 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3314456 -24.256571
2025-11-17T11:11:05.788 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3314456 -24.256571
2025-11-17T11:11:05.788 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3314456 -24.256571
2025-11-17T11:11:05.789 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 17;17.3314456;-24.256571;50.108443;89.993064;50.08601;90.12017;14.3512;2460996.88270589;11.1849075;1.3;_17.3053708670954 -24.2286910865312
2025-11-17T11:11:05.789 [INFO] [Thread-67349 (handle)] [driver.py] [get_status()] ra_j2k = 17.3053708670954     dec_j2k = -24.2286910865312
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 140;0.104467222947112;171.162351965909;_
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response 140;0.104467222947112;171.162351965909;_
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:05.790 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:05.791 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:11:05.791 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:11:05.791 [DEBUG] [Thread-67349 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:11:05.791 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:05.792 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:05.792 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:05.792 [DEBUG] [Thread-67349 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:05.792 [DEBUG] [Thread-67349 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:05.793 [DEBUG] [Thread-67349 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41625)
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:05.799 [DEBUG] [Thread-67349 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:05.806 [DEBUG] [Thread-67349 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:05.807 [INFO] [Thread-67349 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88270587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104467222947112, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.3314456, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.3512, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3053708670954, telescope_dec_j2k=-24.2286910865312, observability=1)
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Status age = 6.908111810684204s
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:12.715 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:12.716 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:12.717 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 17;17.333373;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35313;2460996.88278608;11.18682972;1.3;_
2025-11-17T11:11:12.717 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response 17;17.333373;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35313;2460996.88278608;11.18682972;1.3;_
2025-11-17T11:11:12.717 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:12.717 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:12.717 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:12.718 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:12.718 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:12.718 [INFO] [Thread-67350 (handle)] [driver.py] [get_status()] Telra = 17.333373, teldec = -24.256571
2025-11-17T11:11:12.718 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] UnCookCoordinates 17.333373 -24.256571
2025-11-17T11:11:12.718 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.333373 -24.256571
2025-11-17T11:11:12.718 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.333373 -24.256571
2025-11-17T11:11:12.719 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 17;17.333373;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35313;2460996.8827861;11.18682972;1.3;_17.3072977555244 -24.2287616093015
2025-11-17T11:11:12.719 [INFO] [Thread-67350 (handle)] [driver.py] [get_status()] ra_j2k = 17.3072977555244     dec_j2k = -24.2287616093015
2025-11-17T11:11:12.719 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:12.719 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:12.719 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 140;0.10446734328294;171.162357330327;_
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response 140;0.10446734328294;171.162357330327;_
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:12.720 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:12.721 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:12.722 [DEBUG] [Thread-67350 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:12.722 [DEBUG] [Thread-67350 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:12.722 [DEBUG] [Thread-67350 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40815)
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:12.729 [DEBUG] [Thread-67350 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:12.736 [DEBUG] [Thread-67350 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:12.736 [INFO] [Thread-67350 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88278608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10446734328294, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.333373, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.35313, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3072977555244, telescope_dec_j2k=-24.2287616093015, observability=1)
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.115037679672241s
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3339897;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35375;2460996.8828108;11.18744472;1.3;_
2025-11-17T11:11:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.3339897;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35375;2460996.8828108;11.18744472;1.3;_
2025-11-17T11:11:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:14.854 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.3339897, teldec = -24.256571
2025-11-17T11:11:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3339897 -24.256571
2025-11-17T11:11:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3339897 -24.256571
2025-11-17T11:11:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3339897 -24.256571
2025-11-17T11:11:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3339897;-24.256571;50.108443;89.993064;50.08601;90.12017;14.35375;2460996.88281082;11.18744472;1.3;_17.3079142920479 -24.2287841756634
2025-11-17T11:11:14.856 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3079142920479     dec_j2k = -24.2287841756634
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104467303170997;171.162362694745;_
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104467303170997;171.162362694745;_
2025-11-17T11:11:14.856 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:14.859 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39271)
2025-11-17T11:11:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:14.860 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:14.867 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8828108, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104467303170997, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108443, telescope_az=89.993064, telescope_ra=17.3339897, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.35375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3079142920479, telescope_dec_j2k=-24.2287841756634, observability=1)
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.4957334995269775s
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:19.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:19.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3352423;-24.256571;50.108442;89.993064;50.08601;90.12017;14.355;2460996.88286301;11.18869389;1.3;_
2025-11-17T11:11:19.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.3352423;-24.256571;50.108442;89.993064;50.08601;90.12017;14.355;2460996.88286301;11.18869389;1.3;_
2025-11-17T11:11:19.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:19.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:19.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:19.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:19.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:19.366 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.3352423, teldec = -24.256571
2025-11-17T11:11:19.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.3352423 -24.256571
2025-11-17T11:11:19.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.3352423 -24.256571
2025-11-17T11:11:19.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3352423 -24.256571
2025-11-17T11:11:19.367 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3352423;-24.256571;50.108442;89.993064;50.08601;90.12017;14.355;2460996.88286304;11.18869389;1.3;_17.3091665603161 -24.2288300132855
2025-11-17T11:11:19.367 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.3091665603161     dec_j2k = -24.2288300132855
2025-11-17T11:11:19.367 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:19.367 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:19.367 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104467664178483;171.162357330327;_
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104467664178483;171.162357330327;_
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:19.368 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:19.369 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:19.369 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:19.369 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45553)
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:19.372 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:19.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:11:19.380 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88286301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104467664178483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993064, telescope_ra=17.3352423, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.355, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3091665603161, telescope_dec_j2k=-24.2288300132855, observability=1)
2025-11-17T11:11:19.380 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.137879848480225 seconds ago
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.484213829040527s
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:24.864 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:24.865 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:24.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3367746;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35653;2460996.88292669;11.19022194;1.3;_
2025-11-17T11:11:24.866 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.3367746;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35653;2460996.88292669;11.19022194;1.3;_
2025-11-17T11:11:24.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:24.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:24.866 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:24.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:24.867 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:24.867 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.3367746, teldec = -24.256571
2025-11-17T11:11:24.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3367746 -24.256571
2025-11-17T11:11:24.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3367746 -24.256571
2025-11-17T11:11:24.867 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3367746 -24.256571
2025-11-17T11:11:24.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3367746;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35653;2460996.88292671;11.19022194;1.3;_17.3106984550762 -24.228886090484
2025-11-17T11:11:24.868 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.3106984550762     dec_j2k = -24.228886090484
2025-11-17T11:11:24.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:24.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:24.868 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10446790485014;171.162357330327;_
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10446790485014;171.162357330327;_
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:24.869 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:24.870 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:24.871 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:24.871 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:24.871 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:24.873 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58915)
2025-11-17T11:11:24.874 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:24.874 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:24.874 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:24.874 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:24.874 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:24.881 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:24.881 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88292669, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10446790485014, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993064, telescope_ra=17.3367746, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.35653, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3106984550762, telescope_dec_j2k=-24.228886090484, observability=1)
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Status age = 5.906616449356079s
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:30.788 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:30.789 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:30.789 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:30.790 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 17;17.3384185;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35818;2460996.88299524;11.19186139;1.3;_
2025-11-17T11:11:30.790 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response 17;17.3384185;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35818;2460996.88299524;11.19186139;1.3;_
2025-11-17T11:11:30.790 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:30.790 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:30.790 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:30.791 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:30.791 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:30.791 [INFO] [Thread-67351 (handle)] [driver.py] [get_status()] Telra = 17.3384185, teldec = -24.256571
2025-11-17T11:11:30.791 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3384185 -24.256571
2025-11-17T11:11:30.791 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3384185 -24.256571
2025-11-17T11:11:30.791 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3384185 -24.256571
2025-11-17T11:11:30.792 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 17;17.3384185;-24.256571;50.108442;89.993064;50.08601;90.12017;14.35818;2460996.88299528;11.19186139;1.3;_17.3123419210151 -24.2289462570574
2025-11-17T11:11:30.792 [INFO] [Thread-67351 (handle)] [driver.py] [get_status()] ra_j2k = 17.3123419210151     dec_j2k = -24.2289462570574
2025-11-17T11:11:30.792 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:30.792 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:30.792 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 140;0.104467583954597;171.162362694745;_
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response 140;0.104467583954597;171.162362694745;_
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:30.793 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:30.794 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:30.795 [DEBUG] [Thread-67351 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:30.795 [DEBUG] [Thread-67351 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:30.795 [DEBUG] [Thread-67351 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59511)
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:30.796 [DEBUG] [Thread-67351 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:30.803 [DEBUG] [Thread-67351 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:30.804 [DEBUG] [Thread-67351 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:30.804 [INFO] [Thread-67351 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88299524, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104467583954597, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993064, telescope_ra=17.3384185, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.35818, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:10:32.051320', telescope_ra_j2k=17.3123419210151, telescope_dec_j2k=-24.2289462570574, observability=1)
2025-11-17T11:11:32.193 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:32.194 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:32.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:32.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:32.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:32.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:32.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:32.198 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:11:32.198 [INFO] [ThreadPoolExecutor-2709_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:11:32.198 [INFO] [ThreadPoolExecutor-2709_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:11:34.324 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:11:34
2025-11-17T11:11:34.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:34.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.5205798149108887s
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:34.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:34.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3393898;-24.256571;50.108442;89.993063;50.08601;90.12017;14.35915;2460996.88303618;11.19283;1.3;_
2025-11-17T11:11:34.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3393898;-24.256571;50.108442;89.993063;50.08601;90.12017;14.35915;2460996.88303618;11.19283;1.3;_
2025-11-17T11:11:34.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:34.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:34.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:34.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:34.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:34.327 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3393898, teldec = -24.256571
2025-11-17T11:11:34.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3393898 -24.256571
2025-11-17T11:11:34.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3393898 -24.256571
2025-11-17T11:11:34.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3393898 -24.256571
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3393898;-24.256571;50.108442;89.993063;50.08601;90.12017;14.35915;2460996.8830362;11.19283;1.3;_17.3133129648868 -24.2289818090535
2025-11-17T11:11:34.329 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3133129648868     dec_j2k = -24.2289818090535
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104467383394883;171.162368059163;_
2025-11-17T11:11:34.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104467383394883;171.162368059163;_
2025-11-17T11:11:34.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59669)
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:34.336 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:34.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:34.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:34.344 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:34.344 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88303618, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104467383394883, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993063, telescope_ra=17.3393898, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.35915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3133129648868, telescope_dec_j2k=-24.2289818090535, observability=1)
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Status age = 14.511029958724976s
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:48.855 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:48.856 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:48.856 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:48.856 [DEBUG] [Thread-67352 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:48.856 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:11:48.856 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:11:48.857 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:11:48.857 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:11:48.857 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 17;17.3434606;-24.256571;50.108442;89.993063;50.08601;90.12017;14.36322;2460996.88320436;11.19688972;1.3;_
2025-11-17T11:11:48.858 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response 17;17.3434606;-24.256571;50.108442;89.993063;50.08601;90.12017;14.36322;2460996.88320436;11.19688972;1.3;_
2025-11-17T11:11:48.858 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:11:48.858 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:11:48.858 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:11:48.859 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:48.859 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:11:48.859 [INFO] [Thread-67352 (handle)] [driver.py] [get_status()] Telra = 17.3434606, teldec = -24.256571
2025-11-17T11:11:48.859 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3434606 -24.256571
2025-11-17T11:11:48.859 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3434606 -24.256571
2025-11-17T11:11:48.859 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3434606 -24.256571
2025-11-17T11:11:48.860 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 17;17.3434606;-24.256571;50.108442;89.993063;50.08601;90.12017;14.36322;2460996.8832044;11.19688972;1.3;_17.3173826941564 -24.2291308307209
2025-11-17T11:11:48.860 [INFO] [Thread-67352 (handle)] [driver.py] [get_status()] ra_j2k = 17.3173826941564     dec_j2k = -24.2291308307209
2025-11-17T11:11:48.860 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:11:48.860 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:11:48.860 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 140;0.104468707088996;171.162368059163;_
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response 140;0.104468707088996;171.162368059163;_
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:48.861 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:11:48.862 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:11:48.863 [DEBUG] [Thread-67352 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:48.863 [DEBUG] [Thread-67352 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:11:48.863 [DEBUG] [Thread-67352 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39775)
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:11:48.865 [DEBUG] [Thread-67352 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:11:48.872 [DEBUG] [Thread-67352 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:11:48.872 [INFO] [Thread-67352 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88320436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104468707088996, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993063, telescope_ra=17.3434606, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.36322, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3173826941564, telescope_dec_j2k=-24.2291308307209, observability=1)
2025-11-17T11:11:53.075 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.075 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:53.075 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.076 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:53.077 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:53.078 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:53.078 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:53.079 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:11:53.080 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:53.081 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Park
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:11:53.082 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:11:53.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 29;17.3446266;-24.256571;50.108442;89.993063;50.08601;90.12017;14.36438;2460996.88325328;11.1980525;1.3;_Park Command Successful
2025-11-17T11:11:54.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:11:54.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:11:54.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:11:54.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:11:54.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:11:55.083 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:11:55.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:11:55.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:11:55.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:11:55.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:11:56.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:11:56.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:11:56.084 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:11:56.085 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:11:56.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:57.086 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:11:57.087 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:11:57.088 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:58.088 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:58.088 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:58.088 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:11:58.088 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:11:58.088 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:11:58.089 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:11:58.090 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:11:58.090 [DEBUG] [ThreadPoolExecutor-2708_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:11:58.090 [INFO] [ThreadPoolExecutor-2708_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Status age = 16.962614059448242s
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:05.835 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:05.836 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:05.837 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 17;17.348171;-24.25657;50.108442;89.993063;50.08601;90.12017;14.36793;2460996.88340089;11.20158722;1.3;_
2025-11-17T11:12:05.837 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response 17;17.348171;-24.25657;50.108442;89.993063;50.08601;90.12017;14.36793;2460996.88340089;11.20158722;1.3;_
2025-11-17T11:12:05.837 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:05.837 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:05.837 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:05.838 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:05.838 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:05.838 [INFO] [Thread-67353 (handle)] [driver.py] [get_status()] Telra = 17.348171, teldec = -24.25657
2025-11-17T11:12:05.838 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] UnCookCoordinates 17.348171 -24.25657
2025-11-17T11:12:05.838 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.348171 -24.25657
2025-11-17T11:12:05.838 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.348171 -24.25657
2025-11-17T11:12:05.839 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 17;17.348171;-24.25657;50.108442;89.993063;50.08601;90.12017;14.36793;2460996.88340091;11.20158722;1.3;_17.322091860882 -24.2293023072314
2025-11-17T11:12:05.839 [INFO] [Thread-67353 (handle)] [driver.py] [get_status()] ra_j2k = 17.322091860882     dec_j2k = -24.2293023072314
2025-11-17T11:12:05.839 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:05.839 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:05.839 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 140;0.104469790111451;171.162362694745;_
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response 140;0.104469790111451;171.162362694745;_
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:05.840 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:05.841 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:05.842 [DEBUG] [Thread-67353 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:05.843 [DEBUG] [Thread-67353 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:05.843 [DEBUG] [Thread-67353 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:05.847 [DEBUG] [Thread-67353 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42385)
2025-11-17T11:12:05.848 [DEBUG] [Thread-67353 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:05.848 [DEBUG] [Thread-67353 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:05.848 [DEBUG] [Thread-67353 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:05.848 [DEBUG] [Thread-67353 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:05.848 [DEBUG] [Thread-67353 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:05.855 [DEBUG] [Thread-67353 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:05.855 [INFO] [Thread-67353 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88340089, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469790111451, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108442, telescope_az=89.993063, telescope_ra=17.348171, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.36793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.322091860882, telescope_dec_j2k=-24.2293023072314, observability=1)
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Status age = 1.1149799823760986s
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:06.970 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:06.971 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:06.971 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:06.971 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:06.972 [DEBUG] [Thread-67354 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:06.972 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:06.972 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:06.972 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:06.972 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:06.973 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 17;17.3485069;-24.25657;50.108441;89.993063;50.08601;90.12017;14.36826;2460996.88341403;11.20192222;1.3;_
2025-11-17T11:12:06.973 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response 17;17.3485069;-24.25657;50.108441;89.993063;50.08601;90.12017;14.36826;2460996.88341403;11.20192222;1.3;_
2025-11-17T11:12:06.973 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:06.973 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:06.973 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:06.974 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:06.974 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:06.974 [INFO] [Thread-67354 (handle)] [driver.py] [get_status()] Telra = 17.3485069, teldec = -24.25657
2025-11-17T11:12:06.974 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3485069 -24.25657
2025-11-17T11:12:06.974 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3485069 -24.25657
2025-11-17T11:12:06.974 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3485069 -24.25657
2025-11-17T11:12:06.975 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 17;17.3485069;-24.25657;50.108441;89.993063;50.08601;90.12017;14.36826;2460996.88341406;11.20192222;1.3;_17.322427673148 -24.2293146082383
2025-11-17T11:12:06.975 [INFO] [Thread-67354 (handle)] [driver.py] [get_status()] ra_j2k = 17.322427673148     dec_j2k = -24.2293146082383
2025-11-17T11:12:06.975 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:06.975 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:06.975 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 140;0.104469268656195;171.162362694745;_
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response 140;0.104469268656195;171.162362694745;_
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:06.976 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:06.977 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:06.978 [DEBUG] [Thread-67354 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:06.978 [DEBUG] [Thread-67354 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:06.978 [DEBUG] [Thread-67354 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51251)
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:06.984 [DEBUG] [Thread-67354 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:06.991 [DEBUG] [Thread-67354 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:06.991 [DEBUG] [Thread-67354 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:06.992 [DEBUG] [Thread-67354 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:06.992 [INFO] [Thread-67354 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88341403, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469268656195, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993063, telescope_ra=17.3485069, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.36826, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.322427673148, telescope_dec_j2k=-24.2293146082383, observability=1)
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.861749887466431s
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3507015;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37046;2460996.88350527;11.20411083;1.3;_
2025-11-17T11:12:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.3507015;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37046;2460996.88350527;11.20411083;1.3;_
2025-11-17T11:12:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:14.857 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.3507015, teldec = -24.25657
2025-11-17T11:12:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3507015 -24.25657
2025-11-17T11:12:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3507015 -24.25657
2025-11-17T11:12:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3507015 -24.25657
2025-11-17T11:12:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3507015;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37046;2460996.8835053;11.20411083;1.3;_17.3246217006764 -24.229394982191
2025-11-17T11:12:14.858 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3246217006764     dec_j2k = -24.229394982191
2025-11-17T11:12:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104469429103966;171.162357330327;_
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104469429103966;171.162357330327;_
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:14.861 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33477)
2025-11-17T11:12:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:14.861 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:14.868 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:14.869 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88350527, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469429103966, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993063, telescope_ra=17.3507015, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37046, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3246217006764, telescope_dec_j2k=-24.229394982191, observability=1)
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.5708746910095215s
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:19.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:19.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:19.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3519547;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37171;2460996.88355836;11.20536056;1.3;_
2025-11-17T11:12:19.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.3519547;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37171;2460996.88355836;11.20536056;1.3;_
2025-11-17T11:12:19.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:19.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:19.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:19.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:19.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:19.443 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.3519547, teldec = -24.25657
2025-11-17T11:12:19.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.3519547 -24.25657
2025-11-17T11:12:19.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.3519547 -24.25657
2025-11-17T11:12:19.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3519547 -24.25657
2025-11-17T11:12:19.444 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3519547;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37171;2460996.88355838;11.20536056;1.3;_17.3258745743474 -24.2294408829835
2025-11-17T11:12:19.444 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.3258745743474     dec_j2k = -24.2294408829835
2025-11-17T11:12:19.444 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:19.444 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:19.444 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104469027984538;171.162357330327;_
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104469027984538;171.162357330327;_
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:19.445 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:19.446 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:19.447 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:19.447 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:19.447 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48771)
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:19.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:19.461 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:12:19.461 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88355836, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469027984538, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993063, telescope_ra=17.3519547, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37171, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3258745743474, telescope_dec_j2k=-24.2294408829835, observability=1)
2025-11-17T11:12:19.461 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.13699507713318 seconds ago
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.507818222045898s
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:23.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:23.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:23.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3532167;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37297;2460996.88361078;11.20661917;1.3;_
2025-11-17T11:12:23.971 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.3532167;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37297;2460996.88361078;11.20661917;1.3;_
2025-11-17T11:12:23.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:23.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:23.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:23.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:23.972 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:23.972 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.3532167, teldec = -24.25657
2025-11-17T11:12:23.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3532167 -24.25657
2025-11-17T11:12:23.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3532167 -24.25657
2025-11-17T11:12:23.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3532167 -24.25657
2025-11-17T11:12:23.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3532167;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37297;2460996.8836108;11.20661917;1.3;_17.3271362461485 -24.2294871091799
2025-11-17T11:12:23.973 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.3271362461485     dec_j2k = -24.2294871091799
2025-11-17T11:12:23.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:23.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:23.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104469509327852;171.162362694745;_
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104469509327852;171.162362694745;_
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:23.974 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:23.975 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:23.976 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44433)
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:23.981 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:23.988 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:23.988 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:23.988 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:23.988 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:23.989 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:23.989 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:23.989 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:23.989 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:23.989 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:23.989 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88361078, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469509327852, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993063, telescope_ra=17.3532167, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37297, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3271362461485, telescope_dec_j2k=-24.2294871091799, observability=1)
2025-11-17T11:12:25.028 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:25.028 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Status age = 1.0396418571472168s
2025-11-17T11:12:25.028 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:25.029 [DEBUG] [Thread-67355 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:25.029 [DEBUG] [Thread-67355 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:25.029 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:25.029 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:25.029 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:25.030 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:25.031 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 17;17.3535159;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37327;2460996.88362304;11.2069175;1.3;_
2025-11-17T11:12:25.031 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response 17;17.3535159;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37327;2460996.88362304;11.2069175;1.3;_
2025-11-17T11:12:25.031 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:25.031 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:25.031 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:25.032 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:25.032 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:25.032 [INFO] [Thread-67355 (handle)] [driver.py] [get_status()] Telra = 17.3535159, teldec = -24.25657
2025-11-17T11:12:25.032 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3535159 -24.25657
2025-11-17T11:12:25.032 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3535159 -24.25657
2025-11-17T11:12:25.032 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3535159 -24.25657
2025-11-17T11:12:25.033 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 17;17.3535159;-24.25657;50.108441;89.993063;50.08601;90.12017;14.37327;2460996.88362307;11.2069175;1.3;_17.3274353683999 -24.229498069125
2025-11-17T11:12:25.033 [INFO] [Thread-67355 (handle)] [driver.py] [get_status()] ra_j2k = 17.3274353683999     dec_j2k = -24.229498069125
2025-11-17T11:12:25.033 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:25.033 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 140;0.104470151118937;171.162357330327;_
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response 140;0.104470151118937;171.162357330327;_
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:25.034 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:25.035 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:25.035 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:25.035 [DEBUG] [Thread-67355 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:25.035 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:25.036 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:25.036 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:25.036 [DEBUG] [Thread-67355 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:25.036 [DEBUG] [Thread-67355 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:25.036 [DEBUG] [Thread-67355 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:25.038 [DEBUG] [Thread-67355 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58125)
2025-11-17T11:12:25.038 [DEBUG] [Thread-67355 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:25.038 [DEBUG] [Thread-67355 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:25.038 [DEBUG] [Thread-67355 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:25.039 [DEBUG] [Thread-67355 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:25.039 [DEBUG] [Thread-67355 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:25.046 [DEBUG] [Thread-67355 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:25.046 [INFO] [Thread-67355 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88362304, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104470151118937, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993063, telescope_ra=17.3535159, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37327, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:11:32.193432', telescope_ra_j2k=17.3274353683999, telescope_dec_j2k=-24.229498069125, observability=1)
2025-11-17T11:12:32.338 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:32.338 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:32.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:32.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:32.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:32.339 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:32.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:32.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:32.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:32.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:32.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:32.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:32.341 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:32.341 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:12:32.342 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:12:32.343 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:33.343 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:33.343 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:33.343 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:33.343 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:33.343 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:12:33.344 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:33.345 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:33.346 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:33.346 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:33.346 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:33.346 [DEBUG] [ThreadPoolExecutor-2710_0] [payload.py] [to_registers()] [0]
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44963)
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:33.350 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:33.357 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:33.357 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:12:33.357 [DEBUG] [ThreadPoolExecutor-2710_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:12:33.357 [DEBUG] [ThreadPoolExecutor-2710_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:12:33.358 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:33.358 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:33.358 [DEBUG] [ThreadPoolExecutor-2710_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:34.405 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:12:34
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.359042882919312s
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:34.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:34.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:34.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3561342;-24.25657;50.108441;89.993062;50.08601;90.12017;14.37589;2460996.88373159;11.20952861;1.3;_
2025-11-17T11:12:34.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3561342;-24.25657;50.108441;89.993062;50.08601;90.12017;14.37589;2460996.88373159;11.20952861;1.3;_
2025-11-17T11:12:34.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:34.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:34.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:34.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:34.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:34.411 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3561342, teldec = -24.25657
2025-11-17T11:12:34.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3561342 -24.25657
2025-11-17T11:12:34.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3561342 -24.25657
2025-11-17T11:12:34.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3561342 -24.25657
2025-11-17T11:12:34.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3561342;-24.25657;50.108441;89.993062;50.08601;90.12017;14.37589;2460996.88373161;11.20952861;1.3;_17.3300529890367 -24.2295939870411
2025-11-17T11:12:34.412 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3300529890367     dec_j2k = -24.2295939870411
2025-11-17T11:12:34.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:34.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:34.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104469589551737;171.162357330327;_
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104469589551737;171.162357330327;_
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:34.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:34.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:34.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:34.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:34.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:34.420 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48135)
2025-11-17T11:12:34.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:34.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:34.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:34.421 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:34.421 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:34.428 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:34.428 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88373159, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104469589551737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993062, telescope_ra=17.3561342, telescope_dec=-24.25657, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37589, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3300529890367, telescope_dec_j2k=-24.2295939870411, observability=1)
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Status age = 8.667665004730225s
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:43.096 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 17;17.3585659;-24.256563;50.108441;89.993052;50.08601;90.12016;14.37832;2460996.88383214;11.21195389;1.3;_
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response 17;17.3585659;-24.256563;50.108441;89.993052;50.08601;90.12016;14.37832;2460996.88383214;11.21195389;1.3;_
2025-11-17T11:12:43.097 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:12:43.098 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:12:43.098 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:12:43.098 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:43.099 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:12:43.099 [INFO] [Thread-67356 (handle)] [driver.py] [get_status()] Telra = 17.3585659, teldec = -24.256563
2025-11-17T11:12:43.099 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3585659 -24.256563
2025-11-17T11:12:43.099 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3585659 -24.256563
2025-11-17T11:12:43.099 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3585659 -24.256563
2025-11-17T11:12:43.100 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 17;17.3585659;-24.256563;50.108441;89.993052;50.08601;90.12016;14.37832;2460996.88383218;11.21195389;1.3;_17.3324840610931 -24.2296760813269
2025-11-17T11:12:43.100 [INFO] [Thread-67356 (handle)] [driver.py] [get_status()] ra_j2k = 17.3324840610931     dec_j2k = -24.2296760813269
2025-11-17T11:12:43.100 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:12:43.100 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:12:43.100 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 140;0.104470431902536;171.162351965909;_
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response 140;0.104470431902536;171.162351965909;_
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:43.101 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:12:43.102 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:12:43.103 [DEBUG] [Thread-67356 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:43.103 [DEBUG] [Thread-67356 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:12:43.103 [DEBUG] [Thread-67356 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40657)
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:12:43.107 [DEBUG] [Thread-67356 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:12:43.114 [DEBUG] [Thread-67356 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:12:43.115 [DEBUG] [Thread-67356 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:12:43.115 [INFO] [Thread-67356 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88383214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104470431902536, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108441, telescope_az=89.993052, telescope_ra=17.3585659, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.37832, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3324840610931, telescope_dec_j2k=-24.2296760813269, observability=1)
2025-11-17T11:12:58.358 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:58.358 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:58.358 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:58.358 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:58.358 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:58.359 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:12:58.360 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:12:58.361 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:12:58.361 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:12:58.361 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Status age = 18.102153539657593s
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:01.217 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:01.218 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:01.219 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 17;17.3636035;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38336;2460996.88404189;11.2169775;1.3;_
2025-11-17T11:13:01.219 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response 17;17.3636035;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38336;2460996.88404189;11.2169775;1.3;_
2025-11-17T11:13:01.219 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:01.219 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:01.219 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:01.220 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:01.220 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:01.220 [INFO] [Thread-67357 (handle)] [driver.py] [get_status()] Telra = 17.3636035, teldec = -24.256569
2025-11-17T11:13:01.220 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3636035 -24.256569
2025-11-17T11:13:01.220 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3636035 -24.256569
2025-11-17T11:13:01.220 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3636035 -24.256569
2025-11-17T11:13:01.221 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 17;17.3636035;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38336;2460996.88404191;11.2169775;1.3;_17.3375203612083 -24.2298666876363
2025-11-17T11:13:01.221 [INFO] [Thread-67357 (handle)] [driver.py] [get_status()] ra_j2k = 17.3375203612083     dec_j2k = -24.2298666876363
2025-11-17T11:13:01.221 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:01.221 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:01.221 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 140;0.104471033581678;171.162351965909;_
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response 140;0.104471033581678;171.162351965909;_
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:01.222 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:01.223 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:01.224 [DEBUG] [Thread-67357 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:01.224 [DEBUG] [Thread-67357 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:01.224 [DEBUG] [Thread-67357 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44079)
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:01.225 [DEBUG] [Thread-67357 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:01.232 [DEBUG] [Thread-67357 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:01.232 [DEBUG] [Thread-67357 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:01.233 [DEBUG] [Thread-67357 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:01.233 [INFO] [Thread-67357 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88404189, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104471033581678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993062, telescope_ra=17.3636035, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.38336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3375203612083, telescope_dec_j2k=-24.2298666876363, observability=1)
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Status age = 4.655797243118286s
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:05.889 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:05.890 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:05.891 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 17;17.3649104;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38467;2460996.88409596;11.21828083;1.3;_
2025-11-17T11:13:05.891 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response 17;17.3649104;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38467;2460996.88409596;11.21828083;1.3;_
2025-11-17T11:13:05.891 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:05.891 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:05.891 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:05.892 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:05.892 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:05.892 [INFO] [Thread-67358 (handle)] [driver.py] [get_status()] Telra = 17.3649104, teldec = -24.256569
2025-11-17T11:13:05.892 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3649104 -24.256569
2025-11-17T11:13:05.892 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3649104 -24.256569
2025-11-17T11:13:05.892 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3649104 -24.256569
2025-11-17T11:13:05.893 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 17;17.3649104;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38467;2460996.88409598;11.21828083;1.3;_17.3388269253876 -24.2299145879139
2025-11-17T11:13:05.893 [INFO] [Thread-67358 (handle)] [driver.py] [get_status()] ra_j2k = 17.3388269253876     dec_j2k = -24.2299145879139
2025-11-17T11:13:05.893 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:05.893 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 140;0.10447119402945;171.162351965909;_
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response 140;0.10447119402945;171.162351965909;_
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:05.894 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:05.895 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:05.896 [DEBUG] [Thread-67358 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:05.896 [DEBUG] [Thread-67358 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:05.896 [DEBUG] [Thread-67358 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54633)
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:05.903 [DEBUG] [Thread-67358 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:05.910 [DEBUG] [Thread-67358 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:05.911 [DEBUG] [Thread-67358 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:05.911 [INFO] [Thread-67358 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88409596, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10447119402945, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993062, telescope_ra=17.3649104, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.38467, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3388269253876, telescope_dec_j2k=-24.2299145879139, observability=1)
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.946181535720825s
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3673938;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38715;2460996.88419977;11.2207575;1.3;_
2025-11-17T11:13:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.3673938;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38715;2460996.88419977;11.2207575;1.3;_
2025-11-17T11:13:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:14.861 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.3673938, teldec = -24.256569
2025-11-17T11:13:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3673938 -24.256569
2025-11-17T11:13:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3673938 -24.256569
2025-11-17T11:13:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3673938 -24.256569
2025-11-17T11:13:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3673938;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38715;2460996.88419979;11.2207575;1.3;_17.3413096885057 -24.2300056180681
2025-11-17T11:13:14.862 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3413096885057     dec_j2k = -24.2300056180681
2025-11-17T11:13:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104471555036935;171.162351965909;_
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104471555036935;171.162351965909;_
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44761)
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:14.868 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:14.876 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88419977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104471555036935, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993062, telescope_ra=17.3673938, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.38715, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3413096885057, telescope_dec_j2k=-24.2300056180681, observability=1)
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Status age = 4.415574073791504s
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:19.292 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:19.293 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:19.293 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:19.293 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:19.294 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 17;17.3686453;-24.256569;50.10844;89.993062;50.08601;90.12017;14.3884;2460996.88425108;11.22200556;1.3;_
2025-11-17T11:13:19.294 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response 17;17.3686453;-24.256569;50.10844;89.993062;50.08601;90.12017;14.3884;2460996.88425108;11.22200556;1.3;_
2025-11-17T11:13:19.294 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:19.294 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:19.294 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:19.295 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:19.295 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:19.295 [INFO] [Thread-67359 (handle)] [driver.py] [get_status()] Telra = 17.3686453, teldec = -24.256569
2025-11-17T11:13:19.295 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3686453 -24.256569
2025-11-17T11:13:19.295 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3686453 -24.256569
2025-11-17T11:13:19.295 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3686453 -24.256569
2025-11-17T11:13:19.296 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 17;17.3686453;-24.256569;50.10844;89.993062;50.08601;90.12017;14.3884;2460996.88425111;11.22200556;1.3;_17.3425608681732 -24.230051496827
2025-11-17T11:13:19.296 [INFO] [Thread-67359 (handle)] [driver.py] [get_status()] ra_j2k = 17.3425608681732     dec_j2k = -24.230051496827
2025-11-17T11:13:19.296 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:19.296 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:19.296 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 140;0.104471715484706;171.162362694745;_
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response 140;0.104471715484706;171.162362694745;_
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:19.297 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:19.298 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:19.299 [DEBUG] [Thread-67359 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:19.299 [DEBUG] [Thread-67359 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:19.299 [DEBUG] [Thread-67359 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38019)
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:19.300 [DEBUG] [Thread-67359 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:19.307 [DEBUG] [Thread-67359 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:19.307 [DEBUG] [Thread-67359 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:19.307 [DEBUG] [Thread-67359 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:19.308 [DEBUG] [Thread-67359 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:19.308 [INFO] [Thread-67359 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88425108, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104471715484706, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993062, telescope_ra=17.3686453, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.3884, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3425608681732, telescope_dec_j2k=-24.230051496827, observability=1)
2025-11-17T11:13:19.521 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:13:19.522 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.21376514434814453s
2025-11-17T11:13:19.522 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.21376514434814453
2025-11-17T11:13:19.522 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.116791009902954 seconds ago
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.7742562294006348s
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:23.082 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:23.083 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:23.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.369682;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38944;2460996.88429495;11.22303944;1.3;_
2025-11-17T11:13:23.084 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.369682;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38944;2460996.88429495;11.22303944;1.3;_
2025-11-17T11:13:23.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:23.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:23.084 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:23.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:23.085 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:23.085 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.369682, teldec = -24.256569
2025-11-17T11:13:23.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.369682 -24.256569
2025-11-17T11:13:23.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.369682 -24.256569
2025-11-17T11:13:23.085 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.369682 -24.256569
2025-11-17T11:13:23.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.369682;-24.256569;50.10844;89.993062;50.08601;90.12017;14.38944;2460996.88429498;11.22303944;1.3;_17.3435973031362 -24.230089503487
2025-11-17T11:13:23.086 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.3435973031362     dec_j2k = -24.230089503487
2025-11-17T11:13:23.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:23.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:23.086 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104471835820535;171.162362694745;_
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104471835820535;171.162362694745;_
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:23.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:23.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:23.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:23.089 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:23.089 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:23.095 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52205)
2025-11-17T11:13:23.095 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:23.095 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:23.095 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:23.096 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:23.096 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:23.103 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:23.103 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88429495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104471835820535, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993062, telescope_ra=17.369682, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.38944, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:12:32.338187', telescope_ra_j2k=17.3435973031362, telescope_dec_j2k=-24.230089503487, observability=1)
2025-11-17T11:13:32.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:32.480 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:32.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:32.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:32.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:32.481 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:32.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:32.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:32.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:32.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:32.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:32.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:32.482 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:13:32.483 [INFO] [ThreadPoolExecutor-2711_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:13:32.483 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:13:34.489 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:13:34
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.386065006256104s
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:34.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:34.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:34.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3728841;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39264;2460996.88442698;11.22623278;1.3;_
2025-11-17T11:13:34.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3728841;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39264;2460996.88442698;11.22623278;1.3;_
2025-11-17T11:13:34.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:34.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:34.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:34.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:34.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:34.492 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3728841, teldec = -24.256569
2025-11-17T11:13:34.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3728841 -24.256569
2025-11-17T11:13:34.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3728841 -24.256569
2025-11-17T11:13:34.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3728841 -24.256569
2025-11-17T11:13:34.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3728841;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39264;2460996.884427;11.22623278;1.3;_17.3467985863105 -24.2302069091846
2025-11-17T11:13:34.493 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3467985863105     dec_j2k = -24.2302069091846
2025-11-17T11:13:34.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:34.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:34.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104472678171333;171.162362694745;_
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104472678171333;171.162362694745;_
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:34.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:34.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:34.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:34.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:34.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:34.499 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57755)
2025-11-17T11:13:34.499 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:34.499 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:34.499 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:34.500 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:34.500 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:34.507 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:34.507 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88442698, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104472678171333, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993061, telescope_ra=17.3728841, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.39264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3467985863105, telescope_dec_j2k=-24.2302069091846, observability=1)
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Status age = 2.845494270324707s
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:37.353 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:37.354 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 17;17.3736674;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39342;2460996.88446012;11.22701389;1.3;_
2025-11-17T11:13:37.355 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response 17;17.3736674;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39342;2460996.88446012;11.22701389;1.3;_
2025-11-17T11:13:37.355 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:37.355 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:37.355 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:37.356 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:37.356 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:37.356 [INFO] [Thread-67360 (handle)] [driver.py] [get_status()] Telra = 17.3736674, teldec = -24.256569
2025-11-17T11:13:37.356 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3736674 -24.256569
2025-11-17T11:13:37.356 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3736674 -24.256569
2025-11-17T11:13:37.356 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3736674 -24.256569
2025-11-17T11:13:37.357 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 17;17.3736674;-24.256569;50.10844;89.993061;50.08601;90.12017;14.39342;2460996.88446015;11.22701389;1.3;_17.3475816869134 -24.2302356320082
2025-11-17T11:13:37.357 [INFO] [Thread-67360 (handle)] [driver.py] [get_status()] ra_j2k = 17.3475816869134     dec_j2k = -24.2302356320082
2025-11-17T11:13:37.357 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:37.357 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:37.357 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 140;0.104472277051905;171.162346601491;_
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response 140;0.104472277051905;171.162346601491;_
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:37.358 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:37.359 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:37.360 [DEBUG] [Thread-67360 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:37.360 [DEBUG] [Thread-67360 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:37.360 [DEBUG] [Thread-67360 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36027)
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:37.365 [DEBUG] [Thread-67360 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:37.372 [DEBUG] [Thread-67360 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:37.372 [INFO] [Thread-67360 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88446012, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104472277051905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10844, telescope_az=89.993061, telescope_ra=17.3736674, telescope_dec=-24.256569, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.39342, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3475816869134, telescope_dec_j2k=-24.2302356320082, observability=1)
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:53.362 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:13:53.363 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.364 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.364 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.364 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:53.364 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:53.364 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:53.365 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:13:53.366 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:53.367 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Park
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:13:53.368 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:13:53.369 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 29;17.3781218;-24.256568;50.108439;89.993061;50.08601;90.12017;14.39788;2460996.88464547;11.23145611;1.3;_Park Command Successful
2025-11-17T11:13:54.369 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:13:54.369 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:13:54.369 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:13:54.369 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:13:54.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:13:55.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:13:55.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:13:55.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:13:55.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:13:55.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Status age = 18.112592220306396s
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:55.485 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:13:55.486 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:13:55.487 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:13:55.487 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 17;17.3787095;-24.256568;50.108439;89.993061;50.08601;90.12017;14.39847;2460996.88466999;11.23204222;1.3;_
2025-11-17T11:13:55.487 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response 17;17.3787095;-24.256568;50.108439;89.993061;50.08601;90.12017;14.39847;2460996.88466999;11.23204222;1.3;_
2025-11-17T11:13:55.487 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:13:55.488 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:13:55.488 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:13:55.488 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:55.489 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:13:55.489 [INFO] [Thread-67361 (handle)] [driver.py] [get_status()] Telra = 17.3787095, teldec = -24.256568
2025-11-17T11:13:55.489 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3787095 -24.256568
2025-11-17T11:13:55.489 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3787095 -24.256568
2025-11-17T11:13:55.489 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3787095 -24.256568
2025-11-17T11:13:55.490 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 17;17.3787095;-24.256568;50.108439;89.993061;50.08601;90.12017;14.39847;2460996.88467002;11.23204222;1.3;_17.3526225074994 -24.2304195485108
2025-11-17T11:13:55.490 [INFO] [Thread-67361 (handle)] [driver.py] [get_status()] ra_j2k = 17.3526225074994     dec_j2k = -24.2304195485108
2025-11-17T11:13:55.490 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:13:55.490 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:13:55.490 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 140;0.104472317163848;171.162346601491;_
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response 140;0.104472317163848;171.162346601491;_
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:13:55.491 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:13:55.492 [DEBUG] [Thread-67361 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:55.492 [DEBUG] [Thread-67361 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:13:55.492 [DEBUG] [Thread-67361 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36811)
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:13:55.496 [DEBUG] [Thread-67361 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:13:55.503 [DEBUG] [Thread-67361 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:13:55.504 [INFO] [Thread-67361 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88466999, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104472317163848, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3787095, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.39847, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3526225074994, telescope_dec_j2k=-24.2304195485108, observability=1)
2025-11-17T11:13:56.370 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:13:56.371 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:13:56.371 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:13:56.371 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:13:56.371 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:13:57.372 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:13:57.372 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:13:57.372 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:57.373 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:13:57.374 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:13:57.375 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:58.375 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:13:58.376 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:13:58.377 [DEBUG] [ThreadPoolExecutor-2710_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:13:58.377 [INFO] [ThreadPoolExecutor-2710_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Status age = 10.44119381904602s
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:05.945 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:05.946 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:05.947 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:05.947 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 17;17.381635;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40139;2460996.88479105;11.23495972;1.3;_
2025-11-17T11:14:05.948 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response 17;17.381635;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40139;2460996.88479105;11.23495972;1.3;_
2025-11-17T11:14:05.948 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:05.948 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:05.948 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:05.949 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:05.949 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:05.949 [INFO] [Thread-67362 (handle)] [driver.py] [get_status()] Telra = 17.381635, teldec = -24.256568
2025-11-17T11:14:05.949 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] UnCookCoordinates 17.381635 -24.256568
2025-11-17T11:14:05.949 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.381635 -24.256568
2025-11-17T11:14:05.949 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.381635 -24.256568
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 17;17.381635;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40139;2460996.88479109;11.23495972;1.3;_17.3555472681536 -24.2305268616463
2025-11-17T11:14:05.950 [INFO] [Thread-67362 (handle)] [driver.py] [get_status()] ra_j2k = 17.3555472681536     dec_j2k = -24.2305268616463
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 140;0.104472878731047;171.162357330327;_
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response 140;0.104472878731047;171.162357330327;_
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:05.950 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:05.951 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:05.952 [DEBUG] [Thread-67362 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:05.952 [DEBUG] [Thread-67362 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:05.952 [DEBUG] [Thread-67362 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59717)
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:05.956 [DEBUG] [Thread-67362 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:05.963 [DEBUG] [Thread-67362 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:05.963 [DEBUG] [Thread-67362 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:05.963 [DEBUG] [Thread-67362 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:05.963 [DEBUG] [Thread-67362 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:05.964 [DEBUG] [Thread-67362 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:05.964 [DEBUG] [Thread-67362 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:05.964 [DEBUG] [Thread-67362 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:05.964 [DEBUG] [Thread-67362 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:05.964 [DEBUG] [Thread-67362 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:05.964 [INFO] [Thread-67362 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88479105, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104472878731047, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.381635, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40139, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3555472681536, telescope_dec_j2k=-24.2305268616463, observability=1)
2025-11-17T11:14:13.547 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Status age = 7.583738803863525s
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:13.548 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:13.549 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 17;17.3837472;-24.256568;50.108439;89.993061;50.08601;90.12017;14.4035;2460996.88487904;11.23706611;1.3;_
2025-11-17T11:14:13.549 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response 17;17.3837472;-24.256568;50.108439;89.993061;50.08601;90.12017;14.4035;2460996.88487904;11.23706611;1.3;_
2025-11-17T11:14:13.549 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:13.549 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:13.549 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:13.550 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:13.550 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:13.550 [INFO] [Thread-67363 (handle)] [driver.py] [get_status()] Telra = 17.3837472, teldec = -24.256568
2025-11-17T11:14:13.550 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3837472 -24.256568
2025-11-17T11:14:13.550 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3837472 -24.256568
2025-11-17T11:14:13.551 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3837472 -24.256568
2025-11-17T11:14:13.551 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 17;17.3837472;-24.256568;50.108439;89.993061;50.08601;90.12017;14.4035;2460996.88487906;11.23706611;1.3;_17.3576589357653 -24.2306043512836
2025-11-17T11:14:13.551 [INFO] [Thread-67363 (handle)] [driver.py] [get_status()] ra_j2k = 17.3576589357653     dec_j2k = -24.2306043512836
2025-11-17T11:14:13.551 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:13.552 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:13.552 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 140;0.104473640857961;171.162351965909;_
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response 140;0.104473640857961;171.162351965909;_
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:13.553 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:13.554 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:13.554 [DEBUG] [Thread-67363 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:13.554 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:13.554 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:13.554 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:13.555 [DEBUG] [Thread-67363 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:13.555 [DEBUG] [Thread-67363 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:13.555 [DEBUG] [Thread-67363 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54737)
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:13.559 [DEBUG] [Thread-67363 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:13.566 [DEBUG] [Thread-67363 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:13.566 [INFO] [Thread-67363 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88487904, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473640857961, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3837472, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.4035, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3576589357653, telescope_dec_j2k=-24.2306043512836, observability=1)
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.277940273284912s
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3841123;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40387;2460996.88489405;11.23743028;1.3;_
2025-11-17T11:14:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.3841123;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40387;2460996.88489405;11.23743028;1.3;_
2025-11-17T11:14:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:14.847 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.3841123, teldec = -24.256568
2025-11-17T11:14:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3841123 -24.256568
2025-11-17T11:14:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3841123 -24.256568
2025-11-17T11:14:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3841123 -24.256568
2025-11-17T11:14:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.3841123;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40387;2460996.88489407;11.23743028;1.3;_17.3580239438608 -24.2306177464402
2025-11-17T11:14:14.848 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3580239438608     dec_j2k = -24.2306177464402
2025-11-17T11:14:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104473761193789;171.162357330327;_
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104473761193789;171.162357330327;_
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50749)
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:14.855 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:14.862 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88489405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473761193789, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3841123, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3580239438608, telescope_dec_j2k=-24.2306177464402, observability=1)
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.71951699256897s
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:19.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:19.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:19.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3854195;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40518;2460996.88494889;11.23873389;1.3;_
2025-11-17T11:14:19.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.3854195;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40518;2460996.88494889;11.23873389;1.3;_
2025-11-17T11:14:19.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:19.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:19.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:19.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:19.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:19.585 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.3854195, teldec = -24.256568
2025-11-17T11:14:19.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.3854195 -24.256568
2025-11-17T11:14:19.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.3854195 -24.256568
2025-11-17T11:14:19.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3854195 -24.256568
2025-11-17T11:14:19.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.3854195;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40518;2460996.88494891;11.23873389;1.3;_17.3593308150982 -24.2306657083481
2025-11-17T11:14:19.586 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.3593308150982     dec_j2k = -24.2306657083481
2025-11-17T11:14:19.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:19.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104473520522132;171.162357330327;_
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104473520522132;171.162357330327;_
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:19.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:19.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:19.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:19.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:19.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45457)
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:19.595 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:19.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:19.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:19.602 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:19.602 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:19.602 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:19.603 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:19.603 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:19.603 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:19.603 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:14:19.603 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88494889, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473520522132, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3854195, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40518, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3593308150982, telescope_dec_j2k=-24.2306657083481, observability=1)
2025-11-17T11:14:19.603 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.113893270492554 seconds ago
2025-11-17T11:14:22.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:22.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5926570892333984s
2025-11-17T11:14:22.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:22.195 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:22.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:22.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3861479;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40591;2460996.88497913;11.23946028;1.3;_
2025-11-17T11:14:22.197 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.3861479;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40591;2460996.88497913;11.23946028;1.3;_
2025-11-17T11:14:22.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:22.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:22.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:22.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:22.198 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:22.198 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.3861479, teldec = -24.256568
2025-11-17T11:14:22.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3861479 -24.256568
2025-11-17T11:14:22.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3861479 -24.256568
2025-11-17T11:14:22.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3861479 -24.256568
2025-11-17T11:14:22.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.3861479;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40591;2460996.88497916;11.23946028;1.3;_17.360059032102 -24.2306924351365
2025-11-17T11:14:22.200 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.360059032102     dec_j2k = -24.2306924351365
2025-11-17T11:14:22.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:22.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:22.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:22.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104473640857961;171.162351965909;_
2025-11-17T11:14:22.200 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104473640857961;171.162351965909;_
2025-11-17T11:14:22.201 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:22.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:22.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:22.201 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:22.202 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:22.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:22.203 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:22.203 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57289)
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:22.209 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:22.216 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:22.216 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88497913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473640857961, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3861479, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40591, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.360059032102, telescope_dec_j2k=-24.2306924351365, observability=1)
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Status age = 9.399033069610596s
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:31.615 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:31.616 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:31.616 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:31.616 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:31.617 [DEBUG] [Thread-67364 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:31.617 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:31.617 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:31.617 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:31.617 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:31.618 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 17;17.3887893;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40855;2460996.88508817;11.24209444;1.3;_
2025-11-17T11:14:31.618 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response 17;17.3887893;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40855;2460996.88508817;11.24209444;1.3;_
2025-11-17T11:14:31.618 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:31.618 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:31.618 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:31.619 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:31.619 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:31.619 [INFO] [Thread-67364 (handle)] [driver.py] [get_status()] Telra = 17.3887893, teldec = -24.256568
2025-11-17T11:14:31.619 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3887893 -24.256568
2025-11-17T11:14:31.619 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3887893 -24.256568
2025-11-17T11:14:31.619 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3887893 -24.256568
2025-11-17T11:14:31.620 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 17;17.3887893;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40855;2460996.88508819;11.24209444;1.3;_17.3626997696877 -24.2307893628711
2025-11-17T11:14:31.620 [INFO] [Thread-67364 (handle)] [driver.py] [get_status()] ra_j2k = 17.3626997696877     dec_j2k = -24.2307893628711
2025-11-17T11:14:31.620 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:31.620 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:31.620 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 140;0.104473881529618;171.162357330327;_
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response 140;0.104473881529618;171.162357330327;_
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:31.621 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:31.622 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:31.623 [DEBUG] [Thread-67364 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:31.623 [DEBUG] [Thread-67364 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:31.623 [DEBUG] [Thread-67364 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49911)
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:31.627 [DEBUG] [Thread-67364 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:31.634 [DEBUG] [Thread-67364 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:31.635 [DEBUG] [Thread-67364 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:31.635 [INFO] [Thread-67364 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88508817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473881529618, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3887893, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40855, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:13:32.480191', telescope_ra_j2k=17.3626997696877, telescope_dec_j2k=-24.2307893628711, observability=1)
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:32.623 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:32.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:32.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:32.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:32.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:32.624 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:14:32.624 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:32.624 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:14:32.625 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:14:32.626 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:14:32.626 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:33.626 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:14:33.627 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:33.628 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:33.629 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:33.629 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:33.629 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:33.629 [DEBUG] [ThreadPoolExecutor-2712_0] [payload.py] [to_registers()] [0]
2025-11-17T11:14:33.634 [DEBUG] [ThreadPoolExecutor-2712_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53849)
2025-11-17T11:14:33.635 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:33.635 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:33.635 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:14:33.635 [DEBUG] [ThreadPoolExecutor-2712_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:33.635 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:33.642 [DEBUG] [ThreadPoolExecutor-2712_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:34.568 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:14:34
2025-11-17T11:14:34.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:34.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.933413505554199s
2025-11-17T11:14:34.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:34.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:34.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:34.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:34.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:34.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:34.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:34.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3896023;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40936;2460996.88512235;11.24290528;1.3;_
2025-11-17T11:14:34.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.3896023;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40936;2460996.88512235;11.24290528;1.3;_
2025-11-17T11:14:34.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:34.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:34.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:34.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:34.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:34.572 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.3896023, teldec = -24.256568
2025-11-17T11:14:34.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3896023 -24.256568
2025-11-17T11:14:34.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3896023 -24.256568
2025-11-17T11:14:34.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3896023 -24.256568
2025-11-17T11:14:34.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.3896023;-24.256568;50.108439;89.993061;50.08601;90.12017;14.40936;2460996.88512237;11.24290528;1.3;_17.3635125661764 -24.2308191989906
2025-11-17T11:14:34.573 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3635125661764     dec_j2k = -24.2308191989906
2025-11-17T11:14:34.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:34.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:34.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104473801305732;171.162357330327;_
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104473801305732;171.162357330327;_
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:34.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:34.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:34.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:34.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:34.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46043)
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:34.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:34.585 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:34.586 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:34.586 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88512235, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104473801305732, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108439, telescope_az=89.993061, telescope_ra=17.3896023, telescope_dec=-24.256568, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.40936, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3635125661764, telescope_dec_j2k=-24.2308191989906, observability=1)
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Status age = 15.148611545562744s
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:49.734 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:49.735 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:49.735 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:49.735 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 17;17.3938403;-24.256567;50.108438;89.99306;50.08601;90.12017;14.4136;2460996.88529787;11.24713167;1.3;_
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response 17;17.3938403;-24.256567;50.108438;89.99306;50.08601;90.12017;14.4136;2460996.88529787;11.24713167;1.3;_
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:14:49.736 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:14:49.737 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:49.737 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:14:49.737 [INFO] [Thread-67365 (handle)] [driver.py] [get_status()] Telra = 17.3938403, teldec = -24.256567
2025-11-17T11:14:49.737 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3938403 -24.256567
2025-11-17T11:14:49.737 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3938403 -24.256567
2025-11-17T11:14:49.737 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3938403 -24.256567
2025-11-17T11:14:49.738 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 17;17.3938403;-24.256567;50.108438;89.99306;50.08601;90.12017;14.4136;2460996.88529789;11.24713167;1.3;_17.3677495083622 -24.2309737483058
2025-11-17T11:14:49.738 [INFO] [Thread-67365 (handle)] [driver.py] [get_status()] ra_j2k = 17.3677495083622     dec_j2k = -24.2309737483058
2025-11-17T11:14:49.738 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:14:49.738 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:14:49.738 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:14:49.739 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 140;0.104474443096817;171.162362694745;_
2025-11-17T11:14:49.740 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response 140;0.104474443096817;171.162362694745;_
2025-11-17T11:14:49.740 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:14:49.740 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:49.740 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:49.740 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:14:49.741 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:14:49.742 [DEBUG] [Thread-67365 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:49.742 [DEBUG] [Thread-67365 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:14:49.742 [DEBUG] [Thread-67365 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44601)
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:14:49.746 [DEBUG] [Thread-67365 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:14:49.753 [DEBUG] [Thread-67365 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:14:49.753 [INFO] [Thread-67365 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88529787, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104474443096817, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.3938403, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.4136, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3677495083622, telescope_dec_j2k=-24.2309737483058, observability=1)
2025-11-17T11:14:58.642 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:58.642 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:58.642 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:58.642 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:58.642 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:14:58.643 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:14:58.644 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:14:58.645 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:05.996 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Status age = 16.243396759033203s
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:05.997 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:05.998 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:05.999 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 17;17.3983546;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41811;2460996.8854861;11.25163361;1.3;_
2025-11-17T11:15:05.999 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response 17;17.3983546;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41811;2460996.8854861;11.25163361;1.3;_
2025-11-17T11:15:05.999 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:05.999 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:05.999 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:06.000 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:06.000 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:06.000 [INFO] [Thread-67366 (handle)] [driver.py] [get_status()] Telra = 17.3983546, teldec = -24.256567
2025-11-17T11:15:06.000 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3983546 -24.256567
2025-11-17T11:15:06.000 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3983546 -24.256567
2025-11-17T11:15:06.000 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3983546 -24.256567
2025-11-17T11:15:06.001 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 17;17.3983546;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41811;2460996.88548612;11.25163361;1.3;_17.3722626866386 -24.231139475087
2025-11-17T11:15:06.001 [INFO] [Thread-67366 (handle)] [driver.py] [get_status()] ra_j2k = 17.3722626866386     dec_j2k = -24.231139475087
2025-11-17T11:15:06.001 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:06.001 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:06.001 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 140;0.104475526119273;171.162351965909;_
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response 140;0.104475526119273;171.162351965909;_
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:06.002 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:06.003 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:06.004 [DEBUG] [Thread-67366 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:06.004 [DEBUG] [Thread-67366 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:06.004 [DEBUG] [Thread-67366 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50343)
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:06.006 [DEBUG] [Thread-67366 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:06.013 [DEBUG] [Thread-67366 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:06.014 [INFO] [Thread-67366 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8854861, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104475526119273, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.3983546, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.41811, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3722626866386, telescope_dec_j2k=-24.231139475087, observability=1)
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Status age = 1.7864553928375244s
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:07.800 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:07.801 [DEBUG] [Thread-67367 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:07.801 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:07.801 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:07.801 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:07.801 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:07.802 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 17;17.3988499;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41861;2460996.88550697;11.2521275;1.3;_
2025-11-17T11:15:07.802 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response 17;17.3988499;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41861;2460996.88550697;11.2521275;1.3;_
2025-11-17T11:15:07.802 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:07.802 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:07.802 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:07.803 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:07.803 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:07.803 [INFO] [Thread-67367 (handle)] [driver.py] [get_status()] Telra = 17.3988499, teldec = -24.256567
2025-11-17T11:15:07.803 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] UnCookCoordinates 17.3988499 -24.256567
2025-11-17T11:15:07.803 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.3988499 -24.256567
2025-11-17T11:15:07.803 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.3988499 -24.256567
2025-11-17T11:15:07.804 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 17;17.3988499;-24.256567;50.108438;89.99306;50.08601;90.12017;14.41861;2460996.88550699;11.2521275;1.3;_17.372757863896 -24.2311576605722
2025-11-17T11:15:07.804 [INFO] [Thread-67367 (handle)] [driver.py] [get_status()] ra_j2k = 17.372757863896     dec_j2k = -24.2311576605722
2025-11-17T11:15:07.804 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:07.804 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:07.804 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 140;0.104475566231215;171.162368059163;_
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response 140;0.104475566231215;171.162368059163;_
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:07.805 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:07.806 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:07.807 [DEBUG] [Thread-67367 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:07.807 [DEBUG] [Thread-67367 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:07.807 [DEBUG] [Thread-67367 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37355)
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:07.812 [DEBUG] [Thread-67367 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:07.819 [DEBUG] [Thread-67367 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:07.819 [DEBUG] [Thread-67367 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:07.820 [DEBUG] [Thread-67367 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:07.820 [INFO] [Thread-67367 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88550697, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104475566231215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.3988499, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.41861, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.372757863896, telescope_dec_j2k=-24.2311576605722, observability=1)
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.027845144271851s
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4008317;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42059;2460996.88558854;11.25410389;1.3;_
2025-11-17T11:15:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.4008317;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42059;2460996.88558854;11.25410389;1.3;_
2025-11-17T11:15:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:14.851 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.4008317, teldec = -24.256567
2025-11-17T11:15:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4008317 -24.256567
2025-11-17T11:15:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4008317 -24.256567
2025-11-17T11:15:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4008317 -24.256567
2025-11-17T11:15:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4008317;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42059;2460996.88558856;11.25410389;1.3;_17.3747391734313 -24.2312304290253
2025-11-17T11:15:14.852 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3747391734313     dec_j2k = -24.2312304290253
2025-11-17T11:15:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104475726678987;171.162351965909;_
2025-11-17T11:15:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104475726678987;171.162351965909;_
2025-11-17T11:15:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48397)
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:14.868 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88558854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104475726678987, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.4008317, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.42059, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3747391734313, telescope_dec_j2k=-24.2312304290253, observability=1)
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.795531272888184s
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:19.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:19.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:19.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:19.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4021695;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42193;2460996.88564428;11.25543806;1.3;_
2025-11-17T11:15:19.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.4021695;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42193;2460996.88564428;11.25543806;1.3;_
2025-11-17T11:15:19.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:19.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:19.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:19.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:19.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:19.667 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.4021695, teldec = -24.256567
2025-11-17T11:15:19.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.4021695 -24.256567
2025-11-17T11:15:19.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.4021695 -24.256567
2025-11-17T11:15:19.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4021695 -24.256567
2025-11-17T11:15:19.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4021695;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42193;2460996.88564431;11.25543806;1.3;_17.3760766429386 -24.2312795549003
2025-11-17T11:15:19.668 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.3760766429386     dec_j2k = -24.2312795549003
2025-11-17T11:15:19.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:19.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:19.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104476007462586;171.162362694745;_
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104476007462586;171.162362694745;_
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:19.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:19.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:19.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:19.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:19.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60621)
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:19.674 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:19.681 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:19.682 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:15:19.682 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88564428, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104476007462586, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.4021695, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.42193, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3760766429386, telescope_dec_j2k=-24.2312795549003, observability=1)
2025-11-17T11:15:19.682 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.113523721694946 seconds ago
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.616123914718628s
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:21.298 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4026182;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42238;2460996.88566318;11.25588556;1.3;_
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.4026182;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42238;2460996.88566318;11.25588556;1.3;_
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:21.299 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:21.300 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:21.300 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:21.301 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.4026182, teldec = -24.256567
2025-11-17T11:15:21.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4026182 -24.256567
2025-11-17T11:15:21.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4026182 -24.256567
2025-11-17T11:15:21.301 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4026182 -24.256567
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4026182;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42238;2460996.88566321;11.25588556;1.3;_17.3765252321977 -24.2312960325172
2025-11-17T11:15:21.302 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.3765252321977     dec_j2k = -24.2312960325172
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104475124999845;171.162362694745;_
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104475124999845;171.162362694745;_
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:21.302 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:21.303 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:21.304 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:21.304 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:21.304 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49707)
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:21.307 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:21.314 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:21.314 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88566318, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104475124999845, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.4026182, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.42238, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3765252321977, telescope_dec_j2k=-24.2312960325172, observability=1)
2025-11-17T11:15:25.867 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:25.867 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Status age = 4.553137540817261s
2025-11-17T11:15:25.867 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:25.868 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 17;17.4038998;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42366;2460996.88571608;11.25716361;1.3;_
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response 17;17.4038998;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42366;2460996.88571608;11.25716361;1.3;_
2025-11-17T11:15:25.869 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:25.870 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:25.870 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:25.871 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:25.871 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:25.871 [INFO] [Thread-67368 (handle)] [driver.py] [get_status()] Telra = 17.4038998, teldec = -24.256567
2025-11-17T11:15:25.871 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4038998 -24.256567
2025-11-17T11:15:25.871 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4038998 -24.256567
2025-11-17T11:15:25.871 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4038998 -24.256567
2025-11-17T11:15:25.872 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 17;17.4038998;-24.256567;50.108438;89.99306;50.08601;90.12017;14.42366;2460996.88571611;11.25716361;1.3;_17.3778065161897 -24.2313430987486
2025-11-17T11:15:25.872 [INFO] [Thread-67368 (handle)] [driver.py] [get_status()] ra_j2k = 17.3778065161897     dec_j2k = -24.2313430987486
2025-11-17T11:15:25.872 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:25.872 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:25.872 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 140;0.104476087686472;171.162357330327;_
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response 140;0.104476087686472;171.162357330327;_
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:25.873 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:25.874 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:25.875 [DEBUG] [Thread-67368 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:25.875 [DEBUG] [Thread-67368 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:25.875 [DEBUG] [Thread-67368 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:25.879 [DEBUG] [Thread-67368 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54055)
2025-11-17T11:15:25.879 [DEBUG] [Thread-67368 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:25.879 [DEBUG] [Thread-67368 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:25.880 [DEBUG] [Thread-67368 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:25.880 [DEBUG] [Thread-67368 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:25.880 [DEBUG] [Thread-67368 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:25.887 [DEBUG] [Thread-67368 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:25.887 [INFO] [Thread-67368 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88571608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104476087686472, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108438, telescope_az=89.99306, telescope_ra=17.4038998, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.42366, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:14:32.622614', telescope_ra_j2k=17.3778065161897, telescope_dec_j2k=-24.2313430987486, observability=1)
2025-11-17T11:15:32.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:32.765 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:32.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:32.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:32.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:32.766 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:32.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:32.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:32.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:32.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:32.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:32.767 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:15:32.768 [INFO] [ThreadPoolExecutor-2713_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:15:32.768 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:15:34.646 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:15:34
2025-11-17T11:15:34.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.759341955184937s
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:34.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4063498;-24.256567;50.108437;89.99306;50.08601;90.12017;14.42611;2460996.88581769;11.25960694;1.3;_
2025-11-17T11:15:34.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.4063498;-24.256567;50.108437;89.99306;50.08601;90.12017;14.42611;2460996.88581769;11.25960694;1.3;_
2025-11-17T11:15:34.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:34.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:34.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:34.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:34.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:34.650 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.4063498, teldec = -24.256567
2025-11-17T11:15:34.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4063498 -24.256567
2025-11-17T11:15:34.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4063498 -24.256567
2025-11-17T11:15:34.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4063498 -24.256567
2025-11-17T11:15:34.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4063498;-24.256567;50.108437;89.99306;50.08601;90.12017;14.42611;2460996.88581772;11.25960694;1.3;_17.3802559133047 -24.2314330822795
2025-11-17T11:15:34.651 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3802559133047     dec_j2k = -24.2314330822795
2025-11-17T11:15:34.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:34.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:34.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104476970149214;171.162362694745;_
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104476970149214;171.162362694745;_
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:34.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:15:34.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54677)
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:34.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:34.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:34.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:34.662 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:34.662 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:34.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:34.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:34.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:34.663 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:34.663 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:34.663 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88581769, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104476970149214, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108437, telescope_az=89.99306, telescope_ra=17.4063498, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.42611, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.3802559133047, telescope_dec_j2k=-24.2314330822795, observability=1)
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Status age = 9.34401822090149s
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:44.007 [DEBUG] [Thread-67369 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 17;17.4089411;-24.256567;50.108437;89.993059;50.08601;90.12017;14.4287;2460996.88592602;11.26219111;1.3;_
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response 17;17.4089411;-24.256567;50.108437;89.993059;50.08601;90.12017;14.4287;2460996.88592602;11.26219111;1.3;_
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:15:44.008 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:15:44.009 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:15:44.009 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:44.010 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:15:44.010 [INFO] [Thread-67369 (handle)] [driver.py] [get_status()] Telra = 17.4089411, teldec = -24.256567
2025-11-17T11:15:44.010 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4089411 -24.256567
2025-11-17T11:15:44.010 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4089411 -24.256567
2025-11-17T11:15:44.010 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4089411 -24.256567
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 17;17.4089411;-24.256567;50.108437;89.993059;50.08601;90.12017;14.4287;2460996.88592605;11.26219111;1.3;_17.3828465773914 -24.2315282672858
2025-11-17T11:15:44.011 [INFO] [Thread-67369 (handle)] [driver.py] [get_status()] ra_j2k = 17.3828465773914     dec_j2k = -24.2315282672858
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 140;0.104477170708928;171.162351965909;_
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response 140;0.104477170708928;171.162351965909;_
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:44.011 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:44.012 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:44.012 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:15:44.012 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:15:44.012 [DEBUG] [Thread-67369 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:15:44.013 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:15:44.013 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:15:44.013 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:15:44.014 [DEBUG] [Thread-67369 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:15:44.014 [DEBUG] [Thread-67369 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:15:44.014 [DEBUG] [Thread-67369 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:15:44.015 [DEBUG] [Thread-67369 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58909)
2025-11-17T11:15:44.016 [DEBUG] [Thread-67369 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:15:44.016 [DEBUG] [Thread-67369 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:15:44.016 [DEBUG] [Thread-67369 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:15:44.016 [DEBUG] [Thread-67369 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:15:44.016 [DEBUG] [Thread-67369 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:15:44.023 [DEBUG] [Thread-67369 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:15:44.023 [INFO] [Thread-67369 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88592602, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104477170708928, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108437, telescope_az=89.993059, telescope_ra=17.4089411, telescope_dec=-24.256567, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.4287, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.3828465773914, telescope_dec_j2k=-24.2315282672858, observability=1)
2025-11-17T11:15:53.645 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.645 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.645 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:15:53.646 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:53.647 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:53.648 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:53.649 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:53.649 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.649 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:53.649 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:53.649 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.650 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:53.651 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:53.651 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:53.651 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:53.651 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Park
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:15:53.652 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:15:53.653 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 29;17.4116448;-24.256566;50.108437;89.993059;50.08601;90.12017;14.4314;2460996.88603765;11.2648875;1.3;_Park Command Successful
2025-11-17T11:15:54.653 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:15:54.653 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:15:54.653 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:15:54.654 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:15:54.654 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:15:55.654 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:15:55.654 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:15:55.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:15:55.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:15:55.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:15:56.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:15:56.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:15:56.655 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:15:56.656 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:15:56.656 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:15:57.656 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:15:57.656 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:15:57.656 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:57.657 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:15:57.658 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:15:57.659 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:58.659 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:58.659 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:58.659 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:15:58.659 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:15:58.659 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:15:58.660 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:15:58.661 [DEBUG] [ThreadPoolExecutor-2712_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:15:58.661 [INFO] [ThreadPoolExecutor-2712_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Status age = 18.061094522476196s
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:02.084 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:02.085 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:02.086 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:02.087 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 17;17.4139821;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43374;2460996.88613527;11.26721833;1.3;_
2025-11-17T11:16:02.087 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response 17;17.4139821;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43374;2460996.88613527;11.26721833;1.3;_
2025-11-17T11:16:02.087 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:02.087 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:02.087 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:02.088 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:02.088 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:02.088 [INFO] [Thread-67370 (handle)] [driver.py] [get_status()] Telra = 17.4139821, teldec = -24.256566
2025-11-17T11:16:02.088 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4139821 -24.256566
2025-11-17T11:16:02.088 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4139821 -24.256566
2025-11-17T11:16:02.088 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4139821 -24.256566
2025-11-17T11:16:02.089 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 17;17.4139821;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43374;2460996.88613529;11.26721833;1.3;_17.3878863456423 -24.2317124706489
2025-11-17T11:16:02.089 [INFO] [Thread-67370 (handle)] [driver.py] [get_status()] ra_j2k = 17.3878863456423     dec_j2k = -24.2317124706489
2025-11-17T11:16:02.089 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:02.089 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:02.089 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 140;0.104477892723898;171.162357330327;_
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response 140;0.104477892723898;171.162357330327;_
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:02.090 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.00329;_GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:02.091 [DEBUG] [Thread-67370 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44187)
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:02.093 [DEBUG] [Thread-67370 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:02.101 [DEBUG] [Thread-67370 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:02.101 [INFO] [Thread-67370 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88613527, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104477892723898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108437, telescope_az=89.993059, telescope_ra=17.4139821, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.43374, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.3878863456423, telescope_dec_j2k=-24.2317124706489, observability=1)
2025-11-17T11:16:06.064 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Status age = 3.963383436203003s
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:06.065 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:06.066 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:06.067 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 17;17.4150762;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43483;2460996.88618133;11.26830944;1.3;_
2025-11-17T11:16:06.067 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response 17;17.4150762;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43483;2460996.88618133;11.26830944;1.3;_
2025-11-17T11:16:06.067 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:06.067 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:06.067 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:06.068 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:06.068 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:06.068 [INFO] [Thread-67371 (handle)] [driver.py] [get_status()] Telra = 17.4150762, teldec = -24.256566
2025-11-17T11:16:06.068 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4150762 -24.256566
2025-11-17T11:16:06.068 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4150762 -24.256566
2025-11-17T11:16:06.068 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4150762 -24.256566
2025-11-17T11:16:06.069 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 17;17.4150762;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43483;2460996.88618135;11.26830944;1.3;_17.388980179156 -24.2317526732432
2025-11-17T11:16:06.069 [INFO] [Thread-67371 (handle)] [driver.py] [get_status()] ra_j2k = 17.388980179156     dec_j2k = -24.2317526732432
2025-11-17T11:16:06.069 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:06.069 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 140;0.104478333955269;171.162351965909;_
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response 140;0.104478333955269;171.162351965909;_
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:06.070 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:06.071 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:06.071 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:06.071 [DEBUG] [Thread-67371 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:06.071 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:06.071 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:06.072 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:06.073 [DEBUG] [Thread-67371 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:06.073 [DEBUG] [Thread-67371 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:06.073 [DEBUG] [Thread-67371 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53495)
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:06.080 [DEBUG] [Thread-67371 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:06.088 [DEBUG] [Thread-67371 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:06.088 [INFO] [Thread-67371 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88618133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104478333955269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108437, telescope_az=89.993059, telescope_ra=17.4150762, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.43483, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.388980179156, telescope_dec_j2k=-24.2317526732432, observability=1)
2025-11-17T11:16:14.851 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.763177156448364s
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:14.853 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:14.853 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4175501;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43731;2460996.88628302;11.27077667;1.3;_
2025-11-17T11:16:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.4175501;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43731;2460996.88628302;11.27077667;1.3;_
2025-11-17T11:16:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:14.854 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:14.855 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.4175501, teldec = -24.256566
2025-11-17T11:16:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4175501 -24.256566
2025-11-17T11:16:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4175501 -24.256566
2025-11-17T11:16:14.855 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4175501 -24.256566
2025-11-17T11:16:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4175501;-24.256566;50.108437;89.993059;50.08601;90.12017;14.43731;2460996.88628306;11.27077667;1.3;_17.3914534777744 -24.23184358433
2025-11-17T11:16:14.856 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.3914534777744     dec_j2k = -24.23184358433
2025-11-17T11:16:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:14.856 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104478454291097;171.162362694745;_
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104478454291097;171.162362694745;_
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49671)
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:14.861 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:14.869 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88628302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104478454291097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108437, telescope_az=89.993059, telescope_ra=17.4175501, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.43731, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.3914534777744, telescope_dec_j2k=-24.23184358433, observability=1)
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.873180150985718s
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:19.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:19.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:19.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:19.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4188869;-24.256566;50.108436;89.993059;50.08601;90.12017;14.43864;2460996.88633963;11.27210972;1.3;_
2025-11-17T11:16:19.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.4188869;-24.256566;50.108436;89.993059;50.08601;90.12017;14.43864;2460996.88633963;11.27210972;1.3;_
2025-11-17T11:16:19.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:19.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:19.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:19.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:19.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:19.746 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.4188869, teldec = -24.256566
2025-11-17T11:16:19.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.4188869 -24.256566
2025-11-17T11:16:19.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.4188869 -24.256566
2025-11-17T11:16:19.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4188869 -24.256566
2025-11-17T11:16:19.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4188869;-24.256566;50.108436;89.993059;50.08601;90.12017;14.43864;2460996.88633966;11.27210972;1.3;_17.3927899534908 -24.231892713707
2025-11-17T11:16:19.747 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.3927899534908     dec_j2k = -24.231892713707
2025-11-17T11:16:19.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:19.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:19.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104478855410525;171.162357330327;_
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104478855410525;171.162357330327;_
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:19.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:19.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:19.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:19.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:19.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49121)
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:19.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:19.761 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:19.762 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:16:19.762 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88633963, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104478855410525, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108436, telescope_az=89.993059, telescope_ra=17.4188869, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.43864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:15:32.765130', telescope_ra_j2k=17.3927899534908, telescope_dec_j2k=-24.231892713707, observability=1)
2025-11-17T11:16:19.762 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11607122421265 seconds ago
2025-11-17T11:16:20.204 [DEBUG] [Thread-67372 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:20.204 [DEBUG] [Thread-67372 (handle)] [server.py] [get_status()] Status age = 0.4423978328704834s
2025-11-17T11:16:20.204 [DEBUG] [Thread-67372 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4423978328704834
2025-11-17T11:16:20.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:20.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.6473386287689209s
2025-11-17T11:16:20.409 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6473386287689209
2025-11-17T11:16:32.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:32.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:32.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:32.908 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:32.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:32.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:32.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:32.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:32.909 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:16:32.909 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:16:32.910 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:16:32.911 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:33.911 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:16:33.912 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:33.913 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:33.914 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:33.914 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:33.914 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:33.915 [DEBUG] [ThreadPoolExecutor-2714_0] [payload.py] [to_registers()] [0]
2025-11-17T11:16:33.920 [DEBUG] [ThreadPoolExecutor-2714_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42141)
2025-11-17T11:16:33.920 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:33.921 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:33.921 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:16:33.921 [DEBUG] [ThreadPoolExecutor-2714_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:33.921 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:33.928 [DEBUG] [ThreadPoolExecutor-2714_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:34.724 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:16:34
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.961795568466187s
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:34.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:34.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:34.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4230702;-24.256566;50.108436;89.993059;50.08601;90.12017;14.44283;2460996.88651303;11.27628167;1.3;_
2025-11-17T11:16:34.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.4230702;-24.256566;50.108436;89.993059;50.08601;90.12017;14.44283;2460996.88651303;11.27628167;1.3;_
2025-11-17T11:16:34.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:34.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:34.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:34.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:34.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:34.728 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.4230702, teldec = -24.256566
2025-11-17T11:16:34.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4230702 -24.256566
2025-11-17T11:16:34.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4230702 -24.256566
2025-11-17T11:16:34.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4230702 -24.256566
2025-11-17T11:16:34.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4230702;-24.256566;50.108436;89.993059;50.08601;90.12017;14.44283;2460996.88651307;11.27628167;1.3;_17.3969722417799 -24.2320464766599
2025-11-17T11:16:34.729 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.3969722417799     dec_j2k = -24.2320464766599
2025-11-17T11:16:34.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:34.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:34.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104479216418011;171.162362694745;_
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104479216418011;171.162362694745;_
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:34.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:34.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:34.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:34.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:34.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37495)
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:34.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:34.746 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:34.747 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88651303, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104479216418011, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108436, telescope_az=89.993059, telescope_ra=17.4230702, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.44283, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.3969722417799, telescope_dec_j2k=-24.2320464766599, observability=1)
2025-11-17T11:16:38.260 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:38.260 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Status age = 3.51385760307312s
2025-11-17T11:16:38.260 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:38.260 [DEBUG] [Thread-67373 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:38.260 [DEBUG] [Thread-67373 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:38.261 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:38.261 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:38.261 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:38.262 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:38.263 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 17;17.4240691;-24.256566;50.108436;89.993058;50.08601;90.12017;14.44383;2460996.88655397;11.27727778;1.3;_
2025-11-17T11:16:38.263 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response 17;17.4240691;-24.256566;50.108436;89.993058;50.08601;90.12017;14.44383;2460996.88655397;11.27727778;1.3;_
2025-11-17T11:16:38.263 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:38.263 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:38.263 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:38.264 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:38.264 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:38.264 [INFO] [Thread-67373 (handle)] [driver.py] [get_status()] Telra = 17.4240691, teldec = -24.256566
2025-11-17T11:16:38.264 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4240691 -24.256566
2025-11-17T11:16:38.264 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4240691 -24.256566
2025-11-17T11:16:38.264 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4240691 -24.256566
2025-11-17T11:16:38.265 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 17;17.4240691;-24.256566;50.108436;89.993058;50.08601;90.12017;14.44383;2460996.88655399;11.27727778;1.3;_17.3979709008917 -24.2320831971844
2025-11-17T11:16:38.265 [INFO] [Thread-67373 (handle)] [driver.py] [get_status()] ra_j2k = 17.3979709008917     dec_j2k = -24.2320831971844
2025-11-17T11:16:38.265 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:38.265 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:38.265 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 140;0.104479296641896;171.162362694745;_
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response 140;0.104479296641896;171.162362694745;_
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:38.266 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:38.267 [DEBUG] [Thread-67373 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:38.267 [DEBUG] [Thread-67373 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:38.267 [DEBUG] [Thread-67373 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50269)
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:38.273 [DEBUG] [Thread-67373 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:38.280 [DEBUG] [Thread-67373 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:38.281 [DEBUG] [Thread-67373 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:38.281 [DEBUG] [Thread-67373 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:38.281 [INFO] [Thread-67373 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88655397, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104479296641896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108436, telescope_az=89.993058, telescope_ra=17.4240691, telescope_dec=-24.256566, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.44383, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.3979709008917, telescope_dec_j2k=-24.2320831971844, observability=1)
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Status age = 18.046143293380737s
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:56.327 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:16:56.328 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:16:56.329 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 17;17.4290831;-24.256565;50.108436;89.993058;50.08601;90.12017;14.44884;2460996.88676307;11.28227806;1.3;_
2025-11-17T11:16:56.329 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response 17;17.4290831;-24.256565;50.108436;89.993058;50.08601;90.12017;14.44884;2460996.88676307;11.28227806;1.3;_
2025-11-17T11:16:56.329 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:16:56.329 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:16:56.329 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:16:56.330 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:56.330 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:16:56.330 [INFO] [Thread-67374 (handle)] [driver.py] [get_status()] Telra = 17.4290831, teldec = -24.256565
2025-11-17T11:16:56.330 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4290831 -24.256565
2025-11-17T11:16:56.330 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4290831 -24.256565
2025-11-17T11:16:56.330 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4290831 -24.256565
2025-11-17T11:16:56.331 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 17;17.4290831;-24.256565;50.108436;89.993058;50.08601;90.12017;14.44884;2460996.88676309;11.28227806;1.3;_17.4029836959709 -24.2322665432353
2025-11-17T11:16:56.331 [INFO] [Thread-67374 (handle)] [driver.py] [get_status()] ra_j2k = 17.4029836959709     dec_j2k = -24.2322665432353
2025-11-17T11:16:56.331 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:16:56.331 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:16:56.331 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 140;0.104479376865782;171.162362694745;_
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response 140;0.104479376865782;171.162362694745;_
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:56.332 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response 16;2.933;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.933 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:16:56.333 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:16:56.334 [DEBUG] [Thread-67374 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:56.334 [DEBUG] [Thread-67374 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:16:56.334 [DEBUG] [Thread-67374 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47711)
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:16:56.338 [DEBUG] [Thread-67374 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:16:56.345 [DEBUG] [Thread-67374 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:16:56.345 [DEBUG] [Thread-67374 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:56.345 [DEBUG] [Thread-67374 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:16:56.345 [DEBUG] [Thread-67374 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:16:56.345 [DEBUG] [Thread-67374 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:16:56.346 [DEBUG] [Thread-67374 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:16:56.346 [DEBUG] [Thread-67374 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:16:56.346 [DEBUG] [Thread-67374 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:16:56.346 [DEBUG] [Thread-67374 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:16:56.346 [INFO] [Thread-67374 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88676307, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.933, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10300000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104479376865782, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108436, telescope_az=89.993058, telescope_ra=17.4290831, telescope_dec=-24.256565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.44884, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.4029836959709, telescope_dec_j2k=-24.2322665432353, observability=1)
2025-11-17T11:16:58.928 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:58.928 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:58.928 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:58.928 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:58.928 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:16:58.929 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:16:58.930 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:16:58.931 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Status age = 9.774986743927002s
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:06.121 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:06.122 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:06.123 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 17;17.4318219;-24.256565;50.108436;89.993058;50.08601;90.12017;14.45158;2460996.88687642;11.28500944;1.3;_
2025-11-17T11:17:06.123 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response 17;17.4318219;-24.256565;50.108436;89.993058;50.08601;90.12017;14.45158;2460996.88687642;11.28500944;1.3;_
2025-11-17T11:17:06.123 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:06.123 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:06.123 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:06.124 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:06.124 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:06.124 [INFO] [Thread-67375 (handle)] [driver.py] [get_status()] Telra = 17.4318219, teldec = -24.256565
2025-11-17T11:17:06.124 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4318219 -24.256565
2025-11-17T11:17:06.124 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4318219 -24.256565
2025-11-17T11:17:06.125 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4318219 -24.256565
2025-11-17T11:17:06.125 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 17;17.4318219;-24.256565;50.108436;89.993058;50.08601;90.12017;14.45158;2460996.88687645;11.28500944;1.3;_17.4057218405346 -24.2323672572691
2025-11-17T11:17:06.125 [INFO] [Thread-67375 (handle)] [driver.py] [get_status()] ra_j2k = 17.4057218405346     dec_j2k = -24.2323672572691
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 140;0.104480419776295;171.162362694745;_
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response 140;0.104480419776295;171.162362694745;_
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:06.126 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:06.127 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:06.127 [DEBUG] [Thread-67375 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:06.127 [DEBUG] [Thread-67375 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:06.127 [DEBUG] [Thread-67375 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:06.131 [DEBUG] [Thread-67375 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58429)
2025-11-17T11:17:06.132 [DEBUG] [Thread-67375 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:06.132 [DEBUG] [Thread-67375 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:06.132 [DEBUG] [Thread-67375 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:06.132 [DEBUG] [Thread-67375 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:06.132 [DEBUG] [Thread-67375 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:06.139 [DEBUG] [Thread-67375 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:06.139 [INFO] [Thread-67375 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88687642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104480419776295, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108436, telescope_az=89.993058, telescope_ra=17.4318219, telescope_dec=-24.256565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.45158, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.4057218405346, telescope_dec_j2k=-24.2323672572691, observability=1)
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Status age = 8.329625129699707s
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:14.469 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:14.470 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:14.471 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 17;17.4341561;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45391;2460996.88697304;11.28733722;1.3;_
2025-11-17T11:17:14.471 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response 17;17.4341561;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45391;2460996.88697304;11.28733722;1.3;_
2025-11-17T11:17:14.471 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:14.471 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:14.471 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:14.472 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:14.472 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:14.472 [INFO] [Thread-67376 (handle)] [driver.py] [get_status()] Telra = 17.4341561, teldec = -24.256565
2025-11-17T11:17:14.472 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4341561 -24.256565
2025-11-17T11:17:14.472 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4341561 -24.256565
2025-11-17T11:17:14.472 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4341561 -24.256565
2025-11-17T11:17:14.473 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 17;17.4341561;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45391;2460996.88697307;11.28733722;1.3;_17.408055483507 -24.232453103257
2025-11-17T11:17:14.473 [INFO] [Thread-67376 (handle)] [driver.py] [get_status()] ra_j2k = 17.408055483507     dec_j2k = -24.232453103257
2025-11-17T11:17:14.473 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:14.473 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:14.473 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 140;0.104480339552409;171.162357330327;_
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response 140;0.104480339552409;171.162357330327;_
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:14.474 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:14.475 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:14.475 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:14.475 [DEBUG] [Thread-67376 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:14.475 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:14.475 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:14.476 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:14.476 [DEBUG] [Thread-67376 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:17:14.476 [DEBUG] [Thread-67376 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:17:14.476 [DEBUG] [Thread-67376 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39179)
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:14.477 [DEBUG] [Thread-67376 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:14.484 [DEBUG] [Thread-67376 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:14.484 [DEBUG] [Thread-67376 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:14.484 [DEBUG] [Thread-67376 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:14.484 [DEBUG] [Thread-67376 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:14.485 [DEBUG] [Thread-67376 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:14.485 [DEBUG] [Thread-67376 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:14.485 [DEBUG] [Thread-67376 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:14.485 [DEBUG] [Thread-67376 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:14.485 [DEBUG] [Thread-67376 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:14.485 [INFO] [Thread-67376 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88697304, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104480339552409, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108435, telescope_az=89.993058, telescope_ra=17.4341561, telescope_dec=-24.256565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.45391, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.408055483507, telescope_dec_j2k=-24.232453103257, observability=1)
2025-11-17T11:17:14.871 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:14.871 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.38596677780151367s
2025-11-17T11:17:14.871 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.38596677780151367
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.0149900913238525s
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:19.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:19.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:19.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4355469;-24.256565;50.108435;89.993058;50.08601;90.12017;14.4553;2460996.88703126;11.28872417;1.3;_
2025-11-17T11:17:19.501 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.4355469;-24.256565;50.108435;89.993058;50.08601;90.12017;14.4553;2460996.88703126;11.28872417;1.3;_
2025-11-17T11:17:19.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:19.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:19.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:19.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:19.503 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:19.503 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.4355469, teldec = -24.256565
2025-11-17T11:17:19.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4355469 -24.256565
2025-11-17T11:17:19.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4355469 -24.256565
2025-11-17T11:17:19.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4355469 -24.256565
2025-11-17T11:17:19.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4355469;-24.256565;50.108435;89.993058;50.08601;90.12017;14.4553;2460996.8870313;11.28872417;1.3;_17.4094459523022 -24.2325042578784
2025-11-17T11:17:19.504 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.4094459523022     dec_j2k = -24.2325042578784
2025-11-17T11:17:19.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:19.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:19.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104480339552409;171.162351965909;_
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104480339552409;171.162351965909;_
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:19.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:19.506 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:19.507 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:19.507 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:19.507 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43245)
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:19.513 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:19.521 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:19.521 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88703126, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104480339552409, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108435, telescope_az=89.993058, telescope_ra=17.4355469, telescope_dec=-24.256565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.4553, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.4094459523022, telescope_dec_j2k=-24.2325042578784, observability=1)
2025-11-17T11:17:19.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:17:19.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.30045247077941895s
2025-11-17T11:17:19.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.30045247077941895
2025-11-17T11:17:19.822 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0983829498291 seconds ago
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Status age = 13.006011724472046s
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:32.527 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:32.528 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:32.529 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 17;17.4391693;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45893;2460996.88718205;11.29233667;1.3;_
2025-11-17T11:17:32.529 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response 17;17.4391693;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45893;2460996.88718205;11.29233667;1.3;_
2025-11-17T11:17:32.529 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:32.529 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:32.529 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:32.530 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:32.530 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:32.530 [INFO] [Thread-67377 (handle)] [driver.py] [get_status()] Telra = 17.4391693, teldec = -24.256565
2025-11-17T11:17:32.530 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4391693 -24.256565
2025-11-17T11:17:32.530 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4391693 -24.256565
2025-11-17T11:17:32.530 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4391693 -24.256565
2025-11-17T11:17:32.531 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 17;17.4391693;-24.256565;50.108435;89.993058;50.08601;90.12017;14.45893;2460996.88718207;11.29233667;1.3;_17.413067492091 -24.2326375080863
2025-11-17T11:17:32.531 [INFO] [Thread-67377 (handle)] [driver.py] [get_status()] ra_j2k = 17.413067492091     dec_j2k = -24.2326375080863
2025-11-17T11:17:32.531 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 140;0.104481141791265;171.162362694745;_
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response 140;0.104481141791265;171.162362694745;_
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:32.532 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:32.533 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:32.533 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:32.533 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:32.533 [DEBUG] [Thread-67377 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:32.533 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:32.534 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:32.534 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:32.534 [DEBUG] [Thread-67377 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:32.534 [DEBUG] [Thread-67377 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:32.534 [DEBUG] [Thread-67377 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:32.539 [DEBUG] [Thread-67377 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59143)
2025-11-17T11:17:32.539 [DEBUG] [Thread-67377 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:32.539 [DEBUG] [Thread-67377 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:32.539 [DEBUG] [Thread-67377 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:32.540 [DEBUG] [Thread-67377 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:32.540 [DEBUG] [Thread-67377 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:32.547 [DEBUG] [Thread-67377 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:32.547 [INFO] [Thread-67377 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88718205, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104481141791265, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108435, telescope_az=89.993058, telescope_ra=17.4391693, telescope_dec=-24.256565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.45893, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:16:32.907277', telescope_ra_j2k=17.413067492091, telescope_dec_j2k=-24.2326375080863, observability=1)
2025-11-17T11:17:33.047 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:33.047 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:33.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:33.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:33.047 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:33.048 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:33.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:33.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:33.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:33.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:33.049 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:17:33.049 [INFO] [ThreadPoolExecutor-2715_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:17:33.049 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:17:34.807 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:17:34
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.2597603797912598s
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:34.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:34.808 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:34.809 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4398143;-24.256571;50.108435;89.993068;50.08601;90.12018;14.45957;2460996.88720844;11.29297972;1.3;_
2025-11-17T11:17:34.809 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.4398143;-24.256571;50.108435;89.993068;50.08601;90.12018;14.45957;2460996.88720844;11.29297972;1.3;_
2025-11-17T11:17:34.809 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:34.809 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:34.809 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:34.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:34.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:34.810 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.4398143, teldec = -24.256571
2025-11-17T11:17:34.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4398143 -24.256571
2025-11-17T11:17:34.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4398143 -24.256571
2025-11-17T11:17:34.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4398143 -24.256571
2025-11-17T11:17:34.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4398143;-24.256571;50.108435;89.993068;50.08601;90.12018;14.45957;2460996.88720846;11.29297972;1.3;_17.4137123381106 -24.2326672365365
2025-11-17T11:17:34.811 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4137123381106     dec_j2k = -24.2326672365365
2025-11-17T11:17:34.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:34.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:34.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:34.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104481422574865;171.162351965909;_
2025-11-17T11:17:34.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104481422574865;171.162351965909;_
2025-11-17T11:17:34.812 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:34.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:34.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:34.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:34.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:34.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:34.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:34.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37163)
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:34.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:34.828 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:34.828 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88720844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104481422574865, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108435, telescope_az=89.993068, telescope_ra=17.4398143, telescope_dec=-24.256571, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.45957, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4137123381106, telescope_dec_j2k=-24.2326672365365, observability=1)
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Status age = 15.764741897583008s
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:50.593 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:17:50.594 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:17:50.595 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 17;17.4441922;-24.256564;50.108435;89.993057;50.08601;90.12017;14.46395;2460996.88739115;11.29734583;1.3;_
2025-11-17T11:17:50.595 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response 17;17.4441922;-24.256564;50.108435;89.993057;50.08601;90.12017;14.46395;2460996.88739115;11.29734583;1.3;_
2025-11-17T11:17:50.595 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:17:50.595 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:17:50.595 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:17:50.596 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:50.596 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:17:50.596 [INFO] [Thread-67378 (handle)] [driver.py] [get_status()] Telra = 17.4441922, teldec = -24.256564
2025-11-17T11:17:50.596 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4441922 -24.256564
2025-11-17T11:17:50.596 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4441922 -24.256564
2025-11-17T11:17:50.596 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4441922 -24.256564
2025-11-17T11:17:50.597 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 17;17.4441922;-24.256564;50.108435;89.993057;50.08601;90.12017;14.46395;2460996.88739117;11.29734583;1.3;_17.4180892053034 -24.2328213132723
2025-11-17T11:17:50.597 [INFO] [Thread-67378 (handle)] [driver.py] [get_status()] ra_j2k = 17.4180892053034     dec_j2k = -24.2328213132723
2025-11-17T11:17:50.597 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:17:50.597 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:17:50.597 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:17:50.598 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 140;0.10448178358235;171.162346601491;_
2025-11-17T11:17:50.598 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response 140;0.10448178358235;171.162346601491;_
2025-11-17T11:17:50.598 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:17:50.598 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:50.599 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:50.599 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:50.599 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:50.599 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:50.599 [DEBUG] [Thread-67378 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:17:50.600 [DEBUG] [Thread-67378 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34955)
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:17:50.605 [DEBUG] [Thread-67378 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:17:50.612 [DEBUG] [Thread-67378 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:17:50.612 [INFO] [Thread-67378 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88739115, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448178358235, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108435, telescope_az=89.993057, telescope_ra=17.4441922, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.46395, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4180892053034, telescope_dec_j2k=-24.2328213132723, observability=1)
2025-11-17T11:17:53.931 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.931 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.931 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:53.931 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:53.931 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:17:53.932 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:53.933 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:53.934 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:17:53.935 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:53.936 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Park
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:17:53.937 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:17:53.938 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 29;17.4451353;-24.256564;50.108435;89.993057;50.08601;90.12017;14.46489;2460996.88742984;11.29828639;1.3;_Park Command Successful
2025-11-17T11:17:54.938 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:17:54.939 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:17:54.939 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:17:54.940 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:17:54.940 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:17:55.940 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:17:55.940 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:17:55.940 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:17:55.941 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:17:55.941 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:17:56.941 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:17:56.941 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:17:56.941 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:17:56.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:17:56.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:17:57.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:17:57.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:17:57.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:17:57.942 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:17:57.943 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:17:57.944 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:58.944 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:58.944 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:58.944 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:17:58.944 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:17:58.945 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:17:58.946 [DEBUG] [ThreadPoolExecutor-2714_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:17:58.946 [INFO] [ThreadPoolExecutor-2714_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Status age = 15.559484720230103s
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:06.172 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:06.173 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:06.174 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 17;17.4485357;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46829;2460996.88757146;11.3016775;1.3;_
2025-11-17T11:18:06.174 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response 17;17.4485357;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46829;2460996.88757146;11.3016775;1.3;_
2025-11-17T11:18:06.174 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:06.174 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:06.174 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:06.175 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:06.175 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:06.175 [INFO] [Thread-67379 (handle)] [driver.py] [get_status()] Telra = 17.4485357, teldec = -24.256564
2025-11-17T11:18:06.175 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4485357 -24.256564
2025-11-17T11:18:06.175 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4485357 -24.256564
2025-11-17T11:18:06.175 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4485357 -24.256564
2025-11-17T11:18:06.176 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 17;17.4485357;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46829;2460996.88757148;11.3016775;1.3;_17.4224316843099 -24.2329811564367
2025-11-17T11:18:06.176 [INFO] [Thread-67379 (handle)] [driver.py] [get_status()] ra_j2k = 17.4224316843099     dec_j2k = -24.2329811564367
2025-11-17T11:18:06.176 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:06.176 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 140;0.104482305037607;171.162357330327;_
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response 140;0.104482305037607;171.162357330327;_
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:06.177 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:06.178 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:06.179 [DEBUG] [Thread-67379 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:06.179 [DEBUG] [Thread-67379 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:06.179 [DEBUG] [Thread-67379 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56039)
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:06.183 [DEBUG] [Thread-67379 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:06.191 [DEBUG] [Thread-67379 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:06.191 [INFO] [Thread-67379 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88757146, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104482305037607, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.4485357, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.46829, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4224316843099, telescope_dec_j2k=-24.2329811564367, observability=1)
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Status age = 2.529865264892578s
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:08.721 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:08.722 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:08.723 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 17;17.4492638;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46902;2460996.88760096;11.30240361;1.3;_
2025-11-17T11:18:08.723 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response 17;17.4492638;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46902;2460996.88760096;11.30240361;1.3;_
2025-11-17T11:18:08.723 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:08.723 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:08.723 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:08.724 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:08.724 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:08.724 [INFO] [Thread-67380 (handle)] [driver.py] [get_status()] Telra = 17.4492638, teldec = -24.256564
2025-11-17T11:18:08.724 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4492638 -24.256564
2025-11-17T11:18:08.724 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4492638 -24.256564
2025-11-17T11:18:08.724 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4492638 -24.256564
2025-11-17T11:18:08.725 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 17;17.4492638;-24.256564;50.108434;89.993057;50.08601;90.12017;14.46902;2460996.88760098;11.30240361;1.3;_17.4231596136547 -24.2330079540619
2025-11-17T11:18:08.725 [INFO] [Thread-67380 (handle)] [driver.py] [get_status()] ra_j2k = 17.4231596136547     dec_j2k = -24.2330079540619
2025-11-17T11:18:08.725 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:08.725 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 140;0.104482144589836;171.162357330327;_
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response 140;0.104482144589836;171.162357330327;_
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:08.726 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:08.727 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:08.727 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:08.727 [DEBUG] [Thread-67380 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:08.727 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:08.727 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:08.728 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:08.728 [DEBUG] [Thread-67380 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:08.728 [DEBUG] [Thread-67380 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:08.728 [DEBUG] [Thread-67380 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49901)
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:08.734 [DEBUG] [Thread-67380 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:08.742 [DEBUG] [Thread-67380 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:08.742 [INFO] [Thread-67380 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88760096, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104482144589836, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.4492638, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.46902, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4231596136547, telescope_dec_j2k=-24.2330079540619, observability=1)
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.099433660507202s
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4509632;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47072;2460996.88767181;11.30409833;1.3;_
2025-11-17T11:18:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.4509632;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47072;2460996.88767181;11.30409833;1.3;_
2025-11-17T11:18:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:14.845 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.4509632, teldec = -24.256564
2025-11-17T11:18:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4509632 -24.256564
2025-11-17T11:18:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4509632 -24.256564
2025-11-17T11:18:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4509632 -24.256564
2025-11-17T11:18:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4509632;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47072;2460996.88767183;11.30409833;1.3;_17.4248586158938 -24.2330705037623
2025-11-17T11:18:14.846 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.4248586158938     dec_j2k = -24.2330705037623
2025-11-17T11:18:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104481663246522;171.162357330327;_
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104481663246522;171.162357330327;_
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:14.851 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59325)
2025-11-17T11:18:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:14.851 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:14.852 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:14.852 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:14.859 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:14.860 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:14.860 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:14.860 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:14.860 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88767181, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104481663246522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.4509632, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47072, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4248586158938, telescope_dec_j2k=-24.2330705037623, observability=1)
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.7533257007598877s
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:18.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4520186;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47178;2460996.88771544;11.30515083;1.3;_
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.4520186;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47178;2460996.88771544;11.30515083;1.3;_
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:18.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:18.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:18.615 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:18.615 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.4520186, teldec = -24.256564
2025-11-17T11:18:18.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4520186 -24.256564
2025-11-17T11:18:18.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4520186 -24.256564
2025-11-17T11:18:18.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4520186 -24.256564
2025-11-17T11:18:18.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.4520186;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47178;2460996.88771546;11.30515083;1.3;_17.4259137692561 -24.2331093522651
2025-11-17T11:18:18.616 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.4259137692561     dec_j2k = -24.2331093522651
2025-11-17T11:18:18.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10448234514955;171.162357330327;_
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10448234514955;171.162357330327;_
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:18.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:18.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:18.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:18.619 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:18.619 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60055)
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:18.626 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:18.633 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:18.633 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:18.633 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:18.633 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:18.633 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:18.634 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:18.634 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:18.634 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:18.634 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:18.634 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88771544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448234514955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.4520186, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4259137692561, telescope_dec_j2k=-24.2331093522651, observability=1)
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.2478880882263184s
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:19.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:19.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:19.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:19.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.452355;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47211;2460996.88773013;11.30548639;1.3;_
2025-11-17T11:18:19.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.452355;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47211;2460996.88773013;11.30548639;1.3;_
2025-11-17T11:18:19.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:19.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:19.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:19.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:19.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:19.885 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.452355, teldec = -24.256564
2025-11-17T11:18:19.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.452355 -24.256564
2025-11-17T11:18:19.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.452355 -24.256564
2025-11-17T11:18:19.885 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.452355 -24.256564
2025-11-17T11:18:19.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.452355;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47211;2460996.88773016;11.30548639;1.3;_17.426250090705 -24.2331217352999
2025-11-17T11:18:19.886 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.426250090705     dec_j2k = -24.2331217352999
2025-11-17T11:18:19.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:19.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:19.886 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104481823694293;171.162357330327;_
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104481823694293;171.162357330327;_
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:19.887 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:19.888 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:19.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:18:19.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:18:19.889 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:18:19.895 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37225)
2025-11-17T11:18:19.895 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:19.896 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:19.896 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:19.896 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:19.896 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:19.903 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:18:19.903 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88773013, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104481823694293, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.452355, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47211, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.426250090705, telescope_dec_j2k=-24.2331217352999, observability=1)
2025-11-17T11:18:19.903 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09639596939087 seconds ago
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Status age = 6.87787652015686s
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:26.781 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:26.782 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:26.783 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:26.784 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 17;17.4542783;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47404;2460996.88781;11.30740444;1.3;_
2025-11-17T11:18:26.784 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response 17;17.4542783;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47404;2460996.88781;11.30740444;1.3;_
2025-11-17T11:18:26.784 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:26.784 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:26.784 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:26.785 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:26.785 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:26.785 [INFO] [Thread-67381 (handle)] [driver.py] [get_status()] Telra = 17.4542783, teldec = -24.256564
2025-11-17T11:18:26.785 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4542783 -24.256564
2025-11-17T11:18:26.785 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4542783 -24.256564
2025-11-17T11:18:26.786 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4542783 -24.256564
2025-11-17T11:18:26.786 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 17;17.4542783;-24.256564;50.108434;89.993057;50.08601;90.12017;14.47404;2460996.88781002;11.30740444;1.3;_17.4281729421861 -24.2331925365108
2025-11-17T11:18:26.787 [INFO] [Thread-67381 (handle)] [driver.py] [get_status()] ra_j2k = 17.4281729421861     dec_j2k = -24.2331925365108
2025-11-17T11:18:26.787 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:26.787 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:26.787 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 140;0.10448234514955;171.162357330327;_
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response 140;0.10448234514955;171.162357330327;_
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:26.788 [DEBUG] [Thread-67381 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:26.789 [DEBUG] [Thread-67381 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40663)
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:26.792 [DEBUG] [Thread-67381 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:26.799 [DEBUG] [Thread-67381 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:26.799 [DEBUG] [Thread-67381 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:26.799 [DEBUG] [Thread-67381 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:26.800 [DEBUG] [Thread-67381 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:26.800 [INFO] [Thread-67381 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88781, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448234514955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993057, telescope_ra=17.4542783, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47404, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:17:33.047218', telescope_ra_j2k=17.4281729421861, telescope_dec_j2k=-24.2331925365108, observability=1)
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:33.189 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:33.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:33.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:33.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:33.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:33.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:33.190 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:33.191 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:33.192 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:33.192 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:18:33.192 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:18:33.192 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:18:33.192 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:34.193 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:34.193 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:34.193 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:34.193 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:34.193 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:18:34.194 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:34.195 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:34.196 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:34.196 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:34.196 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:34.196 [DEBUG] [ThreadPoolExecutor-2716_0] [payload.py] [to_registers()] [0]
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37391)
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:34.199 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:34.207 [DEBUG] [ThreadPoolExecutor-2716_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:34.889 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:18:34
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.08980917930603s
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:34.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:34.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:34.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:34.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4565373;-24.256564;50.108434;89.993056;50.08601;90.12017;14.47629;2460996.88790384;11.30965722;1.3;_
2025-11-17T11:18:34.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.4565373;-24.256564;50.108434;89.993056;50.08601;90.12017;14.47629;2460996.88790384;11.30965722;1.3;_
2025-11-17T11:18:34.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:34.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:34.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:34.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:34.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:34.893 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.4565373, teldec = -24.256564
2025-11-17T11:18:34.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4565373 -24.256564
2025-11-17T11:18:34.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4565373 -24.256564
2025-11-17T11:18:34.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4565373 -24.256564
2025-11-17T11:18:34.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4565373;-24.256564;50.108434;89.993056;50.08601;90.12017;14.47629;2460996.88790387;11.30965722;1.3;_17.4304314166449 -24.233275703603
2025-11-17T11:18:34.894 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4304314166449     dec_j2k = -24.233275703603
2025-11-17T11:18:34.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:34.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:34.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104482505597321;171.162357330327;_
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104482505597321;171.162357330327;_
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:34.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:34.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:34.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:34.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:34.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47987)
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:34.901 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:34.908 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:34.909 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88790384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104482505597321, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993056, telescope_ra=17.4565373, telescope_dec=-24.256564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47629, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4304314166449, telescope_dec_j2k=-24.233275703603, observability=1)
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Status age = 9.937319993972778s
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:44.846 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 17;17.4593213;-24.256563;50.108434;89.993056;50.08601;90.12017;14.47908;2460996.88801906;11.31243361;1.3;_
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response 17;17.4593213;-24.256563;50.108434;89.993056;50.08601;90.12017;14.47908;2460996.88801906;11.31243361;1.3;_
2025-11-17T11:18:44.847 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:18:44.848 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:18:44.848 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:18:44.849 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:44.849 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:18:44.849 [INFO] [Thread-67382 (handle)] [driver.py] [get_status()] Telra = 17.4593213, teldec = -24.256563
2025-11-17T11:18:44.849 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4593213 -24.256563
2025-11-17T11:18:44.849 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4593213 -24.256563
2025-11-17T11:18:44.849 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4593213 -24.256563
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 17;17.4593213;-24.256563;50.108434;89.993056;50.08601;90.12017;14.47908;2460996.8880191;11.31243361;1.3;_17.4332147710412 -24.2333772108919
2025-11-17T11:18:44.850 [INFO] [Thread-67382 (handle)] [driver.py] [get_status()] ra_j2k = 17.4332147710412     dec_j2k = -24.2333772108919
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 140;0.104483027052577;171.162357330327;_
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response 140;0.104483027052577;171.162357330327;_
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:44.850 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:44.851 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:44.851 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:44.851 [DEBUG] [Thread-67382 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:44.851 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:18:44.851 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:18:44.852 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:18:44.853 [DEBUG] [Thread-67382 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:44.853 [DEBUG] [Thread-67382 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:18:44.853 [DEBUG] [Thread-67382 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33939)
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:18:44.854 [DEBUG] [Thread-67382 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:18:44.861 [DEBUG] [Thread-67382 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:18:44.861 [INFO] [Thread-67382 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88801906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483027052577, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108434, telescope_az=89.993056, telescope_ra=17.4593213, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.47908, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4332147710412, telescope_dec_j2k=-24.2333772108919, observability=1)
2025-11-17T11:18:59.207 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:59.207 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:59.207 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:59.207 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:59.207 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:18:59.208 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:18:59.209 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:18:59.210 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Status age = 18.131452083587646s
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:02.993 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:02.994 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 17;17.4643682;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48413;2460996.88822911;11.31746667;1.3;_
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response 17;17.4643682;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48413;2460996.88822911;11.31746667;1.3;_
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:02.995 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:02.996 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:02.996 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:02.996 [INFO] [Thread-67383 (handle)] [driver.py] [get_status()] Telra = 17.4643682, teldec = -24.256563
2025-11-17T11:19:02.996 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4643682 -24.256563
2025-11-17T11:19:02.996 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4643682 -24.256563
2025-11-17T11:19:02.996 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4643682 -24.256563
2025-11-17T11:19:02.997 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 17;17.4643682;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48413;2460996.88822913;11.31746667;1.3;_17.4382605056077 -24.2335630714678
2025-11-17T11:19:02.997 [INFO] [Thread-67383 (handle)] [driver.py] [get_status()] ra_j2k = 17.4382605056077     dec_j2k = -24.2335630714678
2025-11-17T11:19:02.997 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:02.997 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:02.997 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 140;0.104483388060062;171.162357330327;_
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response 140;0.104483388060062;171.162357330327;_
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:02.998 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:02.999 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:03.000 [DEBUG] [Thread-67383 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:03.000 [DEBUG] [Thread-67383 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:03.000 [DEBUG] [Thread-67383 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54717)
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:03.006 [DEBUG] [Thread-67383 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:03.013 [DEBUG] [Thread-67383 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:03.013 [INFO] [Thread-67383 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88822911, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483388060062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.4643682, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48413, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4382605056077, telescope_dec_j2k=-24.2335630714678, observability=1)
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Status age = 3.220634698867798s
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:06.234 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:06.235 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:06.236 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 17;17.4652837;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48504;2460996.88826662;11.31837972;1.3;_
2025-11-17T11:19:06.236 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response 17;17.4652837;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48504;2460996.88826662;11.31837972;1.3;_
2025-11-17T11:19:06.236 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:06.236 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:06.236 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:06.237 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:06.237 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:06.237 [INFO] [Thread-67384 (handle)] [driver.py] [get_status()] Telra = 17.4652837, teldec = -24.256563
2025-11-17T11:19:06.238 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4652837 -24.256563
2025-11-17T11:19:06.238 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4652837 -24.256563
2025-11-17T11:19:06.238 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4652837 -24.256563
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 17;17.4652837;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48504;2460996.88826664;11.31837972;1.3;_17.4391757949305 -24.2335967908411
2025-11-17T11:19:06.239 [INFO] [Thread-67384 (handle)] [driver.py] [get_status()] ra_j2k = 17.4391757949305     dec_j2k = -24.2335967908411
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 140;0.104483548507834;171.162357330327;_
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response 140;0.104483548507834;171.162357330327;_
2025-11-17T11:19:06.239 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:06.240 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:06.240 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:06.240 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:06.241 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:06.242 [DEBUG] [Thread-67384 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:06.242 [DEBUG] [Thread-67384 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:06.242 [DEBUG] [Thread-67384 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55057)
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:06.244 [DEBUG] [Thread-67384 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:06.251 [DEBUG] [Thread-67384 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:06.251 [INFO] [Thread-67384 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88826662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483548507834, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.4652837, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48504, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4391757949305, telescope_dec_j2k=-24.2335967908411, observability=1)
2025-11-17T11:19:14.844 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.593108177185059s
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:14.845 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:14.846 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:14.846 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4676836;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48744;2460996.88836627;11.32077306;1.3;_
2025-11-17T11:19:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.4676836;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48744;2460996.88836627;11.32077306;1.3;_
2025-11-17T11:19:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:14.847 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:14.848 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.4676836, teldec = -24.256563
2025-11-17T11:19:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4676836 -24.256563
2025-11-17T11:19:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4676836 -24.256563
2025-11-17T11:19:14.848 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4676836 -24.256563
2025-11-17T11:19:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.4676836;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48744;2460996.88836631;11.32077306;1.3;_17.4415751437243 -24.2336851897115
2025-11-17T11:19:14.849 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.4415751437243     dec_j2k = -24.2336851897115
2025-11-17T11:19:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:14.849 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10448406996309;171.162357330327;_
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10448406996309;171.162357330327;_
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:14.850 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:14.851 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:14.852 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:14.857 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50353)
2025-11-17T11:19:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:14.858 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:14.858 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:14.858 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:14.858 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:14.865 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88836627, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448406996309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.4676836, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4415751437243, telescope_dec_j2k=-24.2336851897115, observability=1)
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.8616926670074463s
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:17.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:17.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:17.728 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:17.728 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.468488;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48825;2460996.88839964;11.32157528;1.3;_
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.468488;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48825;2460996.88839964;11.32157528;1.3;_
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:17.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:17.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:17.730 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:17.730 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.468488, teldec = -24.256563
2025-11-17T11:19:17.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.468488 -24.256563
2025-11-17T11:19:17.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.468488 -24.256563
2025-11-17T11:19:17.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.468488 -24.256563
2025-11-17T11:19:17.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.468488;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48825;2460996.88839966;11.32157528;1.3;_17.4423793593158 -24.2337148214342
2025-11-17T11:19:17.731 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.4423793593158     dec_j2k = -24.2337148214342
2025-11-17T11:19:17.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:17.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:17.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104483588619777;171.162357330327;_
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104483588619777;171.162357330327;_
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:17.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:17.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:17.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:17.734 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:17.734 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59469)
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:17.738 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:17.745 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:17.746 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88839964, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483588619777, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.468488, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4423793593158, telescope_dec_j2k=-24.2337148214342, observability=1)
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.21720027923584s
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:19.963 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:19.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4691053;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48886;2460996.88842551;11.32219083;1.3;_
2025-11-17T11:19:19.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.4691053;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48886;2460996.88842551;11.32219083;1.3;_
2025-11-17T11:19:19.964 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:19.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:19.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:19.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:19.965 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:19.966 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.4691053, teldec = -24.256563
2025-11-17T11:19:19.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.4691053 -24.256563
2025-11-17T11:19:19.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.4691053 -24.256563
2025-11-17T11:19:19.966 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4691053 -24.256563
2025-11-17T11:19:19.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4691053;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48886;2460996.88842554;11.32219083;1.3;_17.4429965179174 -24.23373756167
2025-11-17T11:19:19.967 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.4429965179174     dec_j2k = -24.23373756167
2025-11-17T11:19:19.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:19.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:19.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:19.967 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104484029851147;171.162357330327;_
2025-11-17T11:19:19.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104484029851147;171.162357330327;_
2025-11-17T11:19:19.968 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:19.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:19.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:19.968 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:19.969 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50833)
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:19.976 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:19.983 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:19.984 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:19:19.984 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88842551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104484029851147, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.4691053, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48886, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4429965179174, telescope_dec_j2k=-24.23373756167, observability=1)
2025-11-17T11:19:19.984 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09455466270447 seconds ago
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Status age = 1.0834085941314697s
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:21.067 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:21.068 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:21.069 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:21.069 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 17;17.4694047;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48916;2460996.8884383;11.32248944;1.3;_
2025-11-17T11:19:21.069 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response 17;17.4694047;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48916;2460996.8884383;11.32248944;1.3;_
2025-11-17T11:19:21.070 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:21.070 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:21.070 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:21.070 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:21.071 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:21.071 [INFO] [Thread-67385 (handle)] [driver.py] [get_status()] Telra = 17.4694047, teldec = -24.256563
2025-11-17T11:19:21.071 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4694047 -24.256563
2025-11-17T11:19:21.071 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4694047 -24.256563
2025-11-17T11:19:21.071 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4694047 -24.256563
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 17;17.4694047;-24.256563;50.108433;89.993056;50.08601;90.12017;14.48916;2460996.88843833;11.32248944;1.3;_17.4432958493738 -24.2337485912609
2025-11-17T11:19:21.072 [INFO] [Thread-67385 (handle)] [driver.py] [get_status()] ra_j2k = 17.4432958493738     dec_j2k = -24.2337485912609
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 140;0.104483548507834;171.162357330327;_
2025-11-17T11:19:21.072 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response 140;0.104483548507834;171.162357330327;_
2025-11-17T11:19:21.073 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:21.073 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:21.073 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:21.073 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:21.074 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:21.075 [DEBUG] [Thread-67385 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:21.075 [DEBUG] [Thread-67385 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:21.075 [DEBUG] [Thread-67385 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:21.079 [DEBUG] [Thread-67385 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36413)
2025-11-17T11:19:21.079 [DEBUG] [Thread-67385 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:21.079 [DEBUG] [Thread-67385 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:21.079 [DEBUG] [Thread-67385 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:21.079 [DEBUG] [Thread-67385 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:21.080 [DEBUG] [Thread-67385 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:21.086 [DEBUG] [Thread-67385 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:21.087 [DEBUG] [Thread-67385 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:21.087 [INFO] [Thread-67385 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8884383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483548507834, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993056, telescope_ra=17.4694047, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.48916, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:18:33.188733', telescope_ra_j2k=17.4432958493738, telescope_dec_j2k=-24.2337485912609, observability=1)
2025-11-17T11:19:33.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:33.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:33.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:33.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:33.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:33.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:33.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:33.332 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:33.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:33.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:33.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:33.333 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:19:33.333 [INFO] [ThreadPoolExecutor-2717_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:19:33.333 [INFO] [ThreadPoolExecutor-2717_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:19:34.970 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:19:34
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.882823944091797s
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:34.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:34.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:34.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.473277;-24.256563;50.108433;89.993055;50.08601;90.12017;14.49303;2460996.8885992;11.32635111;1.3;_
2025-11-17T11:19:34.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.473277;-24.256563;50.108433;89.993055;50.08601;90.12017;14.49303;2460996.8885992;11.32635111;1.3;_
2025-11-17T11:19:34.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:34.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:34.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:34.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:34.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:34.973 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.473277, teldec = -24.256563
2025-11-17T11:19:34.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.473277 -24.256563
2025-11-17T11:19:34.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.473277 -24.256563
2025-11-17T11:19:34.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.473277 -24.256563
2025-11-17T11:19:34.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.473277;-24.256563;50.108433;89.993055;50.08601;90.12017;14.49303;2460996.88859924;11.32635111;1.3;_17.4471672650253 -24.2338912561474
2025-11-17T11:19:34.974 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4471672650253     dec_j2k = -24.2338912561474
2025-11-17T11:19:34.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:34.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:34.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104483989739205;171.162357330327;_
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104483989739205;171.162357330327;_
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:34.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:34.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:34.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:34.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:34.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49507)
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:34.982 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:34.989 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:34.990 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8885992, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104483989739205, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993055, telescope_ra=17.473277, telescope_dec=-24.256563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.49303, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4471672650253, telescope_dec_j2k=-24.2338912561474, observability=1)
2025-11-17T11:19:39.127 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:39.127 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Status age = 4.137849569320679s
2025-11-17T11:19:39.127 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:39.127 [DEBUG] [Thread-67386 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:39.127 [DEBUG] [Thread-67386 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:39.128 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:39.129 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:39.129 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:39.129 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 17;17.4744279;-24.256562;50.108433;89.993055;50.08601;90.12017;14.49418;2460996.88864733;11.32749889;1.3;_
2025-11-17T11:19:39.129 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response 17;17.4744279;-24.256562;50.108433;89.993055;50.08601;90.12017;14.49418;2460996.88864733;11.32749889;1.3;_
2025-11-17T11:19:39.130 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:39.130 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:39.130 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:39.131 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:39.131 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:39.131 [INFO] [Thread-67386 (handle)] [driver.py] [get_status()] Telra = 17.4744279, teldec = -24.256562
2025-11-17T11:19:39.131 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4744279 -24.256562
2025-11-17T11:19:39.131 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4744279 -24.256562
2025-11-17T11:19:39.131 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4744279 -24.256562
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 17;17.4744279;-24.256562;50.108433;89.993055;50.08601;90.12017;14.49418;2460996.88864736;11.32749889;1.3;_17.4483179031562 -24.2339326628805
2025-11-17T11:19:39.132 [INFO] [Thread-67386 (handle)] [driver.py] [get_status()] ra_j2k = 17.4483179031562     dec_j2k = -24.2339326628805
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 140;0.104484511194461;171.162357330327;_
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response 140;0.104484511194461;171.162357330327;_
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:39.132 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:39.133 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:39.134 [DEBUG] [Thread-67386 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:39.134 [DEBUG] [Thread-67386 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:39.134 [DEBUG] [Thread-67386 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36487)
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:39.138 [DEBUG] [Thread-67386 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:39.146 [DEBUG] [Thread-67386 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:39.146 [INFO] [Thread-67386 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88864733, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104484511194461, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108433, telescope_az=89.993055, telescope_ra=17.4744279, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.49418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4483179031562, telescope_dec_j2k=-24.2339326628805, observability=1)
2025-11-17T11:19:54.210 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.210 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.210 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:54.210 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:54.210 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:54.211 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.211 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:19:54.212 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.213 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.213 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.213 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:54.213 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:54.213 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:54.214 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:19:54.215 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:54.216 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Park
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:19:54.217 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:19:54.218 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 29;17.4786299;-24.256562;50.108432;89.993055;50.08601;90.12017;14.49839;2460996.88882197;11.33168944;1.3;_Park Command Successful
2025-11-17T11:19:55.218 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:19:55.218 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:19:55.218 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:19:55.219 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:19:55.219 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:19:56.219 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:19:56.220 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:19:56.220 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:19:56.221 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:19:56.221 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:19:57.221 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:19:57.221 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:19:57.221 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:19:57.222 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:19:57.222 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Status age = 18.114708185195923s
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:57.261 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:19:57.262 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:19:57.263 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 17;17.4794981;-24.256562;50.108432;89.993055;50.08601;90.12017;14.49926;2460996.88885721;11.33255528;1.3;_
2025-11-17T11:19:57.263 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response 17;17.4794981;-24.256562;50.108432;89.993055;50.08601;90.12017;14.49926;2460996.88885721;11.33255528;1.3;_
2025-11-17T11:19:57.263 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:19:57.263 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:19:57.263 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:19:57.264 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:57.264 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:19:57.264 [INFO] [Thread-67387 (handle)] [driver.py] [get_status()] Telra = 17.4794981, teldec = -24.256562
2025-11-17T11:19:57.264 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4794981 -24.256562
2025-11-17T11:19:57.264 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4794981 -24.256562
2025-11-17T11:19:57.264 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4794981 -24.256562
2025-11-17T11:19:57.265 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 17;17.4794981;-24.256562;50.108432;89.993055;50.08601;90.12017;14.49926;2460996.88885723;11.33255528;1.3;_17.4533869528695 -24.234119507977
2025-11-17T11:19:57.265 [INFO] [Thread-67387 (handle)] [driver.py] [get_status()] ra_j2k = 17.4533869528695     dec_j2k = -24.234119507977
2025-11-17T11:19:57.265 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:19:57.265 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:19:57.265 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 140;0.104484471082518;171.162357330327;_
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response 140;0.104484471082518;171.162357330327;_
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:57.266 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:19:57.267 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:19:57.268 [DEBUG] [Thread-67387 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:57.268 [DEBUG] [Thread-67387 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:19:57.268 [DEBUG] [Thread-67387 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:19:57.270 [DEBUG] [Thread-67387 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48099)
2025-11-17T11:19:57.270 [DEBUG] [Thread-67387 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:19:57.270 [DEBUG] [Thread-67387 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:19:57.271 [DEBUG] [Thread-67387 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:19:57.271 [DEBUG] [Thread-67387 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:19:57.271 [DEBUG] [Thread-67387 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:19:57.278 [DEBUG] [Thread-67387 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:19:57.278 [INFO] [Thread-67387 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88885721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104484471082518, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108432, telescope_az=89.993055, telescope_ra=17.4794981, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.49926, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4533869528695, telescope_dec_j2k=-24.234119507977, observability=1)
2025-11-17T11:19:58.222 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:19:58.222 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:19:58.222 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:58.223 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:19:58.224 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:19:58.225 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:59.225 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:59.225 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:59.225 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:19:59.225 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:19:59.225 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:19:59.226 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:19:59.227 [DEBUG] [ThreadPoolExecutor-2716_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:19:59.227 [INFO] [ThreadPoolExecutor-2716_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Status age = 9.009645462036133s
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:06.288 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:06.289 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:06.290 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 17;17.4820053;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50176;2460996.88896169;11.33505556;1.3;_
2025-11-17T11:20:06.290 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response 17;17.4820053;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50176;2460996.88896169;11.33505556;1.3;_
2025-11-17T11:20:06.290 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:06.290 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:06.290 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:06.291 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:06.291 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:06.291 [INFO] [Thread-67388 (handle)] [driver.py] [get_status()] Telra = 17.4820053, teldec = -24.256562
2025-11-17T11:20:06.291 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4820053 -24.256562
2025-11-17T11:20:06.291 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4820053 -24.256562
2025-11-17T11:20:06.292 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4820053 -24.256562
2025-11-17T11:20:06.292 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 17;17.4820053;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50176;2460996.88896171;11.33505556;1.3;_17.4558935866012 -24.2342119178146
2025-11-17T11:20:06.292 [INFO] [Thread-67388 (handle)] [driver.py] [get_status()] ra_j2k = 17.4558935866012     dec_j2k = -24.2342119178146
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 140;0.104484751866118;171.162351965909;_
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response 140;0.104484751866118;171.162351965909;_
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:06.293 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:06.294 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:06.295 [DEBUG] [Thread-67388 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:06.296 [DEBUG] [Thread-67388 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:06.296 [DEBUG] [Thread-67388 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:06.299 [DEBUG] [Thread-67388 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47995)
2025-11-17T11:20:06.299 [DEBUG] [Thread-67388 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:06.299 [DEBUG] [Thread-67388 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:06.300 [DEBUG] [Thread-67388 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:06.300 [DEBUG] [Thread-67388 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:06.300 [DEBUG] [Thread-67388 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:06.306 [DEBUG] [Thread-67388 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:06.307 [DEBUG] [Thread-67388 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:06.307 [INFO] [Thread-67388 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88896169, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104484751866118, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108432, telescope_az=89.993055, telescope_ra=17.4820053, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.50176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4558935866012, telescope_dec_j2k=-24.2342119178146, observability=1)
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.557777643203735s
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.484399;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50416;2460996.88906096;11.33744278;1.3;_
2025-11-17T11:20:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.484399;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50416;2460996.88906096;11.33744278;1.3;_
2025-11-17T11:20:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:14.868 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.484399, teldec = -24.256562
2025-11-17T11:20:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.484399 -24.256562
2025-11-17T11:20:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.484399 -24.256562
2025-11-17T11:20:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.484399 -24.256562
2025-11-17T11:20:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.484399;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50416;2460996.88906098;11.33744278;1.3;_17.4582867475396 -24.2343001537845
2025-11-17T11:20:14.869 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.4582867475396     dec_j2k = -24.2343001537845
2025-11-17T11:20:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104485433769146;171.162357330327;_
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104485433769146;171.162357330327;_
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:20:14.874 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51065)
2025-11-17T11:20:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88906096, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104485433769146, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108432, telescope_az=89.993055, telescope_ra=17.484399, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.50416, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4582867475396, telescope_dec_j2k=-24.2343001537845, observability=1)
2025-11-17T11:20:15.327 [DEBUG] [Thread-67389 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:15.327 [DEBUG] [Thread-67389 (handle)] [server.py] [get_status()] Status age = 0.4447171688079834s
2025-11-17T11:20:15.328 [DEBUG] [Thread-67389 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4447171688079834
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9610645771026611s
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:16.844 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:16.845 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:16.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.484931;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50469;2460996.88908387;11.33797333;1.3;_
2025-11-17T11:20:16.846 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.484931;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50469;2460996.88908387;11.33797333;1.3;_
2025-11-17T11:20:16.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:16.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:16.846 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:16.847 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:16.847 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:16.847 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.484931, teldec = -24.256562
2025-11-17T11:20:16.847 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.484931 -24.256562
2025-11-17T11:20:16.847 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.484931 -24.256562
2025-11-17T11:20:16.847 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.484931 -24.256562
2025-11-17T11:20:16.848 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.484931;-24.256562;50.108432;89.993055;50.08601;90.12017;14.50469;2460996.88908389;11.33797333;1.3;_17.4588186279417 -24.234319765491
2025-11-17T11:20:16.848 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.4588186279417     dec_j2k = -24.234319765491
2025-11-17T11:20:16.848 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:16.848 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:16.848 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104484992537775;171.162362694745;_
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104484992537775;171.162362694745;_
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:16.849 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:16.850 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:16.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:16.851 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:16.851 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36441)
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:16.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:16.860 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:16.861 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:16.861 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:16.861 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88908387, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104484992537775, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108432, telescope_az=89.993055, telescope_ra=17.484931, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.50469, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4588186279417, telescope_dec_j2k=-24.234319765491, observability=1)
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.1831741333007812s
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:20.044 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:20.045 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:20.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4858463;-24.256562;50.108432;89.993055;50.08601;90.12017;14.5056;2460996.8891209;11.33888611;1.3;_
2025-11-17T11:20:20.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.4858463;-24.256562;50.108432;89.993055;50.08601;90.12017;14.5056;2460996.8891209;11.33888611;1.3;_
2025-11-17T11:20:20.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:20.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:20.046 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:20.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:20.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:20.047 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.4858463, teldec = -24.256562
2025-11-17T11:20:20.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.4858463 -24.256562
2025-11-17T11:20:20.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.4858463 -24.256562
2025-11-17T11:20:20.047 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4858463 -24.256562
2025-11-17T11:20:20.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.4858463;-24.256562;50.108432;89.993055;50.08601;90.12017;14.5056;2460996.88912093;11.33888611;1.3;_17.4597337223524 -24.2343535082773
2025-11-17T11:20:20.048 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.4597337223524     dec_j2k = -24.2343535082773
2025-11-17T11:20:20.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:20.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:20.048 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104485233209432;171.162362694745;_
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104485233209432;171.162362694745;_
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:20.049 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:20.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:20.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:20.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:20.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:20.054 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39687)
2025-11-17T11:20:20.055 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:20.055 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:20.055 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:20.055 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:20.055 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:20.062 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:20:20.062 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8891209, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104485233209432, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108432, telescope_az=89.993055, telescope_ra=17.4858463, telescope_dec=-24.256562, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5056, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4597337223524, telescope_dec_j2k=-24.2343535082773, observability=1)
2025-11-17T11:20:20.062 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.092647552490234 seconds ago
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Status age = 13.33057951927185s
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:33.393 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:33.394 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 17;17.4895526;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50931;2460996.88927539;11.34258222;1.3;_
2025-11-17T11:20:33.394 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response 17;17.4895526;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50931;2460996.88927539;11.34258222;1.3;_
2025-11-17T11:20:33.394 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:33.394 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:33.394 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:33.395 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:33.395 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:33.395 [INFO] [Thread-67390 (handle)] [driver.py] [get_status()] Telra = 17.4895526, teldec = -24.256561
2025-11-17T11:20:33.395 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4895526 -24.256561
2025-11-17T11:20:33.395 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4895526 -24.256561
2025-11-17T11:20:33.396 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4895526 -24.256561
2025-11-17T11:20:33.396 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 17;17.4895526;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50931;2460996.88927542;11.34258222;1.3;_17.4634391923584 -24.2344891558503
2025-11-17T11:20:33.396 [INFO] [Thread-67390 (handle)] [driver.py] [get_status()] ra_j2k = 17.4634391923584     dec_j2k = -24.2344891558503
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 140;0.10448607556023;171.162346601491;_
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response 140;0.10448607556023;171.162346601491;_
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:33.397 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:33.398 [DEBUG] [Thread-67390 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:33.399 [DEBUG] [Thread-67390 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:33.399 [DEBUG] [Thread-67390 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34097)
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:33.404 [DEBUG] [Thread-67390 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:33.411 [DEBUG] [Thread-67390 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:33.412 [DEBUG] [Thread-67390 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:33.412 [DEBUG] [Thread-67390 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:33.412 [INFO] [Thread-67390 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.88927539, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448607556023, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.4895526, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.50931, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:19:33.330100', telescope_ra_j2k=17.4634391923584, telescope_dec_j2k=-24.2344891558503, observability=1)
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:33.473 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:33.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:33.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:33.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:33.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:33.474 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:33.475 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:20:33.476 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:20:33.476 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:20:33.476 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:34.477 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:34.477 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:34.477 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:34.477 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:34.477 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:20:34.478 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:34.479 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:34.480 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:34.480 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:34.480 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:34.480 [DEBUG] [ThreadPoolExecutor-2718_0] [payload.py] [to_registers()] [0]
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44893)
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:34.483 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:34.490 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:34.490 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:20:34.490 [DEBUG] [ThreadPoolExecutor-2718_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:20:34.491 [DEBUG] [ThreadPoolExecutor-2718_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:20:34.491 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:34.491 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:34.491 [DEBUG] [ThreadPoolExecutor-2718_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:35.050 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:20:35
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.6389024257659912s
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:35.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:35.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:35.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4900007;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50976;2460996.88929458;11.34302917;1.3;_
2025-11-17T11:20:35.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.4900007;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50976;2460996.88929458;11.34302917;1.3;_
2025-11-17T11:20:35.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:35.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:35.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:35.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:35.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:35.054 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.4900007, teldec = -24.256561
2025-11-17T11:20:35.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4900007 -24.256561
2025-11-17T11:20:35.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4900007 -24.256561
2025-11-17T11:20:35.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4900007 -24.256561
2025-11-17T11:20:35.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.4900007;-24.256561;50.108431;89.993054;50.08601;90.12017;14.50976;2460996.88929462;11.34302917;1.3;_17.4638871922359 -24.2345056783338
2025-11-17T11:20:35.055 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4638871922359     dec_j2k = -24.2345056783338
2025-11-17T11:20:35.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:35.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:35.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104485754664688;171.162357330327;_
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104485754664688;171.162357330327;_
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:35.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:35.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:35.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:35.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:35.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:35.060 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37965)
2025-11-17T11:20:35.060 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:35.060 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:35.060 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:35.060 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:35.061 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:35.068 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:35.068 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88929458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104485754664688, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.4900007, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.50976, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4638871922359, telescope_dec_j2k=-24.2345056783338, observability=1)
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Status age = 16.48802900314331s
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:51.556 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:20:51.557 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:20:51.558 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 17;17.4946214;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51438;2460996.88948562;11.34763722;1.3;_
2025-11-17T11:20:51.558 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response 17;17.4946214;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51438;2460996.88948562;11.34763722;1.3;_
2025-11-17T11:20:51.558 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:20:51.558 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:20:51.558 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:20:51.559 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:51.559 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:20:51.559 [INFO] [Thread-67391 (handle)] [driver.py] [get_status()] Telra = 17.4946214, teldec = -24.256561
2025-11-17T11:20:51.559 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4946214 -24.256561
2025-11-17T11:20:51.559 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4946214 -24.256561
2025-11-17T11:20:51.559 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4946214 -24.256561
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 17;17.4946214;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51438;2460996.88948565;11.34763722;1.3;_17.4685068629378 -24.2346760729002
2025-11-17T11:20:51.560 [INFO] [Thread-67391 (handle)] [driver.py] [get_status()] ra_j2k = 17.4685068629378     dec_j2k = -24.2346760729002
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 140;0.10448635634383;171.162362694745;_
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response 140;0.10448635634383;171.162362694745;_
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:51.560 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:51.561 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:51.561 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:51.561 [DEBUG] [Thread-67391 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:51.561 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:20:51.561 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:20:51.562 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:20:51.562 [DEBUG] [Thread-67391 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:51.562 [DEBUG] [Thread-67391 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:20:51.563 [DEBUG] [Thread-67391 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54907)
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:20:51.568 [DEBUG] [Thread-67391 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:20:51.575 [DEBUG] [Thread-67391 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:20:51.575 [INFO] [Thread-67391 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88948562, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448635634383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.4946214, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.51438, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4685068629378, telescope_dec_j2k=-24.2346760729002, observability=1)
2025-11-17T11:20:59.491 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:59.491 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:59.491 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:59.491 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:59.491 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:20:59.492 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:20:59.493 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:20:59.494 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Status age = 14.765555381774902s
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:06.341 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:06.342 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 17;17.4987204;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51848;2460996.88965675;11.351725;1.3;_
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response 17;17.4987204;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51848;2460996.88965675;11.351725;1.3;_
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:06.343 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:06.344 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:06.344 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:06.344 [INFO] [Thread-67392 (handle)] [driver.py] [get_status()] Telra = 17.4987204, teldec = -24.256561
2025-11-17T11:21:06.345 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4987204 -24.256561
2025-11-17T11:21:06.345 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4987204 -24.256561
2025-11-17T11:21:06.345 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4987204 -24.256561
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 17;17.4987204;-24.256561;50.108431;89.993054;50.08601;90.12017;14.51848;2460996.88965677;11.351725;1.3;_17.4726049546455 -24.234827257426
2025-11-17T11:21:06.346 [INFO] [Thread-67392 (handle)] [driver.py] [get_status()] ra_j2k = 17.4726049546455     dec_j2k = -24.234827257426
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 140;0.104486998134915;171.162362694745;_
2025-11-17T11:21:06.346 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response 140;0.104486998134915;171.162362694745;_
2025-11-17T11:21:06.347 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:06.347 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:06.347 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:06.347 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:06.348 [DEBUG] [Thread-67392 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46995)
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:06.354 [DEBUG] [Thread-67392 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:06.361 [DEBUG] [Thread-67392 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:06.361 [INFO] [Thread-67392 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88965675, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104486998134915, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.4987204, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.51848, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4726049546455, telescope_dec_j2k=-24.234827257426, observability=1)
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Status age = 3.2585434913635254s
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:09.620 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:09.621 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:09.622 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 17;17.4996438;-24.256561;50.108431;89.993054;50.08601;90.12017;14.5194;2460996.8896947;11.35264583;1.3;_
2025-11-17T11:21:09.622 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response 17;17.4996438;-24.256561;50.108431;89.993054;50.08601;90.12017;14.5194;2460996.8896947;11.35264583;1.3;_
2025-11-17T11:21:09.622 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:09.622 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:09.622 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:09.623 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:09.623 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:09.623 [INFO] [Thread-67393 (handle)] [driver.py] [get_status()] Telra = 17.4996438, teldec = -24.256561
2025-11-17T11:21:09.623 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] UnCookCoordinates 17.4996438 -24.256561
2025-11-17T11:21:09.623 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.4996438 -24.256561
2025-11-17T11:21:09.623 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.4996438 -24.256561
2025-11-17T11:21:09.624 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 17;17.4996438;-24.256561;50.108431;89.993054;50.08601;90.12017;14.5194;2460996.88969472;11.35264583;1.3;_17.4735281506525 -24.2348613190981
2025-11-17T11:21:09.624 [INFO] [Thread-67393 (handle)] [driver.py] [get_status()] ra_j2k = 17.4735281506525     dec_j2k = -24.2348613190981
2025-11-17T11:21:09.624 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:09.624 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:09.624 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 140;0.104487278918515;171.162362694745;_
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response 140;0.104487278918515;171.162362694745;_
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:09.625 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:09.626 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:09.627 [DEBUG] [Thread-67393 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:09.627 [DEBUG] [Thread-67393 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:09.627 [DEBUG] [Thread-67393 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48455)
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:09.628 [DEBUG] [Thread-67393 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:09.635 [DEBUG] [Thread-67393 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:09.636 [INFO] [Thread-67393 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8896947, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104487278918515, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.4996438, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4735281506525, telescope_dec_j2k=-24.2348613190981, observability=1)
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.2326500415802s
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5010913;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52085;2460996.88975544;11.35408944;1.3;_
2025-11-17T11:21:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5010913;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52085;2460996.88975544;11.35408944;1.3;_
2025-11-17T11:21:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:14.871 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5010913, teldec = -24.256561
2025-11-17T11:21:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5010913 -24.256561
2025-11-17T11:21:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5010913 -24.256561
2025-11-17T11:21:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5010913 -24.256561
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5011192;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52088;2460996.88975546;11.35411722;1.3;_17.4749753313383 -24.2349147160687
2025-11-17T11:21:14.873 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.4749753313383     dec_j2k = -24.2349147160687
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104486998134915;171.162357330327;_
2025-11-17T11:21:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104486998134915;171.162357330327;_
2025-11-17T11:21:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39133)
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:14.886 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:14.886 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88975544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104486998134915, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.5010913, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.52085, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4749753313383, telescope_dec_j2k=-24.2349147160687, observability=1)
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.0664947032928467s
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:15.953 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:15.954 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:15.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5013994;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52116;2460996.889768;11.35439667;1.3;_
2025-11-17T11:21:15.955 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.5013994;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52116;2460996.889768;11.35439667;1.3;_
2025-11-17T11:21:15.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:15.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:15.955 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:15.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:15.956 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:15.956 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.5013994, teldec = -24.256561
2025-11-17T11:21:15.956 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5013994 -24.256561
2025-11-17T11:21:15.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5013994 -24.256561
2025-11-17T11:21:15.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5013994 -24.256561
2025-11-17T11:21:15.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5013994;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52116;2460996.88976802;11.35439667;1.3;_17.475283363445 -24.2349260820249
2025-11-17T11:21:15.958 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.475283363445     dec_j2k = -24.2349260820249
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104486757463258;171.162357330327;_
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104486757463258;171.162357330327;_
2025-11-17T11:21:15.958 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:15.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:15.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:15.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:15.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:15.960 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:15.960 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:21:15.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:15.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:15.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:15.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:15.961 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:15.961 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:15.962 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49911)
2025-11-17T11:21:15.963 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:15.963 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:15.963 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:15.963 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:15.963 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:15.970 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:15.970 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.889768, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104486757463258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.5013994, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.52116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.475283363445, telescope_dec_j2k=-24.2349260820249, observability=1)
2025-11-17T11:21:20.122 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:21:20.122 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.152270078659058s
2025-11-17T11:21:20.122 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:20.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:20.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:20.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:20.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5025687;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52233;2460996.88981625;11.35556278;1.3;_
2025-11-17T11:21:20.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.5025687;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52233;2460996.88981625;11.35556278;1.3;_
2025-11-17T11:21:20.125 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:20.125 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:20.125 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:20.126 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:20.126 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:20.126 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.5025687, teldec = -24.256561
2025-11-17T11:21:20.126 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.5025687 -24.256561
2025-11-17T11:21:20.126 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.5025687 -24.256561
2025-11-17T11:21:20.126 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5025687 -24.256561
2025-11-17T11:21:20.127 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5025687;-24.256561;50.108431;89.993054;50.08601;90.12017;14.52233;2460996.88981628;11.35556278;1.3;_17.476452406008 -24.234969219415
2025-11-17T11:21:20.127 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.476452406008     dec_j2k = -24.234969219415
2025-11-17T11:21:20.127 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:20.127 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:20.127 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104487198694629;171.162362694745;_
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104487198694629;171.162362694745;_
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:20.128 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:20.129 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:20.130 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:20.130 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:20.130 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48917)
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:20.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:20.139 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:21:20.140 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88981625, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104487198694629, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108431, telescope_az=89.993054, telescope_ra=17.5025687, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.52233, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.476452406008, telescope_dec_j2k=-24.234969219415, observability=1)
2025-11-17T11:21:20.140 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.089155435562134 seconds ago
2025-11-17T11:21:27.760 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:27.760 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Status age = 7.620850563049316s
2025-11-17T11:21:27.760 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:27.760 [DEBUG] [Thread-67394 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:27.760 [DEBUG] [Thread-67394 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:27.761 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:27.762 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:27.762 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:27.762 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:27.762 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 17;17.5046834;-24.256561;50.10843;89.993053;50.08601;90.12017;14.52444;2460996.88990465;11.35767167;1.3;_
2025-11-17T11:21:27.762 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response 17;17.5046834;-24.256561;50.10843;89.993053;50.08601;90.12017;14.52444;2460996.88990465;11.35767167;1.3;_
2025-11-17T11:21:27.763 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:27.763 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:27.763 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:27.764 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:27.764 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:27.764 [INFO] [Thread-67394 (handle)] [driver.py] [get_status()] Telra = 17.5046834, teldec = -24.256561
2025-11-17T11:21:27.764 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5046834 -24.256561
2025-11-17T11:21:27.764 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5046834 -24.256561
2025-11-17T11:21:27.764 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5046834 -24.256561
2025-11-17T11:21:27.765 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 17;17.5046834;-24.256561;50.10843;89.993053;50.08601;90.12017;14.52444;2460996.88990469;11.35767167;1.3;_17.4785666413604 -24.2350472395928
2025-11-17T11:21:27.765 [INFO] [Thread-67394 (handle)] [driver.py] [get_status()] ra_j2k = 17.4785666413604     dec_j2k = -24.2350472395928
2025-11-17T11:21:27.765 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:27.765 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:27.765 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 140;0.104487559702114;171.162351965909;_
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response 140;0.104487559702114;171.162351965909;_
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:27.766 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:27.767 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:27.768 [DEBUG] [Thread-67394 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:27.768 [DEBUG] [Thread-67394 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:27.768 [DEBUG] [Thread-67394 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:27.772 [DEBUG] [Thread-67394 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56021)
2025-11-17T11:21:27.772 [DEBUG] [Thread-67394 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:27.772 [DEBUG] [Thread-67394 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:27.772 [DEBUG] [Thread-67394 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:27.773 [DEBUG] [Thread-67394 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:27.773 [DEBUG] [Thread-67394 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:27.780 [DEBUG] [Thread-67394 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:27.780 [INFO] [Thread-67394 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88990465, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104487559702114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10843, telescope_az=89.993053, telescope_ra=17.5046834, telescope_dec=-24.256561, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.52444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:20:33.472554', telescope_ra_j2k=17.4785666413604, telescope_dec_j2k=-24.2350472395928, observability=1)
2025-11-17T11:21:33.615 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:33.615 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:33.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:33.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:33.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:33.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:33.617 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:33.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:33.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:33.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:33.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:33.618 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:21:33.618 [INFO] [ThreadPoolExecutor-2719_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:21:33.618 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:21:35.129 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:21:35
2025-11-17T11:21:35.129 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:35.129 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.34939169883728s
2025-11-17T11:21:35.129 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:35.129 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:35.129 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:35.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5067407;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5265;2460996.88998994;11.35972333;1.3;_
2025-11-17T11:21:35.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.5067407;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5265;2460996.88998994;11.35972333;1.3;_
2025-11-17T11:21:35.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:35.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:35.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:35.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:35.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:35.133 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.5067407, teldec = -24.25656
2025-11-17T11:21:35.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5067407 -24.25656
2025-11-17T11:21:35.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5067407 -24.25656
2025-11-17T11:21:35.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5067407 -24.25656
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5067407;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5265;2460996.88998998;11.35972333;1.3;_17.4806234906739 -24.2351221487913
2025-11-17T11:21:35.134 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4806234906739     dec_j2k = -24.2351221487913
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104487960821542;171.162357330327;_
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104487960821542;171.162357330327;_
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:35.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:35.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:35.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:35.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:21:35.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49833)
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:35.140 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:35.147 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:35.147 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.88998994, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104487960821542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10843, telescope_az=89.993053, telescope_ra=17.5067407, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5265, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.4806234906739, telescope_dec_j2k=-24.2351221487913, observability=1)
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Status age = 10.676472187042236s
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:45.824 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:21:45.825 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:21:45.826 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 17;17.5097247;-24.25656;50.10843;89.993053;50.08601;90.12017;14.52948;2460996.89011373;11.36269917;1.3;_
2025-11-17T11:21:45.826 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response 17;17.5097247;-24.25656;50.10843;89.993053;50.08601;90.12017;14.52948;2460996.89011373;11.36269917;1.3;_
2025-11-17T11:21:45.826 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:21:45.826 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:21:45.826 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:21:45.827 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:45.827 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:21:45.827 [INFO] [Thread-67395 (handle)] [driver.py] [get_status()] Telra = 17.5097247, teldec = -24.25656
2025-11-17T11:21:45.827 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5097247 -24.25656
2025-11-17T11:21:45.827 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5097247 -24.25656
2025-11-17T11:21:45.827 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5097247 -24.25656
2025-11-17T11:21:45.828 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 17;17.5097247;-24.25656;50.10843;89.993053;50.08601;90.12017;14.52948;2460996.89011375;11.36269917;1.3;_17.4836068387107 -24.2352322625112
2025-11-17T11:21:45.828 [INFO] [Thread-67395 (handle)] [driver.py] [get_status()] ra_j2k = 17.4836068387107     dec_j2k = -24.2352322625112
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 140;0.104487840485714;171.162368059163;_
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response 140;0.104487840485714;171.162368059163;_
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:45.829 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:45.830 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:45.830 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:45.830 [DEBUG] [Thread-67395 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:45.830 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:21:45.830 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:21:45.831 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:21:45.831 [DEBUG] [Thread-67395 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:45.831 [DEBUG] [Thread-67395 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:21:45.831 [DEBUG] [Thread-67395 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:21:45.833 [DEBUG] [Thread-67395 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52691)
2025-11-17T11:21:45.833 [DEBUG] [Thread-67395 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:21:45.833 [DEBUG] [Thread-67395 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:21:45.833 [DEBUG] [Thread-67395 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:21:45.833 [DEBUG] [Thread-67395 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:21:45.834 [DEBUG] [Thread-67395 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:21:45.841 [DEBUG] [Thread-67395 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:21:45.841 [INFO] [Thread-67395 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89011373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104487840485714, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10843, telescope_az=89.993053, telescope_ra=17.5097247, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.52948, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.4836068387107, telescope_dec_j2k=-24.2352322625112, observability=1)
2025-11-17T11:21:54.494 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.494 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.494 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:54.494 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:54.494 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:21:54.495 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:54.496 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:54.497 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:21:54.498 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:54.499 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:54.500 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:54.500 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:54.500 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:54.500 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Park
2025-11-17T11:21:54.500 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:21:54.501 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:21:54.501 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 29;17.5121468;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5319;2460996.89021413;11.36511472;1.3;_Park Command Successful
2025-11-17T11:21:55.501 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:21:55.501 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:21:55.502 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:21:55.502 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:21:55.502 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:21:56.503 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:21:56.503 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:21:56.503 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:21:56.503 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:21:56.503 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:21:57.504 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:21:57.504 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:21:57.504 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:21:57.505 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:21:57.505 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:21:58.505 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:21:58.505 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:21:58.505 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:58.506 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:58.507 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:58.507 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:21:58.508 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:21:58.509 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:59.509 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:59.509 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:59.509 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:21:59.509 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:21:59.509 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:21:59.510 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:21:59.511 [DEBUG] [ThreadPoolExecutor-2718_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:21:59.511 [INFO] [ThreadPoolExecutor-2718_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Status age = 18.046069622039795s
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:03.887 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:03.888 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:03.889 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:03.889 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 17;17.5147451;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5345;2460996.89032279;11.36770583;1.3;_
2025-11-17T11:22:03.889 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response 17;17.5147451;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5345;2460996.89032279;11.36770583;1.3;_
2025-11-17T11:22:03.889 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:03.889 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:03.890 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:03.890 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:03.891 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:03.891 [INFO] [Thread-67396 (handle)] [driver.py] [get_status()] Telra = 17.5147451, teldec = -24.25656
2025-11-17T11:22:03.891 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5147451 -24.25656
2025-11-17T11:22:03.891 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5147451 -24.25656
2025-11-17T11:22:03.891 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5147451 -24.25656
2025-11-17T11:22:03.894 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 17;17.5147451;-24.25656;50.10843;89.993053;50.08601;90.12017;14.5345;2460996.89032285;11.36770583;1.3;_17.488626147216 -24.23541755327
2025-11-17T11:22:03.894 [INFO] [Thread-67396 (handle)] [driver.py] [get_status()] ra_j2k = 17.488626147216     dec_j2k = -24.23541755327
2025-11-17T11:22:03.894 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:03.894 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:03.894 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 140;0.10448836194097;171.162357330327;_
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response 140;0.10448836194097;171.162357330327;_
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:03.895 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:03.896 [DEBUG] [Thread-67396 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55385)
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:03.899 [DEBUG] [Thread-67396 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:03.906 [DEBUG] [Thread-67396 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:03.906 [DEBUG] [Thread-67396 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:03.907 [DEBUG] [Thread-67396 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:03.907 [INFO] [Thread-67396 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89032279, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10448836194097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10843, telescope_az=89.993053, telescope_ra=17.5147451, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5345, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.488626147216, telescope_dec_j2k=-24.23541755327, observability=1)
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Status age = 2.491076946258545s
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:06.398 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:06.399 [DEBUG] [Thread-67397 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:06.399 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:06.399 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:06.399 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:06.399 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:06.400 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 17;17.5154642;-24.25656;50.10843;89.993053;50.08601;90.12017;14.53522;2460996.89035184;11.36842306;1.3;_
2025-11-17T11:22:06.400 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response 17;17.5154642;-24.25656;50.10843;89.993053;50.08601;90.12017;14.53522;2460996.89035184;11.36842306;1.3;_
2025-11-17T11:22:06.400 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:06.400 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:06.400 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:06.401 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:06.401 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:06.401 [INFO] [Thread-67397 (handle)] [driver.py] [get_status()] Telra = 17.5154642, teldec = -24.25656
2025-11-17T11:22:06.401 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5154642 -24.25656
2025-11-17T11:22:06.401 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5154642 -24.25656
2025-11-17T11:22:06.401 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5154642 -24.25656
2025-11-17T11:22:06.402 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 17;17.5154642;-24.25656;50.10843;89.993053;50.08601;90.12017;14.53522;2460996.89035188;11.36842306;1.3;_17.4893450914292 -24.2354440966784
2025-11-17T11:22:06.402 [INFO] [Thread-67397 (handle)] [driver.py] [get_status()] ra_j2k = 17.4893450914292     dec_j2k = -24.2354440966784
2025-11-17T11:22:06.402 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:06.402 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:06.402 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 140;0.104488803172341;171.162368059163;_
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response 140;0.104488803172341;171.162368059163;_
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:06.403 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:06.404 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:06.405 [DEBUG] [Thread-67397 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:06.405 [DEBUG] [Thread-67397 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:06.405 [DEBUG] [Thread-67397 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:06.406 [DEBUG] [Thread-67397 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45983)
2025-11-17T11:22:06.406 [DEBUG] [Thread-67397 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:06.406 [DEBUG] [Thread-67397 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:06.406 [DEBUG] [Thread-67397 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:06.407 [DEBUG] [Thread-67397 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:06.407 [DEBUG] [Thread-67397 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:06.414 [DEBUG] [Thread-67397 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:06.414 [INFO] [Thread-67397 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89035184, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104488803172341, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10843, telescope_az=89.993053, telescope_ra=17.5154642, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.53522, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.4893450914292, telescope_dec_j2k=-24.2354440966784, observability=1)
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.423799753189087s
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:14.838 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:14.839 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5178082;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53757;2460996.89044954;11.37076056;1.3;_
2025-11-17T11:22:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5178082;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53757;2460996.89044954;11.37076056;1.3;_
2025-11-17T11:22:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:14.840 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:14.841 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5178082, teldec = -24.25656
2025-11-17T11:22:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5178082 -24.25656
2025-11-17T11:22:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5178082 -24.25656
2025-11-17T11:22:14.841 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5178082 -24.25656
2025-11-17T11:22:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5178082;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53757;2460996.89044956;11.37076056;1.3;_17.491688584586 -24.2355306238712
2025-11-17T11:22:14.842 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.491688584586     dec_j2k = -24.2355306238712
2025-11-17T11:22:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:14.842 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104488522388742;171.162362694745;_
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104488522388742;171.162362694745;_
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:14.843 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:14.844 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:14.849 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49849)
2025-11-17T11:22:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:14.850 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:14.850 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:14.857 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89044954, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104488522388742, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993053, telescope_ra=17.5178082, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.53757, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.491688584586, telescope_dec_j2k=-24.2355306238712, observability=1)
2025-11-17T11:22:15.058 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:15.058 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.20116877555847168s
2025-11-17T11:22:15.058 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.20116877555847168
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.342527866363525s
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:20.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.519307;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53906;2460996.89051159;11.37225528;1.3;_
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.519307;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53906;2460996.89051159;11.37225528;1.3;_
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:20.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:20.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:20.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:20.203 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.519307, teldec = -24.25656
2025-11-17T11:22:20.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.519307 -24.25656
2025-11-17T11:22:20.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.519307 -24.25656
2025-11-17T11:22:20.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.519307 -24.25656
2025-11-17T11:22:20.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.519307;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53906;2460996.89051162;11.37225528;1.3;_17.4931870612738 -24.235585955472
2025-11-17T11:22:20.204 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.4931870612738     dec_j2k = -24.235585955472
2025-11-17T11:22:20.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:20.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:20.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:20.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104489043843998;171.162351965909;_
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104489043843998;171.162351965909;_
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:20.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:20.206 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:20.206 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:20.206 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:20.212 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48185)
2025-11-17T11:22:20.213 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:20.213 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:20.213 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:20.213 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:20.213 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:20.220 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:20.221 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:22:20.221 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89051159, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104489043843998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993053, telescope_ra=17.519307, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.53906, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.4931870612738, telescope_dec_j2k=-24.235585955472, observability=1)
2025-11-17T11:22:20.221 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09143328666687 seconds ago
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Status age = 1.7896358966827393s
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:22.010 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:22.011 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:22.012 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 17;17.5198117;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53957;2460996.89053255;11.37275861;1.3;_
2025-11-17T11:22:22.013 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response 17;17.5198117;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53957;2460996.89053255;11.37275861;1.3;_
2025-11-17T11:22:22.013 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:22.013 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:22.013 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:22.014 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:22.014 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:22.014 [INFO] [Thread-67398 (handle)] [driver.py] [get_status()] Telra = 17.5198117, teldec = -24.25656
2025-11-17T11:22:22.014 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5198117 -24.25656
2025-11-17T11:22:22.014 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5198117 -24.25656
2025-11-17T11:22:22.014 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5198117 -24.25656
2025-11-17T11:22:22.015 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 17;17.5198117;-24.25656;50.108429;89.993053;50.08601;90.12017;14.53957;2460996.89053258;11.37275861;1.3;_17.4936916525388 -24.2356045883877
2025-11-17T11:22:22.015 [INFO] [Thread-67398 (handle)] [driver.py] [get_status()] ra_j2k = 17.4936916525388     dec_j2k = -24.2356045883877
2025-11-17T11:22:22.015 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:22.015 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:22.015 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 140;0.104489605411197;171.162362694745;_
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response 140;0.104489605411197;171.162362694745;_
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:22.016 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:22.017 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:22.017 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:22.017 [DEBUG] [Thread-67398 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:22.017 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:22.017 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:22.018 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:22.018 [DEBUG] [Thread-67398 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:22.018 [DEBUG] [Thread-67398 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:22.018 [DEBUG] [Thread-67398 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:22.025 [DEBUG] [Thread-67398 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45459)
2025-11-17T11:22:22.026 [DEBUG] [Thread-67398 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:22.026 [DEBUG] [Thread-67398 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:22.026 [DEBUG] [Thread-67398 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:22.026 [DEBUG] [Thread-67398 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:22.026 [DEBUG] [Thread-67398 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:22.033 [DEBUG] [Thread-67398 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:22.033 [INFO] [Thread-67398 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89053255, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104489605411197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993053, telescope_ra=17.5198117, telescope_dec=-24.25656, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.53957, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:21:33.615291', telescope_ra_j2k=17.4936916525388, telescope_dec_j2k=-24.2356045883877, observability=1)
2025-11-17T11:22:33.759 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:33.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:33.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:33.761 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:33.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:33.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:33.762 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:22:33.762 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:33.762 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:33.762 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:33.762 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:33.762 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:22:33.763 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:22:33.764 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:34.764 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:34.764 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:34.764 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:34.764 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:34.764 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:34.765 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:34.765 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:34.765 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:34.765 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:34.765 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:34.766 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:34.767 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:34.767 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:34.767 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:34.768 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:34.768 [DEBUG] [ThreadPoolExecutor-2720_0] [payload.py] [to_registers()] [0]
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51949)
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:34.770 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:34.777 [DEBUG] [ThreadPoolExecutor-2720_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:35.208 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:22:35
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.175164461135864s
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:35.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:35.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:35.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5234934;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54325;2460996.8906853;11.37643028;1.3;_
2025-11-17T11:22:35.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.5234934;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54325;2460996.8906853;11.37643028;1.3;_
2025-11-17T11:22:35.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:35.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:35.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:35.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:35.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:35.211 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.5234934, teldec = -24.256559
2025-11-17T11:22:35.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5234934 -24.256559
2025-11-17T11:22:35.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5234934 -24.256559
2025-11-17T11:22:35.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5234934 -24.256559
2025-11-17T11:22:35.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5234934;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54325;2460996.89068532;11.37643028;1.3;_17.4973725616026 -24.2357395240774
2025-11-17T11:22:35.212 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.4973725616026     dec_j2k = -24.2357395240774
2025-11-17T11:22:35.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:35.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:35.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:35.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104489765858969;171.162357330327;_
2025-11-17T11:22:35.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104489765858969;171.162357330327;_
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:35.214 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:35.215 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49045)
2025-11-17T11:22:35.215 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:35.215 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:35.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:35.216 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:35.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:35.223 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:35.223 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8906853, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104489765858969, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993052, telescope_ra=17.5234934, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.54325, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.4973725616026, telescope_dec_j2k=-24.2357395240774, observability=1)
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Status age = 4.855901479721069s
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:40.079 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:40.080 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:40.081 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 17;17.524829;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54459;2460996.89074168;11.37776222;1.3;_
2025-11-17T11:22:40.081 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response 17;17.524829;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54459;2460996.89074168;11.37776222;1.3;_
2025-11-17T11:22:40.081 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:40.081 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:40.081 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:40.082 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:40.082 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:40.082 [INFO] [Thread-67399 (handle)] [driver.py] [get_status()] Telra = 17.524829, teldec = -24.256559
2025-11-17T11:22:40.082 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] UnCookCoordinates 17.524829 -24.256559
2025-11-17T11:22:40.082 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.524829 -24.256559
2025-11-17T11:22:40.082 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.524829 -24.256559
2025-11-17T11:22:40.083 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 17;17.524829;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54459;2460996.8907417;11.37776222;1.3;_17.4987078755055 -24.2357888421449
2025-11-17T11:22:40.083 [INFO] [Thread-67399 (handle)] [driver.py] [get_status()] ra_j2k = 17.4987078755055     dec_j2k = -24.2357888421449
2025-11-17T11:22:40.083 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:40.083 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:40.083 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 140;0.104489244403712;171.162357330327;_
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response 140;0.104489244403712;171.162357330327;_
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:40.084 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:40.085 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:40.086 [DEBUG] [Thread-67399 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:40.086 [DEBUG] [Thread-67399 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:40.086 [DEBUG] [Thread-67399 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38139)
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:40.090 [DEBUG] [Thread-67399 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:40.098 [DEBUG] [Thread-67399 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:40.098 [INFO] [Thread-67399 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89074168, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104489244403712, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993052, telescope_ra=17.524829, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.54459, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.4987078755055, telescope_dec_j2k=-24.2357888421449, observability=1)
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Status age = 18.04161047935486s
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:58.140 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:22:58.141 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:22:58.142 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 17;17.5298756;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54963;2460996.89095072;11.382795;1.3;_
2025-11-17T11:22:58.142 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response 17;17.5298756;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54963;2460996.89095072;11.382795;1.3;_
2025-11-17T11:22:58.142 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:22:58.142 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:22:58.142 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:22:58.143 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:58.143 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:22:58.143 [INFO] [Thread-67400 (handle)] [driver.py] [get_status()] Telra = 17.5298756, teldec = -24.256559
2025-11-17T11:22:58.143 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5298756 -24.256559
2025-11-17T11:22:58.143 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5298756 -24.256559
2025-11-17T11:22:58.143 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5298756 -24.256559
2025-11-17T11:22:58.144 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 17;17.5298756;-24.256559;50.108429;89.993052;50.08601;90.12017;14.54963;2460996.89095074;11.382795;1.3;_17.5037533988071 -24.2359752160325
2025-11-17T11:22:58.144 [INFO] [Thread-67400 (handle)] [driver.py] [get_status()] ra_j2k = 17.5037533988071     dec_j2k = -24.2359752160325
2025-11-17T11:22:58.144 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:22:58.144 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:22:58.144 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 140;0.104490247202282;171.162362694745;_
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response 140;0.104490247202282;171.162362694745;_
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:58.145 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:22:58.146 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:22:58.147 [DEBUG] [Thread-67400 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:58.147 [DEBUG] [Thread-67400 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:22:58.147 [DEBUG] [Thread-67400 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:22:58.151 [DEBUG] [Thread-67400 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60565)
2025-11-17T11:22:58.151 [DEBUG] [Thread-67400 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:22:58.151 [DEBUG] [Thread-67400 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:22:58.152 [DEBUG] [Thread-67400 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:22:58.152 [DEBUG] [Thread-67400 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:22:58.152 [DEBUG] [Thread-67400 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:22:58.159 [DEBUG] [Thread-67400 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:22:58.159 [INFO] [Thread-67400 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89095072, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104490247202282, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108429, telescope_az=89.993052, telescope_ra=17.5298756, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.54963, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.5037533988071, telescope_dec_j2k=-24.2359752160325, observability=1)
2025-11-17T11:22:59.777 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:59.778 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:59.778 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:59.778 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:59.778 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:22:59.779 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:22:59.780 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:22:59.781 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Status age = 8.304716348648071s
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:06.464 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:06.465 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 17;17.5321864;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55194;2460996.89104705;11.38509944;1.3;_
2025-11-17T11:23:06.465 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response 17;17.5321864;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55194;2460996.89104705;11.38509944;1.3;_
2025-11-17T11:23:06.465 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:06.465 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:06.465 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:06.466 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:06.466 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:06.466 [INFO] [Thread-67401 (handle)] [driver.py] [get_status()] Telra = 17.5321864, teldec = -24.256559
2025-11-17T11:23:06.466 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5321864 -24.256559
2025-11-17T11:23:06.466 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5321864 -24.256559
2025-11-17T11:23:06.466 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5321864 -24.256559
2025-11-17T11:23:06.467 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 17;17.5321864;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55194;2460996.89104707;11.38509944;1.3;_17.5060637080796 -24.236060567972
2025-11-17T11:23:06.467 [INFO] [Thread-67401 (handle)] [driver.py] [get_status()] ra_j2k = 17.5060637080796     dec_j2k = -24.236060567972
2025-11-17T11:23:06.467 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:06.467 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 140;0.104489805970911;171.162368059163;_
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response 140;0.104489805970911;171.162368059163;_
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:06.468 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:06.469 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:06.469 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:06.469 [DEBUG] [Thread-67401 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:06.470 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:06.470 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:06.470 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:06.470 [DEBUG] [Thread-67401 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:06.470 [DEBUG] [Thread-67401 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:06.471 [DEBUG] [Thread-67401 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:06.471 [DEBUG] [Thread-67401 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60763)
2025-11-17T11:23:06.471 [DEBUG] [Thread-67401 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:06.471 [DEBUG] [Thread-67401 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:06.472 [DEBUG] [Thread-67401 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:06.472 [DEBUG] [Thread-67401 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:06.472 [DEBUG] [Thread-67401 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:06.478 [DEBUG] [Thread-67401 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:06.479 [DEBUG] [Thread-67401 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:23:06.479 [INFO] [Thread-67401 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89104705, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104489805970911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993052, telescope_ra=17.5321864, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.55194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.5060637080796, telescope_dec_j2k=-24.236060567972, observability=1)
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.6722776889801025s
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:14.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.534328;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55408;2460996.89113602;11.38723528;1.3;_
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.534328;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55408;2460996.89113602;11.38723528;1.3;_
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:14.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:14.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:14.153 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:14.153 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.534328, teldec = -24.256559
2025-11-17T11:23:14.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.534328 -24.256559
2025-11-17T11:23:14.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.534328 -24.256559
2025-11-17T11:23:14.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.534328 -24.256559
2025-11-17T11:23:14.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.534328;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55408;2460996.89113604;11.38723528;1.3;_17.5082048545654 -24.2361396774331
2025-11-17T11:23:14.155 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5082048545654     dec_j2k = -24.2361396774331
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104490608209767;171.162351965909;_
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104490608209767;171.162351965909;_
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:14.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:14.156 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37335)
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:14.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:14.166 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:14.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:23:14.167 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89113602, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104490608209767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993052, telescope_ra=17.534328, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.55408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.5082048545654, telescope_dec_j2k=-24.2361396774331, observability=1)
2025-11-17T11:23:14.858 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:14.858 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6910820007324219s
2025-11-17T11:23:14.858 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6910820007324219
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Status age = 2.0755558013916016s
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:16.242 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:16.243 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:16.244 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 17;17.5349172;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55467;2460996.89116023;11.38782278;1.3;_
2025-11-17T11:23:16.244 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response 17;17.5349172;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55467;2460996.89116023;11.38782278;1.3;_
2025-11-17T11:23:16.244 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:16.244 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:16.244 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:16.245 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:16.245 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:16.246 [INFO] [Thread-67402 (handle)] [driver.py] [get_status()] Telra = 17.5349172, teldec = -24.256559
2025-11-17T11:23:16.246 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5349172 -24.256559
2025-11-17T11:23:16.246 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5349172 -24.256559
2025-11-17T11:23:16.246 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5349172 -24.256559
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 17;17.5349172;-24.256559;50.108428;89.993052;50.08601;90.12017;14.55467;2460996.89116027;11.38782278;1.3;_17.5087939300102 -24.2361614433354
2025-11-17T11:23:16.247 [INFO] [Thread-67402 (handle)] [driver.py] [get_status()] ra_j2k = 17.5087939300102     dec_j2k = -24.2361614433354
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 140;0.104490768657539;171.162357330327;_
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response 140;0.104490768657539;171.162357330327;_
2025-11-17T11:23:16.247 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:16.248 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:16.249 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:16.249 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:16.249 [DEBUG] [Thread-67402 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:16.249 [DEBUG] [Thread-67402 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:16.250 [DEBUG] [Thread-67402 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50469)
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:16.256 [DEBUG] [Thread-67402 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:16.263 [DEBUG] [Thread-67402 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:16.263 [DEBUG] [Thread-67402 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:16.263 [DEBUG] [Thread-67402 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:16.263 [DEBUG] [Thread-67402 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:16.264 [DEBUG] [Thread-67402 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:16.264 [DEBUG] [Thread-67402 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:16.264 [DEBUG] [Thread-67402 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:16.264 [DEBUG] [Thread-67402 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:16.264 [DEBUG] [Thread-67402 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:23:16.264 [INFO] [Thread-67402 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89116023, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104490768657539, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993052, telescope_ra=17.5349172, telescope_dec=-24.256559, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.55467, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.5087939300102, telescope_dec_j2k=-24.2361614433354, observability=1)
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.016961097717285s
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:20.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:20.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:20.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5360277;-24.256558;50.108428;89.993052;50.08601;90.12017;14.55578;2460996.89120697;11.38893028;1.3;_
2025-11-17T11:23:20.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.5360277;-24.256558;50.108428;89.993052;50.08601;90.12017;14.55578;2460996.89120697;11.38893028;1.3;_
2025-11-17T11:23:20.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:20.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:20.283 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:20.283 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:20.283 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:20.284 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.5360277, teldec = -24.256558
2025-11-17T11:23:20.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.5360277 -24.256558
2025-11-17T11:23:20.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.5360277 -24.256558
2025-11-17T11:23:20.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5360277 -24.256558
2025-11-17T11:23:20.285 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5360277;-24.256558;50.108428;89.993052;50.08601;90.12017;14.55578;2460996.891207;11.38893028;1.3;_17.5099041957049 -24.2362014682669
2025-11-17T11:23:20.285 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5099041957049     dec_j2k = -24.2362014682669
2025-11-17T11:23:20.285 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:20.285 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:20.285 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104490447761996;171.162351965909;_
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104490447761996;171.162351965909;_
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:20.286 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:20.287 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:20.288 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:20.288 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:20.288 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58069)
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:20.290 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:20.297 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:20.298 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:23:20.298 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89120697, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104490447761996, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993052, telescope_ra=17.5360277, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.55578, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:22:33.759199', telescope_ra_j2k=17.5099041957049, telescope_dec_j2k=-24.2362014682669, observability=1)
2025-11-17T11:23:20.298 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08951663970947 seconds ago
2025-11-17T11:23:33.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:33.903 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:33.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:33.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:33.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:33.904 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:33.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:33.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:33.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:33.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:33.905 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:23:33.905 [INFO] [ThreadPoolExecutor-2721_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:23:33.905 [INFO] [ThreadPoolExecutor-2721_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Status age = 14.002702713012695s
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:34.300 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:34.301 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:34.302 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 17;17.5399309;-24.256558;50.108428;89.993051;50.08601;90.12017;14.55969;2460996.89136924;11.39282278;1.3;_
2025-11-17T11:23:34.302 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response 17;17.5399309;-24.256558;50.108428;89.993051;50.08601;90.12017;14.55969;2460996.89136924;11.39282278;1.3;_
2025-11-17T11:23:34.302 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:34.303 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:34.303 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:34.304 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:34.304 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:34.304 [INFO] [Thread-67403 (handle)] [driver.py] [get_status()] Telra = 17.5399309, teldec = -24.256558
2025-11-17T11:23:34.304 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5399309 -24.256558
2025-11-17T11:23:34.304 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5399309 -24.256558
2025-11-17T11:23:34.304 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5399309 -24.256558
2025-11-17T11:23:34.305 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 17;17.5399309;-24.256558;50.108428;89.993051;50.08601;90.12017;14.55969;2460996.89136927;11.39282278;1.3;_17.5138065741022 -24.2363456775283
2025-11-17T11:23:34.305 [INFO] [Thread-67403 (handle)] [driver.py] [get_status()] ra_j2k = 17.5138065741022     dec_j2k = -24.2363456775283
2025-11-17T11:23:34.305 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:34.305 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:34.305 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:34.305 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 140;0.104491330224738;171.162351965909;_
2025-11-17T11:23:34.306 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response 140;0.104491330224738;171.162351965909;_
2025-11-17T11:23:34.306 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:34.306 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:34.306 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:34.306 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:34.307 [DEBUG] [Thread-67403 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33105)
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:34.311 [DEBUG] [Thread-67403 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:34.318 [DEBUG] [Thread-67403 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:23:34.318 [INFO] [Thread-67403 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89136924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104491330224738, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993051, telescope_ra=17.5399309, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.55969, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5138065741022, telescope_dec_j2k=-24.2363456775283, observability=1)
2025-11-17T11:23:35.284 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:23:35
2025-11-17T11:23:35.284 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:35.284 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.9656751155853271s
2025-11-17T11:23:35.284 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9656751155853271
2025-11-17T11:23:52.373 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:23:52.373 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Status age = 18.054986476898193s
2025-11-17T11:23:52.373 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:23:52.374 [DEBUG] [Thread-67404 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:52.374 [DEBUG] [Thread-67404 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:52.374 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:52.374 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:52.374 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:23:52.375 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:23:52.376 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 17;17.5449786;-24.256558;50.108428;89.993051;50.08601;90.12017;14.56474;2460996.89157843;11.39785667;1.3;_
2025-11-17T11:23:52.376 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response 17;17.5449786;-24.256558;50.108428;89.993051;50.08601;90.12017;14.56474;2460996.89157843;11.39785667;1.3;_
2025-11-17T11:23:52.376 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:23:52.376 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:23:52.376 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:23:52.377 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:52.377 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:23:52.377 [INFO] [Thread-67404 (handle)] [driver.py] [get_status()] Telra = 17.5449786, teldec = -24.256558
2025-11-17T11:23:52.377 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5449786 -24.256558
2025-11-17T11:23:52.377 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5449786 -24.256558
2025-11-17T11:23:52.377 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5449786 -24.256558
2025-11-17T11:23:52.378 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 17;17.5449786;-24.256558;50.108428;89.993051;50.08601;90.12017;14.56474;2460996.89157845;11.39785667;1.3;_17.5188532176637 -24.2365322051865
2025-11-17T11:23:52.378 [INFO] [Thread-67404 (handle)] [driver.py] [get_status()] ra_j2k = 17.5188532176637     dec_j2k = -24.2365322051865
2025-11-17T11:23:52.378 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:23:52.378 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:23:52.378 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 140;0.104491771456109;171.162351965909;_
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response 140;0.104491771456109;171.162351965909;_
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:52.379 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:23:52.380 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:23:52.381 [DEBUG] [Thread-67404 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:52.381 [DEBUG] [Thread-67404 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:23:52.381 [DEBUG] [Thread-67404 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56159)
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:23:52.387 [DEBUG] [Thread-67404 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:23:52.395 [DEBUG] [Thread-67404 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:23:52.395 [INFO] [Thread-67404 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89157843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104491771456109, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108428, telescope_az=89.993051, telescope_ra=17.5449786, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.56474, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5188532176637, telescope_dec_j2k=-24.2365322051865, observability=1)
2025-11-17T11:23:54.781 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.781 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.781 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:54.781 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:54.781 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:23:54.782 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:54.783 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:54.784 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:23:54.785 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:54.786 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:54.787 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:54.787 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:54.787 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:54.787 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Park
2025-11-17T11:23:54.787 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:23:54.788 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:23:54.788 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 29;17.5456431;-24.256558;50.108428;89.993051;50.08601;90.12017;14.5654;2460996.89160634;11.39851944;1.3;_Park Command Successful
2025-11-17T11:23:55.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:23:55.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:23:55.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:23:55.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:23:55.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:23:56.789 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:23:56.790 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:23:56.790 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:23:56.790 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:23:56.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:23:57.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:23:57.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:23:57.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:23:57.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:23:57.791 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:23:58.792 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:23:58.792 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:23:58.792 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:58.793 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:23:58.794 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:23:58.795 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:59.795 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:59.795 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:59.795 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:23:59.795 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:23:59.795 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:23:59.796 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:23:59.797 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:23:59.797 [DEBUG] [ThreadPoolExecutor-2720_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:23:59.797 [INFO] [ThreadPoolExecutor-2720_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Status age = 14.127747535705566s
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:06.523 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:06.524 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:06.525 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 17;17.5489065;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56866;2460996.89174219;11.40177389;1.3;_
2025-11-17T11:24:06.526 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response 17;17.5489065;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56866;2460996.89174219;11.40177389;1.3;_
2025-11-17T11:24:06.526 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:06.526 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:06.526 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:06.527 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:06.527 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:06.527 [INFO] [Thread-67405 (handle)] [driver.py] [get_status()] Telra = 17.5489065, teldec = -24.256558
2025-11-17T11:24:06.527 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5489065 -24.256558
2025-11-17T11:24:06.527 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5489065 -24.256558
2025-11-17T11:24:06.527 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5489065 -24.256558
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 17;17.5489065;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56866;2460996.89174222;11.40177389;1.3;_17.5227803003309 -24.2366773786058
2025-11-17T11:24:06.528 [INFO] [Thread-67405 (handle)] [driver.py] [get_status()] ra_j2k = 17.5227803003309     dec_j2k = -24.2366773786058
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 140;0.104492533583022;171.162357330327;_
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response 140;0.104492533583022;171.162357330327;_
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:06.528 [DEBUG] [Thread-67405 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:06.529 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:06.529 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:06.529 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:06.529 [DEBUG] [Thread-67405 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:06.529 [DEBUG] [Thread-67405 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:06.530 [DEBUG] [Thread-67405 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39637)
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:06.533 [DEBUG] [Thread-67405 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:06.540 [DEBUG] [Thread-67405 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:06.540 [INFO] [Thread-67405 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89174219, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104492533583022, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.993051, telescope_ra=17.5489065, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.56866, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5227803003309, telescope_dec_j2k=-24.2366773786058, observability=1)
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Status age = 3.9538421630859375s
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:10.494 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 17;17.5500184;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56978;2460996.89178814;11.40288278;1.3;_
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response 17;17.5500184;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56978;2460996.89178814;11.40288278;1.3;_
2025-11-17T11:24:10.495 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:10.496 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:10.496 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:10.496 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:10.497 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:10.497 [INFO] [Thread-67406 (handle)] [driver.py] [get_status()] Telra = 17.5500184, teldec = -24.256558
2025-11-17T11:24:10.497 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5500184 -24.256558
2025-11-17T11:24:10.497 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5500184 -24.256558
2025-11-17T11:24:10.497 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5500184 -24.256558
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 17;17.5500184;-24.256558;50.108427;89.993051;50.08601;90.12017;14.56978;2460996.89178817;11.40288278;1.3;_17.5238919697162 -24.2367184779962
2025-11-17T11:24:10.498 [INFO] [Thread-67406 (handle)] [driver.py] [get_status()] ra_j2k = 17.5238919697162     dec_j2k = -24.2367184779962
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 140;0.104492172575537;171.162357330327;_
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response 140;0.104492172575537;171.162357330327;_
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:10.498 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:10.499 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:10.500 [DEBUG] [Thread-67406 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:10.500 [DEBUG] [Thread-67406 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:10.500 [DEBUG] [Thread-67406 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47085)
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:10.503 [DEBUG] [Thread-67406 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:10.510 [DEBUG] [Thread-67406 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:10.511 [DEBUG] [Thread-67406 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:10.511 [INFO] [Thread-67406 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89178814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104492172575537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.993051, telescope_ra=17.5500184, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.56978, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5238919697162, telescope_dec_j2k=-24.2367184779962, observability=1)
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.7451343536376953s
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:13.256 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5508028;-24.256558;50.108427;89.993051;50.08601;90.12017;14.57056;2460996.8918201;11.403665;1.3;_
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.5508028;-24.256558;50.108427;89.993051;50.08601;90.12017;14.57056;2460996.8918201;11.403665;1.3;_
2025-11-17T11:24:13.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:13.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:13.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:13.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:13.259 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:13.259 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.5508028, teldec = -24.256558
2025-11-17T11:24:13.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5508028 -24.256558
2025-11-17T11:24:13.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5508028 -24.256558
2025-11-17T11:24:13.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5508028 -24.256558
2025-11-17T11:24:13.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5508028;-24.256558;50.108427;89.993051;50.08601;90.12017;14.57056;2460996.89182014;11.403665;1.3;_17.5246762072271 -24.2367474730118
2025-11-17T11:24:13.260 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5246762072271     dec_j2k = -24.2367474730118
2025-11-17T11:24:13.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:13.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:13.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104492613806908;171.162351965909;_
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104492613806908;171.162351965909;_
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:13.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:13.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:13.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:13.263 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:13.263 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55493)
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:13.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:13.278 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:13.278 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8918201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104492613806908, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.993051, telescope_ra=17.5508028, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.57056, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5246762072271, telescope_dec_j2k=-24.2367474730118, observability=1)
2025-11-17T11:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.5833938121795654s
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5512421;-24.256558;50.108427;89.993051;50.08601;90.12017;14.571;2460996.89183869;11.40410306;1.3;_
2025-11-17T11:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5512421;-24.256558;50.108427;89.993051;50.08601;90.12017;14.571;2460996.89183869;11.40410306;1.3;_
2025-11-17T11:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:14.864 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5512421, teldec = -24.256558
2025-11-17T11:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5512421 -24.256558
2025-11-17T11:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5512421 -24.256558
2025-11-17T11:24:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5512421 -24.256558
2025-11-17T11:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5512421;-24.256558;50.108427;89.993051;50.08601;90.12017;14.571;2460996.89183872;11.40410306;1.3;_17.525115416298 -24.2367637119394
2025-11-17T11:24:14.865 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.525115416298     dec_j2k = -24.2367637119394
2025-11-17T11:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104493456157707;171.162362694745;_
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104493456157707;171.162362694745;_
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:14.871 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47257)
2025-11-17T11:24:14.871 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:14.872 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:14.872 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:14.879 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89183869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104493456157707, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.993051, telescope_ra=17.5512421, telescope_dec=-24.256558, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.571, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.525115416298, telescope_dec_j2k=-24.2367637119394, observability=1)
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.478695631027222s
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:20.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:20.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:20.360 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5527743;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57253;2460996.89190232;11.40563111;1.3;_
2025-11-17T11:24:20.360 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.5527743;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57253;2460996.89190232;11.40563111;1.3;_
2025-11-17T11:24:20.360 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:20.360 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:20.361 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:20.361 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:20.362 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:20.362 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.5527743, teldec = -24.256557
2025-11-17T11:24:20.362 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.5527743 -24.256557
2025-11-17T11:24:20.362 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.5527743 -24.256557
2025-11-17T11:24:20.362 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5527743 -24.256557
2025-11-17T11:24:20.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5527743;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57253;2460996.89190235;11.40563111;1.3;_17.5266472997579 -24.2368193526502
2025-11-17T11:24:20.363 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5266472997579     dec_j2k = -24.2368193526502
2025-11-17T11:24:20.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:20.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:20.363 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104493055038279;171.162368059163;_
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104493055038279;171.162368059163;_
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:20.364 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:20.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:20.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:20.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:20.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:20.365 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:20.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:20.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:20.366 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56275)
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:20.368 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:20.375 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:24:20.375 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89190232, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104493055038279, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.99305, telescope_ra=17.5527743, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.57253, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.5266472997579, telescope_dec_j2k=-24.2368193526502, observability=1)
2025-11-17T11:24:20.375 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09147071838379 seconds ago
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Status age = 8.179945707321167s
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:28.555 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:28.556 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:28.557 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:28.558 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 17;17.5550656;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57482;2460996.89199719;11.40791611;1.3;_
2025-11-17T11:24:28.558 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response 17;17.5550656;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57482;2460996.89199719;11.40791611;1.3;_
2025-11-17T11:24:28.558 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:28.558 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:28.558 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:28.559 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:28.559 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:28.559 [INFO] [Thread-67407 (handle)] [driver.py] [get_status()] Telra = 17.5550656, teldec = -24.256557
2025-11-17T11:24:28.559 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5550656 -24.256557
2025-11-17T11:24:28.559 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5550656 -24.256557
2025-11-17T11:24:28.559 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5550656 -24.256557
2025-11-17T11:24:28.560 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 17;17.5550656;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57482;2460996.89199722;11.40791611;1.3;_17.528938127277 -24.2369040611717
2025-11-17T11:24:28.560 [INFO] [Thread-67407 (handle)] [driver.py] [get_status()] ra_j2k = 17.528938127277     dec_j2k = -24.2369040611717
2025-11-17T11:24:28.560 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:28.560 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:28.560 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 140;0.104493416045764;171.162351965909;_
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response 140;0.104493416045764;171.162351965909;_
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:28.561 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:28.562 [DEBUG] [Thread-67407 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:28.562 [DEBUG] [Thread-67407 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:28.562 [DEBUG] [Thread-67407 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45273)
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:28.565 [DEBUG] [Thread-67407 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:28.573 [DEBUG] [Thread-67407 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:28.573 [INFO] [Thread-67407 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89199719, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104493416045764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.99305, telescope_ra=17.5550656, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.57482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:23:33.902988', telescope_ra_j2k=17.528938127277, telescope_dec_j2k=-24.2369040611717, observability=1)
2025-11-17T11:24:34.044 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:34.044 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:34.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:34.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:34.044 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:34.045 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:34.045 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:34.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:34.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:34.046 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:34.046 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:24:34.046 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:34.046 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:24:34.047 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:24:34.048 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:35.048 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:35.048 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:35.048 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:35.048 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:24:35.049 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:35.050 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:35.051 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:35.051 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:35.051 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:35.051 [DEBUG] [ThreadPoolExecutor-2722_0] [payload.py] [to_registers()] [0]
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51899)
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:35.056 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:35.063 [DEBUG] [ThreadPoolExecutor-2722_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:35.345 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:24:35
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.771939039230347s
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:35.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:35.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5569546;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57671;2460996.89207578;11.4098;1.3;_
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.5569546;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57671;2460996.89207578;11.4098;1.3;_
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:35.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:35.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:35.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:35.348 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.5569546, teldec = -24.256557
2025-11-17T11:24:35.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5569546 -24.256557
2025-11-17T11:24:35.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5569546 -24.256557
2025-11-17T11:24:35.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5569546 -24.256557
2025-11-17T11:24:35.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5569546;-24.256557;50.108427;89.99305;50.08601;90.12017;14.57671;2460996.8920758;11.4098;1.3;_17.5308267388157 -24.2369739024695
2025-11-17T11:24:35.349 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.5308267388157     dec_j2k = -24.2369739024695
2025-11-17T11:24:35.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:35.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:35.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:35.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10449421828462;171.162357330327;_
2025-11-17T11:24:35.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10449421828462;171.162357330327;_
2025-11-17T11:24:35.350 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:35.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:35.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:35.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:35.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:35.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:24:35.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:24:35.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:24:35.352 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47155)
2025-11-17T11:24:35.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:35.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:35.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:35.353 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:35.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:35.360 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:35.360 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89207578, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10449421828462, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108427, telescope_az=89.99305, telescope_ra=17.5569546, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.57671, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5308267388157, telescope_dec_j2k=-24.2369739024695, observability=1)
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Status age = 11.26277232170105s
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:24:46.623 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 17;17.5600771;-24.256557;50.108426;89.99305;50.08601;90.12017;14.57983;2460996.8922063;11.41291389;1.3;_
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response 17;17.5600771;-24.256557;50.108426;89.99305;50.08601;90.12017;14.57983;2460996.8922063;11.41291389;1.3;_
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:24:46.624 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:24:46.625 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:46.625 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:24:46.626 [INFO] [Thread-67408 (handle)] [driver.py] [get_status()] Telra = 17.5600771, teldec = -24.256557
2025-11-17T11:24:46.626 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5600771 -24.256557
2025-11-17T11:24:46.626 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5600771 -24.256557
2025-11-17T11:24:46.626 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5600771 -24.256557
2025-11-17T11:24:46.627 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 17;17.5600771;-24.256557;50.108426;89.99305;50.08601;90.12017;14.57983;2460996.89220633;11.41291389;1.3;_17.5339485987988 -24.2370893606743
2025-11-17T11:24:46.627 [INFO] [Thread-67408 (handle)] [driver.py] [get_status()] ra_j2k = 17.5339485987988     dec_j2k = -24.2370893606743
2025-11-17T11:24:46.627 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:24:46.627 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:24:46.627 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 140;0.104495100747362;171.162346601491;_
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response 140;0.104495100747362;171.162346601491;_
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:46.628 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:24:46.629 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:24:46.630 [DEBUG] [Thread-67408 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:46.630 [DEBUG] [Thread-67408 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:24:46.630 [DEBUG] [Thread-67408 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57555)
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:24:46.637 [DEBUG] [Thread-67408 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:24:46.645 [DEBUG] [Thread-67408 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:24:46.645 [INFO] [Thread-67408 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8922063, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104495100747362, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.99305, telescope_ra=17.5600771, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.57983, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5339485987988, telescope_dec_j2k=-24.2370893606743, observability=1)
2025-11-17T11:25:00.064 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:00.064 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:00.064 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:00.064 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:00.064 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:00.065 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:25:00.066 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:25:00.067 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Status age = 18.120399951934814s
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:04.766 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:04.767 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 17;17.5651467;-24.256557;50.108426;89.99305;50.08601;90.12017;14.5849;2460996.89241628;11.41796972;1.3;_
2025-11-17T11:25:04.767 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response 17;17.5651467;-24.256557;50.108426;89.99305;50.08601;90.12017;14.5849;2460996.89241628;11.41796972;1.3;_
2025-11-17T11:25:04.767 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:04.767 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:04.767 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:04.768 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:04.768 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:04.768 [INFO] [Thread-67409 (handle)] [driver.py] [get_status()] Telra = 17.5651467, teldec = -24.256557
2025-11-17T11:25:04.768 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5651467 -24.256557
2025-11-17T11:25:04.768 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5651467 -24.256557
2025-11-17T11:25:04.768 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5651467 -24.256557
2025-11-17T11:25:04.769 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 17;17.5651467;-24.256557;50.108426;89.99305;50.08601;90.12017;14.5849;2460996.89241631;11.41796972;1.3;_17.5390171652767 -24.2372768447134
2025-11-17T11:25:04.769 [INFO] [Thread-67409 (handle)] [driver.py] [get_status()] ra_j2k = 17.5390171652767     dec_j2k = -24.2372768447134
2025-11-17T11:25:04.769 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:04.769 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 140;0.104495983210103;171.162357330327;_
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response 140;0.104495983210103;171.162357330327;_
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:04.770 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:04.771 [DEBUG] [Thread-67409 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:04.771 [DEBUG] [Thread-67409 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:04.771 [DEBUG] [Thread-67409 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:04.772 [DEBUG] [Thread-67409 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57523)
2025-11-17T11:25:04.773 [DEBUG] [Thread-67409 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:04.773 [DEBUG] [Thread-67409 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:04.773 [DEBUG] [Thread-67409 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:04.773 [DEBUG] [Thread-67409 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:04.773 [DEBUG] [Thread-67409 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:04.780 [DEBUG] [Thread-67409 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:04.780 [INFO] [Thread-67409 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89241628, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104495983210103, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.99305, telescope_ra=17.5651467, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5849, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5390171652767, telescope_dec_j2k=-24.2372768447134, observability=1)
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Status age = 1.8101027011871338s
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:06.590 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:06.591 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:06.592 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 17;17.5656512;-24.256557;50.108426;89.99305;50.08601;90.12017;14.58541;2460996.89243741;11.41847278;1.3;_
2025-11-17T11:25:06.592 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response 17;17.5656512;-24.256557;50.108426;89.99305;50.08601;90.12017;14.58541;2460996.89243741;11.41847278;1.3;_
2025-11-17T11:25:06.592 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:06.592 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:06.592 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:06.593 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:06.593 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:06.593 [INFO] [Thread-67410 (handle)] [driver.py] [get_status()] Telra = 17.5656512, teldec = -24.256557
2025-11-17T11:25:06.593 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5656512 -24.256557
2025-11-17T11:25:06.593 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5656512 -24.256557
2025-11-17T11:25:06.593 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5656512 -24.256557
2025-11-17T11:25:06.594 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 17;17.5656512;-24.256557;50.108426;89.99305;50.08601;90.12017;14.58541;2460996.89243743;11.41847278;1.3;_17.5395215628046 -24.2372955041263
2025-11-17T11:25:06.594 [INFO] [Thread-67410 (handle)] [driver.py] [get_status()] ra_j2k = 17.5395215628046     dec_j2k = -24.2372955041263
2025-11-17T11:25:06.594 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:06.594 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:06.594 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 140;0.104495541978733;171.162368059163;_
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response 140;0.104495541978733;171.162368059163;_
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:06.595 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:06.596 [DEBUG] [Thread-67410 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:06.602 [DEBUG] [Thread-67410 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36185)
2025-11-17T11:25:06.603 [DEBUG] [Thread-67410 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:06.603 [DEBUG] [Thread-67410 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:06.603 [DEBUG] [Thread-67410 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:06.603 [DEBUG] [Thread-67410 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:06.603 [DEBUG] [Thread-67410 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:06.610 [DEBUG] [Thread-67410 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:06.610 [INFO] [Thread-67410 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89243741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104495541978733, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.99305, telescope_ra=17.5656512, telescope_dec=-24.256557, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.58541, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5395215628046, telescope_dec_j2k=-24.2372955041263, observability=1)
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.756417274475098s
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:12.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:12.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:12.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5672433;-24.256556;50.108426;89.99305;50.08601;90.12017;14.587;2460996.89250427;11.42006056;1.3;_
2025-11-17T11:25:12.369 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.5672433;-24.256556;50.108426;89.99305;50.08601;90.12017;14.587;2460996.89250427;11.42006056;1.3;_
2025-11-17T11:25:12.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:12.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:12.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:12.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:12.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:12.371 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.5672433, teldec = -24.256556
2025-11-17T11:25:12.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5672433 -24.256556
2025-11-17T11:25:12.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5672433 -24.256556
2025-11-17T11:25:12.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5672433 -24.256556
2025-11-17T11:25:12.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.5672433;-24.256556;50.108426;89.99305;50.08601;90.12017;14.587;2460996.89250431;11.42006056;1.3;_17.5411133400707 -24.2373533918579
2025-11-17T11:25:12.372 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5411133400707     dec_j2k = -24.2373533918579
2025-11-17T11:25:12.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:12.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:12.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10449622388176;171.162351965909;_
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10449622388176;171.162351965909;_
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:12.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:12.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:12.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:12.375 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:12.375 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54847)
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:12.381 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:12.388 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:12.388 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89250427, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10449622388176, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.99305, telescope_ra=17.5672433, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.587, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5411133400707, telescope_dec_j2k=-24.2373533918579, observability=1)
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.476419448852539s
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5679639;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58772;2460996.89253318;11.42077917;1.3;_
2025-11-17T11:25:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5679639;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58772;2460996.89253318;11.42077917;1.3;_
2025-11-17T11:25:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:14.868 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5679639, teldec = -24.256556
2025-11-17T11:25:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5679639 -24.256556
2025-11-17T11:25:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5679639 -24.256556
2025-11-17T11:25:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5679639 -24.256556
2025-11-17T11:25:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5679639;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58772;2460996.89253321;11.42077917;1.3;_17.5418337941331 -24.2373800461657
2025-11-17T11:25:14.869 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5418337941331     dec_j2k = -24.2373800461657
2025-11-17T11:25:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104497026120616;171.162351965909;_
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104497026120616;171.162351965909;_
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48619)
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:14.882 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:14.882 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89253318, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497026120616, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5679639, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.58772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5418337941331, telescope_dec_j2k=-24.2373800461657, observability=1)
2025-11-17T11:25:20.435 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.55281662940979s
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:20.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:20.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5694953;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58925;2460996.89259765;11.42230639;1.3;_
2025-11-17T11:25:20.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.5694953;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58925;2460996.89259765;11.42230639;1.3;_
2025-11-17T11:25:20.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:20.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:20.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:20.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:20.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:20.439 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.5694953, teldec = -24.256556
2025-11-17T11:25:20.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.5694953 -24.256556
2025-11-17T11:25:20.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.5694953 -24.256556
2025-11-17T11:25:20.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5694953 -24.256556
2025-11-17T11:25:20.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5694953;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58925;2460996.89259768;11.42230639;1.3;_17.5433648844548 -24.2374366936074
2025-11-17T11:25:20.440 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5433648844548     dec_j2k = -24.2374366936074
2025-11-17T11:25:20.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:20.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:20.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104497026120616;171.162351965909;_
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104497026120616;171.162351965909;_
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:20.441 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:20.442 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:20.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:20.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:20.443 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56941)
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:20.447 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:20.454 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:25:20.454 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89259765, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497026120616, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5694953, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.58925, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5433648844548, telescope_dec_j2k=-24.2374366936074, observability=1)
2025-11-17T11:25:20.454 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10952663421631 seconds ago
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Status age = 2.374591588973999s
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:22.829 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:22.830 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:22.831 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 17;17.5701674;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58992;2460996.89262536;11.42297667;1.3;_
2025-11-17T11:25:22.831 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response 17;17.5701674;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58992;2460996.89262536;11.42297667;1.3;_
2025-11-17T11:25:22.831 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:22.831 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:22.831 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:22.832 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:22.832 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:22.832 [INFO] [Thread-67411 (handle)] [driver.py] [get_status()] Telra = 17.5701674, teldec = -24.256556
2025-11-17T11:25:22.832 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5701674 -24.256556
2025-11-17T11:25:22.832 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5701674 -24.256556
2025-11-17T11:25:22.832 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5701674 -24.256556
2025-11-17T11:25:22.833 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 17;17.5701674;-24.256556;50.108426;89.993049;50.08601;90.12017;14.58992;2460996.89262538;11.42297667;1.3;_17.5440368487428 -24.2374615560405
2025-11-17T11:25:22.833 [INFO] [Thread-67411 (handle)] [driver.py] [get_status()] ra_j2k = 17.5440368487428     dec_j2k = -24.2374615560405
2025-11-17T11:25:22.833 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:22.833 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:22.833 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 140;0.104497306904216;171.162357330327;_
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response 140;0.104497306904216;171.162357330327;_
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:22.834 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:22.835 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:22.836 [DEBUG] [Thread-67411 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:22.836 [DEBUG] [Thread-67411 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:22.836 [DEBUG] [Thread-67411 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41187)
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:22.840 [DEBUG] [Thread-67411 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:22.847 [DEBUG] [Thread-67411 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:22.847 [INFO] [Thread-67411 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89262536, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497306904216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5701674, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.58992, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5440368487428, telescope_dec_j2k=-24.2374615560405, observability=1)
2025-11-17T11:25:28.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:28.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.128954648971558s
2025-11-17T11:25:28.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:28.976 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:28.976 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:28.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:28.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5718946;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59165;2460996.8926965;11.42469917;1.3;_
2025-11-17T11:25:28.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5718946;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59165;2460996.8926965;11.42469917;1.3;_
2025-11-17T11:25:28.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:28.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:28.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:28.980 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5718946, teldec = -24.256556
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5718946 -24.256556
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5718946 -24.256556
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5718946 -24.256556
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5718946;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59165;2460996.89269653;11.42469917;1.3;_17.5457637005407 -24.2375254517939
2025-11-17T11:25:28.980 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5457637005407     dec_j2k = -24.2375254517939
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:28.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104497387128102;171.162362694745;_
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104497387128102;171.162362694745;_
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:28.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:28.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:28.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:28.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:28.982 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:28.982 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48113)
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:28.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:28.991 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:28.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:28.992 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8926965, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497387128102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5718946, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.59165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5457637005407, telescope_dec_j2k=-24.2375254517939, observability=1)
2025-11-17T11:25:29.606 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:29.606 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6143612861633301s
2025-11-17T11:25:29.606 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6143612861633301
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6623947620391846s
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:30.654 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5723609;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59212;2460996.89271591;11.42516417;1.3;_
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5723609;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59212;2460996.89271591;11.42516417;1.3;_
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:30.655 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:30.656 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:30.656 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:30.656 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5723609, teldec = -24.256556
2025-11-17T11:25:30.656 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5723609 -24.256556
2025-11-17T11:25:30.656 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5723609 -24.256556
2025-11-17T11:25:30.657 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5723609 -24.256556
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5723609;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59212;2460996.89271594;11.42516417;1.3;_17.5462299066728 -24.2375427027313
2025-11-17T11:25:30.658 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5462299066728     dec_j2k = -24.2375427027313
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104497708023644;171.162362694745;_
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104497708023644;171.162362694745;_
2025-11-17T11:25:30.658 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:30.659 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:30.660 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:30.660 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:30.660 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:30.664 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36207)
2025-11-17T11:25:30.665 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:30.665 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:30.665 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:30.665 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:30.665 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:30.672 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:30.672 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89271591, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497708023644, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5723609, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.59212, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5462299066728, telescope_dec_j2k=-24.2375427027313, observability=1)
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.0356431007385254s
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:31.708 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:31.709 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:31.710 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5726411;-24.256556;50.108426;89.993049;50.08601;90.12017;14.5924;2460996.89272813;11.42544361;1.3;_
2025-11-17T11:25:31.710 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5726411;-24.256556;50.108426;89.993049;50.08601;90.12017;14.5924;2460996.89272813;11.42544361;1.3;_
2025-11-17T11:25:31.710 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:31.710 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:31.710 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:31.711 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:31.711 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:31.711 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5726411, teldec = -24.256556
2025-11-17T11:25:31.711 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5726411 -24.256556
2025-11-17T11:25:31.711 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5726411 -24.256556
2025-11-17T11:25:31.711 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5726411 -24.256556
2025-11-17T11:25:31.712 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5726411;-24.256556;50.108426;89.993049;50.08601;90.12017;14.5924;2460996.89272815;11.42544361;1.3;_17.5465100502957 -24.2375530689771
2025-11-17T11:25:31.712 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5465100502957     dec_j2k = -24.2375530689771
2025-11-17T11:25:31.712 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:31.712 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:31.713 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:31.713 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104496865672845;171.162351965909;_
2025-11-17T11:25:31.713 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104496865672845;171.162351965909;_
2025-11-17T11:25:31.713 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:31.714 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:31.714 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:31.714 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:31.714 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:31.714 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:31.715 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:25:31.716 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:25:31.719 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34691)
2025-11-17T11:25:31.720 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:31.720 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:31.720 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:31.720 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:31.720 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:31.727 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:31.727 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89272813, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104496865672845, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5726411, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.5924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5465100502957, telescope_dec_j2k=-24.2375530689771, observability=1)
2025-11-17T11:25:32.759 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:32.759 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.0323903560638428s
2025-11-17T11:25:32.759 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:32.760 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:32.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5729495;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59271;2460996.89274029;11.42575111;1.3;_
2025-11-17T11:25:32.761 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5729495;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59271;2460996.89274029;11.42575111;1.3;_
2025-11-17T11:25:32.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:32.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:32.761 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:32.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:32.762 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:32.762 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5729495, teldec = -24.256556
2025-11-17T11:25:32.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5729495 -24.256556
2025-11-17T11:25:32.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5729495 -24.256556
2025-11-17T11:25:32.762 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5729495 -24.256556
2025-11-17T11:25:32.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5729495;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59271;2460996.89274031;11.42575111;1.3;_17.5468183882691 -24.2375644786328
2025-11-17T11:25:32.763 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5468183882691     dec_j2k = -24.2375644786328
2025-11-17T11:25:32.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:32.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:32.763 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10449750746393;171.162351965909;_
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10449750746393;171.162351965909;_
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:32.764 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:32.765 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:32.766 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:32.766 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:32.766 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34711)
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:32.767 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:32.775 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:32.776 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:32.776 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:32.776 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89274029, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10449750746393, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5729495, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.59271, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:24:34.043646', telescope_ra_j2k=17.5468183882691, telescope_dec_j2k=-24.2375644786328, observability=1)
2025-11-17T11:25:34.188 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:34.188 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:34.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:34.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:34.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:34.189 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:34.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:34.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:34.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:34.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:34.190 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:25:34.190 [INFO] [ThreadPoolExecutor-2723_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:25:34.190 [INFO] [ThreadPoolExecutor-2723_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:25:35.421 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:25:35
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.6454036235809326s
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:35.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:35.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5736779;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59343;2460996.8927711;11.4264775;1.3;_
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.5736779;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59343;2460996.8927711;11.4264775;1.3;_
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:35.423 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.5736779, teldec = -24.256556
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5736779 -24.256556
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5736779 -24.256556
2025-11-17T11:25:35.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5736779 -24.256556
2025-11-17T11:25:35.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.5736779;-24.256556;50.108426;89.993049;50.08601;90.12017;14.59343;2460996.89277111;11.4264775;1.3;_17.5475466418722 -24.237591427254
2025-11-17T11:25:35.424 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.5475466418722     dec_j2k = -24.237591427254
2025-11-17T11:25:35.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:35.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:35.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104497627799758;171.162362694745;_
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104497627799758;171.162362694745;_
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:35.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:35.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:35.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:35.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:35.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50077)
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:35.428 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:35.436 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:35.436 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8927711, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497627799758, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108426, telescope_az=89.993049, telescope_ra=17.5736779, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.59343, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5475466418722, telescope_dec_j2k=-24.237591427254, observability=1)
2025-11-17T11:25:40.893 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:40.893 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Status age = 5.457260847091675s
2025-11-17T11:25:40.893 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:40.893 [DEBUG] [Thread-67412 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:40.894 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:40.895 [DEBUG] [Thread-67412 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:40.895 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:40.895 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:40.895 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:40.895 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:40.896 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 17;17.5752104;-24.256556;50.108425;89.993049;50.08601;90.12017;14.59497;2460996.89283443;11.42800583;1.3;_
2025-11-17T11:25:40.896 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response 17;17.5752104;-24.256556;50.108425;89.993049;50.08601;90.12017;14.59497;2460996.89283443;11.42800583;1.3;_
2025-11-17T11:25:40.896 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:40.896 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:40.896 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:40.897 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:40.897 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:40.897 [INFO] [Thread-67412 (handle)] [driver.py] [get_status()] Telra = 17.5752104, teldec = -24.256556
2025-11-17T11:25:40.897 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5752104 -24.256556
2025-11-17T11:25:40.897 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5752104 -24.256556
2025-11-17T11:25:40.897 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5752104 -24.256556
2025-11-17T11:25:40.898 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 17;17.5752104;-24.256556;50.108425;89.993049;50.08601;90.12017;14.59497;2460996.89283447;11.42800583;1.3;_17.5490788343307 -24.2376481275699
2025-11-17T11:25:40.898 [INFO] [Thread-67412 (handle)] [driver.py] [get_status()] ra_j2k = 17.5490788343307     dec_j2k = -24.2376481275699
2025-11-17T11:25:40.898 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:40.898 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:40.898 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 140;0.104497828359472;171.162351965909;_
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response 140;0.104497828359472;171.162351965909;_
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:40.899 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:40.900 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:40.901 [DEBUG] [Thread-67412 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:40.901 [DEBUG] [Thread-67412 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:40.901 [DEBUG] [Thread-67412 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59985)
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:40.907 [DEBUG] [Thread-67412 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:40.914 [DEBUG] [Thread-67412 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:40.915 [DEBUG] [Thread-67412 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:40.915 [DEBUG] [Thread-67412 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:40.915 [INFO] [Thread-67412 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89283443, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497828359472, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993049, telescope_ra=17.5752104, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.59497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5490788343307, telescope_dec_j2k=-24.2376481275699, observability=1)
2025-11-17T11:25:55.067 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.067 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.067 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:55.067 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:55.067 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:55.068 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.068 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:55.068 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:55.068 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:55.069 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:55.070 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:55.070 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.070 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:55.071 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:25:55.072 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:55.073 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Park
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:25:55.074 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:25:55.075 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 29;17.57914;-24.256556;50.108425;89.993049;50.08601;90.12017;14.5989;2460996.89299855;11.43192472;1.3;_Park Command Successful
2025-11-17T11:25:56.075 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:25:56.075 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:25:56.075 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:25:56.076 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:25:56.076 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:25:57.076 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:25:57.076 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:25:57.077 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:25:57.077 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:25:57.077 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:25:58.077 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:25:58.077 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:25:58.078 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:25:58.078 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:25:58.078 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Status age = 18.100545167922974s
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:59.015 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:59.016 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:59.016 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:25:59.017 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:25:59.018 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 17;17.5802517;-24.256556;50.108425;89.993049;50.08601;90.12017;14.60001;2460996.89304419;11.43303333;1.3;_
2025-11-17T11:25:59.018 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response 17;17.5802517;-24.256556;50.108425;89.993049;50.08601;90.12017;14.60001;2460996.89304419;11.43303333;1.3;_
2025-11-17T11:25:59.018 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:25:59.018 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:25:59.018 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:25:59.019 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:59.019 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:25:59.019 [INFO] [Thread-67413 (handle)] [driver.py] [get_status()] Telra = 17.5802517, teldec = -24.256556
2025-11-17T11:25:59.019 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5802517 -24.256556
2025-11-17T11:25:59.019 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5802517 -24.256556
2025-11-17T11:25:59.019 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5802517 -24.256556
2025-11-17T11:25:59.020 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 17;17.5802517;-24.256556;50.108425;89.993049;50.08601;90.12017;14.60001;2460996.89304421;11.43303333;1.3;_17.5541191271096 -24.2378346713384
2025-11-17T11:25:59.020 [INFO] [Thread-67413 (handle)] [driver.py] [get_status()] ra_j2k = 17.5541191271096     dec_j2k = -24.2378346713384
2025-11-17T11:25:59.020 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:25:59.020 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:25:59.020 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 140;0.104498149255015;171.162357330327;_
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response 140;0.104498149255015;171.162357330327;_
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:59.021 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:25:59.022 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:25:59.023 [DEBUG] [Thread-67413 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:59.023 [DEBUG] [Thread-67413 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:25:59.023 [DEBUG] [Thread-67413 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39977)
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:25:59.030 [DEBUG] [Thread-67413 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:25:59.038 [DEBUG] [Thread-67413 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:25:59.038 [INFO] [Thread-67413 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89304419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498149255015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993049, telescope_ra=17.5802517, telescope_dec=-24.256556, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.60001, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5541191271096, telescope_dec_j2k=-24.2378346713384, observability=1)
2025-11-17T11:25:59.078 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:25:59.079 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:25:59.079 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:25:59.080 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:25:59.081 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:25:59.082 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:00.082 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:00.082 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:00.082 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:00.082 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:00.082 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:26:00.083 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:26:00.084 [DEBUG] [ThreadPoolExecutor-2722_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:00.084 [INFO] [ThreadPoolExecutor-2722_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:26:06.643 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:06.643 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Status age = 7.6051647663116455s
2025-11-17T11:26:06.643 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:06.643 [DEBUG] [Thread-67414 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:06.643 [DEBUG] [Thread-67414 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:06.644 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 17;17.5823666;-24.256555;50.108425;89.993049;50.08601;90.12017;14.60212;2460996.89313247;11.4351425;1.3;_
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response 17;17.5823666;-24.256555;50.108425;89.993049;50.08601;90.12017;14.60212;2460996.89313247;11.4351425;1.3;_
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:06.645 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:06.646 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:06.646 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:06.646 [INFO] [Thread-67414 (handle)] [driver.py] [get_status()] Telra = 17.5823666, teldec = -24.256555
2025-11-17T11:26:06.646 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5823666 -24.256555
2025-11-17T11:26:06.646 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5823666 -24.256555
2025-11-17T11:26:06.646 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5823666 -24.256555
2025-11-17T11:26:06.647 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 17;17.5823666;-24.256555;50.108425;89.993049;50.08601;90.12017;14.60212;2460996.89313249;11.4351425;1.3;_17.5562336068028 -24.2379119396447
2025-11-17T11:26:06.647 [INFO] [Thread-67414 (handle)] [driver.py] [get_status()] ra_j2k = 17.5562336068028     dec_j2k = -24.2379119396447
2025-11-17T11:26:06.648 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:06.648 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:06.648 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 140;0.104498470150557;171.162368059163;_
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response 140;0.104498470150557;171.162368059163;_
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:06.649 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:06.650 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:06.651 [DEBUG] [Thread-67414 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:06.651 [DEBUG] [Thread-67414 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:06.651 [DEBUG] [Thread-67414 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41883)
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:06.652 [DEBUG] [Thread-67414 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:06.659 [DEBUG] [Thread-67414 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:06.660 [DEBUG] [Thread-67414 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:06.660 [DEBUG] [Thread-67414 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:06.660 [DEBUG] [Thread-67414 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:06.660 [INFO] [Thread-67414 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89313247, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498470150557, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993049, telescope_ra=17.5823666, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.60212, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5562336068028, telescope_dec_j2k=-24.2379119396447, observability=1)
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.810272693634033s
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:11.470 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:11.471 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:11.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.583732;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60349;2460996.89318833;11.43650417;1.3;_
2025-11-17T11:26:11.472 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.583732;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60349;2460996.89318833;11.43650417;1.3;_
2025-11-17T11:26:11.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:11.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:11.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:11.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:11.473 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:11.473 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.583732, teldec = -24.256555
2025-11-17T11:26:11.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.583732 -24.256555
2025-11-17T11:26:11.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.583732 -24.256555
2025-11-17T11:26:11.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.583732 -24.256555
2025-11-17T11:26:11.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.583732;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60349;2460996.89318836;11.43650417;1.3;_17.5575987359613 -24.2379624736329
2025-11-17T11:26:11.474 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5575987359613     dec_j2k = -24.2379624736329
2025-11-17T11:26:11.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:11.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:11.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104498269590843;171.162362694745;_
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104498269590843;171.162362694745;_
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:11.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:11.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:11.476 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:11.476 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:11.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:11.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:11.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:11.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:11.477 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:11.477 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:11.482 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54239)
2025-11-17T11:26:11.483 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:11.483 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:11.483 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:11.483 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:11.483 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:11.490 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:11.490 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89318833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498269590843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993048, telescope_ra=17.583732, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.60349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5575987359613, telescope_dec_j2k=-24.2379624736329, observability=1)
2025-11-17T11:26:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.395235776901245s
2025-11-17T11:26:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5846857;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60444;2460996.89322786;11.43745528;1.3;_
2025-11-17T11:26:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.5846857;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60444;2460996.89322786;11.43745528;1.3;_
2025-11-17T11:26:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:14.888 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.5846857, teldec = -24.256555
2025-11-17T11:26:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5846857 -24.256555
2025-11-17T11:26:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5846857 -24.256555
2025-11-17T11:26:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5846857 -24.256555
2025-11-17T11:26:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.5846857;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60444;2460996.89322788;11.43745528;1.3;_17.5585522470829 -24.237997771948
2025-11-17T11:26:14.889 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5585522470829     dec_j2k = -24.237997771948
2025-11-17T11:26:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104497908583358;171.162346601491;_
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104497908583358;171.162346601491;_
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51923)
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:14.903 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:14.903 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89322786, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104497908583358, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993048, telescope_ra=17.5846857, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.60444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5585522470829, telescope_dec_j2k=-24.237997771948, observability=1)
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Status age = 2.1784019470214844s
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:17.081 [DEBUG] [Thread-67415 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:17.082 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:17.082 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:17.082 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:17.082 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:17.083 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 17;17.5852929;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60505;2460996.89325326;11.43806083;1.3;_
2025-11-17T11:26:17.083 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response 17;17.5852929;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60505;2460996.89325326;11.43806083;1.3;_
2025-11-17T11:26:17.083 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:17.083 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:17.083 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:17.084 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:17.084 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:17.084 [INFO] [Thread-67415 (handle)] [driver.py] [get_status()] Telra = 17.5852929, teldec = -24.256555
2025-11-17T11:26:17.084 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5852929 -24.256555
2025-11-17T11:26:17.084 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5852929 -24.256555
2025-11-17T11:26:17.084 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5852929 -24.256555
2025-11-17T11:26:17.085 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 17;17.5852929;-24.256555;50.108425;89.993048;50.08601;90.12017;14.60505;2460996.8932533;11.43806083;1.3;_17.5591593269559 -24.2380202462595
2025-11-17T11:26:17.085 [INFO] [Thread-67415 (handle)] [driver.py] [get_status()] ra_j2k = 17.5591593269559     dec_j2k = -24.2380202462595
2025-11-17T11:26:17.085 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:17.085 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:17.085 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 140;0.104498951493871;171.162357330327;_
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response 140;0.104498951493871;171.162357330327;_
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:17.086 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:17.087 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:17.088 [DEBUG] [Thread-67415 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:17.088 [DEBUG] [Thread-67415 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:26:17.088 [DEBUG] [Thread-67415 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55067)
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:17.094 [DEBUG] [Thread-67415 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:17.101 [DEBUG] [Thread-67415 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:17.102 [INFO] [Thread-67415 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89325326, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498951493871, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993048, telescope_ra=17.5852929, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.60505, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5591593269559, telescope_dec_j2k=-24.2380202462595, observability=1)
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.412485122680664s
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:20.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5862453;-24.256555;50.108425;89.993048;50.08601;90.12017;14.606;2460996.893293;11.43901056;1.3;_
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.5862453;-24.256555;50.108425;89.993048;50.08601;90.12017;14.606;2460996.893293;11.43901056;1.3;_
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:20.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:20.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:20.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:20.516 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.5862453, teldec = -24.256555
2025-11-17T11:26:20.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.5862453 -24.256555
2025-11-17T11:26:20.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.5862453 -24.256555
2025-11-17T11:26:20.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5862453 -24.256555
2025-11-17T11:26:20.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.5862453;-24.256555;50.108425;89.993048;50.08601;90.12017;14.606;2460996.89329302;11.43901056;1.3;_17.5601115387357 -24.238055498476
2025-11-17T11:26:20.517 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5601115387357     dec_j2k = -24.238055498476
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104498991605814;171.162351965909;_
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104498991605814;171.162351965909;_
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:20.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:20.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:20.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:20.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:20.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:20.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36957)
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:20.526 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:20.527 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:26:20.528 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.893293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498991605814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108425, telescope_az=89.993048, telescope_ra=17.5862453, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:25:34.187606', telescope_ra_j2k=17.5601115387357, telescope_dec_j2k=-24.238055498476, observability=1)
2025-11-17T11:26:20.528 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10670256614685 seconds ago
2025-11-17T11:26:34.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:34.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:34.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:34.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:34.332 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:34.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:34.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:34.333 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:34.333 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:26:34.334 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:26:34.335 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:35.200 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Status age = 14.673096656799316s
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:35.201 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:35.202 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:35.203 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 17;17.5903342;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61009;2460996.893463;11.44308833;1.3;_
2025-11-17T11:26:35.203 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response 17;17.5903342;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61009;2460996.893463;11.44308833;1.3;_
2025-11-17T11:26:35.203 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:35.203 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:35.203 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:35.204 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:35.204 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:35.204 [INFO] [Thread-67416 (handle)] [driver.py] [get_status()] Telra = 17.5903342, teldec = -24.256555
2025-11-17T11:26:35.204 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5903342 -24.256555
2025-11-17T11:26:35.204 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5903342 -24.256555
2025-11-17T11:26:35.204 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5903342 -24.256555
2025-11-17T11:26:35.205 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 17;17.5903342;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61009;2460996.89346302;11.44308833;1.3;_17.5641996334361 -24.2382068593062
2025-11-17T11:26:35.205 [INFO] [Thread-67416 (handle)] [driver.py] [get_status()] ra_j2k = 17.5641996334361     dec_j2k = -24.2382068593062
2025-11-17T11:26:35.205 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 140;0.104498750934157;171.162362694745;_
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response 140;0.104498750934157;171.162362694745;_
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:35.206 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:35.207 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:35.207 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:35.208 [DEBUG] [Thread-67416 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54149)
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:35.210 [DEBUG] [Thread-67416 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:35.217 [DEBUG] [Thread-67416 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:35.218 [DEBUG] [Thread-67416 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:35.218 [DEBUG] [Thread-67416 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:35.218 [INFO] [Thread-67416 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.893463, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104498750934157, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108424, telescope_az=89.993048, telescope_ra=17.5903342, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.61009, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5641996334361, telescope_dec_j2k=-24.2382068593062, observability=1)
2025-11-17T11:26:35.335 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:35.335 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:35.335 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:35.335 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:35.335 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:26:35.336 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:35.337 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:35.338 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:35.338 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:35.338 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:35.338 [DEBUG] [ThreadPoolExecutor-2724_0] [payload.py] [to_registers()] [0]
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36547)
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:35.343 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:35.350 [DEBUG] [ThreadPoolExecutor-2724_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:35.497 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:26:35
2025-11-17T11:26:35.497 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:35.497 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.2793295383453369s
2025-11-17T11:26:35.497 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2793295383453369
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Status age = 18.047056674957275s
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:26:53.265 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 17;17.5953574;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61511;2460996.89367206;11.44809778;1.3;_
2025-11-17T11:26:53.266 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response 17;17.5953574;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61511;2460996.89367206;11.44809778;1.3;_
2025-11-17T11:26:53.267 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:26:53.267 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:26:53.267 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:26:53.268 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:53.268 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:26:53.268 [INFO] [Thread-67417 (handle)] [driver.py] [get_status()] Telra = 17.5953574, teldec = -24.256555
2025-11-17T11:26:53.268 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5953574 -24.256555
2025-11-17T11:26:53.268 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5953574 -24.256555
2025-11-17T11:26:53.268 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5953574 -24.256555
2025-11-17T11:26:53.269 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 17;17.5953574;-24.256555;50.108424;89.993048;50.08601;90.12017;14.61511;2460996.89367209;11.44809778;1.3;_17.5692218503 -24.2383928363166
2025-11-17T11:26:53.269 [INFO] [Thread-67417 (handle)] [driver.py] [get_status()] ra_j2k = 17.5692218503     dec_j2k = -24.2383928363166
2025-11-17T11:26:53.269 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:26:53.269 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:26:53.269 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 140;0.104500596083526;171.162351965909;_
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response 140;0.104500596083526;171.162351965909;_
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:53.270 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:26:53.271 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:26:53.272 [DEBUG] [Thread-67417 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:53.272 [DEBUG] [Thread-67417 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:26:53.272 [DEBUG] [Thread-67417 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47871)
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:26:53.279 [DEBUG] [Thread-67417 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:26:53.286 [DEBUG] [Thread-67417 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:26:53.286 [INFO] [Thread-67417 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89367206, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104500596083526, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108424, telescope_az=89.993048, telescope_ra=17.5953574, telescope_dec=-24.256555, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.61511, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5692218503, telescope_dec_j2k=-24.2383928363166, observability=1)
2025-11-17T11:27:00.350 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:00.351 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:00.351 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:00.351 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:00.351 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:00.352 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:27:00.353 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:27:00.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Status age = 13.405993461608887s
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:06.692 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:06.693 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:06.694 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 17;17.5991135;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61887;2460996.89382748;11.45184361;1.3;_
2025-11-17T11:27:06.694 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response 17;17.5991135;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61887;2460996.89382748;11.45184361;1.3;_
2025-11-17T11:27:06.694 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:06.694 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:06.694 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:06.695 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:06.695 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:06.695 [INFO] [Thread-67418 (handle)] [driver.py] [get_status()] Telra = 17.5991135, teldec = -24.256554
2025-11-17T11:27:06.695 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] UnCookCoordinates 17.5991135 -24.256554
2025-11-17T11:27:06.695 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.5991135 -24.256554
2025-11-17T11:27:06.695 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.5991135 -24.256554
2025-11-17T11:27:06.696 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 17;17.5991135;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61887;2460996.8938275;11.45184361;1.3;_17.5729772198048 -24.2385309227239
2025-11-17T11:27:06.696 [INFO] [Thread-67418 (handle)] [driver.py] [get_status()] ra_j2k = 17.5729772198048     dec_j2k = -24.2385309227239
2025-11-17T11:27:06.696 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:06.696 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 140;0.104501318098497;171.162351965909;_
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response 140;0.104501318098497;171.162351965909;_
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:06.697 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:06.698 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:06.698 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:06.698 [DEBUG] [Thread-67418 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:06.699 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:06.699 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:06.699 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:06.699 [DEBUG] [Thread-67418 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:06.699 [DEBUG] [Thread-67418 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:06.700 [DEBUG] [Thread-67418 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:06.705 [DEBUG] [Thread-67418 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55077)
2025-11-17T11:27:06.705 [DEBUG] [Thread-67418 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:06.705 [DEBUG] [Thread-67418 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:06.706 [DEBUG] [Thread-67418 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:06.706 [DEBUG] [Thread-67418 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:06.706 [DEBUG] [Thread-67418 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:06.713 [DEBUG] [Thread-67418 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:06.713 [DEBUG] [Thread-67418 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:06.713 [DEBUG] [Thread-67418 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:06.714 [DEBUG] [Thread-67418 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:06.714 [INFO] [Thread-67418 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89382748, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501318098497, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108424, telescope_az=89.993047, telescope_ra=17.5991135, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.61887, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5729772198048, telescope_dec_j2k=-24.2385309227239, observability=1)
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.862332820892334s
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:10.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:10.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:10.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6001792;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61994;2460996.89387243;11.45290639;1.3;_
2025-11-17T11:27:10.578 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6001792;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61994;2460996.89387243;11.45290639;1.3;_
2025-11-17T11:27:10.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:10.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:10.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:10.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:10.579 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:10.579 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6001792, teldec = -24.256554
2025-11-17T11:27:10.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6001792 -24.256554
2025-11-17T11:27:10.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6001792 -24.256554
2025-11-17T11:27:10.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6001792 -24.256554
2025-11-17T11:27:10.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6001792;-24.256554;50.108424;89.993047;50.08601;90.12017;14.61994;2460996.89387245;11.45290639;1.3;_17.5740427131819 -24.2385703884207
2025-11-17T11:27:10.580 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5740427131819     dec_j2k = -24.2385703884207
2025-11-17T11:27:10.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:10.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:10.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:10.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104501237874611;171.162357330327;_
2025-11-17T11:27:10.581 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104501237874611;171.162357330327;_
2025-11-17T11:27:10.581 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:10.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:10.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:10.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:10.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:10.583 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:10.583 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:10.583 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:10.586 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34857)
2025-11-17T11:27:10.587 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:10.587 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:10.587 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:10.587 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:10.587 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:10.594 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:10.594 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89387243, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501237874611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108424, telescope_az=89.993047, telescope_ra=17.6001792, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.61994, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5740427131819, telescope_dec_j2k=-24.2385703884207, observability=1)
2025-11-17T11:27:11.331 [DEBUG] [Thread-67419 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:11.331 [DEBUG] [Thread-67419 (handle)] [server.py] [get_status()] Status age = 0.7367017269134521s
2025-11-17T11:27:11.331 [DEBUG] [Thread-67419 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7367017269134521
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.266753911972046s
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6013752;-24.256554;50.108424;89.993047;50.08601;90.12017;14.62113;2460996.89392203;11.45409917;1.3;_
2025-11-17T11:27:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.6013752;-24.256554;50.108424;89.993047;50.08601;90.12017;14.62113;2460996.89392203;11.45409917;1.3;_
2025-11-17T11:27:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:14.864 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.6013752, teldec = -24.256554
2025-11-17T11:27:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6013752 -24.256554
2025-11-17T11:27:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6013752 -24.256554
2025-11-17T11:27:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6013752 -24.256554
2025-11-17T11:27:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6013752;-24.256554;50.108424;89.993047;50.08601;90.12017;14.62113;2460996.89392205;11.45409917;1.3;_17.5752384816607 -24.2386146812556
2025-11-17T11:27:14.866 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.5752384816607     dec_j2k = -24.2386146812556
2025-11-17T11:27:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104501318098497;171.162368059163;_
2025-11-17T11:27:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104501318098497;171.162368059163;_
2025-11-17T11:27:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38725)
2025-11-17T11:27:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:14.876 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89392203, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501318098497, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108424, telescope_az=89.993047, telescope_ra=17.6013752, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.62113, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5752384816607, telescope_dec_j2k=-24.2386146812556, observability=1)
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.7044596672058105s
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:20.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6029651;-24.256554;50.108423;89.993047;50.08601;90.12017;14.62272;2460996.8939883;11.45568472;1.3;_
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.6029651;-24.256554;50.108423;89.993047;50.08601;90.12017;14.62272;2460996.8939883;11.45568472;1.3;_
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:20.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:20.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:20.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:20.590 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.6029651, teldec = -24.256554
2025-11-17T11:27:20.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.6029651 -24.256554
2025-11-17T11:27:20.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.6029651 -24.256554
2025-11-17T11:27:20.590 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6029651 -24.256554
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6029651;-24.256554;50.108423;89.993047;50.08601;90.12017;14.62272;2460996.89398832;11.45568472;1.3;_17.5768280744862 -24.2386735647526
2025-11-17T11:27:20.591 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5768280744862     dec_j2k = -24.2386735647526
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104501679105982;171.162362694745;_
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104501679105982;171.162362694745;_
2025-11-17T11:27:20.591 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:20.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:20.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:27:20.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:27:20.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:27:20.598 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56315)
2025-11-17T11:27:20.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:20.598 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:20.599 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:20.599 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:20.599 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:20.606 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:27:20.606 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8939883, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501679105982, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993047, telescope_ra=17.6029651, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.62272, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5768280744862, telescope_dec_j2k=-24.2386735647526, observability=1)
2025-11-17T11:27:20.606 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10933232307434 seconds ago
2025-11-17T11:27:29.456 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Status age = 8.850526571273804s
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:29.457 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:29.458 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:29.459 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 17;17.6054439;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6252;2460996.89409095;11.45815667;1.3;_
2025-11-17T11:27:29.459 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response 17;17.6054439;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6252;2460996.89409095;11.45815667;1.3;_
2025-11-17T11:27:29.459 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:29.459 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:29.459 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:29.460 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:29.460 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:29.460 [INFO] [Thread-67420 (handle)] [driver.py] [get_status()] Telra = 17.6054439, teldec = -24.256554
2025-11-17T11:27:29.460 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6054439 -24.256554
2025-11-17T11:27:29.460 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6054439 -24.256554
2025-11-17T11:27:29.460 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6054439 -24.256554
2025-11-17T11:27:29.461 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 17;17.6054439;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6252;2460996.89409098;11.45815667;1.3;_17.5793063969336 -24.2387653761391
2025-11-17T11:27:29.461 [INFO] [Thread-67420 (handle)] [driver.py] [get_status()] ra_j2k = 17.5793063969336     dec_j2k = -24.2387653761391
2025-11-17T11:27:29.461 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:29.461 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:29.461 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 140;0.104501398322382;171.162341237072;_
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response 140;0.104501398322382;171.162341237072;_
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:29.462 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:29.463 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:29.464 [DEBUG] [Thread-67420 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:29.464 [DEBUG] [Thread-67420 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:29.464 [DEBUG] [Thread-67420 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43739)
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:29.470 [DEBUG] [Thread-67420 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:29.477 [DEBUG] [Thread-67420 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:29.477 [DEBUG] [Thread-67420 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:29.477 [DEBUG] [Thread-67420 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:29.477 [DEBUG] [Thread-67420 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:29.478 [DEBUG] [Thread-67420 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:29.478 [DEBUG] [Thread-67420 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:29.478 [DEBUG] [Thread-67420 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:29.478 [DEBUG] [Thread-67420 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:29.478 [DEBUG] [Thread-67420 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:29.478 [INFO] [Thread-67420 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89409095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501398322382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993047, telescope_ra=17.6054439, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.6252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:26:34.329905', telescope_ra_j2k=17.5793063969336, telescope_dec_j2k=-24.2387653761391, observability=1)
2025-11-17T11:27:34.472 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:34.472 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:34.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:34.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:34.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:34.473 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:34.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:34.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:34.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:34.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:34.474 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:27:34.474 [INFO] [ThreadPoolExecutor-2725_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:27:34.474 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:27:35.558 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:27:35
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.080212116241455s
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:35.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6071446;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6269;2460996.89416156;11.45985278;1.3;_
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.6071446;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6269;2460996.89416156;11.45985278;1.3;_
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:35.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:35.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:35.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:35.560 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.6071446, teldec = -24.256554
2025-11-17T11:27:35.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6071446 -24.256554
2025-11-17T11:27:35.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6071446 -24.256554
2025-11-17T11:27:35.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6071446 -24.256554
2025-11-17T11:27:35.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6071446;-24.256554;50.108423;89.993047;50.08601;90.12017;14.6269;2460996.89416159;11.45985278;1.3;_17.5810067702449 -24.2388283723999
2025-11-17T11:27:35.561 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.5810067702449     dec_j2k = -24.2388283723999
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104501719217925;171.162362694745;_
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104501719217925;171.162362694745;_
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:35.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:35.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:35.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36795)
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:35.570 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:35.578 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:35.578 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89416156, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104501719217925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993047, telescope_ra=17.6071446, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.6269, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5810067702449, telescope_dec_j2k=-24.2388283723999, observability=1)
2025-11-17T11:27:47.522 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:27:47.522 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Status age = 11.944327354431152s
2025-11-17T11:27:47.522 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:27:47.522 [DEBUG] [Thread-67421 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:47.522 [DEBUG] [Thread-67421 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:47.523 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:47.523 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:47.523 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:47.523 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:27:47.524 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 17;17.6104595;-24.256554;50.108423;89.993047;50.08601;90.12017;14.63022;2460996.89430005;11.46315861;1.3;_
2025-11-17T11:27:47.525 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response 17;17.6104595;-24.256554;50.108423;89.993047;50.08601;90.12017;14.63022;2460996.89430005;11.46315861;1.3;_
2025-11-17T11:27:47.525 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:27:47.525 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:27:47.525 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:27:47.526 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:47.526 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:27:47.526 [INFO] [Thread-67421 (handle)] [driver.py] [get_status()] Telra = 17.6104595, teldec = -24.256554
2025-11-17T11:27:47.526 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6104595 -24.256554
2025-11-17T11:27:47.526 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6104595 -24.256554
2025-11-17T11:27:47.526 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6104595 -24.256554
2025-11-17T11:27:47.527 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 17;17.6104595;-24.256554;50.108423;89.993047;50.08601;90.12017;14.63022;2460996.89430008;11.46315861;1.3;_17.5843210357271 -24.2389511716482
2025-11-17T11:27:47.527 [INFO] [Thread-67421 (handle)] [driver.py] [get_status()] ra_j2k = 17.5843210357271     dec_j2k = -24.2389511716482
2025-11-17T11:27:47.527 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:27:47.527 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:27:47.527 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 140;0.104502401120952;171.162357330327;_
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response 140;0.104502401120952;171.162357330327;_
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:47.528 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:27:47.529 [DEBUG] [Thread-67421 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43917)
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:27:47.536 [DEBUG] [Thread-67421 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:27:47.543 [DEBUG] [Thread-67421 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:27:47.543 [DEBUG] [Thread-67421 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:47.543 [DEBUG] [Thread-67421 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:27:47.544 [DEBUG] [Thread-67421 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:27:47.544 [INFO] [Thread-67421 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89430005, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104502401120952, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993047, telescope_ra=17.6104595, telescope_dec=-24.256554, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.63022, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5843210357271, telescope_dec_j2k=-24.2389511716482, observability=1)
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.354 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:27:55.355 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.356 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.356 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.356 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:55.356 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:55.356 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:55.357 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:27:55.358 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:55.359 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Park
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:27:55.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 29;17.6126533;-24.256554;50.108423;89.993047;50.08601;90.12017;14.63241;2460996.89439074;11.46534639;1.3;_Park Command Successful
2025-11-17T11:27:56.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:27:56.360 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:27:56.361 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:27:56.361 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:27:56.361 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:27:57.361 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:27:57.361 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:27:57.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:27:57.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:27:57.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:27:58.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:27:58.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:27:58.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:27:58.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:27:58.362 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:27:59.363 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:27:59.363 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:27:59.363 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:27:59.364 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:27:59.365 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:27:59.366 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:00.366 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:00.366 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:00.366 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:00.366 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:00.366 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:28:00.367 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:28:00.368 [DEBUG] [ThreadPoolExecutor-2724_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:00.368 [INFO] [ThreadPoolExecutor-2724_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Status age = 18.055785655975342s
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:05.600 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:05.601 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 17;17.6155234;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63528;2460996.89450927;11.46820861;1.3;_
2025-11-17T11:28:05.601 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response 17;17.6155234;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63528;2460996.89450927;11.46820861;1.3;_
2025-11-17T11:28:05.601 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:05.601 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:05.601 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:05.602 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:05.602 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:05.602 [INFO] [Thread-67422 (handle)] [driver.py] [get_status()] Telra = 17.6155234, teldec = -24.256553
2025-11-17T11:28:05.602 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6155234 -24.256553
2025-11-17T11:28:05.602 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6155234 -24.256553
2025-11-17T11:28:05.602 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6155234 -24.256553
2025-11-17T11:28:05.603 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 17;17.6155234;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63528;2460996.89450929;11.46820861;1.3;_17.5893839723515 -24.2391377894026
2025-11-17T11:28:05.603 [INFO] [Thread-67422 (handle)] [driver.py] [get_status()] ra_j2k = 17.5893839723515     dec_j2k = -24.2391377894026
2025-11-17T11:28:05.603 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:05.603 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:05.603 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:05.604 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 140;0.104503002800094;171.162357330327;_
2025-11-17T11:28:05.604 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response 140;0.104503002800094;171.162357330327;_
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:05.605 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:05.606 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:05.606 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:05.607 [DEBUG] [Thread-67422 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:05.607 [DEBUG] [Thread-67422 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:05.607 [DEBUG] [Thread-67422 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41633)
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:05.608 [DEBUG] [Thread-67422 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:05.615 [DEBUG] [Thread-67422 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:05.616 [DEBUG] [Thread-67422 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:05.616 [INFO] [Thread-67422 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89450927, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104503002800094, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993046, telescope_ra=17.6155234, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.63528, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5893839723515, telescope_dec_j2k=-24.2391377894026, observability=1)
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Status age = 1.1272177696228027s
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:06.743 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:06.744 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:06.748 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 17;17.6158323;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63559;2460996.89452251;11.46851667;1.3;_
2025-11-17T11:28:06.748 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response 17;17.6158323;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63559;2460996.89452251;11.46851667;1.3;_
2025-11-17T11:28:06.748 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:06.748 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:06.748 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:06.751 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:06.751 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:06.751 [INFO] [Thread-67423 (handle)] [driver.py] [get_status()] Telra = 17.6158323, teldec = -24.256553
2025-11-17T11:28:06.751 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6158323 -24.256553
2025-11-17T11:28:06.751 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6158323 -24.256553
2025-11-17T11:28:06.751 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6158323 -24.256553
2025-11-17T11:28:06.752 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 17;17.6158323;-24.256553;50.108423;89.993046;50.08601;90.12017;14.63559;2460996.89452259;11.46851667;1.3;_17.5896928137972 -24.2391492352257
2025-11-17T11:28:06.752 [INFO] [Thread-67423 (handle)] [driver.py] [get_status()] ra_j2k = 17.5896928137972     dec_j2k = -24.2391492352257
2025-11-17T11:28:06.752 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:06.752 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:06.752 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:06.752 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 140;0.104502722016495;171.162357330327;_
2025-11-17T11:28:06.753 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response 140;0.104502722016495;171.162357330327;_
2025-11-17T11:28:06.753 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:06.753 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:06.753 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:06.753 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:06.754 [DEBUG] [Thread-67423 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:06.755 [DEBUG] [Thread-67423 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:06.755 [DEBUG] [Thread-67423 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60431)
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:06.760 [DEBUG] [Thread-67423 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:06.767 [DEBUG] [Thread-67423 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:06.768 [DEBUG] [Thread-67423 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:06.768 [DEBUG] [Thread-67423 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:06.768 [INFO] [Thread-67423 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89452251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104502722016495, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993046, telescope_ra=17.6158323, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.63559, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5896928137972, telescope_dec_j2k=-24.2391492352257, observability=1)
2025-11-17T11:28:09.688 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.9209439754486084s
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:09.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:09.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:09.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6166459;-24.256553;50.108423;89.993046;50.08601;90.12017;14.6364;2460996.89455661;11.46932806;1.3;_
2025-11-17T11:28:09.691 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6166459;-24.256553;50.108423;89.993046;50.08601;90.12017;14.6364;2460996.89455661;11.46932806;1.3;_
2025-11-17T11:28:09.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:09.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:09.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:09.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:09.692 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:09.692 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6166459, teldec = -24.256553
2025-11-17T11:28:09.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6166459 -24.256553
2025-11-17T11:28:09.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6166459 -24.256553
2025-11-17T11:28:09.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6166459 -24.256553
2025-11-17T11:28:09.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6166459;-24.256553;50.108423;89.993046;50.08601;90.12017;14.6364;2460996.89455663;11.46932806;1.3;_17.5905062596965 -24.2391793825289
2025-11-17T11:28:09.693 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.5905062596965     dec_j2k = -24.2391793825289
2025-11-17T11:28:09.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:09.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:09.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104502521456781;171.162346601491;_
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104502521456781;171.162346601491;_
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:09.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:09.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:09.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:09.696 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:09.696 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54725)
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:09.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:09.711 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:09.711 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89455661, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104502521456781, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108423, telescope_az=89.993046, telescope_ra=17.6166459, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.6364, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5905062596965, telescope_dec_j2k=-24.2391793825289, observability=1)
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.158776760101318s
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6180951;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63785;2460996.89461656;11.47077333;1.3;_
2025-11-17T11:28:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.6180951;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63785;2460996.89461656;11.47077333;1.3;_
2025-11-17T11:28:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:14.873 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.6180951, teldec = -24.256553
2025-11-17T11:28:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6180951 -24.256553
2025-11-17T11:28:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6180951 -24.256553
2025-11-17T11:28:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6180951 -24.256553
2025-11-17T11:28:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6180951;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63785;2460996.8946166;11.47077333;1.3;_17.591955185652 -24.2392330835795
2025-11-17T11:28:14.874 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.591955185652     dec_j2k = -24.2392330835795
2025-11-17T11:28:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104503323695637;171.162368059163;_
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104503323695637;171.162368059163;_
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:14.881 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53157)
2025-11-17T11:28:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:14.882 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:14.889 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89461656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104503323695637, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993046, telescope_ra=17.6180951, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.63785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.591955185652, telescope_dec_j2k=-24.2392330835795, observability=1)
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.777086973190308s
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:20.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:20.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:20.668 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:20.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6197107;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63947;2460996.89468367;11.47238444;1.3;_
2025-11-17T11:28:20.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.6197107;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63947;2460996.89468367;11.47238444;1.3;_
2025-11-17T11:28:20.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:20.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:20.669 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:20.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:20.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:20.670 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.6197107, teldec = -24.256553
2025-11-17T11:28:20.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.6197107 -24.256553
2025-11-17T11:28:20.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.6197107 -24.256553
2025-11-17T11:28:20.670 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6197107 -24.256553
2025-11-17T11:28:20.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6197107;-24.256553;50.108422;89.993046;50.08601;90.12017;14.63947;2460996.89468369;11.47238444;1.3;_17.5935704808098 -24.2392929538426
2025-11-17T11:28:20.671 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.5935704808098     dec_j2k = -24.2392929538426
2025-11-17T11:28:20.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:20.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:20.671 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104503684703122;171.162351965909;_
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104503684703122;171.162351965909;_
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:20.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:20.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52117)
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:20.679 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:20.686 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:28:20.686 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89468367, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104503684703122, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993046, telescope_ra=17.6197107, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.63947, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5935704808098, telescope_dec_j2k=-24.2392929538426, observability=1)
2025-11-17T11:28:20.687 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12871170043945 seconds ago
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Status age = 3.0273666381835938s
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:23.714 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:23.715 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:23.715 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:23.715 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:23.716 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 17;17.6205415;-24.256553;50.108422;89.993046;50.08601;90.12017;14.6403;2460996.89471894;11.47321306;1.3;_
2025-11-17T11:28:23.716 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response 17;17.6205415;-24.256553;50.108422;89.993046;50.08601;90.12017;14.6403;2460996.89471894;11.47321306;1.3;_
2025-11-17T11:28:23.716 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:23.716 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:23.716 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:23.717 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:23.717 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:23.717 [INFO] [Thread-67424 (handle)] [driver.py] [get_status()] Telra = 17.6205415, teldec = -24.256553
2025-11-17T11:28:23.717 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6205415 -24.256553
2025-11-17T11:28:23.717 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6205415 -24.256553
2025-11-17T11:28:23.717 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6205415 -24.256553
2025-11-17T11:28:23.718 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 17;17.6205694;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64033;2460996.89471896;11.47324083;1.3;_17.5944011243234 -24.2393237425896
2025-11-17T11:28:23.718 [INFO] [Thread-67424 (handle)] [driver.py] [get_status()] ra_j2k = 17.5944011243234     dec_j2k = -24.2393237425896
2025-11-17T11:28:23.719 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:23.719 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:23.719 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 140;0.104503403919522;171.162351965909;_
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response 140;0.104503403919522;171.162351965909;_
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:23.720 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:23.721 [DEBUG] [Thread-67424 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:28:23.721 [DEBUG] [Thread-67424 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:28:23.722 [DEBUG] [Thread-67424 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49693)
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:23.727 [DEBUG] [Thread-67424 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:23.735 [DEBUG] [Thread-67424 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:23.735 [INFO] [Thread-67424 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89471894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104503403919522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993046, telescope_ra=17.6205415, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.6403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:27:34.471996', telescope_ra_j2k=17.5944011243234, telescope_dec_j2k=-24.2393237425896, observability=1)
2025-11-17T11:28:34.615 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:34.615 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:34.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:34.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:34.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:34.616 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:34.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:34.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:34.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:34.617 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:34.617 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:28:34.617 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:34.617 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:34.617 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:28:34.618 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:28:34.619 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:35.619 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:35.619 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:35.619 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:28:35.620 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:35.621 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:35.622 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:35.622 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:35.622 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:35.622 [DEBUG] [ThreadPoolExecutor-2726_0] [payload.py] [to_registers()] [0]
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47331)
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:35.627 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:35.634 [DEBUG] [ThreadPoolExecutor-2726_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:35.639 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:28:35
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.903825521469116s
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:35.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:35.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:35.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:35.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6238899;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64365;2460996.89485696;11.47655222;1.3;_
2025-11-17T11:28:35.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.6238899;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64365;2460996.89485696;11.47655222;1.3;_
2025-11-17T11:28:35.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:35.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:35.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:35.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:35.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:35.643 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.6238899, teldec = -24.256553
2025-11-17T11:28:35.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6238899 -24.256553
2025-11-17T11:28:35.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6238899 -24.256553
2025-11-17T11:28:35.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6238899 -24.256553
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6238899;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64365;2460996.89485699;11.47655222;1.3;_17.597748895521 -24.2394478403191
2025-11-17T11:28:35.644 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.597748895521     dec_j2k = -24.2394478403191
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104504246270321;171.162362694745;_
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104504246270321;171.162362694745;_
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:35.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:35.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:35.647 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49619)
2025-11-17T11:28:35.647 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:35.648 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:35.648 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:35.648 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:35.648 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:35.655 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:35.655 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89485696, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104504246270321, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993046, telescope_ra=17.6238899, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.64365, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.597748895521, telescope_dec_j2k=-24.2394478403191, observability=1)
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Status age = 6.127840280532837s
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:41.783 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:41.784 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:41.784 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:41.784 [DEBUG] [Thread-67425 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:41.784 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:41.784 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 17;17.6255915;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64535;2460996.89492807;11.47824917;1.3;_
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response 17;17.6255915;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64535;2460996.89492807;11.47824917;1.3;_
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:41.785 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:41.786 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:41.786 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:41.786 [INFO] [Thread-67425 (handle)] [driver.py] [get_status()] Telra = 17.6255915, teldec = -24.256553
2025-11-17T11:28:41.786 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6255915 -24.256553
2025-11-17T11:28:41.786 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6255915 -24.256553
2025-11-17T11:28:41.786 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6255915 -24.256553
2025-11-17T11:28:41.787 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 17;17.6255915;-24.256553;50.108422;89.993046;50.08601;90.12017;14.64535;2460996.89492809;11.47824917;1.3;_17.5994501771349 -24.2395109100909
2025-11-17T11:28:41.787 [INFO] [Thread-67425 (handle)] [driver.py] [get_status()] ra_j2k = 17.5994501771349     dec_j2k = -24.2395109100909
2025-11-17T11:28:41.787 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:41.787 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:41.787 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 140;0.104504286382264;171.162357330327;_
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response 140;0.104504286382264;171.162357330327;_
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:41.788 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:41.789 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:41.790 [DEBUG] [Thread-67425 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:41.790 [DEBUG] [Thread-67425 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:41.790 [DEBUG] [Thread-67425 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35905)
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:41.797 [DEBUG] [Thread-67425 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:41.804 [DEBUG] [Thread-67425 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:41.804 [INFO] [Thread-67425 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89492807, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104504286382264, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993046, telescope_ra=17.6255915, telescope_dec=-24.256553, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.64535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.5994501771349, telescope_dec_j2k=-24.2395109100909, observability=1)
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Status age = 18.0455801486969s
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:28:59.850 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:28:59.851 [DEBUG] [Thread-67426 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:28:59.851 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:28:59.851 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:28:59.851 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:28:59.851 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:28:59.852 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 17;17.6306266;-24.256552;50.108422;89.993045;50.08601;90.12017;14.65038;2460996.89513718;11.48327056;1.3;_
2025-11-17T11:28:59.852 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response 17;17.6306266;-24.256552;50.108422;89.993045;50.08601;90.12017;14.65038;2460996.89513718;11.48327056;1.3;_
2025-11-17T11:28:59.852 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:28:59.852 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:28:59.852 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:28:59.853 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:59.853 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:28:59.853 [INFO] [Thread-67426 (handle)] [driver.py] [get_status()] Telra = 17.6306266, teldec = -24.256552
2025-11-17T11:28:59.853 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6306266 -24.256552
2025-11-17T11:28:59.853 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6306266 -24.256552
2025-11-17T11:28:59.853 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6306266 -24.256552
2025-11-17T11:28:59.854 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 17;17.6306266;-24.256552;50.108422;89.993045;50.08601;90.12017;14.65038;2460996.8951372;11.48327056;1.3;_17.6044843397985 -24.2396965572554
2025-11-17T11:28:59.854 [INFO] [Thread-67426 (handle)] [driver.py] [get_status()] ra_j2k = 17.6044843397985     dec_j2k = -24.2396965572554
2025-11-17T11:28:59.854 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:28:59.854 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:28:59.854 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 140;0.104504687501692;171.162357330327;_
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response 140;0.104504687501692;171.162357330327;_
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:59.855 [DEBUG] [Thread-67426 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:28:59.856 [DEBUG] [Thread-67426 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36461)
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:28:59.859 [DEBUG] [Thread-67426 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:28:59.866 [DEBUG] [Thread-67426 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:28:59.867 [DEBUG] [Thread-67426 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:28:59.867 [INFO] [Thread-67426 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89513718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104504687501692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108422, telescope_az=89.993045, telescope_ra=17.6306266, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65038, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6044843397985, telescope_dec_j2k=-24.2396965572554, observability=1)
2025-11-17T11:29:00.634 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:00.635 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:00.635 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:00.635 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:00.635 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:00.636 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:29:00.637 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:29:00.638 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Status age = 6.936904668807983s
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:06.804 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 17;17.6325508;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65231;2460996.89521765;11.48518944;1.3;_
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response 17;17.6325508;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65231;2460996.89521765;11.48518944;1.3;_
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:06.805 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:06.806 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:06.806 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:06.806 [INFO] [Thread-67427 (handle)] [driver.py] [get_status()] Telra = 17.6325508, teldec = -24.256552
2025-11-17T11:29:06.806 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6325508 -24.256552
2025-11-17T11:29:06.806 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6325508 -24.256552
2025-11-17T11:29:06.806 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6325508 -24.256552
2025-11-17T11:29:06.807 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 17;17.6325508;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65231;2460996.89521767;11.48518944;1.3;_17.6064081833221 -24.2397678941337
2025-11-17T11:29:06.807 [INFO] [Thread-67427 (handle)] [driver.py] [get_status()] ra_j2k = 17.6064081833221     dec_j2k = -24.2397678941337
2025-11-17T11:29:06.807 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:06.807 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:06.808 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 140;0.104505449628606;171.162346601491;_
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response 140;0.104505449628606;171.162346601491;_
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:06.809 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:06.810 [DEBUG] [Thread-67427 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:06.816 [DEBUG] [Thread-67427 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39433)
2025-11-17T11:29:06.816 [DEBUG] [Thread-67427 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:06.817 [DEBUG] [Thread-67427 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:06.817 [DEBUG] [Thread-67427 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:06.817 [DEBUG] [Thread-67427 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:06.817 [DEBUG] [Thread-67427 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:06.824 [DEBUG] [Thread-67427 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:06.824 [INFO] [Thread-67427 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89521765, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104505449628606, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.6325508, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65231, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6064081833221, telescope_dec_j2k=-24.2397678941337, observability=1)
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9815127849578857s
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:08.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:08.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:08.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6331112;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65287;2460996.89524083;11.48574833;1.3;_
2025-11-17T11:29:08.808 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6331112;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65287;2460996.89524083;11.48574833;1.3;_
2025-11-17T11:29:08.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:08.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:08.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:08.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:08.809 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:08.809 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6331112, teldec = -24.256552
2025-11-17T11:29:08.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6331112 -24.256552
2025-11-17T11:29:08.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6331112 -24.256552
2025-11-17T11:29:08.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6331112 -24.256552
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6331112;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65287;2460996.89524086;11.48574833;1.3;_17.6069684796908 -24.2397886709993
2025-11-17T11:29:08.811 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.6069684796908     dec_j2k = -24.2397886709993
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104505128733063;171.162368059163;_
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104505128733063;171.162368059163;_
2025-11-17T11:29:08.811 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:08.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:08.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:08.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:08.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:08.813 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:08.813 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:08.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:08.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:08.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:08.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:08.814 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:08.814 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60563)
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:08.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:08.823 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:08.824 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:08.824 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:08.824 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89524083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104505128733063, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.6331112, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65287, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6069684796908, telescope_dec_j2k=-24.2397886709993, observability=1)
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.0492119789123535s
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.63481;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65457;2460996.89531104;11.4874425;1.3;_
2025-11-17T11:29:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.63481;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65457;2460996.89531104;11.4874425;1.3;_
2025-11-17T11:29:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:14.876 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.63481, teldec = -24.256552
2025-11-17T11:29:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.63481 -24.256552
2025-11-17T11:29:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.63481 -24.256552
2025-11-17T11:29:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.63481 -24.256552
2025-11-17T11:29:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.63481;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65457;2460996.89531108;11.4874425;1.3;_17.6086669660609 -24.2398516564856
2025-11-17T11:29:14.877 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6086669660609     dec_j2k = -24.2398516564856
2025-11-17T11:29:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104505208956949;171.162357330327;_
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104505208956949;171.162357330327;_
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36605)
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:14.881 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:14.888 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:14.889 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89531104, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104505208956949, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.63481, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65457, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6086669660609, telescope_dec_j2k=-24.2398516564856, observability=1)
2025-11-17T11:29:17.960 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Status age = 3.071934461593628s
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:17.961 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 17;17.6356501;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65541;2460996.89534678;11.48828028;1.3;_
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response 17;17.6356501;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65541;2460996.89534678;11.48828028;1.3;_
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:17.962 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:17.963 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:17.963 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:17.963 [INFO] [Thread-67428 (handle)] [driver.py] [get_status()] Telra = 17.6356501, teldec = -24.256552
2025-11-17T11:29:17.963 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6356501 -24.256552
2025-11-17T11:29:17.963 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6356501 -24.256552
2025-11-17T11:29:17.963 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6356501 -24.256552
2025-11-17T11:29:17.964 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 17;17.6356501;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65541;2460996.89534681;11.48830833;1.3;_17.6095069112511 -24.2398828057312
2025-11-17T11:29:17.964 [INFO] [Thread-67428 (handle)] [driver.py] [get_status()] ra_j2k = 17.6095069112511     dec_j2k = -24.2398828057312
2025-11-17T11:29:17.964 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 140;0.104505449628606;171.162368059163;_
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response 140;0.104505449628606;171.162368059163;_
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:17.965 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:17.966 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:17.967 [DEBUG] [Thread-67428 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:17.967 [DEBUG] [Thread-67428 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:17.967 [DEBUG] [Thread-67428 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40463)
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:17.969 [DEBUG] [Thread-67428 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:17.976 [DEBUG] [Thread-67428 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:17.977 [DEBUG] [Thread-67428 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:17.977 [DEBUG] [Thread-67428 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:17.977 [DEBUG] [Thread-67428 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:17.977 [INFO] [Thread-67428 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89534678, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104505449628606, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.6356501, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65541, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6095069112511, telescope_dec_j2k=-24.2398828057312, observability=1)
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.769996166229248s
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:20.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:20.748 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:20.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6364534;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65621;2460996.89537904;11.48908139;1.3;_
2025-11-17T11:29:20.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.6364534;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65621;2460996.89537904;11.48908139;1.3;_
2025-11-17T11:29:20.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:20.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:20.749 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:20.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:20.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:20.750 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.6364534, teldec = -24.256552
2025-11-17T11:29:20.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.6364534 -24.256552
2025-11-17T11:29:20.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.6364534 -24.256552
2025-11-17T11:29:20.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6364534 -24.256552
2025-11-17T11:29:20.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6364534;-24.256552;50.108421;89.993045;50.08601;90.12017;14.65621;2460996.89537906;11.48908139;1.3;_17.6103100634011 -24.2399125913167
2025-11-17T11:29:20.751 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6103100634011     dec_j2k = -24.2399125913167
2025-11-17T11:29:20.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:20.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104506131531633;171.162357330327;_
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104506131531633;171.162357330327;_
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:20.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:20.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:20.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:29:20.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:29:20.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:20.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:20.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:20.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:20.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:20.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51583)
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:20.761 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:20.768 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:29:20.768 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89537904, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104506131531633, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.6364534, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.65621, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:28:34.614939', telescope_ra_j2k=17.6103100634011, telescope_dec_j2k=-24.2399125913167, observability=1)
2025-11-17T11:29:20.769 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.129664182662964 seconds ago
2025-11-17T11:29:34.756 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:34.756 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:34.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:34.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:34.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:34.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:34.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:34.758 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:34.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:34.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:34.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:34.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:34.759 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:29:34.759 [INFO] [ThreadPoolExecutor-2727_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:29:34.759 [INFO] [ThreadPoolExecutor-2727_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:29:35.716 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:29:35
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.947736024856567s
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:35.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:35.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:35.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6406078;-24.256552;50.108421;89.993045;50.08601;90.12017;14.66036;2460996.89555229;11.49322444;1.3;_
2025-11-17T11:29:35.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.6406078;-24.256552;50.108421;89.993045;50.08601;90.12017;14.66036;2460996.89555229;11.49322444;1.3;_
2025-11-17T11:29:35.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:35.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:35.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:35.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:35.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:35.719 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.6406078, teldec = -24.256552
2025-11-17T11:29:35.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6406078 -24.256552
2025-11-17T11:29:35.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6406078 -24.256552
2025-11-17T11:29:35.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6406078 -24.256552
2025-11-17T11:29:35.720 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6406078;-24.256552;50.108421;89.993045;50.08601;90.12017;14.66036;2460996.89555231;11.49322444;1.3;_17.6144637015539 -24.2400666450462
2025-11-17T11:29:35.720 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.6144637015539     dec_j2k = -24.2400666450462
2025-11-17T11:29:35.720 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:35.720 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104505930971919;171.162357330327;_
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104505930971919;171.162357330327;_
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:35.721 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:35.722 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:35.728 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55991)
2025-11-17T11:29:35.729 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:35.729 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:35.729 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:35.729 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:35.729 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:35.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:35.736 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89555229, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104505930971919, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108421, telescope_az=89.993045, telescope_ra=17.6406078, telescope_dec=-24.256552, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.66036, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6144637015539, telescope_dec_j2k=-24.2400666450462, observability=1)
2025-11-17T11:29:36.036 [DEBUG] [Thread-67429 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:36.036 [DEBUG] [Thread-67429 (handle)] [server.py] [get_status()] Status age = 0.30003929138183594s
2025-11-17T11:29:36.036 [DEBUG] [Thread-67429 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.30003929138183594
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Status age = 18.35960626602173s
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:54.096 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:54.097 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:54.097 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:54.097 [DEBUG] [Thread-67430 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:54.097 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:29:54.097 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:29:54.098 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:29:54.098 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:29:54.099 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 17;17.6457335;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66549;2460996.89576504;11.49833611;1.3;_
2025-11-17T11:29:54.099 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response 17;17.6457335;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66549;2460996.89576504;11.49833611;1.3;_
2025-11-17T11:29:54.099 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:29:54.099 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:29:54.099 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:29:54.100 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:54.100 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:29:54.100 [INFO] [Thread-67430 (handle)] [driver.py] [get_status()] Telra = 17.6457335, teldec = -24.256551
2025-11-17T11:29:54.100 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6457335 -24.256551
2025-11-17T11:29:54.100 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6457335 -24.256551
2025-11-17T11:29:54.100 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6457335 -24.256551
2025-11-17T11:29:54.101 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 17;17.6457335;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66549;2460996.89576506;11.49833611;1.3;_17.6195884682152 -24.2402557455435
2025-11-17T11:29:54.101 [INFO] [Thread-67430 (handle)] [driver.py] [get_status()] ra_j2k = 17.6195884682152     dec_j2k = -24.2402557455435
2025-11-17T11:29:54.101 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:29:54.101 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:29:54.101 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 140;0.104506893658547;171.162357330327;_
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response 140;0.104506893658547;171.162357330327;_
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:54.102 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:29:54.103 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:29:54.104 [DEBUG] [Thread-67430 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:54.104 [DEBUG] [Thread-67430 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:29:54.104 [DEBUG] [Thread-67430 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54533)
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:29:54.108 [DEBUG] [Thread-67430 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:29:54.115 [DEBUG] [Thread-67430 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:29:54.115 [DEBUG] [Thread-67430 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:29:54.116 [DEBUG] [Thread-67430 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:29:54.116 [INFO] [Thread-67430 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89576504, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104506893658547, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6457335, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.66549, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6195884682152, telescope_dec_j2k=-24.2402557455435, observability=1)
2025-11-17T11:29:55.638 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.638 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.638 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:55.638 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:55.638 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:29:55.639 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:55.640 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:55.641 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:55.642 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:55.642 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.642 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:55.642 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.643 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:55.644 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:55.644 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:55.644 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:55.644 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Park
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:29:55.645 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:29:55.646 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 29;17.6461538;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66591;2460996.89578294;11.49875528;1.3;_Park Command Successful
2025-11-17T11:29:56.646 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:29:56.646 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:29:56.646 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:29:56.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:29:56.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:29:57.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:29:57.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:29:57.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:29:57.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:29:57.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:29:58.647 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:29:58.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:29:58.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:29:58.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:29:58.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:29:59.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:29:59.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:29:59.648 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:29:59.649 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:29:59.650 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:29:59.650 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:29:59.650 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:29:59.651 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:00.652 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:30:00.653 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:30:00.654 [DEBUG] [ThreadPoolExecutor-2726_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:00.654 [INFO] [ThreadPoolExecutor-2726_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Status age = 12.737344741821289s
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:06.853 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:06.855 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:06.856 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 17;17.6492734;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66903;2460996.89591268;11.50186639;1.3;_
2025-11-17T11:30:06.856 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response 17;17.6492734;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66903;2460996.89591268;11.50186639;1.3;_
2025-11-17T11:30:06.856 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:06.856 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:06.856 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:06.857 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:06.857 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:06.857 [INFO] [Thread-67431 (handle)] [driver.py] [get_status()] Telra = 17.6492734, teldec = -24.256551
2025-11-17T11:30:06.857 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6492734 -24.256551
2025-11-17T11:30:06.857 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6492734 -24.256551
2025-11-17T11:30:06.857 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6492734 -24.256551
2025-11-17T11:30:06.858 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 17;17.6492734;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66903;2460996.89591271;11.50186639;1.3;_17.6231277276456 -24.2403870507807
2025-11-17T11:30:06.858 [INFO] [Thread-67431 (handle)] [driver.py] [get_status()] ra_j2k = 17.6231277276456     dec_j2k = -24.2403870507807
2025-11-17T11:30:06.858 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:06.858 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:06.858 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 140;0.104506933770489;171.162357330327;_
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response 140;0.104506933770489;171.162357330327;_
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:06.859 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:06.860 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:06.861 [DEBUG] [Thread-67431 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:06.861 [DEBUG] [Thread-67431 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:06.861 [DEBUG] [Thread-67431 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:06.865 [DEBUG] [Thread-67431 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34703)
2025-11-17T11:30:06.865 [DEBUG] [Thread-67431 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:06.865 [DEBUG] [Thread-67431 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:06.865 [DEBUG] [Thread-67431 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:06.866 [DEBUG] [Thread-67431 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:06.866 [DEBUG] [Thread-67431 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:06.867 [DEBUG] [Thread-67431 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:06.867 [INFO] [Thread-67431 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89591268, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104506933770489, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6492734, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.66903, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6231277276456, telescope_dec_j2k=-24.2403870507807, observability=1)
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.0498425960540771s
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:07.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:07.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:07.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6495815;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66934;2460996.89592499;11.50217361;1.3;_
2025-11-17T11:30:07.919 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6495815;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66934;2460996.89592499;11.50217361;1.3;_
2025-11-17T11:30:07.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:07.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:07.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:07.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:07.920 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:07.920 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6495815, teldec = -24.256551
2025-11-17T11:30:07.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6495815 -24.256551
2025-11-17T11:30:07.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6495815 -24.256551
2025-11-17T11:30:07.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6495815 -24.256551
2025-11-17T11:30:07.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6495815;-24.256551;50.10842;89.993044;50.08601;90.12017;14.66934;2460996.89592501;11.50217361;1.3;_17.623435772053 -24.2403984798197
2025-11-17T11:30:07.921 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.623435772053     dec_j2k = -24.2403984798197
2025-11-17T11:30:07.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:07.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104507535449631;171.162362694745;_
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104507535449631;171.162362694745;_
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:07.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:07.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:07.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:07.923 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:07.923 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:07.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:07.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:07.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:07.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:07.924 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:07.924 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59685)
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:07.928 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:07.935 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:07.935 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:07.935 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:07.935 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:07.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:07.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:07.936 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:07.936 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:07.936 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:07.936 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89592499, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104507535449631, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6495815, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.66934, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.623435772053, telescope_dec_j2k=-24.2403984798197, observability=1)
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Status age = 4.2770750522613525s
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:12.213 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:12.214 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:12.214 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:12.214 [DEBUG] [Thread-67432 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:12.214 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:12.214 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 17;17.6507784;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67053;2460996.89597471;11.50336722;1.3;_
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response 17;17.6507784;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67053;2460996.89597471;11.50336722;1.3;_
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:12.215 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:12.216 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:12.216 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:12.216 [INFO] [Thread-67432 (handle)] [driver.py] [get_status()] Telra = 17.6507784, teldec = -24.256551
2025-11-17T11:30:12.216 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6507784 -24.256551
2025-11-17T11:30:12.216 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6507784 -24.256551
2025-11-17T11:30:12.216 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6507784 -24.256551
2025-11-17T11:30:12.217 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 17;17.6507784;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67053;2460996.89597473;11.50336722;1.3;_17.6246324563321 -24.2404428801693
2025-11-17T11:30:12.217 [INFO] [Thread-67432 (handle)] [driver.py] [get_status()] ra_j2k = 17.6246324563321     dec_j2k = -24.2404428801693
2025-11-17T11:30:12.217 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:12.217 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:12.217 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 140;0.10450737500186;171.162357330327;_
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response 140;0.10450737500186;171.162357330327;_
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:12.218 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:12.219 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:12.220 [DEBUG] [Thread-67432 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:12.220 [DEBUG] [Thread-67432 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:12.220 [DEBUG] [Thread-67432 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37571)
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:12.226 [DEBUG] [Thread-67432 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:12.233 [DEBUG] [Thread-67432 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:12.233 [INFO] [Thread-67432 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89597471, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10450737500186, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6507784, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.67053, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6246324563321, telescope_dec_j2k=-24.2404428801693, observability=1)
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.658846616744995s
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.651534;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67129;2460996.89600572;11.50412083;1.3;_
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.651534;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67129;2460996.89600572;11.50412083;1.3;_
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.651534, teldec = -24.256551
2025-11-17T11:30:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.651534 -24.256551
2025-11-17T11:30:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.651534 -24.256551
2025-11-17T11:30:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.651534 -24.256551
2025-11-17T11:30:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.651534;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67129;2460996.89600574;11.50412083;1.3;_17.6253879203475 -24.2404709108781
2025-11-17T11:30:14.897 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6253879203475     dec_j2k = -24.2404709108781
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104507495337689;171.162351965909;_
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104507495337689;171.162351965909;_
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:14.904 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45805)
2025-11-17T11:30:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:14.905 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:14.913 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89600572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104507495337689, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.651534, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.67129, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6253879203475, telescope_dec_j2k=-24.2404709108781, observability=1)
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.915815591812134s
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:20.829 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6531777;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67293;2460996.89607442;11.50576;1.3;_
2025-11-17T11:30:20.830 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.6531777;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67293;2460996.89607442;11.50576;1.3;_
2025-11-17T11:30:20.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:20.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:20.831 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:20.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:20.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:20.832 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.6531777, teldec = -24.256551
2025-11-17T11:30:20.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.6531777 -24.256551
2025-11-17T11:30:20.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.6531777 -24.256551
2025-11-17T11:30:20.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6531777 -24.256551
2025-11-17T11:30:20.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6531777;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67293;2460996.89607446;11.50576;1.3;_17.6270313250659 -24.240531890028
2025-11-17T11:30:20.833 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6270313250659     dec_j2k = -24.240531890028
2025-11-17T11:30:20.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:20.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:20.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104507976681002;171.162351965909;_
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104507976681002;171.162351965909;_
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:20.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:20.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:20.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:20.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:20.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40465)
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:20.837 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:20.844 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:20.844 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:20.844 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:20.844 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:20.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:20.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:20.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:20.845 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:20.845 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:30:20.845 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89607442, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104507976681002, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6531777, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.67293, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6270313250659, telescope_dec_j2k=-24.240531890028, observability=1)
2025-11-17T11:30:20.845 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.128915786743164 seconds ago
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Status age = 9.435909509658813s
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:30.281 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 17;17.6558208;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67558;2460996.89618382;11.50839583;1.3;_
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response 17;17.6558208;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67558;2460996.89618382;11.50839583;1.3;_
2025-11-17T11:30:30.282 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:30.283 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:30.283 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:30.284 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:30.284 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:30.284 [INFO] [Thread-67433 (handle)] [driver.py] [get_status()] Telra = 17.6558208, teldec = -24.256551
2025-11-17T11:30:30.284 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6558208 -24.256551
2025-11-17T11:30:30.284 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6558208 -24.256551
2025-11-17T11:30:30.284 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6558208 -24.256551
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 17;17.6558208;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67558;2460996.89618385;11.50839583;1.3;_17.6296739517802 -24.2406299523328
2025-11-17T11:30:30.285 [INFO] [Thread-67433 (handle)] [driver.py] [get_status()] ra_j2k = 17.6296739517802     dec_j2k = -24.2406299523328
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 140;0.104508016792945;171.162357330327;_
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response 140;0.104508016792945;171.162357330327;_
2025-11-17T11:30:30.285 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:30.286 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:30.287 [DEBUG] [Thread-67433 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:30.287 [DEBUG] [Thread-67433 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:30.287 [DEBUG] [Thread-67433 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45439)
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:30.290 [DEBUG] [Thread-67433 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:30.297 [DEBUG] [Thread-67433 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:30.297 [INFO] [Thread-67433 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89618382, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104508016792945, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6558208, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.67558, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:29:34.756048', telescope_ra_j2k=17.6296739517802, telescope_dec_j2k=-24.2406299523328, observability=1)
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:34.898 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:34.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:34.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:34.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:34.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:34.899 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:30:34.900 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:30:34.901 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:30:34.901 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:35.797 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:30:35
2025-11-17T11:30:35.797 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:35.797 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.500226020812988s
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:35.798 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6573525;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67711;2460996.89624767;11.50992333;1.3;_
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.6573525;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67711;2460996.89624767;11.50992333;1.3;_
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:35.799 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:35.800 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:35.800 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:35.800 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.6573525, teldec = -24.256551
2025-11-17T11:30:35.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6573525 -24.256551
2025-11-17T11:30:35.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6573525 -24.256551
2025-11-17T11:30:35.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6573525 -24.256551
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6573525;-24.256551;50.10842;89.993044;50.08601;90.12017;14.67711;2460996.8962477;11.50992333;1.3;_17.631205378372 -24.24068678408
2025-11-17T11:30:35.802 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.631205378372     dec_j2k = -24.24068678408
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104508056904888;171.162357330327;_
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104508056904888;171.162357330327;_
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:35.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:35.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:35.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:35.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:35.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:30:35.807 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44963)
2025-11-17T11:30:35.808 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:35.808 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:35.808 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:35.808 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:35.808 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:35.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:35.815 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89624767, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104508056904888, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10842, telescope_az=89.993044, telescope_ra=17.6573525, telescope_dec=-24.256551, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.67711, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.631205378372, telescope_dec_j2k=-24.24068678408, observability=1)
2025-11-17T11:30:35.901 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:35.902 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:35.902 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:35.902 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:35.902 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:30:35.903 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:35.904 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:35.905 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:35.905 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:35.905 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:35.905 [DEBUG] [ThreadPoolExecutor-2728_0] [payload.py] [to_registers()] [0]
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58571)
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:35.907 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:35.914 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:35.914 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:30:35.915 [DEBUG] [ThreadPoolExecutor-2728_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:30:35.915 [DEBUG] [ThreadPoolExecutor-2728_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:30:35.915 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:35.915 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:35.915 [DEBUG] [ThreadPoolExecutor-2728_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:48.345 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:30:48.345 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Status age = 12.530060529708862s
2025-11-17T11:30:48.345 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:30:48.345 [DEBUG] [Thread-67434 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:30:48.346 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:30:48.347 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 17;17.6608392;-24.25655;50.108419;89.993043;50.08601;90.12017;14.6806;2460996.8963929;11.51340056;1.3;_
2025-11-17T11:30:48.347 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response 17;17.6608392;-24.25655;50.108419;89.993043;50.08601;90.12017;14.6806;2460996.8963929;11.51340056;1.3;_
2025-11-17T11:30:48.347 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:30:48.347 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:30:48.347 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:30:48.348 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:48.348 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:30:48.348 [INFO] [Thread-67434 (handle)] [driver.py] [get_status()] Telra = 17.6608392, teldec = -24.25655
2025-11-17T11:30:48.349 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6608392 -24.25655
2025-11-17T11:30:48.349 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6608392 -24.25655
2025-11-17T11:30:48.349 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6608392 -24.25655
2025-11-17T11:30:48.349 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 17;17.6608392;-24.25655;50.108419;89.993043;50.08601;90.12017;14.6806;2460996.89639293;11.51340056;1.3;_17.6346914585623 -24.2408151638801
2025-11-17T11:30:48.350 [INFO] [Thread-67434 (handle)] [driver.py] [get_status()] ra_j2k = 17.6346914585623     dec_j2k = -24.2408151638801
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 140;0.104508137128773;171.162357330327;_
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response 140;0.104508137128773;171.162357330327;_
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:48.350 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:48.351 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:48.352 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:30:48.352 [DEBUG] [Thread-67434 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:30:48.352 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:30:48.352 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:30:48.352 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:30:48.353 [DEBUG] [Thread-67434 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:48.353 [DEBUG] [Thread-67434 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:30:48.353 [DEBUG] [Thread-67434 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40835)
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:30:48.359 [DEBUG] [Thread-67434 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:30:48.366 [DEBUG] [Thread-67434 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:30:48.367 [DEBUG] [Thread-67434 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:30:48.367 [DEBUG] [Thread-67434 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:30:48.367 [DEBUG] [Thread-67434 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:30:48.367 [INFO] [Thread-67434 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8963929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104508137128773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108419, telescope_az=89.993043, telescope_ra=17.6608392, telescope_dec=-24.25655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.6806, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.6346914585623, telescope_dec_j2k=-24.2408151638801, observability=1)
2025-11-17T11:31:00.915 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:00.915 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:00.915 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:00.915 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:00.915 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:00.916 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:31:00.917 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:31:00.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Status age = 18.096508741378784s
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:06.463 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:06.464 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 17;17.665883;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68564;2460996.8966026;11.51843056;1.3;_
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response 17;17.665883;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68564;2460996.8966026;11.51843056;1.3;_
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:06.465 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:06.466 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:06.466 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:06.466 [INFO] [Thread-67435 (handle)] [driver.py] [get_status()] Telra = 17.665883, teldec = -24.25655
2025-11-17T11:31:06.467 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] UnCookCoordinates 17.665883 -24.25655
2025-11-17T11:31:06.467 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.665883 -24.25655
2025-11-17T11:31:06.467 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.665883 -24.25655
2025-11-17T11:31:06.468 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 17;17.665883;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68564;2460996.89660263;11.51843056;1.3;_17.6397343674917 -24.2410023474157
2025-11-17T11:31:06.468 [INFO] [Thread-67435 (handle)] [driver.py] [get_status()] ra_j2k = 17.6397343674917     dec_j2k = -24.2410023474157
2025-11-17T11:31:06.468 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:06.468 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:06.468 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 140;0.104508899255687;171.162357330327;_
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response 140;0.104508899255687;171.162357330327;_
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:06.469 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:06.470 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:06.470 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:06.471 [DEBUG] [Thread-67435 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:06.471 [DEBUG] [Thread-67435 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:06.471 [DEBUG] [Thread-67435 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:06.472 [DEBUG] [Thread-67435 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48055)
2025-11-17T11:31:06.472 [DEBUG] [Thread-67435 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:06.472 [DEBUG] [Thread-67435 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:06.472 [DEBUG] [Thread-67435 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:06.473 [DEBUG] [Thread-67435 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:06.473 [DEBUG] [Thread-67435 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:06.479 [DEBUG] [Thread-67435 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:06.480 [DEBUG] [Thread-67435 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:31:06.480 [INFO] [Thread-67435 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8966026, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104508899255687, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108419, telescope_az=89.993043, telescope_ra=17.665883, telescope_dec=-24.25655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.68564, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.6397343674917, telescope_dec_j2k=-24.2410023474157, observability=1)
2025-11-17T11:31:06.900 [DEBUG] [Thread-67436 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:06.901 [DEBUG] [Thread-67436 (handle)] [server.py] [get_status()] Status age = 0.42058658599853516s
2025-11-17T11:31:06.901 [DEBUG] [Thread-67436 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.42058658599853516
2025-11-17T11:31:07.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:07.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5418601036071777s
2025-11-17T11:31:07.022 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5418601036071777
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.384047746658325s
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6682174;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68797;2460996.89669983;11.52075861;1.3;_
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.6682174;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68797;2460996.89669983;11.52075861;1.3;_
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:14.866 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.6682174, teldec = -24.25655
2025-11-17T11:31:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6682174 -24.25655
2025-11-17T11:31:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6682174 -24.25655
2025-11-17T11:31:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6682174 -24.25655
2025-11-17T11:31:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6682174;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68797;2460996.89669985;11.52075861;1.3;_17.6420683574124 -24.2410889906966
2025-11-17T11:31:14.868 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6420683574124     dec_j2k = -24.2410889906966
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10450893936763;171.162346601491;_
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10450893936763;171.162346601491;_
2025-11-17T11:31:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44965)
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:14.875 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:31:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89669983, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10450893936763, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108419, telescope_az=89.993043, telescope_ra=17.6682174, telescope_dec=-24.25655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.68797, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.6420683574124, telescope_dec_j2k=-24.2410889906966, observability=1)
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.021630048751831s
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:20.905 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:20.906 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:20.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6699171;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68967;2460996.89676976;11.52245361;1.3;_
2025-11-17T11:31:20.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.6699171;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68967;2460996.89676976;11.52245361;1.3;_
2025-11-17T11:31:20.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:20.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:20.907 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:20.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:20.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:20.908 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.6699171, teldec = -24.25655
2025-11-17T11:31:20.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.6699171 -24.25655
2025-11-17T11:31:20.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.6699171 -24.25655
2025-11-17T11:31:20.908 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6699171 -24.25655
2025-11-17T11:31:20.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.6699171;-24.25655;50.108419;89.993043;50.08601;90.12017;14.68967;2460996.89676978;11.52245361;1.3;_17.6437677597578 -24.2411520804672
2025-11-17T11:31:20.909 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6437677597578     dec_j2k = -24.2411520804672
2025-11-17T11:31:20.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:20.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:20.909 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104509099815401;171.162346601491;_
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104509099815401;171.162346601491;_
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:20.910 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:20.911 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42881)
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:20.915 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:20.922 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:20.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:31:20.923 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89676976, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104509099815401, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108419, telescope_az=89.993043, telescope_ra=17.6699171, telescope_dec=-24.25655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.68967, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.6437677597578, telescope_dec_j2k=-24.2411520804672, observability=1)
2025-11-17T11:31:20.923 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12581706047058 seconds ago
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Status age = 3.610743284225464s
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:24.534 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 17;17.670926;-24.25655;50.108419;89.993043;50.08601;90.12017;14.69068;2460996.89681175;11.52345972;1.3;_
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response 17;17.670926;-24.25655;50.108419;89.993043;50.08601;90.12017;14.69068;2460996.89681175;11.52345972;1.3;_
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:24.535 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:24.536 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:24.537 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:24.537 [INFO] [Thread-67437 (handle)] [driver.py] [get_status()] Telra = 17.670926, teldec = -24.25655
2025-11-17T11:31:24.537 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] UnCookCoordinates 17.670926 -24.25655
2025-11-17T11:31:24.537 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.670926 -24.25655
2025-11-17T11:31:24.537 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.670926 -24.25655
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 17;17.670926;-24.25655;50.108419;89.993043;50.08601;90.12017;14.69068;2460996.89681178;11.52345972;1.3;_17.6447764834472 -24.2411895305597
2025-11-17T11:31:24.538 [INFO] [Thread-67437 (handle)] [driver.py] [get_status()] ra_j2k = 17.6447764834472     dec_j2k = -24.2411895305597
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 140;0.104509541046772;171.162362694745;_
2025-11-17T11:31:24.538 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response 140;0.104509541046772;171.162362694745;_
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:24.539 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:24.540 [DEBUG] [Thread-67437 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:24.540 [DEBUG] [Thread-67437 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:24.540 [DEBUG] [Thread-67437 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47493)
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:24.543 [DEBUG] [Thread-67437 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:24.550 [DEBUG] [Thread-67437 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:24.551 [DEBUG] [Thread-67437 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:31:24.551 [INFO] [Thread-67437 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89681175, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104509541046772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108419, telescope_az=89.993043, telescope_ra=17.670926, telescope_dec=-24.25655, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.69068, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:30:34.897668', telescope_ra_j2k=17.6447764834472, telescope_dec_j2k=-24.2411895305597, observability=1)
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:35.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:35.040 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:35.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:35.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:35.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:35.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:35.041 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:31:35.041 [INFO] [ThreadPoolExecutor-2729_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:31:35.041 [INFO] [ThreadPoolExecutor-2729_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:31:35.876 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:31:35
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.325502157211304s
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:35.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:35.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:35.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.674076;-24.256549;50.108418;89.993042;50.08601;90.12017;14.69383;2460996.89694303;11.52660111;1.3;_
2025-11-17T11:31:35.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.674076;-24.256549;50.108418;89.993042;50.08601;90.12017;14.69383;2460996.89694303;11.52660111;1.3;_
2025-11-17T11:31:35.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:35.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:35.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:35.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:35.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:35.879 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.674076, teldec = -24.256549
2025-11-17T11:31:35.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.674076 -24.256549
2025-11-17T11:31:35.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.674076 -24.256549
2025-11-17T11:31:35.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.674076 -24.256549
2025-11-17T11:31:35.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.674076;-24.256549;50.108418;89.993042;50.08601;90.12017;14.69383;2460996.89694306;11.52660111;1.3;_17.6479259349404 -24.241305465203
2025-11-17T11:31:35.880 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.6479259349404     dec_j2k = -24.241305465203
2025-11-17T11:31:35.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:35.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:35.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104510022390085;171.162351965909;_
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104510022390085;171.162351965909;_
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:35.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:35.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:35.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:35.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:31:35.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43723)
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:35.884 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:35.891 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:35.891 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:35.891 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:35.891 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:35.892 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:35.892 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:35.892 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:35.892 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:35.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:31:35.892 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89694303, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104510022390085, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.674076, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.69383, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6479259349404, telescope_dec_j2k=-24.241305465203, observability=1)
2025-11-17T11:31:42.650 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:31:42.650 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Status age = 6.758581161499023s
2025-11-17T11:31:42.650 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:31:42.650 [DEBUG] [Thread-67438 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:31:42.651 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:31:42.652 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 17;17.6759629;-24.256543;50.108418;89.993032;50.08601;90.12016;14.69572;2460996.89702144;11.52848306;1.3;_
2025-11-17T11:31:42.652 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response 17;17.6759629;-24.256543;50.108418;89.993032;50.08601;90.12016;14.69572;2460996.89702144;11.52848306;1.3;_
2025-11-17T11:31:42.652 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:31:42.652 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:31:42.652 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:31:42.653 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:42.653 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:31:42.653 [INFO] [Thread-67438 (handle)] [driver.py] [get_status()] Telra = 17.6759629, teldec = -24.256543
2025-11-17T11:31:42.653 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6759629 -24.256543
2025-11-17T11:31:42.653 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6759629 -24.256543
2025-11-17T11:31:42.654 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6759629 -24.256543
2025-11-17T11:31:42.654 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 17;17.6759629;-24.256543;50.108418;89.993032;50.08601;90.12016;14.69572;2460996.89702146;11.52848306;1.3;_17.649812508735 -24.2413695165819
2025-11-17T11:31:42.655 [INFO] [Thread-67438 (handle)] [driver.py] [get_status()] ra_j2k = 17.649812508735     dec_j2k = -24.2413695165819
2025-11-17T11:31:42.655 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:31:42.655 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:31:42.655 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 140;0.104509781718429;171.162357330327;_
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response 140;0.104509781718429;171.162357330327;_
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:42.656 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:31:42.657 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:31:42.658 [DEBUG] [Thread-67438 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:42.658 [DEBUG] [Thread-67438 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:31:42.658 [DEBUG] [Thread-67438 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34063)
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:31:42.661 [DEBUG] [Thread-67438 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:31:42.668 [DEBUG] [Thread-67438 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:31:42.668 [DEBUG] [Thread-67438 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:42.668 [DEBUG] [Thread-67438 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:31:42.668 [DEBUG] [Thread-67438 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:31:42.668 [DEBUG] [Thread-67438 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:31:42.669 [DEBUG] [Thread-67438 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:31:42.669 [DEBUG] [Thread-67438 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:31:42.669 [DEBUG] [Thread-67438 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:31:42.669 [DEBUG] [Thread-67438 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:31:42.669 [INFO] [Thread-67438 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89702144, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104509781718429, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993032, telescope_ra=17.6759629, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.69572, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.649812508735, telescope_dec_j2k=-24.2413695165819, observability=1)
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:55.918 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:55.919 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.919 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.919 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:31:55.919 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:31:55.919 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:55.920 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:55.921 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:31:55.922 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:55.923 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Park
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:31:55.924 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:31:55.925 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 29;17.6796696;-24.256549;50.108418;89.993042;50.08601;90.12017;14.69943;2460996.89717506;11.53217944;1.3;_Park Command Successful
2025-11-17T11:31:56.925 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:31:56.925 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:31:56.925 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:31:56.925 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:31:56.926 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:31:57.926 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:31:57.926 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:31:57.926 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:31:57.927 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:31:57.927 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:31:58.927 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:31:58.927 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:31:58.927 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:31:58.928 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:31:58.928 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:31:59.928 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:31:59.929 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:31:59.929 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:31:59.929 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:31:59.929 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:31:59.930 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:31:59.931 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Status age = 18.048441648483276s
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:00.717 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:00.719 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:00.720 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 17;17.6809862;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70074;2460996.89723056;11.5334925;1.3;_
2025-11-17T11:32:00.720 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response 17;17.6809862;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70074;2460996.89723056;11.5334925;1.3;_
2025-11-17T11:32:00.720 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:00.720 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:00.720 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:00.721 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:00.721 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:00.721 [INFO] [Thread-67439 (handle)] [driver.py] [get_status()] Telra = 17.6809862, teldec = -24.256549
2025-11-17T11:32:00.721 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6809862 -24.256549
2025-11-17T11:32:00.721 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6809862 -24.256549
2025-11-17T11:32:00.721 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6809862 -24.256549
2025-11-17T11:32:00.722 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 17;17.6809862;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70074;2460996.89723058;11.5334925;1.3;_17.6548349406512 -24.2415620254867
2025-11-17T11:32:00.722 [INFO] [Thread-67439 (handle)] [driver.py] [get_status()] ra_j2k = 17.6548349406512     dec_j2k = -24.2415620254867
2025-11-17T11:32:00.722 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:00.722 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:00.722 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 140;0.104511145524484;171.162357330327;_
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response 140;0.104511145524484;171.162357330327;_
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:00.723 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:00.724 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:00.725 [DEBUG] [Thread-67439 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:00.725 [DEBUG] [Thread-67439 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:00.725 [DEBUG] [Thread-67439 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59267)
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:00.729 [DEBUG] [Thread-67439 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:00.736 [DEBUG] [Thread-67439 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:00.736 [INFO] [Thread-67439 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89723056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104511145524484, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.6809862, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.70074, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6548349406512, telescope_dec_j2k=-24.2415620254867, observability=1)
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:00.932 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:00.933 [DEBUG] [ThreadPoolExecutor-2728_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:00.933 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:32:00.933 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:32:00.933 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:32:00.933 [DEBUG] [ThreadPoolExecutor-2728_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:00.933 [INFO] [ThreadPoolExecutor-2728_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.377550840377808s
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:06.114 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:06.115 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:06.115 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:06.115 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:06.115 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6824898;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70225;2460996.89729301;11.53499194;1.3;_
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6824898;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70225;2460996.89729301;11.53499194;1.3;_
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:06.116 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:06.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:06.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:06.117 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:06.118 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6824898, teldec = -24.256549
2025-11-17T11:32:06.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6824898 -24.256549
2025-11-17T11:32:06.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6824898 -24.256549
2025-11-17T11:32:06.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6824898 -24.256549
2025-11-17T11:32:06.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6824898;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70225;2460996.89729304;11.53499194;1.3;_17.6563382824975 -24.241617857867
2025-11-17T11:32:06.119 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.6563382824975     dec_j2k = -24.241617857867
2025-11-17T11:32:06.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:06.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:06.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104510704293113;171.162346601491;_
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104510704293113;171.162346601491;_
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:06.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:06.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:06.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:06.122 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:06.122 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44995)
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:06.123 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:06.130 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:06.130 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89729301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104510704293113, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.6824898, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.70225, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6563382824975, telescope_dec_j2k=-24.241617857867, observability=1)
2025-11-17T11:32:06.943 [DEBUG] [Thread-67440 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:06.943 [DEBUG] [Thread-67440 (handle)] [server.py] [get_status()] Status age = 0.8129081726074219s
2025-11-17T11:32:06.943 [DEBUG] [Thread-67440 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8129081726074219
2025-11-17T11:32:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.736225843429565s
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6849407;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7047;2460996.89739432;11.53743611;1.3;_
2025-11-17T11:32:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.6849407;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7047;2460996.89739432;11.53743611;1.3;_
2025-11-17T11:32:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:14.870 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.6849407, teldec = -24.256549
2025-11-17T11:32:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6849407 -24.256549
2025-11-17T11:32:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6849407 -24.256549
2025-11-17T11:32:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6849407 -24.256549
2025-11-17T11:32:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.6849407;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7047;2460996.89739434;11.53743611;1.3;_17.6587887630144 -24.2417088712088
2025-11-17T11:32:14.871 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6587887630144     dec_j2k = -24.2417088712088
2025-11-17T11:32:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104510864740884;171.162351965909;_
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104510864740884;171.162351965909;_
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:14.877 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58909)
2025-11-17T11:32:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:14.878 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:14.878 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:14.885 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89739432, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104510864740884, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.6849407, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.7047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6587887630144, telescope_dec_j2k=-24.2417088712088, observability=1)
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Status age = 3.889098644256592s
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:18.774 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:18.775 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 17;17.6860233;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70578;2460996.89743954;11.53851583;1.3;_
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response 17;17.6860233;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70578;2460996.89743954;11.53851583;1.3;_
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:18.776 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:18.777 [INFO] [Thread-67441 (handle)] [driver.py] [get_status()] Telra = 17.6860233, teldec = -24.256549
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6860233 -24.256549
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6860233 -24.256549
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6860233 -24.256549
2025-11-17T11:32:18.777 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 17;17.6860233;-24.256549;50.108418;89.993042;50.08601;90.12017;14.70578;2460996.89743955;11.53851583;1.3;_17.6598711782405 -24.2417490753061
2025-11-17T11:32:18.777 [INFO] [Thread-67441 (handle)] [driver.py] [get_status()] ra_j2k = 17.6598711782405     dec_j2k = -24.2417490753061
2025-11-17T11:32:18.778 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:18.778 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:18.778 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:18.778 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 140;0.104510744405056;171.162351965909;_
2025-11-17T11:32:18.778 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response 140;0.104510744405056;171.162351965909;_
2025-11-17T11:32:18.779 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:18.779 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:18.779 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:18.779 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:18.780 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:18.781 [DEBUG] [Thread-67441 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:18.781 [DEBUG] [Thread-67441 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:18.781 [DEBUG] [Thread-67441 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48767)
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:18.786 [DEBUG] [Thread-67441 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:18.793 [DEBUG] [Thread-67441 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:18.793 [DEBUG] [Thread-67441 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:18.793 [DEBUG] [Thread-67441 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:18.794 [DEBUG] [Thread-67441 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:18.794 [INFO] [Thread-67441 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89743954, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104510744405056, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.6860233, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.70578, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6598711782405, telescope_dec_j2k=-24.2417490753061, observability=1)
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.189558982849121s
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:20.983 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:20.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:20.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:20.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:20.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:20.984 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:20.985 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:20.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:20.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:20.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:20.985 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.68664;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7064;2460996.8974651;11.53913083;1.3;_
2025-11-17T11:32:20.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.68664;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7064;2460996.8974651;11.53913083;1.3;_
2025-11-17T11:32:20.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:20.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:20.986 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:20.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:20.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:20.987 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.68664, teldec = -24.256549
2025-11-17T11:32:20.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.68664 -24.256549
2025-11-17T11:32:20.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.68664 -24.256549
2025-11-17T11:32:20.987 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.68664 -24.256549
2025-11-17T11:32:20.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.68664;-24.256549;50.108418;89.993042;50.08601;90.12017;14.7064;2460996.89746514;11.53913083;1.3;_17.6604877731266 -24.2417719780323
2025-11-17T11:32:20.988 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6604877731266     dec_j2k = -24.2417719780323
2025-11-17T11:32:20.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:20.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:20.988 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104511025188655;171.162346601491;_
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104511025188655;171.162346601491;_
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:20.989 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:20.990 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:20.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:20.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:20.991 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42279)
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:20.996 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:21.003 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:21.004 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:21.004 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:32:21.004 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.8974651, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104511025188655, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108418, telescope_az=89.993042, telescope_ra=17.68664, telescope_dec=-24.256549, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.7064, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:31:35.038533', telescope_ra_j2k=17.6604877731266, telescope_dec_j2k=-24.2417719780323, observability=1)
2025-11-17T11:32:21.004 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12800693511963 seconds ago
2025-11-17T11:32:35.180 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:35.180 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:35.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:35.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:35.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:35.181 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:35.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:35.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:35.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:35.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:35.182 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:32:35.182 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:32:35.183 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:32:35.184 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:32:35.184 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:35.953 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:32:35
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.949320554733276s
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:35.953 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:35.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:35.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:35.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:35.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:35.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:35.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:35.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:35.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6908223;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71058;2460996.89763837;11.54330167;1.3;_
2025-11-17T11:32:35.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.6908223;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71058;2460996.89763837;11.54330167;1.3;_
2025-11-17T11:32:35.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:35.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:35.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:35.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:35.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:35.957 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.6908223, teldec = -24.256548
2025-11-17T11:32:35.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6908223 -24.256548
2025-11-17T11:32:35.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6908223 -24.256548
2025-11-17T11:32:35.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6908223 -24.256548
2025-11-17T11:32:35.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.6908223;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71058;2460996.8976384;11.54330167;1.3;_17.6646693631888 -24.2419263094556
2025-11-17T11:32:35.958 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.6646693631888     dec_j2k = -24.2419263094556
2025-11-17T11:32:35.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:35.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:35.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104511907651397;171.162357330327;_
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104511907651397;171.162357330327;_
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:35.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:35.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:35.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:35.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:32:35.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:32:35.965 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33545)
2025-11-17T11:32:35.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:35.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:35.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:35.966 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:35.966 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:35.973 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:35.973 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:35.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:35.974 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89763837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104511907651397, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.6908223, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.71058, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6646693631888, telescope_dec_j2k=-24.2419263094556, observability=1)
2025-11-17T11:32:36.184 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:36.185 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:36.185 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:36.185 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:36.185 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:36.185 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:32:36.186 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:36.187 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:36.188 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:36.188 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:36.188 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:36.188 [DEBUG] [ThreadPoolExecutor-2730_0] [payload.py] [to_registers()] [0]
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51865)
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:36.189 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:36.196 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:36.196 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:32:36.197 [DEBUG] [ThreadPoolExecutor-2730_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:32:36.197 [DEBUG] [ThreadPoolExecutor-2730_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:32:36.197 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:36.197 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:36.197 [DEBUG] [ThreadPoolExecutor-2730_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:36.931 [DEBUG] [Thread-67442 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:36.931 [DEBUG] [Thread-67442 (handle)] [server.py] [get_status()] Status age = 0.956674337387085s
2025-11-17T11:32:36.931 [DEBUG] [Thread-67442 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.956674337387085
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Status age = 19.01394820213318s
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:32:54.988 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:32:54.989 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:32:54.989 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:32:54.989 [DEBUG] [Thread-67443 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:32:54.989 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:32:54.989 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:32:54.990 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:32:54.990 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:32:54.990 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 17;17.6961165;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71587;2460996.89785868;11.54858139;1.3;_
2025-11-17T11:32:54.990 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response 17;17.6961165;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71587;2460996.89785868;11.54858139;1.3;_
2025-11-17T11:32:54.991 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:32:54.991 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:32:54.991 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:32:54.992 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:54.992 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:32:54.992 [INFO] [Thread-67443 (handle)] [driver.py] [get_status()] Telra = 17.6961165, teldec = -24.256548
2025-11-17T11:32:54.992 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6961165 -24.256548
2025-11-17T11:32:54.992 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6961165 -24.256548
2025-11-17T11:32:54.992 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6961165 -24.256548
2025-11-17T11:32:54.993 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 17;17.6961165;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71587;2460996.89785872;11.54858139;1.3;_17.6699626710554 -24.2421229642704
2025-11-17T11:32:54.993 [INFO] [Thread-67443 (handle)] [driver.py] [get_status()] ra_j2k = 17.6699626710554     dec_j2k = -24.2421229642704
2025-11-17T11:32:54.993 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:32:54.993 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:32:54.993 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 140;0.104512750002196;171.162357330327;_
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response 140;0.104512750002196;171.162357330327;_
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:54.994 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:32:54.995 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:32:54.996 [DEBUG] [Thread-67443 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:54.996 [DEBUG] [Thread-67443 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:32:54.996 [DEBUG] [Thread-67443 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42055)
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:32:55.001 [DEBUG] [Thread-67443 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:32:55.009 [DEBUG] [Thread-67443 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:32:55.009 [INFO] [Thread-67443 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89785868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104512750002196, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.6961165, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.71587, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6699626710554, telescope_dec_j2k=-24.2421229642704, observability=1)
2025-11-17T11:33:01.197 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:01.197 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:01.197 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:01.197 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:01.197 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:01.198 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:33:01.199 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:33:01.200 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:33:01.200 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.21468734741211s
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:05.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:05.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:05.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6989562;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71871;2460996.89797715;11.55141333;1.3;_
2025-11-17T11:33:05.226 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.6989562;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71871;2460996.89797715;11.55141333;1.3;_
2025-11-17T11:33:05.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:05.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:05.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:05.227 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:05.228 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:05.228 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.6989562, teldec = -24.256548
2025-11-17T11:33:05.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6989562 -24.256548
2025-11-17T11:33:05.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6989562 -24.256548
2025-11-17T11:33:05.228 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6989562 -24.256548
2025-11-17T11:33:05.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.6989562;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71871;2460996.89797719;11.55141333;1.3;_17.6728018956639 -24.2422284583078
2025-11-17T11:33:05.229 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.6728018956639     dec_j2k = -24.2422284583078
2025-11-17T11:33:05.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:05.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:05.229 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104513111009681;171.162357330327;_
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104513111009681;171.162357330327;_
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:05.230 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:05.231 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:05.231 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:05.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:05.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:05.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:05.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:05.232 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:05.232 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:05.237 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35635)
2025-11-17T11:33:05.237 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:05.237 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:05.237 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:05.238 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:05.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:05.244 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:05.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:05.245 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89797715, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104513111009681, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.6989562, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.71871, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6728018956639, telescope_dec_j2k=-24.2422284583078, observability=1)
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Status age = 1.734931230545044s
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:06.980 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 17;17.6994601;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71922;2460996.89799747;11.55191583;1.3;_
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response 17;17.6994601;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71922;2460996.89799747;11.55191583;1.3;_
2025-11-17T11:33:06.981 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:06.982 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:06.982 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:06.982 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:06.983 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:06.983 [INFO] [Thread-67444 (handle)] [driver.py] [get_status()] Telra = 17.6994601, teldec = -24.256548
2025-11-17T11:33:06.983 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] UnCookCoordinates 17.6994601 -24.256548
2025-11-17T11:33:06.983 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.6994601 -24.256548
2025-11-17T11:33:06.983 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.6994601 -24.256548
2025-11-17T11:33:06.984 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 17;17.6994601;-24.256548;50.108417;89.993041;50.08601;90.12017;14.71922;2460996.8979975;11.55191583;1.3;_17.6733057115349 -24.2422471789488
2025-11-17T11:33:06.984 [INFO] [Thread-67444 (handle)] [driver.py] [get_status()] ra_j2k = 17.6733057115349     dec_j2k = -24.2422471789488
2025-11-17T11:33:06.984 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:06.984 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:06.984 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 140;0.104513672576881;171.162362694745;_
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response 140;0.104513672576881;171.162362694745;_
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:06.985 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:06.986 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:06.987 [DEBUG] [Thread-67444 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:06.987 [DEBUG] [Thread-67444 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:06.987 [DEBUG] [Thread-67444 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:06.991 [DEBUG] [Thread-67444 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41225)
2025-11-17T11:33:06.991 [DEBUG] [Thread-67444 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:06.991 [DEBUG] [Thread-67444 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:06.991 [DEBUG] [Thread-67444 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:06.992 [DEBUG] [Thread-67444 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:06.992 [DEBUG] [Thread-67444 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:06.999 [DEBUG] [Thread-67444 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:06.999 [INFO] [Thread-67444 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89799747, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104513672576881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.6994601, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.71922, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6733057115349, telescope_dec_j2k=-24.2422471789488, observability=1)
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Status age = 6.057478666305542s
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:13.057 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:13.058 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 17;17.7011592;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72092;2460996.8980678;11.55361028;1.3;_
2025-11-17T11:33:13.058 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response 17;17.7011592;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72092;2460996.8980678;11.55361028;1.3;_
2025-11-17T11:33:13.058 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:13.058 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:13.059 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:13.059 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:13.059 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:13.060 [INFO] [Thread-67445 (handle)] [driver.py] [get_status()] Telra = 17.7011592, teldec = -24.256548
2025-11-17T11:33:13.060 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7011592 -24.256548
2025-11-17T11:33:13.060 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7011592 -24.256548
2025-11-17T11:33:13.060 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7011592 -24.256548
2025-11-17T11:33:13.061 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 17;17.7011592;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72092;2460996.89806784;11.55361028;1.3;_17.6750045283677 -24.2423103050574
2025-11-17T11:33:13.061 [INFO] [Thread-67445 (handle)] [driver.py] [get_status()] ra_j2k = 17.6750045283677     dec_j2k = -24.2423103050574
2025-11-17T11:33:13.061 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:13.061 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:13.061 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:13.061 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 140;0.104513672576881;171.162346601491;_
2025-11-17T11:33:13.062 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response 140;0.104513672576881;171.162346601491;_
2025-11-17T11:33:13.062 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:13.062 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:13.062 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:13.062 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:13.063 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:13.064 [DEBUG] [Thread-67445 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:13.064 [DEBUG] [Thread-67445 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:13.064 [DEBUG] [Thread-67445 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44607)
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:13.070 [DEBUG] [Thread-67445 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:13.077 [DEBUG] [Thread-67445 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:13.078 [INFO] [Thread-67445 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.8980678, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104513672576881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.7011592, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.72092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6750045283677, telescope_dec_j2k=-24.2423103050574, observability=1)
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.7886173725128174s
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7016536;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72141;2460996.89808875;11.55410333;1.3;_
2025-11-17T11:33:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.7016536;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72141;2460996.89808875;11.55410333;1.3;_
2025-11-17T11:33:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:14.870 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.7016536, teldec = -24.256548
2025-11-17T11:33:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7016536 -24.256548
2025-11-17T11:33:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7016536 -24.256548
2025-11-17T11:33:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7016536 -24.256548
2025-11-17T11:33:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7016536;-24.256548;50.108417;89.993041;50.08601;90.12017;14.72141;2460996.89808878;11.55410333;1.3;_17.6754988461194 -24.242328673916
2025-11-17T11:33:14.871 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6754988461194     dec_j2k = -24.242328673916
2025-11-17T11:33:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104513833024652;171.162357330327;_
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104513833024652;171.162357330327;_
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:14.879 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55843)
2025-11-17T11:33:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:14.879 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:14.880 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:14.887 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:14.887 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89808875, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104513833024652, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108417, telescope_az=89.993041, telescope_ra=17.7016536, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.72141, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6754988461194, telescope_dec_j2k=-24.242328673916, observability=1)
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.1766345500946045s
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:21.064 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7033811;-24.256548;50.108416;89.99304;50.08601;90.12017;14.72314;2460996.89816047;11.55582611;1.3;_
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.7033811;-24.256548;50.108416;89.99304;50.08601;90.12017;14.72314;2460996.89816047;11.55582611;1.3;_
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:21.065 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:21.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:21.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:21.066 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:21.067 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.7033811, teldec = -24.256548
2025-11-17T11:33:21.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.7033811 -24.256548
2025-11-17T11:33:21.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.7033811 -24.256548
2025-11-17T11:33:21.067 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7033811 -24.256548
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7033811;-24.256548;50.108416;89.99304;50.08601;90.12017;14.72314;2460996.8981605;11.55582611;1.3;_17.6772260592533 -24.2423928592089
2025-11-17T11:33:21.068 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6772260592533     dec_j2k = -24.2423928592089
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104514875935165;171.162357330327;_
2025-11-17T11:33:21.068 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104514875935165;171.162357330327;_
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:21.069 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:21.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:21.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:21.070 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:21.073 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48927)
2025-11-17T11:33:21.073 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:21.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:21.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:21.074 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:21.074 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:21.081 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:33:21.081 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89816047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104514875935165, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7033811, telescope_dec=-24.256548, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.72314, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6772260592533, telescope_dec_j2k=-24.2423928592089, observability=1)
2025-11-17T11:33:21.081 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12857699394226 seconds ago
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Status age = 10.09266471862793s
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:31.174 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:31.175 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:31.175 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:31.175 [DEBUG] [Thread-67446 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:31.175 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:31.176 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:31.176 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:31.176 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:31.177 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 17;17.7062013;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72596;2460996.89827751;11.55863861;1.3;_
2025-11-17T11:33:31.177 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response 17;17.7062013;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72596;2460996.89827751;11.55863861;1.3;_
2025-11-17T11:33:31.177 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:31.177 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:31.177 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:31.178 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:31.178 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:31.178 [INFO] [Thread-67446 (handle)] [driver.py] [get_status()] Telra = 17.7062013, teldec = -24.256547
2025-11-17T11:33:31.178 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7062013 -24.256547
2025-11-17T11:33:31.178 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7062013 -24.256547
2025-11-17T11:33:31.178 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7062013 -24.256547
2025-11-17T11:33:31.179 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 17;17.7062013;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72596;2460996.89827753;11.55863861;1.3;_17.6800457928725 -24.2424966506132
2025-11-17T11:33:31.179 [INFO] [Thread-67446 (handle)] [driver.py] [get_status()] ra_j2k = 17.6800457928725     dec_j2k = -24.2424966506132
2025-11-17T11:33:31.179 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:31.179 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:31.179 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:31.179 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 140;0.104514795711279;171.162351965909;_
2025-11-17T11:33:31.180 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response 140;0.104514795711279;171.162351965909;_
2025-11-17T11:33:31.180 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:31.180 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:31.180 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:31.180 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:31.181 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:31.182 [DEBUG] [Thread-67446 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:31.182 [DEBUG] [Thread-67446 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:31.182 [DEBUG] [Thread-67446 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38681)
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:31.189 [DEBUG] [Thread-67446 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:31.196 [DEBUG] [Thread-67446 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:31.196 [INFO] [Thread-67446 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89827751, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104514795711279, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7062013, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.72596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:32:35.179941', telescope_ra_j2k=17.6800457928725, telescope_dec_j2k=-24.2424966506132, observability=1)
2025-11-17T11:33:35.322 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:35.322 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:35.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:35.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:35.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:35.323 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:35.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:35.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:35.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:35.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:35.324 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:33:35.324 [INFO] [ThreadPoolExecutor-2731_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:33:35.325 [INFO] [ThreadPoolExecutor-2731_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:33:36.035 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:33:36
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.838788270950317s
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7075642;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72732;2460996.89833376;11.55999778;1.3;_
2025-11-17T11:33:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.7075642;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72732;2460996.89833376;11.55999778;1.3;_
2025-11-17T11:33:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:36.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:36.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:36.038 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.7075642, teldec = -24.256547
2025-11-17T11:33:36.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7075642 -24.256547
2025-11-17T11:33:36.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7075642 -24.256547
2025-11-17T11:33:36.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7075642 -24.256547
2025-11-17T11:33:36.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7075642;-24.256547;50.108416;89.99304;50.08601;90.12017;14.72732;2460996.89833378;11.55999778;1.3;_17.6814084681648 -24.2425472954526
2025-11-17T11:33:36.039 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.6814084681648     dec_j2k = -24.2425472954526
2025-11-17T11:33:36.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104514916047108;171.162357330327;_
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104514916047108;171.162357330327;_
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:36.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:33:36.041 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50807)
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:36.049 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:36.056 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:36.056 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89833376, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104514916047108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7075642, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.72732, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6814084681648, telescope_dec_j2k=-24.2425472954526, observability=1)
2025-11-17T11:33:49.240 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:33:49.240 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Status age = 13.184196710586548s
2025-11-17T11:33:49.240 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:33:49.241 [DEBUG] [Thread-67447 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:49.241 [DEBUG] [Thread-67447 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:49.241 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:49.241 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:49.241 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:33:49.242 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:33:49.243 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 17;17.7112153;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73097;2460996.89848661;11.56363889;1.3;_
2025-11-17T11:33:49.243 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response 17;17.7112153;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73097;2460996.89848661;11.56363889;1.3;_
2025-11-17T11:33:49.243 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:33:49.243 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:33:49.243 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:33:49.244 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:49.244 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:33:49.244 [INFO] [Thread-67447 (handle)] [driver.py] [get_status()] Telra = 17.7112153, teldec = -24.256547
2025-11-17T11:33:49.244 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7112153 -24.256547
2025-11-17T11:33:49.244 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7112153 -24.256547
2025-11-17T11:33:49.244 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7112153 -24.256547
2025-11-17T11:33:49.245 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 17;17.7112153;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73097;2460996.89848663;11.56363889;1.3;_17.6850589686733 -24.2426829784787
2025-11-17T11:33:49.245 [INFO] [Thread-67447 (handle)] [driver.py] [get_status()] ra_j2k = 17.6850589686733     dec_j2k = -24.2426829784787
2025-11-17T11:33:49.245 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:33:49.245 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:33:49.245 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 140;0.104514996270993;171.162351965909;_
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response 140;0.104514996270993;171.162351965909;_
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:33:49.246 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:33:49.247 [DEBUG] [Thread-67447 (handle)] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:49.247 [DEBUG] [Thread-67447 (handle)] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:33:49.247 [DEBUG] [Thread-67447 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:33:49.249 [DEBUG] [Thread-67447 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36861)
2025-11-17T11:33:49.250 [DEBUG] [Thread-67447 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:33:49.250 [DEBUG] [Thread-67447 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:33:49.250 [DEBUG] [Thread-67447 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:33:49.250 [DEBUG] [Thread-67447 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:33:49.250 [DEBUG] [Thread-67447 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:33:49.257 [DEBUG] [Thread-67447 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:33:49.258 [INFO] [Thread-67447 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89848661, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104514996270993, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7112153, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.73097, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6850589686733, telescope_dec_j2k=-24.2426829784787, observability=1)
2025-11-17T11:33:56.201 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.201 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.201 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:56.201 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:56.201 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:33:56.202 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.203 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.203 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.203 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:56.203 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:56.203 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:56.204 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:33:56.205 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:33:56.206 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Park
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:33:56.207 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:33:56.208 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 29;17.7131667;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73292;2460996.89856722;11.565585;1.3;_Park Command Successful
2025-11-17T11:33:57.208 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:33:57.208 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:33:57.208 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:33:57.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:33:57.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:33:58.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:33:58.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:33:58.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:33:58.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:33:58.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:33:59.209 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:33:59.210 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:33:59.210 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:33:59.210 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:33:59.210 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 12;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:34:00.210 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:00.211 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:34:00.212 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:01.212 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:01.213 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:34:01.214 [DEBUG] [ThreadPoolExecutor-2730_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:01.215 [INFO] [ThreadPoolExecutor-2730_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:34:04.336 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 15.079111576080322s
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:04.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:04.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7154212;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73518;2460996.89866132;11.56783333;1.3;_
2025-11-17T11:34:04.338 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.7154212;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73518;2460996.89866132;11.56783333;1.3;_
2025-11-17T11:34:04.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:04.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:04.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:04.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:04.339 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:04.340 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.7154212, teldec = -24.256547
2025-11-17T11:34:04.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7154212 -24.256547
2025-11-17T11:34:04.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7154212 -24.256547
2025-11-17T11:34:04.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7154212 -24.256547
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7154212;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73518;2460996.89866134;11.56783333;1.3;_17.6892641825688 -24.2428392962304
2025-11-17T11:34:04.341 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.6892641825688     dec_j2k = -24.2428392962304
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104515718285964;171.162362694745;_
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104515718285964;171.162362694745;_
2025-11-17T11:34:04.341 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:04.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:04.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:04.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:04.343 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:04.344 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48571)
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:04.348 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:04.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:04.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:04.356 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:04.356 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:04.356 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89866132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104515718285964, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7154212, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.73518, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6892641825688, telescope_dec_j2k=-24.2428392962304, observability=1)
2025-11-17T11:34:07.037 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:07.037 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Status age = 2.681762218475342s
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:07.038 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 17;17.7161788;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73594;2460996.89869258;11.56858889;1.3;_
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response 17;17.7161788;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73594;2460996.89869258;11.56858889;1.3;_
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:07.039 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:07.039 [INFO] [Thread-67448 (handle)] [driver.py] [get_status()] Telra = 17.7161788, teldec = -24.256547
2025-11-17T11:34:07.040 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7161788 -24.256547
2025-11-17T11:34:07.040 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7161788 -24.256547
2025-11-17T11:34:07.040 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7161788 -24.256547
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 17;17.7161788;-24.256547;50.108416;89.99304;50.08601;90.12017;14.73594;2460996.89869259;11.56858889;1.3;_17.6900216594923 -24.2428674553554
2025-11-17T11:34:07.041 [INFO] [Thread-67448 (handle)] [driver.py] [get_status()] ra_j2k = 17.6900216594923     dec_j2k = -24.2428674553554
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 140;0.104516319965106;171.162362694745;_
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response 140;0.104516319965106;171.162362694745;_
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:07.041 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:07.042 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:07.043 [DEBUG] [Thread-67448 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:07.043 [DEBUG] [Thread-67448 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:07.043 [DEBUG] [Thread-67448 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35129)
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:07.045 [DEBUG] [Thread-67448 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:07.052 [DEBUG] [Thread-67448 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:07.053 [DEBUG] [Thread-67448 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:07.053 [DEBUG] [Thread-67448 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:07.053 [INFO] [Thread-67448 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89869258, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104516319965106, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108416, telescope_az=89.99304, telescope_ra=17.7161788, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.73594, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6900216594923, telescope_dec_j2k=-24.2428674553554, observability=1)
2025-11-17T11:34:07.311 [DEBUG] [Thread-67449 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:07.311 [DEBUG] [Thread-67449 (handle)] [server.py] [get_status()] Status age = 0.2588355541229248s
2025-11-17T11:34:07.312 [DEBUG] [Thread-67449 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2588355541229248
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.804472208023071s
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:14.857 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:14.858 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.718374;-24.256547;50.108415;89.993039;50.08601;90.12017;14.73813;2460996.89878309;11.57077806;1.3;_
2025-11-17T11:34:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.718374;-24.256547;50.108415;89.993039;50.08601;90.12017;14.73813;2460996.89878309;11.57077806;1.3;_
2025-11-17T11:34:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:14.859 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:14.860 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.718374, teldec = -24.256547
2025-11-17T11:34:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.718374 -24.256547
2025-11-17T11:34:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.718374 -24.256547
2025-11-17T11:34:14.860 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.718374 -24.256547
2025-11-17T11:34:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.718374;-24.256547;50.108415;89.993039;50.08601;90.12017;14.73813;2460996.89878311;11.57077806;1.3;_17.6922165037488 -24.2429490517419
2025-11-17T11:34:14.861 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.6922165037488     dec_j2k = -24.2429490517419
2025-11-17T11:34:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:14.861 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104516640860648;171.162357330327;_
2025-11-17T11:34:14.862 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104516640860648;171.162357330327;_
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34195)
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:14.867 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:14.874 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:14.875 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:14.875 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89878309, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104516640860648, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108415, telescope_az=89.993039, telescope_ra=17.718374, telescope_dec=-24.256547, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.73813, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6922165037488, telescope_dec_j2k=-24.2429490517419, observability=1)
2025-11-17T11:34:21.141 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.266788959503174s
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:21.142 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7201032;-24.256546;50.108415;89.993039;50.08601;90.12017;14.73986;2460996.89885582;11.5725025;1.3;_
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.7201032;-24.256546;50.108415;89.993039;50.08601;90.12017;14.73986;2460996.89885582;11.5725025;1.3;_
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:21.143 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:21.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:21.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:21.144 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.7201032, teldec = -24.256546
2025-11-17T11:34:21.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.7201032 -24.256546
2025-11-17T11:34:21.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.7201032 -24.256546
2025-11-17T11:34:21.144 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7201032 -24.256546
2025-11-17T11:34:21.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7201032;-24.256546;50.108415;89.993039;50.08601;90.12017;14.73986;2460996.89885584;11.5725025;1.3;_17.6939454246424 -24.2430123302495
2025-11-17T11:34:21.145 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.6939454246424     dec_j2k = -24.2430123302495
2025-11-17T11:34:21.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:21.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:21.145 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104517322763676;171.162351965909;_
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104517322763676;171.162351965909;_
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:21.146 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:21.147 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:21.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:21.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:21.148 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34081)
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:21.151 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:21.158 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:21.158 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:21.159 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:34:21.159 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89885582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104517322763676, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108415, telescope_az=89.993039, telescope_ra=17.7201032, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.73986, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6939454246424, telescope_dec_j2k=-24.2430123302495, observability=1)
2025-11-17T11:34:21.159 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.12413835525513 seconds ago
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Status age = 4.2833521366119385s
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:25.442 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 17;17.7213001;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74106;2460996.89890559;11.57369611;1.3;_
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response 17;17.7213001;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74106;2460996.89890559;11.57369611;1.3;_
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:25.443 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:25.444 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:25.444 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:25.444 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:25.444 [INFO] [Thread-67450 (handle)] [driver.py] [get_status()] Telra = 17.7213001, teldec = -24.256546
2025-11-17T11:34:25.444 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7213001 -24.256546
2025-11-17T11:34:25.444 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7213001 -24.256546
2025-11-17T11:34:25.445 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7213001 -24.256546
2025-11-17T11:34:25.445 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 17;17.7213001;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74106;2460996.89890561;11.57369611;1.3;_17.6951421317911 -24.2430568236289
2025-11-17T11:34:25.446 [INFO] [Thread-67450 (handle)] [driver.py] [get_status()] ra_j2k = 17.6951421317911     dec_j2k = -24.2430568236289
2025-11-17T11:34:25.446 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:25.446 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:25.446 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:25.446 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 140;0.104517322763676;171.162357330327;_
2025-11-17T11:34:25.446 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response 140;0.104517322763676;171.162357330327;_
2025-11-17T11:34:25.447 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:25.447 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:25.447 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:25.447 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:25.447 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:25.448 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:25.448 [DEBUG] [Thread-67450 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:25.448 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:25.448 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:25.448 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:25.449 [DEBUG] [Thread-67450 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:25.449 [DEBUG] [Thread-67450 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:25.449 [DEBUG] [Thread-67450 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53711)
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:25.453 [DEBUG] [Thread-67450 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:25.461 [DEBUG] [Thread-67450 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:25.461 [INFO] [Thread-67450 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.89890559, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104517322763676, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108415, telescope_az=89.993039, telescope_ra=17.7213001, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.74106, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:33:35.322144', telescope_ra_j2k=17.6951421317911, telescope_dec_j2k=-24.2430568236289, observability=1)
2025-11-17T11:34:35.464 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:35.464 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:35.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:35.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:35.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:35.465 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:35.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:35.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:35.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:35.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:35.466 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:35.467 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:35.468 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:34:35.468 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:34:35.468 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:34:35.468 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:36.117 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:34:36
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.655953645706177s
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:36.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7242835;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74404;2460996.89902914;11.57667139;1.3;_
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.7242835;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74404;2460996.89902914;11.57667139;1.3;_
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:36.118 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:36.119 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:36.119 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:36.119 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.7242835, teldec = -24.256546
2025-11-17T11:34:36.119 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7242835 -24.256546
2025-11-17T11:34:36.119 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7242835 -24.256546
2025-11-17T11:34:36.120 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7242835 -24.256546
2025-11-17T11:34:36.120 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7242835;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74404;2460996.89902917;11.57667139;1.3;_17.698125052781 -24.2431677343829
2025-11-17T11:34:36.120 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.698125052781     dec_j2k = -24.2431677343829
2025-11-17T11:34:36.121 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:36.121 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:36.121 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104518205226418;171.162341237072;_
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104518205226418;171.162341237072;_
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:36.122 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:36.123 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:36.123 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:36.123 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:36.123 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:36.124 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:36.124 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:36.124 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34127)
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:36.129 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:36.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:36.137 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89902914, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104518205226418, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108415, telescope_az=89.993039, telescope_ra=17.7242835, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.74404, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.698125052781, telescope_dec_j2k=-24.2431677343829, observability=1)
2025-11-17T11:34:36.469 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:36.469 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:36.469 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:36.469 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:36.469 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:34:36.470 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:36.471 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:36.472 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:36.472 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:36.472 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:36.472 [DEBUG] [ThreadPoolExecutor-2732_0] [payload.py] [to_registers()] [0]
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34177)
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:36.477 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:36.484 [DEBUG] [ThreadPoolExecutor-2732_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Status age = 7.375654935836792s
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:34:43.512 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:34:43.513 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:34:43.514 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 17;17.72635;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74611;2460996.89911475;11.57873222;1.3;_
2025-11-17T11:34:43.514 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response 17;17.72635;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74611;2460996.89911475;11.57873222;1.3;_
2025-11-17T11:34:43.514 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:34:43.514 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:34:43.514 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:34:43.515 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:43.515 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:34:43.515 [INFO] [Thread-67451 (handle)] [driver.py] [get_status()] Telra = 17.72635, teldec = -24.256546
2025-11-17T11:34:43.515 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] UnCookCoordinates 17.72635 -24.256546
2025-11-17T11:34:43.515 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.72635 -24.256546
2025-11-17T11:34:43.515 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.72635 -24.256546
2025-11-17T11:34:43.516 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 17;17.72635;-24.256546;50.108415;89.993039;50.08601;90.12017;14.74611;2460996.89911477;11.57873222;1.3;_17.7001912224032 -24.2432445637397
2025-11-17T11:34:43.516 [INFO] [Thread-67451 (handle)] [driver.py] [get_status()] ra_j2k = 17.7001912224032     dec_j2k = -24.2432445637397
2025-11-17T11:34:43.516 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:34:43.516 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:34:43.516 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 140;0.104519769592187;171.162362694745;_
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response 140;0.104519769592187;171.162362694745;_
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:34:43.520 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:34:43.521 [DEBUG] [Thread-67451 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:43.521 [DEBUG] [Thread-67451 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:34:43.521 [DEBUG] [Thread-67451 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36689)
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:34:43.522 [DEBUG] [Thread-67451 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:34:43.529 [DEBUG] [Thread-67451 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:34:43.529 [DEBUG] [Thread-67451 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:43.529 [DEBUG] [Thread-67451 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:34:43.530 [DEBUG] [Thread-67451 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:34:43.530 [INFO] [Thread-67451 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89911475, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104519769592187, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108415, telescope_az=89.993039, telescope_ra=17.72635, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.74611, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7001912224032, telescope_dec_j2k=-24.2432445637397, observability=1)
2025-11-17T11:35:01.485 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:01.485 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:01.485 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:01.485 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:01.485 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:01.486 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:35:01.487 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:35:01.488 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Status age = 18.05086636543274s
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:01.581 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:01.582 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:01.583 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 17;17.7313615;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75112;2460996.89932388;11.58373;1.3;_
2025-11-17T11:35:01.583 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response 17;17.7313615;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75112;2460996.89932388;11.58373;1.3;_
2025-11-17T11:35:01.583 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:01.583 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:01.583 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:01.584 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:01.584 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:01.584 [INFO] [Thread-67452 (handle)] [driver.py] [get_status()] Telra = 17.7313615, teldec = -24.256546
2025-11-17T11:35:01.584 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7313615 -24.256546
2025-11-17T11:35:01.584 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7313615 -24.256546
2025-11-17T11:35:01.584 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7313615 -24.256546
2025-11-17T11:35:01.585 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 17;17.7313615;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75112;2460996.8993239;11.58373;1.3;_17.7052019260135 -24.2434309014158
2025-11-17T11:35:01.585 [INFO] [Thread-67452 (handle)] [driver.py] [get_status()] ra_j2k = 17.7052019260135     dec_j2k = -24.2434309014158
2025-11-17T11:35:01.585 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:01.585 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:01.585 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:01.586 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 140;0.104520210823558;171.162362694745;_
2025-11-17T11:35:01.586 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response 140;0.104520210823558;171.162362694745;_
2025-11-17T11:35:01.586 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:01.586 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:01.586 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:01.587 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:01.587 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:01.588 [DEBUG] [Thread-67452 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37701)
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:01.594 [DEBUG] [Thread-67452 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:01.601 [DEBUG] [Thread-67452 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:01.601 [INFO] [Thread-67452 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89932388, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104520210823558, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993039, telescope_ra=17.7313615, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75112, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7052019260135, telescope_dec_j2k=-24.2434309014158, observability=1)
2025-11-17T11:35:03.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.844470500946045s
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:03.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:03.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:03.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7318943;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75165;2460996.89934546;11.58426139;1.3;_
2025-11-17T11:35:03.448 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.7318943;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75165;2460996.89934546;11.58426139;1.3;_
2025-11-17T11:35:03.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:03.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:03.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:03.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:03.449 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:03.449 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.7318943, teldec = -24.256546
2025-11-17T11:35:03.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7318943 -24.256546
2025-11-17T11:35:03.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7318943 -24.256546
2025-11-17T11:35:03.449 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7318943 -24.256546
2025-11-17T11:35:03.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7318943;-24.256546;50.108414;89.993039;50.08601;90.12017;14.75165;2460996.89934549;11.58426139;1.3;_17.7057346417459 -24.2434507134551
2025-11-17T11:35:03.450 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.7057346417459     dec_j2k = -24.2434507134551
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104519930039958;171.162357330327;_
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104519930039958;171.162357330327;_
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:03.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:03.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:03.454 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:03.454 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:03.455 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56623)
2025-11-17T11:35:03.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:03.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:03.456 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:03.456 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:03.456 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:03.463 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:03.463 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89934546, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104519930039958, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993039, telescope_ra=17.7318943, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7057346417459, telescope_dec_j2k=-24.2434507134551, observability=1)
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Status age = 3.6220695972442627s
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:07.085 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:07.086 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:07.087 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 17;17.7329235;-24.256546;50.108414;89.993038;50.08601;90.12017;14.75268;2460996.89938758;11.58528778;1.3;_
2025-11-17T11:35:07.087 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response 17;17.7329235;-24.256546;50.108414;89.993038;50.08601;90.12017;14.75268;2460996.89938758;11.58528778;1.3;_
2025-11-17T11:35:07.087 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:07.087 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:07.087 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:07.088 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:07.088 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:07.088 [INFO] [Thread-67453 (handle)] [driver.py] [get_status()] Telra = 17.7329235, teldec = -24.256546
2025-11-17T11:35:07.088 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7329235 -24.256546
2025-11-17T11:35:07.088 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7329235 -24.256546
2025-11-17T11:35:07.088 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7329235 -24.256546
2025-11-17T11:35:07.089 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 17;17.7329235;-24.256546;50.108414;89.993038;50.08601;90.12017;14.75268;2460996.8993876;11.58528778;1.3;_17.7067636791861 -24.2434889847989
2025-11-17T11:35:07.089 [INFO] [Thread-67453 (handle)] [driver.py] [get_status()] ra_j2k = 17.7067636791861     dec_j2k = -24.2434889847989
2025-11-17T11:35:07.089 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:07.089 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:07.089 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 140;0.104520732278814;171.162357330327;_
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response 140;0.104520732278814;171.162357330327;_
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:07.090 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:07.091 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:07.092 [DEBUG] [Thread-67453 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:07.092 [DEBUG] [Thread-67453 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:07.092 [DEBUG] [Thread-67453 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48963)
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:07.099 [DEBUG] [Thread-67453 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:07.106 [DEBUG] [Thread-67453 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:07.107 [DEBUG] [Thread-67453 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:07.107 [INFO] [Thread-67453 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89938758, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104520732278814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.7329235, telescope_dec=-24.256546, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7067636791861, telescope_dec_j2k=-24.2434889847989, observability=1)
2025-11-17T11:35:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:14.865 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.758841037750244s
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7350658;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75482;2460996.89947763;11.58742417;1.3;_
2025-11-17T11:35:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.7350658;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75482;2460996.89947763;11.58742417;1.3;_
2025-11-17T11:35:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:14.869 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.7350658, teldec = -24.256545
2025-11-17T11:35:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7350658 -24.256545
2025-11-17T11:35:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7350658 -24.256545
2025-11-17T11:35:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7350658 -24.256545
2025-11-17T11:35:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7350658;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75482;2460996.89947765;11.58742417;1.3;_17.7089056419358 -24.2435676507377
2025-11-17T11:35:14.870 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.7089056419358     dec_j2k = -24.2435676507377
2025-11-17T11:35:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:14.870 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104520331159386;171.162362694745;_
2025-11-17T11:35:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104520331159386;171.162362694745;_
2025-11-17T11:35:14.871 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:14.871 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59745)
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:14.877 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:14.884 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:14.885 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89947763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104520331159386, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.7350658, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7089056419358, telescope_dec_j2k=-24.2435676507377, observability=1)
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Status age = 4.8282835483551025s
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:19.713 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:19.714 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:19.715 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 17;17.7364284;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75618;2460996.89953374;11.58878306;1.3;_
2025-11-17T11:35:19.715 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response 17;17.7364284;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75618;2460996.89953374;11.58878306;1.3;_
2025-11-17T11:35:19.715 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:19.715 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:19.715 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:19.716 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:19.716 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:19.716 [INFO] [Thread-67454 (handle)] [driver.py] [get_status()] Telra = 17.7364284, teldec = -24.256545
2025-11-17T11:35:19.716 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7364284 -24.256545
2025-11-17T11:35:19.716 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7364284 -24.256545
2025-11-17T11:35:19.716 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7364284 -24.256545
2025-11-17T11:35:19.717 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 17;17.7364284;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75618;2460996.89953376;11.58878306;1.3;_17.7102680279513 -24.243618324186
2025-11-17T11:35:19.717 [INFO] [Thread-67454 (handle)] [driver.py] [get_status()] ra_j2k = 17.7102680279513     dec_j2k = -24.243618324186
2025-11-17T11:35:19.717 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:19.717 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:19.717 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 140;0.1045208125027;171.162362694745;_
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response 140;0.1045208125027;171.162362694745;_
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:19.718 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:19.719 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:19.720 [DEBUG] [Thread-67454 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:19.720 [DEBUG] [Thread-67454 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:19.720 [DEBUG] [Thread-67454 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55075)
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:19.723 [DEBUG] [Thread-67454 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:19.730 [DEBUG] [Thread-67454 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:19.730 [INFO] [Thread-67454 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89953374, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1045208125027, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.7364284, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75618, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7102680279513, telescope_dec_j2k=-24.243618324186, observability=1)
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.4885520935058594s
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:21.219 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.736849;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75661;2460996.89955116;11.5892025;1.3;_
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.736849;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75661;2460996.89955116;11.5892025;1.3;_
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:21.220 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:21.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:21.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:21.221 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:21.222 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.736849, teldec = -24.256545
2025-11-17T11:35:21.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.736849 -24.256545
2025-11-17T11:35:21.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.736849 -24.256545
2025-11-17T11:35:21.222 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.736849 -24.256545
2025-11-17T11:35:21.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.736849;-24.256545;50.108414;89.993038;50.08601;90.12017;14.75661;2460996.89955119;11.5892025;1.3;_17.7106885620015 -24.2436339661569
2025-11-17T11:35:21.223 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.7106885620015     dec_j2k = -24.2436339661569
2025-11-17T11:35:21.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:21.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:21.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:21.223 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104521013062414;171.162351965909;_
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104521013062414;171.162351965909;_
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:21.224 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:21.225 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:35:21.231 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53143)
2025-11-17T11:35:21.231 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:21.231 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:21.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:21.232 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:21.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:21.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:35:21.239 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89955116, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104521013062414, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.736849, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.75661, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:34:35.463940', telescope_ra_j2k=17.7106885620015, telescope_dec_j2k=-24.2436339661569, observability=1)
2025-11-17T11:35:21.239 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.122411489486694 seconds ago
2025-11-17T11:35:35.606 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:35.606 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:35.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:35.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:35.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:35.607 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:35.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:35.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:35.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:35.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:35.608 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:35:35.608 [INFO] [ThreadPoolExecutor-2733_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:35:35.608 [INFO] [ThreadPoolExecutor-2733_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:35:36.197 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:35:36
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.957865715026855s
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:36.197 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:36.198 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:36.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7410312;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76079;2460996.89972453;11.59337333;1.3;_
2025-11-17T11:35:36.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.7410312;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76079;2460996.89972453;11.59337333;1.3;_
2025-11-17T11:35:36.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:36.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:36.199 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:36.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:36.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:36.200 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.7410312, teldec = -24.256545
2025-11-17T11:35:36.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7410312 -24.256545
2025-11-17T11:35:36.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7410312 -24.256545
2025-11-17T11:35:36.200 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7410312 -24.256545
2025-11-17T11:35:36.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7410312;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76079;2460996.89972455;11.59337333;1.3;_17.7148701088499 -24.2437895100699
2025-11-17T11:35:36.201 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.7148701088499     dec_j2k = -24.2437895100699
2025-11-17T11:35:36.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:36.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:36.201 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104521654853499;171.162351965909;_
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104521654853499;171.162351965909;_
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:36.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:36.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:36.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:36.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35559)
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:36.209 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:36.216 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:36.217 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:36.217 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:36.217 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:36.217 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89972453, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104521654853499, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.7410312, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.76079, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7148701088499, telescope_dec_j2k=-24.2437895100699, observability=1)
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Status age = 1.5620274543762207s
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:37.779 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:37.780 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:37.781 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 17;17.741451;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76121;2460996.89974284;11.59379194;1.3;_
2025-11-17T11:35:37.781 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response 17;17.741451;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76121;2460996.89974284;11.59379194;1.3;_
2025-11-17T11:35:37.781 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:37.781 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:37.781 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:37.782 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:37.782 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:37.782 [INFO] [Thread-67455 (handle)] [driver.py] [get_status()] Telra = 17.741451, teldec = -24.256545
2025-11-17T11:35:37.782 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] UnCookCoordinates 17.741451 -24.256545
2025-11-17T11:35:37.782 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.741451 -24.256545
2025-11-17T11:35:37.782 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.741451 -24.256545
2025-11-17T11:35:37.783 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 17;17.741451;-24.256545;50.108414;89.993038;50.08601;90.12017;14.76121;2460996.89974286;11.59379194;1.3;_17.7152898435503 -24.2438051241554
2025-11-17T11:35:37.783 [INFO] [Thread-67455 (handle)] [driver.py] [get_status()] ra_j2k = 17.7152898435503     dec_j2k = -24.2438051241554
2025-11-17T11:35:37.783 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:37.783 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:37.783 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 140;0.104522055972927;171.162357330327;_
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response 140;0.104522055972927;171.162357330327;_
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:37.784 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:37.785 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:37.785 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:37.785 [DEBUG] [Thread-67455 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:37.786 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:37.786 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:37.786 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:37.787 [DEBUG] [Thread-67455 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:37.787 [DEBUG] [Thread-67455 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:37.787 [DEBUG] [Thread-67455 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53415)
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:37.790 [DEBUG] [Thread-67455 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:37.797 [DEBUG] [Thread-67455 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:37.797 [INFO] [Thread-67455 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89974284, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104522055972927, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108414, telescope_az=89.993038, telescope_ra=17.741451, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.76121, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7152898435503, telescope_dec_j2k=-24.2438051241554, observability=1)
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Status age = 18.04562473297119s
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:55.843 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:55.844 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:55.844 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 17;17.7464917;-24.256545;50.108413;89.993038;50.08601;90.12017;14.76625;2460996.89995191;11.59881889;1.3;_
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response 17;17.7464917;-24.256545;50.108413;89.993038;50.08601;90.12017;14.76625;2460996.89995191;11.59881889;1.3;_
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:35:55.845 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:35:55.846 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:55.846 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:35:55.846 [INFO] [Thread-67456 (handle)] [driver.py] [get_status()] Telra = 17.7464917, teldec = -24.256545
2025-11-17T11:35:55.846 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7464917 -24.256545
2025-11-17T11:35:55.846 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7464917 -24.256545
2025-11-17T11:35:55.847 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7464917 -24.256545
2025-11-17T11:35:55.847 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 17;17.7464917;-24.256545;50.108413;89.993038;50.08601;90.12017;14.76625;2460996.89995193;11.59881889;1.3;_17.7203297632118 -24.2439926216342
2025-11-17T11:35:55.847 [INFO] [Thread-67456 (handle)] [driver.py] [get_status()] ra_j2k = 17.7203297632118     dec_j2k = -24.2439926216342
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 140;0.104522256532641;171.162362694745;_
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response 140;0.104522256532641;171.162362694745;_
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:55.848 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:35:55.849 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:35:55.850 [DEBUG] [Thread-67456 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:55.850 [DEBUG] [Thread-67456 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:35:55.850 [DEBUG] [Thread-67456 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:35:55.852 [DEBUG] [Thread-67456 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51153)
2025-11-17T11:35:55.852 [DEBUG] [Thread-67456 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:35:55.852 [DEBUG] [Thread-67456 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:35:55.852 [DEBUG] [Thread-67456 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:35:55.853 [DEBUG] [Thread-67456 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:35:55.853 [DEBUG] [Thread-67456 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:35:55.860 [DEBUG] [Thread-67456 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:35:55.860 [DEBUG] [Thread-67456 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:55.860 [DEBUG] [Thread-67456 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:35:55.860 [DEBUG] [Thread-67456 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:35:55.861 [DEBUG] [Thread-67456 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:35:55.861 [DEBUG] [Thread-67456 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:35:55.861 [DEBUG] [Thread-67456 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:35:55.861 [DEBUG] [Thread-67456 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:35:55.861 [DEBUG] [Thread-67456 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:35:55.861 [INFO] [Thread-67456 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.89995191, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104522256532641, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993038, telescope_ra=17.7464917, telescope_dec=-24.256545, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.76625, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7203297632118, telescope_dec_j2k=-24.2439926216342, observability=1)
2025-11-17T11:35:56.488 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.488 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.488 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:56.488 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:56.489 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:35:56.490 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:56.491 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:56.492 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:35:56.493 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:35:56.494 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Park
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:35:56.495 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:35:56.496 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 29;17.7466599;-24.256545;50.108413;89.993038;50.08601;90.12017;14.76642;2460996.89995944;11.59898667;1.3;_Park Command Successful
2025-11-17T11:35:57.496 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:35:57.496 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:35:57.496 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:35:57.497 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:35:57.497 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:35:58.497 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:35:58.497 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:35:58.497 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:35:58.498 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:35:58.498 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:35:59.498 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:35:59.498 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:35:59.498 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:35:59.499 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:35:59.499 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:36:00.499 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:36:00.499 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:36:00.499 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:00.500 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:36:00.501 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:36:00.502 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:01.502 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:01.502 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:01.502 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:01.502 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:36:01.503 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:36:01.504 [DEBUG] [ThreadPoolExecutor-2732_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:01.504 [INFO] [ThreadPoolExecutor-2732_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:36:02.554 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:02.554 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.693681716918945s
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:02.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:02.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.748361;-24.256544;50.108413;89.993037;50.08601;90.12017;14.76812;2460996.90002958;11.60068306;1.3;_
2025-11-17T11:36:02.556 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.748361;-24.256544;50.108413;89.993037;50.08601;90.12017;14.76812;2460996.90002958;11.60068306;1.3;_
2025-11-17T11:36:02.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:02.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:02.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:02.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:02.558 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:02.558 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.748361, teldec = -24.256544
2025-11-17T11:36:02.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.748361 -24.256544
2025-11-17T11:36:02.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.748361 -24.256544
2025-11-17T11:36:02.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.748361 -24.256544
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.748361;-24.256544;50.108413;89.993037;50.08601;90.12017;14.76812;2460996.90002961;11.60068306;1.3;_17.7221987757834 -24.2440611596396
2025-11-17T11:36:02.559 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.7221987757834     dec_j2k = -24.2440611596396
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104522497204298;171.162346601491;_
2025-11-17T11:36:02.559 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104522497204298;171.162346601491;_
2025-11-17T11:36:02.560 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:02.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:02.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:02.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:02.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:02.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:02.562 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:02.562 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57725)
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:02.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:02.576 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:02.577 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90002958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104522497204298, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.748361, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.76812, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7221987757834, telescope_dec_j2k=-24.2440611596396, observability=1)
2025-11-17T11:36:07.139 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:07.139 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Status age = 4.56282639503479s
2025-11-17T11:36:07.139 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:07.139 [DEBUG] [Thread-67457 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:07.140 [DEBUG] [Thread-67457 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:07.140 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:07.140 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:07.140 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 17;17.7496423;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7694;2460996.90008265;11.60196083;1.3;_
2025-11-17T11:36:07.141 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response 17;17.7496423;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7694;2460996.90008265;11.60196083;1.3;_
2025-11-17T11:36:07.142 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:07.142 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:07.142 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:07.142 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:07.143 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:07.143 [INFO] [Thread-67457 (handle)] [driver.py] [get_status()] Telra = 17.7496423, teldec = -24.256544
2025-11-17T11:36:07.143 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7496423 -24.256544
2025-11-17T11:36:07.143 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7496423 -24.256544
2025-11-17T11:36:07.143 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7496423 -24.256544
2025-11-17T11:36:07.144 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 17;17.7496423;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7694;2460996.90008268;11.60196083;1.3;_17.7234798791795 -24.2441088258949
2025-11-17T11:36:07.144 [INFO] [Thread-67457 (handle)] [driver.py] [get_status()] ra_j2k = 17.7234798791795     dec_j2k = -24.2441088258949
2025-11-17T11:36:07.144 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:07.144 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:07.144 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 140;0.104522978547612;171.162357330327;_
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response 140;0.104522978547612;171.162357330327;_
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:07.145 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:07.146 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:07.147 [DEBUG] [Thread-67457 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:07.147 [DEBUG] [Thread-67457 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:07.147 [DEBUG] [Thread-67457 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:07.152 [DEBUG] [Thread-67457 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41403)
2025-11-17T11:36:07.152 [DEBUG] [Thread-67457 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:07.152 [DEBUG] [Thread-67457 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:07.152 [DEBUG] [Thread-67457 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:07.152 [DEBUG] [Thread-67457 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:07.153 [DEBUG] [Thread-67457 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:07.160 [DEBUG] [Thread-67457 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:07.160 [INFO] [Thread-67457 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90008265, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104522978547612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.7496423, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.7694, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7234798791795, telescope_dec_j2k=-24.2441088258949, observability=1)
2025-11-17T11:36:13.989 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Status age = 6.829505443572998s
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:13.990 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:13.991 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:13.992 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 17;17.7515589;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77131;2460996.90016194;11.60387222;1.3;_
2025-11-17T11:36:13.992 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response 17;17.7515589;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77131;2460996.90016194;11.60387222;1.3;_
2025-11-17T11:36:13.992 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:13.992 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:13.992 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:13.993 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:13.993 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:13.993 [INFO] [Thread-67458 (handle)] [driver.py] [get_status()] Telra = 17.7515589, teldec = -24.256544
2025-11-17T11:36:13.993 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7515589 -24.256544
2025-11-17T11:36:13.993 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7515589 -24.256544
2025-11-17T11:36:13.993 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7515589 -24.256544
2025-11-17T11:36:13.994 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 17;17.7515589;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77131;2460996.90016197;11.60387222;1.3;_17.7253961859273 -24.2441801291248
2025-11-17T11:36:13.994 [INFO] [Thread-67458 (handle)] [driver.py] [get_status()] ra_j2k = 17.7253961859273     dec_j2k = -24.2441801291248
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 140;0.104522938435669;171.162357330327;_
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response 140;0.104522938435669;171.162357330327;_
2025-11-17T11:36:13.995 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:13.996 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:13.997 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:13.997 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:13.997 [DEBUG] [Thread-67458 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:13.997 [DEBUG] [Thread-67458 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:13.997 [DEBUG] [Thread-67458 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:13.999 [DEBUG] [Thread-67458 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39175)
2025-11-17T11:36:13.999 [DEBUG] [Thread-67458 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:13.999 [DEBUG] [Thread-67458 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:13.999 [DEBUG] [Thread-67458 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:13.999 [DEBUG] [Thread-67458 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:14.000 [DEBUG] [Thread-67458 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:14.006 [DEBUG] [Thread-67458 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:14.006 [DEBUG] [Thread-67458 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:14.007 [DEBUG] [Thread-67458 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:14.007 [INFO] [Thread-67458 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90016194, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104522938435669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.7515589, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.77131, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7253961859273, telescope_dec_j2k=-24.2441801291248, observability=1)
2025-11-17T11:36:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8622896671295166s
2025-11-17T11:36:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8622896671295166
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.291949987411499s
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:21.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:21.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:21.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.75357;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77333;2460996.90024654;11.60587778;1.3;_
2025-11-17T11:36:21.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.75357;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77333;2460996.90024654;11.60587778;1.3;_
2025-11-17T11:36:21.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:21.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:21.301 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:21.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:21.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:21.302 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.75357, teldec = -24.256544
2025-11-17T11:36:21.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.75357 -24.256544
2025-11-17T11:36:21.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.75357 -24.256544
2025-11-17T11:36:21.302 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.75357 -24.256544
2025-11-17T11:36:21.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.75357;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77333;2460996.90024656;11.60587778;1.3;_17.7274069792893 -24.2442549517239
2025-11-17T11:36:21.303 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.7274069792893     dec_j2k = -24.2442549517239
2025-11-17T11:36:21.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:21.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:21.303 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:21.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10452337966704;171.162362694745;_
2025-11-17T11:36:21.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10452337966704;171.162362694745;_
2025-11-17T11:36:21.304 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:21.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:21.304 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:21.305 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:21.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:21.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:21.306 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47085)
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:21.310 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:21.317 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:36:21.317 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90024654, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10452337966704, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.75357, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.77333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.7274069792893, telescope_dec_j2k=-24.2442549517239, observability=1)
2025-11-17T11:36:21.317 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.120598554611206 seconds ago
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Status age = 10.730921030044556s
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:32.048 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:32.049 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 17;17.7565798;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77634;2460996.90037094;11.60887944;1.3;_
2025-11-17T11:36:32.050 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response 17;17.7565798;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77634;2460996.90037094;11.60887944;1.3;_
2025-11-17T11:36:32.050 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:32.050 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:32.050 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:32.051 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:32.051 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:32.051 [INFO] [Thread-67459 (handle)] [driver.py] [get_status()] Telra = 17.7565798, teldec = -24.256544
2025-11-17T11:36:32.051 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7565798 -24.256544
2025-11-17T11:36:32.051 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7565798 -24.256544
2025-11-17T11:36:32.051 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7565798 -24.256544
2025-11-17T11:36:32.052 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 17;17.7565798;-24.256544;50.108413;89.993037;50.08601;90.12017;14.77634;2460996.90037097;11.60887944;1.3;_17.73041632243 -24.2443669377799
2025-11-17T11:36:32.052 [INFO] [Thread-67459 (handle)] [driver.py] [get_status()] ra_j2k = 17.73041632243     dec_j2k = -24.2443669377799
2025-11-17T11:36:32.052 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:32.052 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 140;0.104523780786468;171.162357330327;_
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response 140;0.104523780786468;171.162357330327;_
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:36:32.053 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:32.054 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:32.054 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:32.054 [DEBUG] [Thread-67459 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:36:32.054 [DEBUG] [Thread-67459 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:36:32.054 [DEBUG] [Thread-67459 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35739)
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:32.060 [DEBUG] [Thread-67459 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:32.067 [DEBUG] [Thread-67459 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:32.068 [DEBUG] [Thread-67459 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:32.068 [INFO] [Thread-67459 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90037094, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104523780786468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.7565798, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.77634, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:35:35.606137', telescope_ra_j2k=17.73041632243, telescope_dec_j2k=-24.2443669377799, observability=1)
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:35.749 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:35.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:35.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:35.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:35.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:35.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:35.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:35.750 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:35.751 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:36:35.752 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:36:35.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:36.277 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:36:36
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.209775924682617s
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:36.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:36.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:36.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7577466;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7775;2460996.9004199;11.61004306;1.3;_
2025-11-17T11:36:36.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.7577466;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7775;2460996.9004199;11.61004306;1.3;_
2025-11-17T11:36:36.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:36.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:36.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:36.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:36.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:36.280 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.7577466, teldec = -24.256544
2025-11-17T11:36:36.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7577466 -24.256544
2025-11-17T11:36:36.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7577466 -24.256544
2025-11-17T11:36:36.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7577466 -24.256544
2025-11-17T11:36:36.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7577466;-24.256544;50.108413;89.993037;50.08601;90.12017;14.7775;2460996.90041992;11.61004306;1.3;_17.731582945983 -24.2444103533211
2025-11-17T11:36:36.281 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.731582945983     dec_j2k = -24.2444103533211
2025-11-17T11:36:36.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:36.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104523219219268;171.162362694745;_
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104523219219268;171.162362694745;_
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:36.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:36.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:36.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:36.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:36.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45125)
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:36.291 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:36.298 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:36.299 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:36.299 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9004199, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104523219219268, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108413, telescope_az=89.993037, telescope_ra=17.7577466, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.7775, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.731582945983, telescope_dec_j2k=-24.2444103533211, observability=1)
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:36.753 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:36:36.754 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:36.755 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:36.755 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:36.755 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:36.755 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:36.755 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:36.756 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:36.756 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:36.756 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:36.756 [DEBUG] [ThreadPoolExecutor-2734_0] [payload.py] [to_registers()] [0]
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56351)
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:36.762 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:36.769 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:36.770 [DEBUG] [ThreadPoolExecutor-2734_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Status age = 13.867631673812866s
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:36:50.166 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:36:50.167 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 17;17.7616209;-24.256544;50.108412;89.993036;50.08601;90.12017;14.78138;2460996.90058065;11.61390667;1.3;_
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response 17;17.7616209;-24.256544;50.108412;89.993036;50.08601;90.12017;14.78138;2460996.90058065;11.61390667;1.3;_
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:36:50.168 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:36:50.169 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:50.169 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:36:50.169 [INFO] [Thread-67460 (handle)] [driver.py] [get_status()] Telra = 17.7616209, teldec = -24.256544
2025-11-17T11:36:50.169 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7616209 -24.256544
2025-11-17T11:36:50.169 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7616209 -24.256544
2025-11-17T11:36:50.169 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7616209 -24.256544
2025-11-17T11:36:50.170 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 17;17.7616209;-24.256544;50.108412;89.993036;50.08601;90.12017;14.78138;2460996.90058067;11.61390667;1.3;_17.7354566627542 -24.2445545213573
2025-11-17T11:36:50.170 [INFO] [Thread-67460 (handle)] [driver.py] [get_status()] ra_j2k = 17.7354566627542     dec_j2k = -24.2445545213573
2025-11-17T11:36:50.170 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:36:50.170 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 140;0.104524061570067;171.162357330327;_
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response 140;0.104524061570067;171.162357330327;_
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:36:50.171 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:36:50.172 [DEBUG] [Thread-67460 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:50.172 [DEBUG] [Thread-67460 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:36:50.172 [DEBUG] [Thread-67460 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44819)
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:36:50.179 [DEBUG] [Thread-67460 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:36:50.186 [DEBUG] [Thread-67460 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:36:50.186 [INFO] [Thread-67460 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90058065, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524061570067, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7616209, telescope_dec=-24.256544, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.78138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7354566627542, telescope_dec_j2k=-24.2445545213573, observability=1)
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.477359533309937s
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:01.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:01.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:01.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7648235;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78458;2460996.90071373;11.61710056;1.3;_
2025-11-17T11:37:01.666 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.7648235;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78458;2460996.90071373;11.61710056;1.3;_
2025-11-17T11:37:01.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:01.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:01.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:01.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:01.667 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:01.667 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.7648235, teldec = -24.256543
2025-11-17T11:37:01.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7648235 -24.256543
2025-11-17T11:37:01.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7648235 -24.256543
2025-11-17T11:37:01.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7648235 -24.256543
2025-11-17T11:37:01.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7648235;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78458;2460996.90071375;11.61710056;1.3;_17.7386587839213 -24.2446727048651
2025-11-17T11:37:01.669 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.7386587839213     dec_j2k = -24.2446727048651
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104524342353667;171.162351965909;_
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104524342353667;171.162351965909;_
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:01.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:01.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:01.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:01.672 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:01.672 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:01.672 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45237)
2025-11-17T11:37:01.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:01.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:01.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:01.673 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:01.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:01.680 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:01.680 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90071373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524342353667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7648235, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.78458, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7386587839213, telescope_dec_j2k=-24.2446727048651, observability=1)
2025-11-17T11:37:01.770 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:01.770 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:01.770 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:01.770 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:01.770 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:01.771 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:37:01.772 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:37:01.773 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Status age = 5.508404970169067s
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:07.189 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:07.190 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 17;17.7663638;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78612;2460996.90077766;11.61863667;1.3;_
2025-11-17T11:37:07.191 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response 17;17.7663638;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78612;2460996.90077766;11.61863667;1.3;_
2025-11-17T11:37:07.191 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:07.191 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:07.191 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:07.192 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:07.192 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:07.192 [INFO] [Thread-67461 (handle)] [driver.py] [get_status()] Telra = 17.7663638, teldec = -24.256543
2025-11-17T11:37:07.192 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7663638 -24.256543
2025-11-17T11:37:07.192 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7663638 -24.256543
2025-11-17T11:37:07.192 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7663638 -24.256543
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 17;17.7663638;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78612;2460996.9007777;11.61863667;1.3;_17.7401988545226 -24.2447300297935
2025-11-17T11:37:07.193 [INFO] [Thread-67461 (handle)] [driver.py] [get_status()] ra_j2k = 17.7401988545226     dec_j2k = -24.2447300297935
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 140;0.104524262129781;171.162351965909;_
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response 140;0.104524262129781;171.162351965909;_
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:07.193 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:07.194 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:07.195 [DEBUG] [Thread-67461 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:07.195 [DEBUG] [Thread-67461 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:07.195 [DEBUG] [Thread-67461 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58861)
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:07.198 [DEBUG] [Thread-67461 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:07.205 [DEBUG] [Thread-67461 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:07.205 [DEBUG] [Thread-67461 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:07.205 [DEBUG] [Thread-67461 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:07.205 [DEBUG] [Thread-67461 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:07.205 [DEBUG] [Thread-67461 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:07.206 [DEBUG] [Thread-67461 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:07.206 [DEBUG] [Thread-67461 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:07.206 [DEBUG] [Thread-67461 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:07.206 [DEBUG] [Thread-67461 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:07.206 [INFO] [Thread-67461 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90077766, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524262129781, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7663638, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.78612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7401988545226, telescope_dec_j2k=-24.2447300297935, observability=1)
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Status age = 1.0405001640319824s
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:08.246 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:08.247 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 17;17.766663;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78642;2460996.90078991;11.618935;1.3;_
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response 17;17.766663;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78642;2460996.90078991;11.618935;1.3;_
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:08.248 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:08.249 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:08.249 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:08.249 [INFO] [Thread-67462 (handle)] [driver.py] [get_status()] Telra = 17.766663, teldec = -24.256543
2025-11-17T11:37:08.249 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] UnCookCoordinates 17.766663 -24.256543
2025-11-17T11:37:08.249 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.766663 -24.256543
2025-11-17T11:37:08.249 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.766663 -24.256543
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 17;17.766663;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78642;2460996.90078993;11.618935;1.3;_17.7404980100373 -24.2447411652858
2025-11-17T11:37:08.250 [INFO] [Thread-67462 (handle)] [driver.py] [get_status()] ra_j2k = 17.7404980100373     dec_j2k = -24.2447411652858
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 140;0.104524342353667;171.162346601491;_
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response 140;0.104524342353667;171.162346601491;_
2025-11-17T11:37:08.250 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:08.251 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:08.251 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:08.251 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:08.252 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:08.253 [DEBUG] [Thread-67462 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:08.253 [DEBUG] [Thread-67462 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:08.253 [DEBUG] [Thread-67462 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38653)
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:08.255 [DEBUG] [Thread-67462 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:08.262 [DEBUG] [Thread-67462 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:08.262 [DEBUG] [Thread-67462 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:08.263 [DEBUG] [Thread-67462 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:08.263 [INFO] [Thread-67462 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90078991, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524342353667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.766663, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.78642, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7404980100373, telescope_dec_j2k=-24.2447411652858, observability=1)
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.609347343444824s
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7685019;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78826;2460996.90086659;11.62076889;1.3;_
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.7685019;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78826;2460996.90086659;11.62076889;1.3;_
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:14.874 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.7685019, teldec = -24.256543
2025-11-17T11:37:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7685019 -24.256543
2025-11-17T11:37:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7685019 -24.256543
2025-11-17T11:37:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7685019 -24.256543
2025-11-17T11:37:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.7685019;-24.256543;50.108412;89.993036;50.08601;90.12017;14.78826;2460996.90086662;11.62076889;1.3;_17.7423366371622 -24.2448096064042
2025-11-17T11:37:14.876 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.7423366371622     dec_j2k = -24.2448096064042
2025-11-17T11:37:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104524623137267;171.162357330327;_
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104524623137267;171.162357330327;_
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44925)
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:14.891 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:14.891 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:14.892 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:14.892 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90086659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524623137267, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7685019, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.78826, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7423366371622, telescope_dec_j2k=-24.2448096064042, observability=1)
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.485869646072388s
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:21.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:21.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:21.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7703171;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79007;2460996.9009419;11.62257917;1.3;_
2025-11-17T11:37:21.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.7703171;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79007;2460996.9009419;11.62257917;1.3;_
2025-11-17T11:37:21.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:21.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:21.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:21.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:21.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:21.381 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.7703171, teldec = -24.256543
2025-11-17T11:37:21.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.7703171 -24.256543
2025-11-17T11:37:21.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.7703171 -24.256543
2025-11-17T11:37:21.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7703171 -24.256543
2025-11-17T11:37:21.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.7703171;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79007;2460996.90094192;11.62257917;1.3;_17.7441515687058 -24.2448771683975
2025-11-17T11:37:21.382 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.7441515687058     dec_j2k = -24.2448771683975
2025-11-17T11:37:21.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:21.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:21.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104524502801438;171.162373423581;_
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104524502801438;171.162373423581;_
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:21.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:21.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:21.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:21.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:21.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:21.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40781)
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:21.388 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:21.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:37:21.396 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9009419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524502801438, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7703171, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.79007, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7441515687058, telescope_dec_j2k=-24.2448771683975, observability=1)
2025-11-17T11:37:21.396 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.118955850601196 seconds ago
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Status age = 4.915835618972778s
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:26.312 [DEBUG] [Thread-67463 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:26.313 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:26.313 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:26.313 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:26.313 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:26.314 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 17;17.7716828;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79144;2460996.90099899;11.62394111;1.3;_
2025-11-17T11:37:26.314 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response 17;17.7716828;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79144;2460996.90099899;11.62394111;1.3;_
2025-11-17T11:37:26.314 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:26.314 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:26.314 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:26.315 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:26.315 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:26.315 [INFO] [Thread-67463 (handle)] [driver.py] [get_status()] Telra = 17.7716828, teldec = -24.256543
2025-11-17T11:37:26.315 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7716828 -24.256543
2025-11-17T11:37:26.315 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7716828 -24.256543
2025-11-17T11:37:26.315 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7716828 -24.256543
2025-11-17T11:37:26.316 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 17;17.7716828;-24.256543;50.108412;89.993036;50.08601;90.12017;14.79144;2460996.90099903;11.62394111;1.3;_17.7455170673182 -24.2449280018642
2025-11-17T11:37:26.316 [INFO] [Thread-67463 (handle)] [driver.py] [get_status()] ra_j2k = 17.7455170673182     dec_j2k = -24.2449280018642
2025-11-17T11:37:26.316 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:26.316 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:26.316 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 140;0.104524863808923;171.162351965909;_
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response 140;0.104524863808923;171.162351965909;_
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:26.317 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:26.318 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:26.319 [DEBUG] [Thread-67463 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:37:26.319 [DEBUG] [Thread-67463 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:37:26.319 [DEBUG] [Thread-67463 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53477)
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:26.324 [DEBUG] [Thread-67463 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:26.331 [DEBUG] [Thread-67463 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:26.331 [INFO] [Thread-67463 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90099899, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104524863808923, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108412, telescope_az=89.993036, telescope_ra=17.7716828, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.79144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:36:35.748490', telescope_ra_j2k=17.7455170673182, telescope_dec_j2k=-24.2449280018642, observability=1)
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:35.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:35.892 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:35.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:35.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:35.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:35.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:35.893 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:37:35.893 [INFO] [ThreadPoolExecutor-2735_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:37:35.893 [INFO] [ThreadPoolExecutor-2735_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:37:36.359 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:37:36
2025-11-17T11:37:36.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:36.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.028137922286987s
2025-11-17T11:37:36.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:36.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:36.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.774498;-24.256543;50.108411;89.993036;50.08601;90.12017;14.79425;2460996.90111529;11.62674861;1.3;_
2025-11-17T11:37:36.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.774498;-24.256543;50.108411;89.993036;50.08601;90.12017;14.79425;2460996.90111529;11.62674861;1.3;_
2025-11-17T11:37:36.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:36.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:36.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:36.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:36.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:36.362 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.774498, teldec = -24.256543
2025-11-17T11:37:36.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.774498 -24.256543
2025-11-17T11:37:36.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.774498 -24.256543
2025-11-17T11:37:36.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.774498 -24.256543
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.774498;-24.256543;50.108411;89.993036;50.08601;90.12017;14.79425;2460996.90111531;11.62674861;1.3;_17.7483318537864 -24.2450327931493
2025-11-17T11:37:36.364 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.7483318537864     dec_j2k = -24.2450327931493
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104525505600008;171.162357330327;_
2025-11-17T11:37:36.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104525505600008;171.162357330327;_
2025-11-17T11:37:36.365 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:36.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:36.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:36.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:36.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:36.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:36.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:36.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:36.368 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55041)
2025-11-17T11:37:36.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:36.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:36.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:36.369 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:36.369 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:36.376 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:36.376 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90111529, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104525505600008, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993036, telescope_ra=17.774498, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.79425, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.7483318537864, telescope_dec_j2k=-24.2450327931493, observability=1)
2025-11-17T11:37:44.417 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:37:44.417 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Status age = 8.04124402999878s
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 17;17.7767238;-24.256543;50.108411;89.993035;50.08601;90.12017;14.79648;2460996.90120854;11.62896833;1.3;_
2025-11-17T11:37:44.418 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response 17;17.7767238;-24.256543;50.108411;89.993035;50.08601;90.12017;14.79648;2460996.90120854;11.62896833;1.3;_
2025-11-17T11:37:44.419 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:37:44.419 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:37:44.419 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:37:44.420 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:44.420 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:37:44.420 [INFO] [Thread-67464 (handle)] [driver.py] [get_status()] Telra = 17.7767238, teldec = -24.256543
2025-11-17T11:37:44.420 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7767238 -24.256543
2025-11-17T11:37:44.420 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7767238 -24.256543
2025-11-17T11:37:44.420 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7767238 -24.256543
2025-11-17T11:37:44.421 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 17;17.7767238;-24.256543;50.108411;89.993035;50.08601;90.12017;14.79648;2460996.90120858;11.62896833;1.3;_17.750557328359 -24.245115649882
2025-11-17T11:37:44.421 [INFO] [Thread-67464 (handle)] [driver.py] [get_status()] ra_j2k = 17.750557328359     dec_j2k = -24.245115649882
2025-11-17T11:37:44.421 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:37:44.421 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:37:44.421 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 140;0.104525746271665;171.162357330327;_
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response 140;0.104525746271665;171.162357330327;_
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:44.422 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:37:44.423 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:37:44.424 [DEBUG] [Thread-67464 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:44.424 [DEBUG] [Thread-67464 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:37:44.424 [DEBUG] [Thread-67464 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51369)
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:37:44.426 [DEBUG] [Thread-67464 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:37:44.433 [DEBUG] [Thread-67464 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:37:44.433 [DEBUG] [Thread-67464 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:44.433 [DEBUG] [Thread-67464 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:37:44.434 [DEBUG] [Thread-67464 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:37:44.434 [INFO] [Thread-67464 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90120854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104525746271665, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.7767238, telescope_dec=-24.256543, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.79648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.750557328359, telescope_dec_j2k=-24.245115649882, observability=1)
2025-11-17T11:37:56.773 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.773 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.773 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:56.773 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:56.773 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:37:56.774 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:56.775 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:56.776 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:37:56.777 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:37:56.778 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Park
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:37:56.779 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:37:56.780 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 29;17.7801757;-24.256542;50.108411;89.993035;50.08601;90.12017;14.79993;2460996.90135162;11.63241083;1.3;_Park Command Successful
2025-11-17T11:37:57.780 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:37:57.781 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:37:57.781 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:37:57.782 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:37:57.782 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:37:58.782 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:37:58.782 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:37:58.782 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:37:58.783 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:37:58.783 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:37:59.783 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:37:59.783 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:37:59.783 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:37:59.784 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:37:59.784 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_TrackingOffAccepted
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.336389780044556s
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:00.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:00.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:00.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7812969;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80105;2460996.90139782;11.63352889;1.3;_
2025-11-17T11:38:00.772 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.7812969;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80105;2460996.90139782;11.63352889;1.3;_
2025-11-17T11:38:00.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:00.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:00.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:00.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:00.773 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:00.773 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.7812969, teldec = -24.256542
2025-11-17T11:38:00.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7812969 -24.256542
2025-11-17T11:38:00.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7812969 -24.256542
2025-11-17T11:38:00.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7812969 -24.256542
2025-11-17T11:38:00.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.7812969;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80105;2460996.90139785;11.63352889;1.3;_17.755129764168 -24.2452848998012
2025-11-17T11:38:00.774 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.755129764168     dec_j2k = -24.2452848998012
2025-11-17T11:38:00.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:00.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:00.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104525946831379;171.162362694745;_
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104525946831379;171.162362694745;_
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:00.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:00.777 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40595)
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:00.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:00.784 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:38:00.784 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:38:00.784 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:00.785 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:38:00.786 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:38:00.787 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:00.788 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:00.788 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90139782, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104525946831379, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.7812969, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.80105, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.755129764168, telescope_dec_j2k=-24.2452848998012, observability=1)
2025-11-17T11:38:01.787 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:01.787 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:01.787 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:01.787 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:01.787 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:01.788 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:01.788 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:01.788 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:01.788 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:01.788 [DEBUG] [ThreadPoolExecutor-2734_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:01.789 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:38:01.789 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:38:01.789 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:38:01.789 [DEBUG] [ThreadPoolExecutor-2734_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:01.789 [INFO] [ThreadPoolExecutor-2734_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Status age = 1.7060444355010986s
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:02.494 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:02.495 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:02.495 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:02.496 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:02.497 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 17;17.7817637;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80152;2460996.90141779;11.63399444;1.3;_
2025-11-17T11:38:02.497 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response 17;17.7817637;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80152;2460996.90141779;11.63399444;1.3;_
2025-11-17T11:38:02.497 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:02.497 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:02.497 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:02.498 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:02.498 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:02.498 [INFO] [Thread-67465 (handle)] [driver.py] [get_status()] Telra = 17.7817637, teldec = -24.256542
2025-11-17T11:38:02.498 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7817637 -24.256542
2025-11-17T11:38:02.498 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7817637 -24.256542
2025-11-17T11:38:02.498 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7817637 -24.256542
2025-11-17T11:38:02.499 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 17;17.7817637;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80152;2460996.90141781;11.63399444;1.3;_17.7555964966703 -24.2453022790997
2025-11-17T11:38:02.499 [INFO] [Thread-67465 (handle)] [driver.py] [get_status()] ra_j2k = 17.7555964966703     dec_j2k = -24.2453022790997
2025-11-17T11:38:02.499 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:02.499 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:02.499 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 140;0.104526187503036;171.162351965909;_
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response 140;0.104526187503036;171.162351965909;_
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:02.500 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:02.501 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:02.502 [DEBUG] [Thread-67465 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:02.502 [DEBUG] [Thread-67465 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:02.502 [DEBUG] [Thread-67465 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40817)
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:02.508 [DEBUG] [Thread-67465 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:02.515 [DEBUG] [Thread-67465 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:02.515 [INFO] [Thread-67465 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90141779, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104526187503036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.7817637, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.80152, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.7555964966703, telescope_dec_j2k=-24.2453022790997, observability=1)
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Status age = 4.7236433029174805s
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:07.239 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:07.240 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:07.240 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:07.240 [DEBUG] [Thread-67466 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:07.240 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:07.241 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:07.241 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:07.241 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:07.241 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 17;17.7830801;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80284;2460996.9014727;11.63530722;1.3;_
2025-11-17T11:38:07.242 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response 17;17.7830801;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80284;2460996.9014727;11.63530722;1.3;_
2025-11-17T11:38:07.242 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:07.242 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:07.242 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:07.243 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:07.243 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:07.243 [INFO] [Thread-67466 (handle)] [driver.py] [get_status()] Telra = 17.7830801, teldec = -24.256542
2025-11-17T11:38:07.243 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7830801 -24.256542
2025-11-17T11:38:07.243 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7830801 -24.256542
2025-11-17T11:38:07.243 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7830801 -24.256542
2025-11-17T11:38:07.244 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 17;17.7830801;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80284;2460996.90147273;11.63530722;1.3;_17.7569127066426 -24.2453512906198
2025-11-17T11:38:07.244 [INFO] [Thread-67466 (handle)] [driver.py] [get_status()] ra_j2k = 17.7569127066426     dec_j2k = -24.2453512906198
2025-11-17T11:38:07.244 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:07.244 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:07.244 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 140;0.104526789182178;171.162357330327;_
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response 140;0.104526789182178;171.162357330327;_
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:07.245 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:07.246 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:07.247 [DEBUG] [Thread-67466 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:07.247 [DEBUG] [Thread-67466 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:07.247 [DEBUG] [Thread-67466 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40117)
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:07.250 [DEBUG] [Thread-67466 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:07.257 [DEBUG] [Thread-67466 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:07.257 [INFO] [Thread-67466 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9014727, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104526789182178, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.7830801, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.80284, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.7569127066426, telescope_dec_j2k=-24.2453512906198, observability=1)
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.634756326675415s
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.785219;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80497;2460996.90156127;11.63744028;1.3;_
2025-11-17T11:38:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.785219;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80497;2460996.90156127;11.63744028;1.3;_
2025-11-17T11:38:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.785219, teldec = -24.256542
2025-11-17T11:38:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.785219 -24.256542
2025-11-17T11:38:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.785219 -24.256542
2025-11-17T11:38:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.785219 -24.256542
2025-11-17T11:38:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.785219;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80497;2460996.9015613;11.63744028;1.3;_17.7590512988892 -24.2454309281829
2025-11-17T11:38:14.896 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.7590512988892     dec_j2k = -24.2454309281829
2025-11-17T11:38:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104526789182178;171.162351965909;_
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104526789182178;171.162351965909;_
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:14.901 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51259)
2025-11-17T11:38:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:14.902 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:14.909 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:14.909 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90156127, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104526789182178, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.785219, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.80497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.7590512988892, telescope_dec_j2k=-24.2454309281829, observability=1)
2025-11-17T11:38:20.564 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:20.564 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Status age = 5.655246734619141s
2025-11-17T11:38:20.564 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:20.565 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:20.566 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 17;17.7867877;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80657;2460996.90162692;11.63903278;1.3;_
2025-11-17T11:38:20.566 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response 17;17.7867877;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80657;2460996.90162692;11.63903278;1.3;_
2025-11-17T11:38:20.566 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:20.566 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:20.566 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:20.567 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:20.567 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:20.567 [INFO] [Thread-67467 (handle)] [driver.py] [get_status()] Telra = 17.7867877, teldec = -24.256542
2025-11-17T11:38:20.567 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7867877 -24.256542
2025-11-17T11:38:20.567 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7867877 -24.256542
2025-11-17T11:38:20.568 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7867877 -24.256542
2025-11-17T11:38:20.568 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 17;17.7868158;-24.256542;50.108411;89.993035;50.08601;90.12017;14.80657;2460996.90162694;11.63903278;1.3;_17.7606197739697 -24.2454893379834
2025-11-17T11:38:20.568 [INFO] [Thread-67467 (handle)] [driver.py] [get_status()] ra_j2k = 17.7606197739697     dec_j2k = -24.2454893379834
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 140;0.104527430973263;171.162346601491;_
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response 140;0.104527430973263;171.162346601491;_
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:20.569 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:20.570 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:20.570 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:20.570 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:20.570 [DEBUG] [Thread-67467 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:38:20.570 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:20.571 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:20.571 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:20.571 [DEBUG] [Thread-67467 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:20.571 [DEBUG] [Thread-67467 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:20.571 [DEBUG] [Thread-67467 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:38:20.578 [DEBUG] [Thread-67467 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52043)
2025-11-17T11:38:20.579 [DEBUG] [Thread-67467 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:20.579 [DEBUG] [Thread-67467 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:20.579 [DEBUG] [Thread-67467 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:20.579 [DEBUG] [Thread-67467 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:20.579 [DEBUG] [Thread-67467 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:20.586 [DEBUG] [Thread-67467 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:20.586 [INFO] [Thread-67467 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90162692, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104527430973263, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108411, telescope_az=89.993035, telescope_ra=17.7867877, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.80657, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:37:35.890452', telescope_ra_j2k=17.7606197739697, telescope_dec_j2k=-24.2454893379834, observability=1)
2025-11-17T11:38:21.456 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:38:21.456 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.8700075149536133s
2025-11-17T11:38:21.456 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.8700075149536133
2025-11-17T11:38:21.456 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09689235687256 seconds ago
2025-11-17T11:38:36.033 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:36.034 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:36.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:36.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:36.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:36.035 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:36.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:36.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:36.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:36.037 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:38:36.037 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:36.037 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:36.037 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:36.037 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:38:36.038 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:38:36.039 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:36.437 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:38:36
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.850922107696533s
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:36.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:36.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:36.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7912137;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81097;2460996.90181064;11.64341861;1.3;_
2025-11-17T11:38:36.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.7912137;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81097;2460996.90181064;11.64341861;1.3;_
2025-11-17T11:38:36.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:36.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:36.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:36.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:36.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:36.440 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.7912137, teldec = -24.256542
2025-11-17T11:38:36.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7912137 -24.256542
2025-11-17T11:38:36.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7912137 -24.256542
2025-11-17T11:38:36.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7912137 -24.256542
2025-11-17T11:38:36.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.7912137;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81097;2460996.90181066;11.64341861;1.3;_17.7650451429821 -24.2456541491578
2025-11-17T11:38:36.441 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.7650451429821     dec_j2k = -24.2456541491578
2025-11-17T11:38:36.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:36.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:36.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104528915115147;171.162346601491;_
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104528915115147;171.162346601491;_
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:36.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:36.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:36.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:36.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:36.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54829)
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:36.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:36.453 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:36.454 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90181064, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104528915115147, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.7912137, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.81097, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7650451429821, telescope_dec_j2k=-24.2456541491578, observability=1)
2025-11-17T11:38:37.039 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:37.039 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:37.039 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:37.039 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:37.039 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:37.040 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:37.040 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:37.040 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:37.040 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:37.041 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:37.041 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:38:37.041 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:38:37.041 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:38:37.041 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:37.042 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:37.042 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:37.042 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:37.042 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:37.042 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:37.043 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:37.043 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:37.043 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:37.043 [DEBUG] [ThreadPoolExecutor-2736_0] [payload.py] [to_registers()] [0]
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39733)
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:37.047 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:37.054 [DEBUG] [ThreadPoolExecutor-2736_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Status age = 2.2652525901794434s
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:38.719 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:38.720 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:38.721 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 17;17.791858;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81161;2460996.90183705;11.64406111;1.3;_
2025-11-17T11:38:38.721 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response 17;17.791858;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81161;2460996.90183705;11.64406111;1.3;_
2025-11-17T11:38:38.721 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:38.721 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:38.721 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:38.722 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:38.722 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:38.722 [INFO] [Thread-67468 (handle)] [driver.py] [get_status()] Telra = 17.791858, teldec = -24.256542
2025-11-17T11:38:38.722 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] UnCookCoordinates 17.791858 -24.256542
2025-11-17T11:38:38.722 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.791858 -24.256542
2025-11-17T11:38:38.722 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.791858 -24.256542
2025-11-17T11:38:38.723 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 17;17.791858;-24.256542;50.10841;89.993034;50.08601;90.12017;14.81161;2460996.90183707;11.64406111;1.3;_17.7656893515728 -24.2456781423531
2025-11-17T11:38:38.723 [INFO] [Thread-67468 (handle)] [driver.py] [get_status()] ra_j2k = 17.7656893515728     dec_j2k = -24.2456781423531
2025-11-17T11:38:38.723 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:38.723 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:38.723 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 140;0.10452939645846;171.162368059163;_
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response 140;0.10452939645846;171.162368059163;_
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:38.724 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:38.725 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:38.726 [DEBUG] [Thread-67468 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:38.726 [DEBUG] [Thread-67468 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:38:38.726 [DEBUG] [Thread-67468 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60767)
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:38.730 [DEBUG] [Thread-67468 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:38.737 [DEBUG] [Thread-67468 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:38.737 [INFO] [Thread-67468 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90183705, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10452939645846, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.791858, telescope_dec=-24.256542, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.81161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7656893515728, telescope_dec_j2k=-24.2456781423531, observability=1)
2025-11-17T11:38:56.786 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Status age = 18.049282789230347s
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:56.787 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:56.788 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:56.789 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 17;17.7968998;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81666;2460996.90204617;11.64908917;1.3;_
2025-11-17T11:38:56.789 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response 17;17.7968998;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81666;2460996.90204617;11.64908917;1.3;_
2025-11-17T11:38:56.789 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:56.789 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:56.790 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:56.790 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:56.790 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:56.791 [INFO] [Thread-67469 (handle)] [driver.py] [get_status()] Telra = 17.7968998, teldec = -24.256541
2025-11-17T11:38:56.791 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7968998 -24.256541
2025-11-17T11:38:56.791 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7968998 -24.256541
2025-11-17T11:38:56.791 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7968998 -24.256541
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 17;17.7968998;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81666;2460996.90204619;11.64908917;1.3;_17.7707304403739 -24.2458649066993
2025-11-17T11:38:56.792 [INFO] [Thread-67469 (handle)] [driver.py] [get_status()] ra_j2k = 17.7707304403739     dec_j2k = -24.2458649066993
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 140;0.104529837689831;171.162362694745;_
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response 140;0.104529837689831;171.162362694745;_
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:56.792 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:56.793 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:56.794 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:56.794 [DEBUG] [Thread-67469 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:56.794 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:56.794 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:56.794 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:56.795 [DEBUG] [Thread-67469 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:56.795 [DEBUG] [Thread-67469 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:56.795 [DEBUG] [Thread-67469 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46379)
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:56.800 [DEBUG] [Thread-67469 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:56.807 [DEBUG] [Thread-67469 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:56.808 [DEBUG] [Thread-67469 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:56.808 [INFO] [Thread-67469 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90204617, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104529837689831, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.7968998, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.81666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7707304403739, telescope_dec_j2k=-24.2458649066993, observability=1)
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.0748445987701416s
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:38:59.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:38:59.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:38:59.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.797758;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81751;2460996.902082;11.649945;1.3;_
2025-11-17T11:38:59.885 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.797758;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81751;2460996.902082;11.649945;1.3;_
2025-11-17T11:38:59.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:38:59.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:38:59.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:38:59.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:59.886 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:38:59.887 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.797758, teldec = -24.256541
2025-11-17T11:38:59.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.797758 -24.256541
2025-11-17T11:38:59.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.797758 -24.256541
2025-11-17T11:38:59.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.797758 -24.256541
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.797758;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81751;2460996.90208203;11.649945;1.3;_17.7715885199711 -24.245896869451
2025-11-17T11:38:59.888 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.7715885199711     dec_j2k = -24.245896869451
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104530439368973;171.162357330327;_
2025-11-17T11:38:59.888 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104530439368973;171.162357330327;_
2025-11-17T11:38:59.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:38:59.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:59.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:59.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:38:59.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36047)
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:38:59.891 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:38:59.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:38:59.899 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:38:59.900 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:38:59.900 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.902082, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104530439368973, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.797758, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.81751, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7715885199711, telescope_dec_j2k=-24.245896869451, observability=1)
2025-11-17T11:39:02.054 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:02.054 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:02.054 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:02.055 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:02.055 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:02.056 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:39:02.057 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:39:02.058 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Status age = 7.386053085327148s
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:07.286 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:07.287 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:07.288 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 17;17.7998225;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81958;2460996.90216769;11.65200389;1.3;_
2025-11-17T11:39:07.288 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response 17;17.7998225;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81958;2460996.90216769;11.65200389;1.3;_
2025-11-17T11:39:07.288 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:07.288 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:07.288 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:07.289 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:07.289 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:07.289 [INFO] [Thread-67470 (handle)] [driver.py] [get_status()] Telra = 17.7998225, teldec = -24.256541
2025-11-17T11:39:07.289 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] UnCookCoordinates 17.7998225 -24.256541
2025-11-17T11:39:07.289 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.7998225 -24.256541
2025-11-17T11:39:07.289 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.7998225 -24.256541
2025-11-17T11:39:07.290 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 17;17.7998225;-24.256541;50.10841;89.993034;50.08601;90.12017;14.81958;2460996.90216771;11.65200389;1.3;_17.7736527311494 -24.2459737620294
2025-11-17T11:39:07.290 [INFO] [Thread-67470 (handle)] [driver.py] [get_status()] ra_j2k = 17.7736527311494     dec_j2k = -24.2459737620294
2025-11-17T11:39:07.290 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:07.290 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 140;0.104531321831715;171.162378787999;_
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response 140;0.104531321831715;171.162378787999;_
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:07.291 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:07.292 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:07.292 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:07.292 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:07.293 [DEBUG] [Thread-67470 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:07.293 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:07.293 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:07.293 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:07.294 [DEBUG] [Thread-67470 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:07.294 [DEBUG] [Thread-67470 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:07.294 [DEBUG] [Thread-67470 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43079)
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:07.298 [DEBUG] [Thread-67470 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:07.305 [DEBUG] [Thread-67470 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:07.305 [INFO] [Thread-67470 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90216769, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104531321831715, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162378787999, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.7998225, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.81958, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7736527311494, telescope_dec_j2k=-24.2459737620294, observability=1)
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Status age = 7.543853521347046s
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:14.849 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:14.850 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:14.851 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 17;17.801916;-24.256541;50.10841;89.993034;50.08601;90.12017;14.82167;2460996.90225522;11.65409167;1.3;_
2025-11-17T11:39:14.851 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response 17;17.801916;-24.256541;50.10841;89.993034;50.08601;90.12017;14.82167;2460996.90225522;11.65409167;1.3;_
2025-11-17T11:39:14.851 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:14.851 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:14.851 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:14.852 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:14.852 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:14.852 [INFO] [Thread-67471 (handle)] [driver.py] [get_status()] Telra = 17.801916, teldec = -24.256541
2025-11-17T11:39:14.852 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] UnCookCoordinates 17.801916 -24.256541
2025-11-17T11:39:14.852 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.801916 -24.256541
2025-11-17T11:39:14.853 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.801916 -24.256541
2025-11-17T11:39:14.853 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 17;17.801916;-24.256541;50.10841;89.993034;50.08601;90.12017;14.82167;2460996.90225524;11.65409167;1.3;_17.7757459394556 -24.2460517382449
2025-11-17T11:39:14.853 [INFO] [Thread-67471 (handle)] [driver.py] [get_status()] ra_j2k = 17.7757459394556     dec_j2k = -24.2460517382449
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 140;0.104531161383944;171.162368059163;_
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response 140;0.104531161383944;171.162368059163;_
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:14.854 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:14.855 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:14.856 [DEBUG] [Thread-67471 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:14.856 [DEBUG] [Thread-67471 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:14.856 [DEBUG] [Thread-67471 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38967)
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:14.860 [DEBUG] [Thread-67471 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:14.867 [DEBUG] [Thread-67471 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:14.868 [DEBUG] [Thread-67471 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:14.868 [DEBUG] [Thread-67471 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:14.868 [INFO] [Thread-67471 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90225522, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104531161383944, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10841, telescope_az=89.993034, telescope_ra=17.801916, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.82167, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7757459394556, telescope_dec_j2k=-24.2460517382449, observability=1)
2025-11-17T11:39:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.0007948875427246094s
2025-11-17T11:39:14.869 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.0007948875427246094
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.648521423339844s
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:21.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:21.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:21.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8037833;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82354;2460996.90233238;11.65595389;1.3;_
2025-11-17T11:39:21.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.8037833;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82354;2460996.90233238;11.65595389;1.3;_
2025-11-17T11:39:21.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:21.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:21.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:21.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:21.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:21.519 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.8037833, teldec = -24.256541
2025-11-17T11:39:21.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.8037833 -24.256541
2025-11-17T11:39:21.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.8037833 -24.256541
2025-11-17T11:39:21.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8037833 -24.256541
2025-11-17T11:39:21.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8037833;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82354;2460996.90233241;11.65595389;1.3;_17.7776129802859 -24.2461212922087
2025-11-17T11:39:21.520 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.7776129802859     dec_j2k = -24.2461212922087
2025-11-17T11:39:21.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:21.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:21.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104531442167543;171.162357330327;_
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104531442167543;171.162357330327;_
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:21.521 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:21.522 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:21.523 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:21.526 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39693)
2025-11-17T11:39:21.526 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:21.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:21.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:21.527 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:21.527 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:21.534 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:39:21.534 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90233238, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104531442167543, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8037833, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.82354, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7776129802859, telescope_dec_j2k=-24.2461212922087, observability=1)
2025-11-17T11:39:21.534 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09732270240784 seconds ago
2025-11-17T11:39:32.994 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:32.994 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Status age = 11.460381269454956s
2025-11-17T11:39:32.994 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:32.995 [DEBUG] [Thread-67472 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 17;17.8069849;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82674;2460996.90246523;11.65914667;1.3;_
2025-11-17T11:39:32.996 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response 17;17.8069849;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82674;2460996.90246523;11.65914667;1.3;_
2025-11-17T11:39:32.997 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:32.997 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:32.997 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:32.998 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:32.998 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:32.998 [INFO] [Thread-67472 (handle)] [driver.py] [get_status()] Telra = 17.8069849, teldec = -24.256541
2025-11-17T11:39:32.998 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8069849 -24.256541
2025-11-17T11:39:32.998 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8069849 -24.256541
2025-11-17T11:39:32.998 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8069849 -24.256541
2025-11-17T11:39:32.999 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 17;17.8069849;-24.256541;50.108409;89.993033;50.08601;90.12017;14.82674;2460996.90246527;11.65914667;1.3;_17.7808141381333 -24.2462405532182
2025-11-17T11:39:32.999 [INFO] [Thread-67472 (handle)] [driver.py] [get_status()] ra_j2k = 17.7808141381333     dec_j2k = -24.2462405532182
2025-11-17T11:39:32.999 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:32.999 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:32.999 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 140;0.104532083958628;171.162357330327;_
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response 140;0.104532083958628;171.162357330327;_
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:33.000 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:33.001 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:33.002 [DEBUG] [Thread-67472 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:33.002 [DEBUG] [Thread-67472 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:33.002 [DEBUG] [Thread-67472 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:33.008 [DEBUG] [Thread-67472 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33627)
2025-11-17T11:39:33.008 [DEBUG] [Thread-67472 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:33.008 [DEBUG] [Thread-67472 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:33.009 [DEBUG] [Thread-67472 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:33.009 [DEBUG] [Thread-67472 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:33.009 [DEBUG] [Thread-67472 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:33.016 [DEBUG] [Thread-67472 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:33.016 [INFO] [Thread-67472 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90246523, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104532083958628, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8069849, telescope_dec=-24.256541, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.82674, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:38:36.033443', telescope_ra_j2k=17.7808141381333, telescope_dec_j2k=-24.2462405532182, observability=1)
2025-11-17T11:39:36.176 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:36.176 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:36.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:36.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:36.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:36.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:36.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:36.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:36.178 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:36.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:36.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:36.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:36.179 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:39:36.179 [INFO] [ThreadPoolExecutor-2737_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:39:36.179 [INFO] [ThreadPoolExecutor-2737_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:39:36.514 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:39:36
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.4980125427246094s
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:36.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:36.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8079648;-24.25654;50.108409;89.993033;50.08601;90.12017;14.82772;2460996.90250596;11.66012389;1.3;_
2025-11-17T11:39:36.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8079648;-24.25654;50.108409;89.993033;50.08601;90.12017;14.82772;2460996.90250596;11.66012389;1.3;_
2025-11-17T11:39:36.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:36.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:36.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:36.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:36.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:36.517 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8079648, teldec = -24.25654
2025-11-17T11:39:36.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8079648 -24.25654
2025-11-17T11:39:36.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8079648 -24.25654
2025-11-17T11:39:36.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8079648 -24.25654
2025-11-17T11:39:36.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8079648;-24.25654;50.108409;89.993033;50.08601;90.12017;14.82772;2460996.902506;11.66012389;1.3;_17.7817939035626 -24.2462760566085
2025-11-17T11:39:36.518 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.7817939035626     dec_j2k = -24.2462760566085
2025-11-17T11:39:36.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:36.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:36.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104532164182514;171.162362694745;_
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104532164182514;171.162362694745;_
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:36.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:36.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:36.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:36.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:39:36.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43295)
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:36.525 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:36.532 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:36.533 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90250596, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104532164182514, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8079648, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.82772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7817939035626, telescope_dec_j2k=-24.2462760566085, observability=1)
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Status age = 14.523189783096313s
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:51.056 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:51.057 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:51.058 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 17;17.8120047;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83176;2460996.90267428;11.66415278;1.3;_
2025-11-17T11:39:51.058 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response 17;17.8120047;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83176;2460996.90267428;11.66415278;1.3;_
2025-11-17T11:39:51.058 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:51.058 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:51.058 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:51.059 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:51.059 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:51.059 [INFO] [Thread-67473 (handle)] [driver.py] [get_status()] Telra = 17.8120047, teldec = -24.25654
2025-11-17T11:39:51.059 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8120047 -24.25654
2025-11-17T11:39:51.059 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8120047 -24.25654
2025-11-17T11:39:51.059 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8120047 -24.25654
2025-11-17T11:39:51.060 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 17;17.8120047;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83176;2460996.90267431;11.66415278;1.3;_17.7858332506996 -24.2464265593535
2025-11-17T11:39:51.060 [INFO] [Thread-67473 (handle)] [driver.py] [get_status()] ra_j2k = 17.7858332506996     dec_j2k = -24.2464265593535
2025-11-17T11:39:51.060 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:51.060 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:51.060 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 140;0.104533046645256;171.162357330327;_
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response 140;0.104533046645256;171.162357330327;_
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:51.061 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:51.062 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:51.063 [DEBUG] [Thread-67473 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:51.063 [DEBUG] [Thread-67473 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:51.063 [DEBUG] [Thread-67473 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35095)
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:51.067 [DEBUG] [Thread-67473 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:51.074 [DEBUG] [Thread-67473 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:51.075 [DEBUG] [Thread-67473 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:51.075 [INFO] [Thread-67473 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90267428, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104533046645256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8120047, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.83176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7858332506996, telescope_dec_j2k=-24.2464265593535, observability=1)
2025-11-17T11:39:57.058 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.058 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.058 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:57.058 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:57.058 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:57.059 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.059 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:39:57.060 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:57.061 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:57.062 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:39:57.063 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:57.064 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Park
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:39:57.065 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:39:57.066 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 29;17.8136695;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83343;2460996.90274382;11.66581306;1.3;_Park Command Successful
2025-11-17T11:39:58.066 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:39:58.066 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:39:58.067 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:39:58.068 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:39:58.068 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.916018486022949s
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:39:58.991 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:39:58.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:39:58.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:39:58.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:39:58.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:39:58.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8142316;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83399;2460996.90276611;11.66637361;1.3;_
2025-11-17T11:39:58.993 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8142316;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83399;2460996.90276611;11.66637361;1.3;_
2025-11-17T11:39:58.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:39:58.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:39:58.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:39:58.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:58.994 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:39:58.994 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8142316, teldec = -24.25654
2025-11-17T11:39:58.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8142316 -24.25654
2025-11-17T11:39:58.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8142316 -24.25654
2025-11-17T11:39:58.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8142316 -24.25654
2025-11-17T11:39:58.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8142316;-24.25654;50.108409;89.993033;50.08601;90.12017;14.83399;2460996.90276615;11.66637361;1.3;_17.7880598478475 -24.2465095259075
2025-11-17T11:39:58.995 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.7880598478475     dec_j2k = -24.2465095259075
2025-11-17T11:39:58.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:39:58.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:39:58.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104532605413885;171.162357330327;_
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104532605413885;171.162357330327;_
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:58.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:39:58.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:39:58.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:58.998 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:39:58.998 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41975)
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:39:59.000 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:39:59.007 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:39:59.007 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:59.007 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:39:59.007 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:39:59.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:39:59.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:39:59.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:39:59.008 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:39:59.008 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:39:59.008 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90276611, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104532605413885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8142316, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.83399, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7880598478475, telescope_dec_j2k=-24.2465095259075, observability=1)
2025-11-17T11:39:59.068 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:39:59.068 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:39:59.068 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:39:59.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:39:59.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:40:00.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:40:00.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:40:00.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:40:00.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:40:00.069 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_ParkRotatorAccepted
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:01.070 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:01.071 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:01.071 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:01.071 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:40:01.072 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:40:02.073 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:40:02.074 [DEBUG] [ThreadPoolExecutor-2736_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:02.074 [INFO] [ThreadPoolExecutor-2736_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Status age = 8.336443901062012s
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:07.344 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:07.345 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:07.346 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 17;17.8165438;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8363;2460996.9028628;11.66867944;1.3;_
2025-11-17T11:40:07.346 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response 17;17.8165438;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8363;2460996.9028628;11.66867944;1.3;_
2025-11-17T11:40:07.346 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:07.346 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:07.346 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:07.347 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:07.347 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:07.347 [INFO] [Thread-67474 (handle)] [driver.py] [get_status()] Telra = 17.8165438, teldec = -24.25654
2025-11-17T11:40:07.347 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8165438 -24.25654
2025-11-17T11:40:07.348 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8165438 -24.25654
2025-11-17T11:40:07.348 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8165438 -24.25654
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 17;17.8165438;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8363;2460996.90286282;11.66867944;1.3;_17.7903717348244 -24.2465956745037
2025-11-17T11:40:07.349 [INFO] [Thread-67474 (handle)] [driver.py] [get_status()] ra_j2k = 17.7903717348244     dec_j2k = -24.2465956745037
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 140;0.104533527988569;171.162357330327;_
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response 140;0.104533527988569;171.162357330327;_
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:07.349 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:07.350 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:07.351 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:07.352 [DEBUG] [Thread-67474 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:07.352 [DEBUG] [Thread-67474 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:07.352 [DEBUG] [Thread-67474 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:07.356 [DEBUG] [Thread-67474 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43141)
2025-11-17T11:40:07.356 [DEBUG] [Thread-67474 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:07.357 [DEBUG] [Thread-67474 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:07.357 [DEBUG] [Thread-67474 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:07.357 [DEBUG] [Thread-67474 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:07.357 [DEBUG] [Thread-67474 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:07.364 [DEBUG] [Thread-67474 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:07.364 [INFO] [Thread-67474 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9028628, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104533527988569, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8165438, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.8363, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7903717348244, telescope_dec_j2k=-24.2465956745037, observability=1)
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Status age = 1.773752212524414s
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:09.138 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 17;17.8170485;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8368;2460996.90288355;11.66918278;1.3;_
2025-11-17T11:40:09.139 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response 17;17.8170485;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8368;2460996.90288355;11.66918278;1.3;_
2025-11-17T11:40:09.140 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:09.140 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:09.140 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:09.141 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:09.141 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:09.141 [INFO] [Thread-67475 (handle)] [driver.py] [get_status()] Telra = 17.8170485, teldec = -24.25654
2025-11-17T11:40:09.141 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8170485 -24.25654
2025-11-17T11:40:09.141 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8170485 -24.25654
2025-11-17T11:40:09.141 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8170485 -24.25654
2025-11-17T11:40:09.142 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 17;17.8170485;-24.25654;50.108409;89.993033;50.08601;90.12017;14.8368;2460996.90288359;11.66918278;1.3;_17.7908763666923 -24.2466144793049
2025-11-17T11:40:09.142 [INFO] [Thread-67475 (handle)] [driver.py] [get_status()] ra_j2k = 17.7908763666923     dec_j2k = -24.2466144793049
2025-11-17T11:40:09.142 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:09.142 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:09.142 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 140;0.104533166981084;171.162357330327;_
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response 140;0.104533166981084;171.162357330327;_
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:09.143 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:09.144 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:09.145 [DEBUG] [Thread-67475 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:09.145 [DEBUG] [Thread-67475 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:09.145 [DEBUG] [Thread-67475 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48509)
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:09.146 [DEBUG] [Thread-67475 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:09.153 [DEBUG] [Thread-67475 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:09.153 [DEBUG] [Thread-67475 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:09.153 [DEBUG] [Thread-67475 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:09.154 [DEBUG] [Thread-67475 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:09.154 [INFO] [Thread-67475 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90288355, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104533166981084, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108409, telescope_az=89.993033, telescope_ra=17.8170485, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.8368, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7908763666923, telescope_dec_j2k=-24.2466144793049, observability=1)
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.71799898147583s
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8186295;-24.25654;50.108408;89.993032;50.08601;90.12017;14.83839;2460996.90294992;11.67075944;1.3;_
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.8186295;-24.25654;50.108408;89.993032;50.08601;90.12017;14.83839;2460996.90294992;11.67075944;1.3;_
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:14.874 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.8186295, teldec = -24.25654
2025-11-17T11:40:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8186295 -24.25654
2025-11-17T11:40:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8186295 -24.25654
2025-11-17T11:40:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8186295 -24.25654
2025-11-17T11:40:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8186295;-24.25654;50.108408;89.993032;50.08601;90.12017;14.83839;2460996.90294994;11.67075944;1.3;_17.7924571537141 -24.2466733876224
2025-11-17T11:40:14.875 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.7924571537141     dec_j2k = -24.2466733876224
2025-11-17T11:40:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104533327428855;171.162362694745;_
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104533327428855;171.162362694745;_
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50323)
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:14.880 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:14.887 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:14.887 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90294992, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104533327428855, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8186295, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.83839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7924571537141, telescope_dec_j2k=-24.2466733876224, observability=1)
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.706923484802246s
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:21.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:21.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:21.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:21.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:21.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:21.595 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:21.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:21.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:21.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:21.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8205004;-24.25654;50.108408;89.993032;50.08601;90.12017;14.84026;2460996.90302773;11.67262528;1.3;_
2025-11-17T11:40:21.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.8205004;-24.25654;50.108408;89.993032;50.08601;90.12017;14.84026;2460996.90302773;11.67262528;1.3;_
2025-11-17T11:40:21.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:21.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:21.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:21.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:21.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:21.598 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.8205004, teldec = -24.25654
2025-11-17T11:40:21.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.8205004 -24.25654
2025-11-17T11:40:21.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.8205004 -24.25654
2025-11-17T11:40:21.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8205004 -24.25654
2025-11-17T11:40:21.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8205004;-24.25654;50.108408;89.993032;50.08601;90.12017;14.84026;2460996.90302777;11.67262528;1.3;_17.7943278025629 -24.246743100123
2025-11-17T11:40:21.599 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.7943278025629     dec_j2k = -24.246743100123
2025-11-17T11:40:21.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:21.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:21.599 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104533688436341;171.162357330327;_
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104533688436341;171.162357330327;_
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:21.600 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:21.601 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:21.602 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:21.602 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:21.602 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41083)
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:21.609 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:21.617 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:21.617 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:21.617 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:21.618 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:40:21.618 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90302773, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104533688436341, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8205004, telescope_dec=-24.25654, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.84026, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7943278025629, telescope_dec_j2k=-24.246743100123, observability=1)
2025-11-17T11:40:21.618 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10419583320618 seconds ago
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Status age = 5.6833107471466064s
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:27.301 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:27.302 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:27.303 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 17;17.8220912;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84185;2460996.90309378;11.67421167;1.3;_
2025-11-17T11:40:27.303 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response 17;17.8220912;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84185;2460996.90309378;11.67421167;1.3;_
2025-11-17T11:40:27.303 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:27.303 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:27.303 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:27.304 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:27.304 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:27.304 [INFO] [Thread-67476 (handle)] [driver.py] [get_status()] Telra = 17.8220912, teldec = -24.256539
2025-11-17T11:40:27.304 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8220912 -24.256539
2025-11-17T11:40:27.305 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8220912 -24.256539
2025-11-17T11:40:27.305 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8220912 -24.256539
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 17;17.8220912;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84185;2460996.90309381;11.67421167;1.3;_17.7959183899621 -24.2468013778278
2025-11-17T11:40:27.306 [INFO] [Thread-67476 (handle)] [driver.py] [get_status()] ra_j2k = 17.7959183899621     dec_j2k = -24.2468013778278
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 140;0.104532886197484;171.162351965909;_
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response 140;0.104532886197484;171.162351965909;_
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:27.306 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:27.307 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:27.308 [DEBUG] [Thread-67476 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:27.308 [DEBUG] [Thread-67476 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:27.308 [DEBUG] [Thread-67476 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33195)
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:27.313 [DEBUG] [Thread-67476 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:27.320 [DEBUG] [Thread-67476 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:27.321 [DEBUG] [Thread-67476 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:27.321 [INFO] [Thread-67476 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90309378, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104532886197484, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8220912, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.84185, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:39:36.176035', telescope_ra_j2k=17.7959183899621, telescope_dec_j2k=-24.2468013778278, observability=1)
2025-11-17T11:40:36.319 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:36.319 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:36.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:36.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:36.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:36.320 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:36.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:36.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:36.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:36.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:36.321 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:40:36.321 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:40:36.322 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:40:36.323 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:36.593 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:40:36
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.272350072860718s
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:36.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:36.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:36.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8246824;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84444;2460996.90320132;11.67679583;1.3;_
2025-11-17T11:40:36.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8246824;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84444;2460996.90320132;11.67679583;1.3;_
2025-11-17T11:40:36.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:36.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:36.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:36.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:36.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:36.596 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8246824, teldec = -24.256539
2025-11-17T11:40:36.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8246824 -24.256539
2025-11-17T11:40:36.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8246824 -24.256539
2025-11-17T11:40:36.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8246824 -24.256539
2025-11-17T11:40:36.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8246824;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84444;2460996.90320135;11.67679583;1.3;_17.7985092448158 -24.2468979372514
2025-11-17T11:40:36.597 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.7985092448158     dec_j2k = -24.2468979372514
2025-11-17T11:40:36.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:36.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:36.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10453497201851;171.162357330327;_
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10453497201851;171.162357330327;_
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:36.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:36.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:36.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:36.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:36.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:36.602 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50853)
2025-11-17T11:40:36.602 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:36.602 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:36.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:36.603 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:36.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:36.610 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:36.610 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90320132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10453497201851, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8246824, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.84444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.7985092448158, telescope_dec_j2k=-24.2468979372514, observability=1)
2025-11-17T11:40:37.323 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:37.324 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:37.324 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:37.324 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:37.324 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:40:37.325 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:37.326 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:37.327 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:37.327 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:37.327 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:37.327 [DEBUG] [ThreadPoolExecutor-2738_0] [payload.py] [to_registers()] [0]
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35747)
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:37.331 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:37.339 [DEBUG] [ThreadPoolExecutor-2738_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Status age = 8.766146183013916s
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:45.376 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:45.377 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:45.378 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 17;17.8271336;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84689;2460996.90330299;11.67924028;1.3;_
2025-11-17T11:40:45.378 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response 17;17.8271336;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84689;2460996.90330299;11.67924028;1.3;_
2025-11-17T11:40:45.378 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:45.378 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:45.378 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:45.379 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:45.379 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:45.379 [INFO] [Thread-67477 (handle)] [driver.py] [get_status()] Telra = 17.8271336, teldec = -24.256539
2025-11-17T11:40:45.379 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8271336 -24.256539
2025-11-17T11:40:45.379 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8271336 -24.256539
2025-11-17T11:40:45.379 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8271336 -24.256539
2025-11-17T11:40:45.380 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 17;17.8271336;-24.256539;50.108408;89.993032;50.08601;90.12017;14.84689;2460996.90330301;11.67924028;1.3;_17.8009601200016 -24.2469892842821
2025-11-17T11:40:45.380 [INFO] [Thread-67477 (handle)] [driver.py] [get_status()] ra_j2k = 17.8009601200016     dec_j2k = -24.2469892842821
2025-11-17T11:40:45.380 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 140;0.104534731346854;171.162351965909;_
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response 140;0.104534731346854;171.162351965909;_
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:45.381 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:45.382 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:45.382 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:45.382 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:40:45.383 [DEBUG] [Thread-67477 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:40:45.383 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:45.383 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:45.383 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:45.384 [DEBUG] [Thread-67477 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:45.384 [DEBUG] [Thread-67477 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:45.384 [DEBUG] [Thread-67477 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55171)
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:45.387 [DEBUG] [Thread-67477 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:45.394 [DEBUG] [Thread-67477 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:45.394 [INFO] [Thread-67477 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90330299, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104534731346854, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8271336, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.84689, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.8009601200016, telescope_dec_j2k=-24.2469892842821, observability=1)
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.704897165298462s
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:40:58.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:40:58.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:40:58.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8306724;-24.256539;50.108408;89.993032;50.08601;90.12017;14.85043;2460996.90345024;11.68276944;1.3;_
2025-11-17T11:40:58.101 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8306724;-24.256539;50.108408;89.993032;50.08601;90.12017;14.85043;2460996.90345024;11.68276944;1.3;_
2025-11-17T11:40:58.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:40:58.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:40:58.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:40:58.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:58.102 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:40:58.102 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8306724, teldec = -24.256539
2025-11-17T11:40:58.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8306724 -24.256539
2025-11-17T11:40:58.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8306724 -24.256539
2025-11-17T11:40:58.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8306724 -24.256539
2025-11-17T11:40:58.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8306724;-24.256539;50.108408;89.993032;50.08601;90.12017;14.85043;2460996.90345027;11.68276944;1.3;_17.8044984539556 -24.2471211699289
2025-11-17T11:40:58.103 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.8044984539556     dec_j2k = -24.2471211699289
2025-11-17T11:40:58.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:40:58.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104534891794625;171.162368059163;_
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104534891794625;171.162368059163;_
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:58.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:58.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:58.105 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:58.105 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:58.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:40:58.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:40:58.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:40:58.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:58.107 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:40:58.107 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57265)
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:40:58.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:40:58.115 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:40:58.115 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90345024, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104534891794625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108408, telescope_az=89.993032, telescope_ra=17.8306724, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.85043, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.8044984539556, telescope_dec_j2k=-24.2471211699289, observability=1)
2025-11-17T11:41:02.339 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:02.339 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:02.339 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:02.339 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:02.340 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:02.341 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:41:02.342 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:41:02.343 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:03.433 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:03.433 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Status age = 5.318093299865723s
2025-11-17T11:41:03.433 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:03.433 [DEBUG] [Thread-67478 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:03.433 [DEBUG] [Thread-67478 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:03.434 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:03.435 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 17;17.8321782;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85193;2460996.90351198;11.68427111;1.3;_
2025-11-17T11:41:03.435 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response 17;17.8321782;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85193;2460996.90351198;11.68427111;1.3;_
2025-11-17T11:41:03.435 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:03.435 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:03.435 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:03.436 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:03.436 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:03.436 [INFO] [Thread-67478 (handle)] [driver.py] [get_status()] Telra = 17.8321782, teldec = -24.256539
2025-11-17T11:41:03.436 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8321782 -24.256539
2025-11-17T11:41:03.436 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8321782 -24.256539
2025-11-17T11:41:03.436 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8321782 -24.256539
2025-11-17T11:41:03.437 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 17;17.8321782;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85193;2460996.903512;11.68427111;1.3;_17.806004056683 -24.247177291571
2025-11-17T11:41:03.437 [INFO] [Thread-67478 (handle)] [driver.py] [get_status()] ra_j2k = 17.806004056683     dec_j2k = -24.247177291571
2025-11-17T11:41:03.437 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:03.437 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:03.437 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 140;0.104535613809595;171.162357330327;_
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response 140;0.104535613809595;171.162357330327;_
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:03.438 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:03.439 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:03.440 [DEBUG] [Thread-67478 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:03.440 [DEBUG] [Thread-67478 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:03.440 [DEBUG] [Thread-67478 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34597)
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:03.443 [DEBUG] [Thread-67478 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:03.450 [DEBUG] [Thread-67478 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:03.451 [DEBUG] [Thread-67478 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:03.451 [DEBUG] [Thread-67478 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:03.451 [DEBUG] [Thread-67478 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:03.451 [INFO] [Thread-67478 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90351198, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104535613809595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.8321782, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.85193, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.806004056683, telescope_dec_j2k=-24.247177291571, observability=1)
2025-11-17T11:41:07.398 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:07.398 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Status age = 3.9477434158325195s
2025-11-17T11:41:07.398 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:07.399 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:07.400 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:07.400 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:07.400 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 17;17.8332611;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85302;2460996.90355787;11.68535111;1.3;_
2025-11-17T11:41:07.400 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response 17;17.8332611;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85302;2460996.90355787;11.68535111;1.3;_
2025-11-17T11:41:07.401 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:07.401 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:07.401 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:07.402 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:07.402 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:07.402 [INFO] [Thread-67479 (handle)] [driver.py] [get_status()] Telra = 17.8332611, teldec = -24.256539
2025-11-17T11:41:07.402 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8332611 -24.256539
2025-11-17T11:41:07.402 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8332611 -24.256539
2025-11-17T11:41:07.402 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8332611 -24.256539
2025-11-17T11:41:07.403 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 17;17.8332611;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85302;2460996.9035579;11.68535111;1.3;_17.8070868151959 -24.2472176526174
2025-11-17T11:41:07.403 [INFO] [Thread-67479 (handle)] [driver.py] [get_status()] ra_j2k = 17.8070868151959     dec_j2k = -24.2472176526174
2025-11-17T11:41:07.403 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:07.403 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:07.403 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 140;0.10453497201851;171.162362694745;_
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response 140;0.10453497201851;171.162362694745;_
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:07.404 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:07.405 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:07.406 [DEBUG] [Thread-67479 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:07.406 [DEBUG] [Thread-67479 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:07.406 [DEBUG] [Thread-67479 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39363)
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:07.413 [DEBUG] [Thread-67479 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:07.421 [DEBUG] [Thread-67479 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:07.421 [INFO] [Thread-67479 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90355787, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10453497201851, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.8332611, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.85302, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.8070868151959, telescope_dec_j2k=-24.2472176526174, observability=1)
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.458943128585815s
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8353535;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85511;2460996.90364447;11.68743778;1.3;_
2025-11-17T11:41:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.8353535;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85511;2460996.90364447;11.68743778;1.3;_
2025-11-17T11:41:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:14.883 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.8353535, teldec = -24.256539
2025-11-17T11:41:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8353535 -24.256539
2025-11-17T11:41:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8353535 -24.256539
2025-11-17T11:41:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8353535 -24.256539
2025-11-17T11:41:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8353535;-24.256539;50.108407;89.993031;50.08601;90.12017;14.85511;2460996.90364449;11.68743778;1.3;_17.8091789427175 -24.2472956414063
2025-11-17T11:41:14.884 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.8091789427175     dec_j2k = -24.2472956414063
2025-11-17T11:41:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104535694033481;171.162351965909;_
2025-11-17T11:41:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104535694033481;171.162351965909;_
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:14.891 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55349)
2025-11-17T11:41:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:14.892 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:14.899 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:14.900 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90364447, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104535694033481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.8353535, telescope_dec=-24.256539, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.85511, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.8091789427175, telescope_dec_j2k=-24.2472956414063, observability=1)
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Status age = 6.660619497299194s
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:21.560 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:21.561 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:21.562 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 17;17.8372236;-24.256538;50.108407;89.993031;50.08601;90.12017;14.85698;2460996.90372178;11.68930278;1.3;_
2025-11-17T11:41:21.562 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response 17;17.8372236;-24.256538;50.108407;89.993031;50.08601;90.12017;14.85698;2460996.90372178;11.68930278;1.3;_
2025-11-17T11:41:21.562 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:21.562 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:21.563 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:21.563 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:21.563 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:21.564 [INFO] [Thread-67480 (handle)] [driver.py] [get_status()] Telra = 17.8372236, teldec = -24.256538
2025-11-17T11:41:21.564 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8372236 -24.256538
2025-11-17T11:41:21.564 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8372236 -24.256538
2025-11-17T11:41:21.564 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8372236 -24.256538
2025-11-17T11:41:21.565 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 17;17.8372236;-24.256538;50.108407;89.993031;50.08601;90.12017;14.85698;2460996.90372181;11.68930278;1.3;_17.8110488003971 -24.2473643472641
2025-11-17T11:41:21.565 [INFO] [Thread-67480 (handle)] [driver.py] [get_status()] ra_j2k = 17.8110488003971     dec_j2k = -24.2473643472641
2025-11-17T11:41:21.565 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:21.565 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:21.565 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 140;0.104535373137938;171.162357330327;_
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response 140;0.104535373137938;171.162357330327;_
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:21.566 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:21.567 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:21.568 [DEBUG] [Thread-67480 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:41:21.568 [DEBUG] [Thread-67480 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:41:21.568 [DEBUG] [Thread-67480 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34355)
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:21.572 [DEBUG] [Thread-67480 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:21.579 [DEBUG] [Thread-67480 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:21.579 [DEBUG] [Thread-67480 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:21.579 [DEBUG] [Thread-67480 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:21.579 [DEBUG] [Thread-67480 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:21.580 [DEBUG] [Thread-67480 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:21.580 [DEBUG] [Thread-67480 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:21.580 [DEBUG] [Thread-67480 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:21.580 [DEBUG] [Thread-67480 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:21.580 [DEBUG] [Thread-67480 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:21.580 [INFO] [Thread-67480 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90372178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104535373137938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.8372236, telescope_dec=-24.256538, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.85698, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:40:36.318780', telescope_ra_j2k=17.8110488003971, telescope_dec_j2k=-24.2473643472641, observability=1)
2025-11-17T11:41:21.678 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:41:21.678 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.09838318824768066s
2025-11-17T11:41:21.678 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.09838318824768066
2025-11-17T11:41:21.678 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08559846878052 seconds ago
2025-11-17T11:41:36.458 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:36.458 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:36.459 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:36.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:36.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:36.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:36.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:36.460 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:41:36.460 [INFO] [ThreadPoolExecutor-2739_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:41:36.460 [INFO] [ThreadPoolExecutor-2739_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:41:36.671 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:41:36
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.091287612915039s
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:36.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:36.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:36.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8414279;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86118;2460996.90389668;11.69349556;1.3;_
2025-11-17T11:41:36.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8414279;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86118;2460996.90389668;11.69349556;1.3;_
2025-11-17T11:41:36.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:36.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:36.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:36.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:36.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:36.675 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8414279, teldec = -24.256538
2025-11-17T11:41:36.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8414279 -24.256538
2025-11-17T11:41:36.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8414279 -24.256538
2025-11-17T11:41:36.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8414279 -24.256538
2025-11-17T11:41:36.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8414279;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86118;2460996.90389671;11.69349556;1.3;_17.8152525586535 -24.2475210667591
2025-11-17T11:41:36.676 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.8152525586535     dec_j2k = -24.2475210667591
2025-11-17T11:41:36.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:36.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:36.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104535493473767;171.162368059163;_
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104535493473767;171.162368059163;_
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:36.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:36.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:36.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:36.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:41:36.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56739)
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:36.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:36.689 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:36.689 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90389668, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104535493473767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.8414279, telescope_dec=-24.256538, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.86118, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8152525586535, telescope_dec_j2k=-24.2475210667591, observability=1)
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Status age = 2.9357833862304688s
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:39.625 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:39.626 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:39.626 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:39.626 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:39.627 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 17;17.842258;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86201;2460996.90393087;11.69432333;1.3;_
2025-11-17T11:41:39.628 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response 17;17.842258;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86201;2460996.90393087;11.69432333;1.3;_
2025-11-17T11:41:39.628 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:39.628 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:39.628 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:39.629 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:39.629 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:39.629 [INFO] [Thread-67481 (handle)] [driver.py] [get_status()] Telra = 17.842258, teldec = -24.256538
2025-11-17T11:41:39.629 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] UnCookCoordinates 17.842258 -24.256538
2025-11-17T11:41:39.629 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.842258 -24.256538
2025-11-17T11:41:39.629 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.842258 -24.256538
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 17;17.842258;-24.256538;50.108407;89.993031;50.08601;90.12017;14.86201;2460996.9039309;11.69432333;1.3;_17.8160825522611 -24.2475520110463
2025-11-17T11:41:39.630 [INFO] [Thread-67481 (handle)] [driver.py] [get_status()] ra_j2k = 17.8160825522611     dec_j2k = -24.2475520110463
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 140;0.104535694033481;171.162351965909;_
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response 140;0.104535694033481;171.162351965909;_
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:39.630 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:39.631 [DEBUG] [Thread-67481 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42365)
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:39.637 [DEBUG] [Thread-67481 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:39.644 [DEBUG] [Thread-67481 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:39.644 [INFO] [Thread-67481 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90393087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104535694033481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108407, telescope_az=89.993031, telescope_ra=17.842258, telescope_dec=-24.256538, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.86201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8160825522611, telescope_dec_j2k=-24.2475520110463, observability=1)
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 17.566388607025146s
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:41:57.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:41:57.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8471413;-24.256538;50.108406;89.99303;50.08601;90.12017;14.8669;2460996.9041344;11.69919333;1.3;_
2025-11-17T11:41:57.212 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8471413;-24.256538;50.108406;89.99303;50.08601;90.12017;14.8669;2460996.9041344;11.69919333;1.3;_
2025-11-17T11:41:57.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:41:57.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:41:57.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:41:57.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:57.214 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:41:57.214 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8471413, teldec = -24.256538
2025-11-17T11:41:57.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8471413 -24.256538
2025-11-17T11:41:57.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8471413 -24.256538
2025-11-17T11:41:57.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8471413 -24.256538
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8471413;-24.256538;50.108406;89.99303;50.08601;90.12017;14.8669;2460996.90413443;11.69919333;1.3;_17.8209652301813 -24.2477340593898
2025-11-17T11:41:57.215 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.8209652301813     dec_j2k = -24.2477340593898
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104536456160394;171.162368059163;_
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104536456160394;171.162368059163;_
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:57.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:41:57.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:41:57.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:57.217 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:41:57.217 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33027)
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:41:57.219 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:41:57.227 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:41:57.227 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9041344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104536456160394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8471413, telescope_dec=-24.256538, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.8669, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8209652301813, telescope_dec_j2k=-24.2477340593898, observability=1)
2025-11-17T11:41:57.343 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.343 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.343 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:57.343 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:57.343 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:41:57.344 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:57.345 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:57.346 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:41:57.347 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:41:57.348 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Park
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:41:57.349 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:41:57.350 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 29;17.8471973;-24.256538;50.108406;89.99303;50.08601;90.12017;14.86695;2460996.904136;11.69924917;1.3;_Park Command Successful
2025-11-17T11:41:57.736 [DEBUG] [Thread-67482 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:41:57.736 [DEBUG] [Thread-67482 (handle)] [server.py] [get_status()] Status age = 0.5093584060668945s
2025-11-17T11:41:57.737 [DEBUG] [Thread-67482 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5093584060668945
2025-11-17T11:41:58.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:41:58.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:41:58.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:41:58.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:41:58.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:41:59.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:41:59.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:41:59.351 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:41:59.352 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:41:59.352 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:42:00.352 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:42:00.352 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:42:00.352 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:42:00.353 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:42:00.353 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:42:01.353 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:42:01.353 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:42:01.353 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:01.354 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:42:01.355 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:02.356 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:02.356 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:02.356 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:02.356 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:02.356 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:42:02.357 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:42:02.358 [DEBUG] [ThreadPoolExecutor-2738_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:02.358 [INFO] [ThreadPoolExecutor-2738_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Status age = 10.229607343673706s
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:07.457 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:07.458 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:07.459 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 17;17.8500114;-24.256538;50.108406;89.99303;50.08601;90.12017;14.86977;2460996.904253;11.70205556;1.3;_
2025-11-17T11:42:07.459 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response 17;17.8500114;-24.256538;50.108406;89.99303;50.08601;90.12017;14.86977;2460996.904253;11.70205556;1.3;_
2025-11-17T11:42:07.459 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:07.459 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:07.459 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:07.460 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:07.460 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:07.460 [INFO] [Thread-67483 (handle)] [driver.py] [get_status()] Telra = 17.8500114, teldec = -24.256538
2025-11-17T11:42:07.460 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8500114 -24.256538
2025-11-17T11:42:07.461 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8500114 -24.256538
2025-11-17T11:42:07.461 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8500114 -24.256538
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 17;17.8500114;-24.256538;50.108406;89.99303;50.08601;90.12017;14.86977;2460996.90425302;11.70205556;1.3;_17.823834967596 -24.2478410637772
2025-11-17T11:42:07.462 [INFO] [Thread-67483 (handle)] [driver.py] [get_status()] ra_j2k = 17.823834967596     dec_j2k = -24.2478410637772
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 140;0.104536777055937;171.162362694745;_
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response 140;0.104536777055937;171.162362694745;_
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:07.462 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:07.463 [DEBUG] [Thread-67483 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:07.465 [DEBUG] [Thread-67483 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33073)
2025-11-17T11:42:07.466 [DEBUG] [Thread-67483 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:07.466 [DEBUG] [Thread-67483 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:07.466 [DEBUG] [Thread-67483 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:07.466 [DEBUG] [Thread-67483 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:07.466 [DEBUG] [Thread-67483 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:07.473 [DEBUG] [Thread-67483 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:07.473 [INFO] [Thread-67483 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.904253, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104536777055937, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8500114, telescope_dec=-24.256538, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.86977, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.823834967596, telescope_dec_j2k=-24.2478410637772, observability=1)
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.426694631576538s
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8520681;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87182;2460996.90433913;11.70410667;1.3;_
2025-11-17T11:42:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.8520681;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87182;2460996.90433913;11.70410667;1.3;_
2025-11-17T11:42:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:14.903 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.8520681, teldec = -24.256537
2025-11-17T11:42:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8520681 -24.256537
2025-11-17T11:42:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8520681 -24.256537
2025-11-17T11:42:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8520681 -24.256537
2025-11-17T11:42:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8520681;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87182;2460996.90433917;11.70410667;1.3;_17.8258914093505 -24.2479167461308
2025-11-17T11:42:14.904 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.8258914093505     dec_j2k = -24.2479167461308
2025-11-17T11:42:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104536736943994;171.162368059163;_
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104536736943994;171.162368059163;_
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37957)
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:14.920 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90433913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104536736943994, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8520681, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.87182, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8258914093505, telescope_dec_j2k=-24.2479167461308, observability=1)
2025-11-17T11:42:15.807 [DEBUG] [Thread-67484 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:15.807 [DEBUG] [Thread-67484 (handle)] [server.py] [get_status()] Status age = 0.8866078853607178s
2025-11-17T11:42:15.807 [DEBUG] [Thread-67484 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8866078853607178
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.8181328773498535s
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:21.738 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:21.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:21.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8539636;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87372;2460996.90441829;11.70599694;1.3;_
2025-11-17T11:42:21.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.8539636;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87372;2460996.90441829;11.70599694;1.3;_
2025-11-17T11:42:21.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:21.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:21.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:21.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:21.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:21.741 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.8539636, teldec = -24.256537
2025-11-17T11:42:21.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.8539636 -24.256537
2025-11-17T11:42:21.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.8539636 -24.256537
2025-11-17T11:42:21.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8539636 -24.256537
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8539636;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87372;2460996.90441831;11.70599694;1.3;_17.8277866721838 -24.2479874207603
2025-11-17T11:42:21.743 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.8277866721838     dec_j2k = -24.2479874207603
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104537057839536;171.162346601491;_
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104537057839536;171.162346601491;_
2025-11-17T11:42:21.743 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:21.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:21.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:21.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:21.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48707)
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:21.747 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:21.754 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:42:21.755 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90441829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537057839536, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8539636, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.87372, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8277866721838, telescope_dec_j2k=-24.2479874207603, observability=1)
2025-11-17T11:42:21.755 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.083816051483154 seconds ago
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Status age = 12.113092184066772s
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:33.868 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 17;17.8573615;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87712;2460996.90455867;11.70938556;1.3;_
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response 17;17.8573615;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87712;2460996.90455867;11.70938556;1.3;_
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:33.869 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:33.870 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:33.870 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:33.870 [INFO] [Thread-67485 (handle)] [driver.py] [get_status()] Telra = 17.8573615, teldec = -24.256537
2025-11-17T11:42:33.870 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8573615 -24.256537
2025-11-17T11:42:33.870 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8573615 -24.256537
2025-11-17T11:42:33.871 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8573615 -24.256537
2025-11-17T11:42:33.871 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 17;17.8573615;-24.256537;50.108406;89.99303;50.08601;90.12017;14.87712;2460996.90455869;11.70938556;1.3;_17.8311841494889 -24.2481141191322
2025-11-17T11:42:33.872 [INFO] [Thread-67485 (handle)] [driver.py] [get_status()] ra_j2k = 17.8311841494889     dec_j2k = -24.2481141191322
2025-11-17T11:42:33.872 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:33.872 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:33.872 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:33.872 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 140;0.104537138063422;171.162357330327;_
2025-11-17T11:42:33.872 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response 140;0.104537138063422;171.162357330327;_
2025-11-17T11:42:33.873 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:33.873 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:33.873 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:33.873 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:33.874 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:33.875 [DEBUG] [Thread-67485 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:33.875 [DEBUG] [Thread-67485 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:33.875 [DEBUG] [Thread-67485 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40725)
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:33.877 [DEBUG] [Thread-67485 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:33.884 [DEBUG] [Thread-67485 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:33.885 [DEBUG] [Thread-67485 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:33.885 [DEBUG] [Thread-67485 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:33.885 [INFO] [Thread-67485 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90455867, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537138063422, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8573615, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.87712, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:41:36.458380', telescope_ra_j2k=17.8311841494889, telescope_dec_j2k=-24.2481141191322, observability=1)
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:36.601 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:36.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:36.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:36.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:36.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:36.602 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:36.603 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:42:36.604 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:36.750 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:42:36
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.865354537963867s
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:36.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:36.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:36.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8581464;-24.256537;50.108406;89.99303;50.08601;90.12017;14.8779;2460996.90459204;11.71016833;1.3;_
2025-11-17T11:42:36.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8581464;-24.256537;50.108406;89.99303;50.08601;90.12017;14.8779;2460996.90459204;11.71016833;1.3;_
2025-11-17T11:42:36.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:36.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:36.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:36.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:36.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:36.753 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8581464, teldec = -24.256537
2025-11-17T11:42:36.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8581464 -24.256537
2025-11-17T11:42:36.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8581464 -24.256537
2025-11-17T11:42:36.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8581464 -24.256537
2025-11-17T11:42:36.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8581464;-24.256537;50.108406;89.99303;50.08601;90.12017;14.8779;2460996.90459206;11.71016833;1.3;_17.831968952296 -24.2481433869937
2025-11-17T11:42:36.754 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.831968952296     dec_j2k = -24.2481433869937
2025-11-17T11:42:36.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:36.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:36.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104537057839536;171.162357330327;_
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104537057839536;171.162357330327;_
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:36.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:36.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:36.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:36.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:36.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:36.760 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60741)
2025-11-17T11:42:36.760 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:36.761 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:36.761 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:36.761 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:36.761 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:36.768 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:36.768 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90459204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537057839536, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108406, telescope_az=89.99303, telescope_ra=17.8581464, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.8779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.831968952296, telescope_dec_j2k=-24.2481433869937, observability=1)
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:37.605 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:37.606 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:37.607 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:37.607 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:37.607 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:37.607 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:37.608 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:37.608 [DEBUG] [ThreadPoolExecutor-2740_0] [payload.py] [to_registers()] [0]
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38947)
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:37.611 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:37.618 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:37.618 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:42:37.619 [DEBUG] [ThreadPoolExecutor-2740_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:42:37.619 [DEBUG] [ThreadPoolExecutor-2740_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:42:37.619 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:37.619 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:37.619 [DEBUG] [ThreadPoolExecutor-2740_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Status age = 15.209898710250854s
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:51.978 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:51.979 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:51.979 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:51.979 [DEBUG] [Thread-67486 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:51.979 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:51.980 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:51.980 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:51.980 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:51.980 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 17;17.8624081;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88216;2460996.90476829;11.71441833;1.3;_
2025-11-17T11:42:51.981 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response 17;17.8624081;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88216;2460996.90476829;11.71441833;1.3;_
2025-11-17T11:42:51.981 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:51.981 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:51.981 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:51.982 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:51.982 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:51.982 [INFO] [Thread-67486 (handle)] [driver.py] [get_status()] Telra = 17.8624081, teldec = -24.256537
2025-11-17T11:42:51.982 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8624081 -24.256537
2025-11-17T11:42:51.982 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8624081 -24.256537
2025-11-17T11:42:51.982 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8624081 -24.256537
2025-11-17T11:42:51.983 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 17;17.8624081;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88216;2460996.90476832;11.71441833;1.3;_17.8362301275113 -24.2483023071177
2025-11-17T11:42:51.983 [INFO] [Thread-67486 (handle)] [driver.py] [get_status()] ra_j2k = 17.8362301275113     dec_j2k = -24.2483023071177
2025-11-17T11:42:51.983 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:51.983 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:51.983 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 140;0.104538020526164;171.162357330327;_
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response 140;0.104538020526164;171.162357330327;_
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:51.984 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:51.985 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:51.986 [DEBUG] [Thread-67486 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:51.986 [DEBUG] [Thread-67486 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:42:51.986 [DEBUG] [Thread-67486 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:42:51.991 [DEBUG] [Thread-67486 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44629)
2025-11-17T11:42:51.991 [DEBUG] [Thread-67486 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:51.992 [DEBUG] [Thread-67486 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:51.992 [DEBUG] [Thread-67486 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:51.992 [DEBUG] [Thread-67486 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:51.992 [DEBUG] [Thread-67486 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:51.999 [DEBUG] [Thread-67486 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:51.999 [INFO] [Thread-67486 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90476829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538020526164, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8624081, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.88216, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8362301275113, telescope_dec_j2k=-24.2483023071177, observability=1)
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.320067882537842s
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:42:56.319 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8636049;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88336;2460996.90481852;11.71561194;1.3;_
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8636049;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88336;2460996.90481852;11.71561194;1.3;_
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:42:56.320 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:42:56.321 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:56.321 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:42:56.322 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8636049, teldec = -24.256537
2025-11-17T11:42:56.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8636049 -24.256537
2025-11-17T11:42:56.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8636049 -24.256537
2025-11-17T11:42:56.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8636049 -24.256537
2025-11-17T11:42:56.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8636049;-24.256537;50.108405;89.993029;50.08601;90.12017;14.88336;2460996.90481854;11.71561194;1.3;_17.8374267810289 -24.2483469382978
2025-11-17T11:42:56.323 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.8374267810289     dec_j2k = -24.2483469382978
2025-11-17T11:42:56.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:42:56.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:42:56.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104537659518678;171.162357330327;_
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104537659518678;171.162357330327;_
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:56.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:42:56.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:42:56.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:42:56.326 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:42:56.326 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40251)
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:42:56.333 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:42:56.340 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:42:56.340 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90481852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537659518678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8636049, telescope_dec=-24.256537, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.88336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8374267810289, telescope_dec_j2k=-24.2483469382978, observability=1)
2025-11-17T11:43:02.619 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:02.619 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:02.619 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:02.619 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:02.619 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:02.620 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:02.620 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:02.620 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:02.620 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:02.621 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:43:02.622 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Status age = 11.16139268875122s
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:07.502 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:07.503 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:07.504 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 17;17.8667324;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88649;2460996.90494796;11.71873083;1.3;_
2025-11-17T11:43:07.504 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response 17;17.8667324;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88649;2460996.90494796;11.71873083;1.3;_
2025-11-17T11:43:07.504 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:07.504 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:07.504 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:07.505 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:07.505 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:07.505 [INFO] [Thread-67487 (handle)] [driver.py] [get_status()] Telra = 17.8667324, teldec = -24.256536
2025-11-17T11:43:07.505 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8667324 -24.256536
2025-11-17T11:43:07.505 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8667324 -24.256536
2025-11-17T11:43:07.505 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8667324 -24.256536
2025-11-17T11:43:07.506 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 17;17.8667324;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88649;2460996.90494799;11.71873083;1.3;_17.8405539002832 -24.248462573754
2025-11-17T11:43:07.506 [INFO] [Thread-67487 (handle)] [driver.py] [get_status()] ra_j2k = 17.8405539002832     dec_j2k = -24.248462573754
2025-11-17T11:43:07.506 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:07.506 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:07.506 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 140;0.104537900190335;171.162362694745;_
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response 140;0.104537900190335;171.162362694745;_
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:07.507 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:07.508 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:07.509 [DEBUG] [Thread-67487 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:07.509 [DEBUG] [Thread-67487 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:07.509 [DEBUG] [Thread-67487 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:07.511 [DEBUG] [Thread-67487 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38879)
2025-11-17T11:43:07.511 [DEBUG] [Thread-67487 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:07.511 [DEBUG] [Thread-67487 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:07.512 [DEBUG] [Thread-67487 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:07.512 [DEBUG] [Thread-67487 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:07.512 [DEBUG] [Thread-67487 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:07.519 [DEBUG] [Thread-67487 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:07.519 [INFO] [Thread-67487 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90494796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537900190335, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8667324, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.88649, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8405539002832, telescope_dec_j2k=-24.248462573754, observability=1)
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Status age = 2.532973051071167s
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:10.052 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:10.053 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:10.054 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:10.055 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 17;17.8674259;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88718;2460996.90497749;11.7194225;1.3;_
2025-11-17T11:43:10.055 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response 17;17.8674259;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88718;2460996.90497749;11.7194225;1.3;_
2025-11-17T11:43:10.055 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:10.055 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:10.055 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:10.056 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:10.056 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:10.056 [INFO] [Thread-67488 (handle)] [driver.py] [get_status()] Telra = 17.8674259, teldec = -24.256536
2025-11-17T11:43:10.056 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8674259 -24.256536
2025-11-17T11:43:10.056 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8674259 -24.256536
2025-11-17T11:43:10.056 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8674259 -24.256536
2025-11-17T11:43:10.057 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 17;17.8674259;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88718;2460996.90497751;11.7194225;1.3;_17.8412473161731 -24.2484884376416
2025-11-17T11:43:10.057 [INFO] [Thread-67488 (handle)] [driver.py] [get_status()] ra_j2k = 17.8412473161731     dec_j2k = -24.2484884376416
2025-11-17T11:43:10.057 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:10.057 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:10.057 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 140;0.104538100750049;171.162351965909;_
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response 140;0.104538100750049;171.162351965909;_
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:10.058 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:10.059 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:10.060 [DEBUG] [Thread-67488 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:10.060 [DEBUG] [Thread-67488 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:10.060 [DEBUG] [Thread-67488 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39971)
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:10.065 [DEBUG] [Thread-67488 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:10.072 [DEBUG] [Thread-67488 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:10.073 [DEBUG] [Thread-67488 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:10.073 [INFO] [Thread-67488 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90497749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538100750049, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8674259, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.88718, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8412473161731, telescope_dec_j2k=-24.2484884376416, observability=1)
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.829633712768555s
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8687911;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88855;2460996.90503362;11.72078389;1.3;_
2025-11-17T11:43:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.8687911;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88855;2460996.90503362;11.72078389;1.3;_
2025-11-17T11:43:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:14.906 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.8687911, teldec = -24.256536
2025-11-17T11:43:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8687911 -24.256536
2025-11-17T11:43:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8687911 -24.256536
2025-11-17T11:43:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8687911 -24.256536
2025-11-17T11:43:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8687911;-24.256536;50.108405;89.993029;50.08601;90.12017;14.88855;2460996.90503365;11.72078389;1.3;_17.8426123509803 -24.2485393532876
2025-11-17T11:43:14.907 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.8426123509803     dec_j2k = -24.2485393532876
2025-11-17T11:43:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104538662317248;171.162351965909;_
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104538662317248;171.162351965909;_
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54617)
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:14.918 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:14.919 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:14.919 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90503362, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538662317248, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8687911, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.88855, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8426123509803, telescope_dec_j2k=-24.2485393532876, observability=1)
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.896155595779419s
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:21.815 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:21.816 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:21.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8707147;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89047;2460996.90511362;11.72270222;1.3;_
2025-11-17T11:43:21.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.8707147;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89047;2460996.90511362;11.72270222;1.3;_
2025-11-17T11:43:21.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:21.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:21.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:21.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:21.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:21.818 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.8707147, teldec = -24.256536
2025-11-17T11:43:21.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.8707147 -24.256536
2025-11-17T11:43:21.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.8707147 -24.256536
2025-11-17T11:43:21.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8707147 -24.256536
2025-11-17T11:43:21.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8707147;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89047;2460996.90511365;11.72270222;1.3;_17.8445357190831 -24.2486110966765
2025-11-17T11:43:21.819 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.8445357190831     dec_j2k = -24.2486110966765
2025-11-17T11:43:21.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:21.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:21.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104537900190335;171.162357330327;_
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104537900190335;171.162357330327;_
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:21.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:21.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:21.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:21.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:21.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45275)
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:21.825 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:21.832 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:21.833 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:43:21.833 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90511362, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104537900190335, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8707147, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.89047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8445357190831, telescope_dec_j2k=-24.2486110966765, observability=1)
2025-11-17T11:43:21.833 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08322334289551 seconds ago
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Status age = 6.286311626434326s
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:28.119 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:28.120 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:28.121 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:28.122 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 17;17.8724703;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89223;2460996.9051866;11.72445306;1.3;_
2025-11-17T11:43:28.122 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response 17;17.8724703;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89223;2460996.9051866;11.72445306;1.3;_
2025-11-17T11:43:28.122 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:28.122 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:28.122 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:28.123 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:28.123 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:28.123 [INFO] [Thread-67489 (handle)] [driver.py] [get_status()] Telra = 17.8724703, teldec = -24.256536
2025-11-17T11:43:28.123 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8724703 -24.256536
2025-11-17T11:43:28.124 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8724703 -24.256536
2025-11-17T11:43:28.124 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8724703 -24.256536
2025-11-17T11:43:28.124 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 17;17.8724703;-24.256536;50.108405;89.993029;50.08601;90.12017;14.89223;2460996.90518662;11.72445306;1.3;_17.8462911083204 -24.2486765763011
2025-11-17T11:43:28.125 [INFO] [Thread-67489 (handle)] [driver.py] [get_status()] ra_j2k = 17.8462911083204     dec_j2k = -24.2486765763011
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 140;0.104538221085878;171.162346601491;_
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response 140;0.104538221085878;171.162346601491;_
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:28.125 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:28.126 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:28.127 [DEBUG] [Thread-67489 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:28.127 [DEBUG] [Thread-67489 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:28.127 [DEBUG] [Thread-67489 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:28.131 [DEBUG] [Thread-67489 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45759)
2025-11-17T11:43:28.132 [DEBUG] [Thread-67489 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:28.132 [DEBUG] [Thread-67489 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:28.132 [DEBUG] [Thread-67489 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:28.132 [DEBUG] [Thread-67489 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:28.132 [DEBUG] [Thread-67489 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:28.139 [DEBUG] [Thread-67489 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:28.139 [INFO] [Thread-67489 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9051866, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538221085878, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993029, telescope_ra=17.8724703, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.89223, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:42:36.600785', telescope_ra_j2k=17.8462911083204, telescope_dec_j2k=-24.2486765763011, observability=1)
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:36.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:36.742 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:36.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:36.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:36.743 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:43:36.743 [INFO] [ThreadPoolExecutor-2741_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:43:36.743 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:43:36.829 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:43:36
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.689744234085083s
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:36.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8748966;-24.256536;50.108405;89.993028;50.08601;90.12017;14.89465;2460996.90528738;11.72687278;1.3;_
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8748966;-24.256536;50.108405;89.993028;50.08601;90.12017;14.89465;2460996.90528738;11.72687278;1.3;_
2025-11-17T11:43:36.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:36.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:36.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:36.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:36.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:36.832 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8748966, teldec = -24.256536
2025-11-17T11:43:36.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8748966 -24.256536
2025-11-17T11:43:36.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8748966 -24.256536
2025-11-17T11:43:36.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8748966 -24.256536
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8748966;-24.256536;50.108405;89.993028;50.08601;90.12017;14.89465;2460996.90528742;11.72687278;1.3;_17.848717118424 -24.2487670745783
2025-11-17T11:43:36.833 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.848717118424     dec_j2k = -24.2487670745783
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104538943100848;171.162351965909;_
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104538943100848;171.162351965909;_
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:36.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:36.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:36.835 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:36.835 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:36.835 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51645)
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:36.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:36.846 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:36.846 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:36.847 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:36.847 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90528738, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538943100848, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108405, telescope_az=89.993028, telescope_ra=17.8748966, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.89465, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.848717118424, telescope_dec_j2k=-24.2487670745783, observability=1)
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Status age = 9.384349584579468s
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:46.231 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:46.232 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:46.233 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 17;17.8775155;-24.256536;50.108404;89.993028;50.08601;90.12017;14.89727;2460996.90539622;11.72948444;1.3;_
2025-11-17T11:43:46.233 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response 17;17.8775155;-24.256536;50.108404;89.993028;50.08601;90.12017;14.89727;2460996.90539622;11.72948444;1.3;_
2025-11-17T11:43:46.233 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:46.233 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:46.233 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:46.234 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:46.234 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:46.234 [INFO] [Thread-67490 (handle)] [driver.py] [get_status()] Telra = 17.8775155, teldec = -24.256536
2025-11-17T11:43:46.234 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8775155 -24.256536
2025-11-17T11:43:46.234 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8775155 -24.256536
2025-11-17T11:43:46.234 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8775155 -24.256536
2025-11-17T11:43:46.235 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 17;17.8775155;-24.256536;50.108404;89.993028;50.08601;90.12017;14.89727;2460996.90539624;11.72948444;1.3;_17.8513357073192 -24.2488647607078
2025-11-17T11:43:46.235 [INFO] [Thread-67490 (handle)] [driver.py] [get_status()] ra_j2k = 17.8513357073192     dec_j2k = -24.2488647607078
2025-11-17T11:43:46.235 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:46.235 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 140;0.104538702429191;171.162362694745;_
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response 140;0.104538702429191;171.162362694745;_
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:46.236 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:46.237 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:46.238 [DEBUG] [Thread-67490 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:46.238 [DEBUG] [Thread-67490 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:43:46.238 [DEBUG] [Thread-67490 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47717)
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:46.245 [DEBUG] [Thread-67490 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:46.252 [DEBUG] [Thread-67490 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:46.253 [DEBUG] [Thread-67490 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:46.253 [INFO] [Thread-67490 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90539622, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538702429191, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993028, telescope_ra=17.8775155, telescope_dec=-24.256536, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.89727, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.8513357073192, telescope_dec_j2k=-24.2488647607078, observability=1)
2025-11-17T11:43:55.428 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.17557978630066s
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:43:55.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:43:55.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:43:55.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:43:55.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8800775;-24.256535;50.108404;89.993028;50.08601;90.12017;14.89983;2460996.90550266;11.73203944;1.3;_
2025-11-17T11:43:55.430 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8800775;-24.256535;50.108404;89.993028;50.08601;90.12017;14.89983;2460996.90550266;11.73203944;1.3;_
2025-11-17T11:43:55.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:43:55.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:43:55.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:43:55.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:55.432 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:43:55.432 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8800775, teldec = -24.256535
2025-11-17T11:43:55.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8800775 -24.256535
2025-11-17T11:43:55.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8800775 -24.256535
2025-11-17T11:43:55.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8800775 -24.256535
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8800775;-24.256535;50.108404;89.993028;50.08601;90.12017;14.89983;2460996.9055027;11.73203944;1.3;_17.853897404985 -24.2489593285635
2025-11-17T11:43:55.433 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.853897404985     dec_j2k = -24.2489593285635
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104538943100848;171.162357330327;_
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104538943100848;171.162357330327;_
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:55.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:43:55.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:43:55.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:55.435 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:43:55.435 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:43:55.437 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58201)
2025-11-17T11:43:55.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:43:55.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:43:55.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:43:55.438 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:43:55.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:43:55.446 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:43:55.446 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90550266, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104538943100848, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993028, telescope_ra=17.8800775, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.89983, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.853897404985, telescope_dec_j2k=-24.2489593285635, observability=1)
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:43:57.623 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:57.624 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:57.625 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.625 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:57.625 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:57.626 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:43:57.627 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:43:57.628 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Park
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:43:57.629 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:43:57.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 29;17.8806841;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90044;2460996.90552812;11.73264444;1.3;_Park Command Successful
2025-11-17T11:43:58.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:43:58.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:43:58.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:43:58.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:43:58.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:43:59.630 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:43:59.631 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:43:59.631 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:43:59.631 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:43:59.632 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:44:00.632 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:44:00.632 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:44:00.632 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:44:00.633 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:44:00.633 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_TrackingOffAccepted
2025-11-17T11:44:01.634 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:44:01.634 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:44:01.634 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_ParkRotatorAccepted
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:01.636 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:44:01.637 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:44:01.638 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:02.638 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:02.638 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:02.639 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:44:02.640 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:44:02.640 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:44:02.640 [DEBUG] [ThreadPoolExecutor-2740_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:02.640 [INFO] [ThreadPoolExecutor-2740_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:44:04.298 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:04.298 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Status age = 8.852429866790771s
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:04.299 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:04.300 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 17;17.8825542;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90231;2460996.90560532;11.73450944;1.3;_
2025-11-17T11:44:04.300 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response 17;17.8825542;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90231;2460996.90560532;11.73450944;1.3;_
2025-11-17T11:44:04.300 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:04.300 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:04.300 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:04.301 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:04.301 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:04.301 [INFO] [Thread-67491 (handle)] [driver.py] [get_status()] Telra = 17.8825542, teldec = -24.256535
2025-11-17T11:44:04.301 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8825542 -24.256535
2025-11-17T11:44:04.301 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8825542 -24.256535
2025-11-17T11:44:04.301 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8825542 -24.256535
2025-11-17T11:44:04.302 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 17;17.8825542;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90231;2460996.90560535;11.73450944;1.3;_17.8563738142278 -24.2490517182777
2025-11-17T11:44:04.302 [INFO] [Thread-67491 (handle)] [driver.py] [get_status()] ra_j2k = 17.8563738142278     dec_j2k = -24.2490517182777
2025-11-17T11:44:04.302 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:04.302 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:04.302 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 140;0.104539344220276;171.162368059163;_
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response 140;0.104539344220276;171.162368059163;_
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:04.303 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:04.304 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:04.305 [DEBUG] [Thread-67491 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:04.305 [DEBUG] [Thread-67491 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:04.305 [DEBUG] [Thread-67491 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38245)
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:04.307 [DEBUG] [Thread-67491 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:04.314 [DEBUG] [Thread-67491 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:04.314 [DEBUG] [Thread-67491 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:04.315 [DEBUG] [Thread-67491 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:04.315 [INFO] [Thread-67491 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90560532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104539344220276, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993028, telescope_ra=17.8825542, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.90231, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.8563738142278, telescope_dec_j2k=-24.2490517182777, observability=1)
2025-11-17T11:44:07.551 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:07.551 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Status age = 3.23656964302063s
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:07.552 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:07.553 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:07.554 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 17;17.8834517;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90321;2460996.90564299;11.73540444;1.3;_
2025-11-17T11:44:07.554 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response 17;17.8834517;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90321;2460996.90564299;11.73540444;1.3;_
2025-11-17T11:44:07.554 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:07.554 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:07.554 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:07.555 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:07.555 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:07.555 [INFO] [Thread-67492 (handle)] [driver.py] [get_status()] Telra = 17.8834517, teldec = -24.256535
2025-11-17T11:44:07.555 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8834517 -24.256535
2025-11-17T11:44:07.555 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8834517 -24.256535
2025-11-17T11:44:07.555 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8834517 -24.256535
2025-11-17T11:44:07.556 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 17;17.8834517;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90321;2460996.90564301;11.73540444;1.3;_17.8572712092775 -24.2490851991276
2025-11-17T11:44:07.556 [INFO] [Thread-67492 (handle)] [driver.py] [get_status()] ra_j2k = 17.8572712092775     dec_j2k = -24.2490851991276
2025-11-17T11:44:07.556 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:07.556 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 140;0.104539625003876;171.162351965909;_
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response 140;0.104539625003876;171.162351965909;_
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:07.557 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:07.558 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:07.558 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:07.559 [DEBUG] [Thread-67492 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:07.560 [DEBUG] [Thread-67492 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52691)
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:07.566 [DEBUG] [Thread-67492 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:07.573 [DEBUG] [Thread-67492 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:07.574 [DEBUG] [Thread-67492 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:07.574 [DEBUG] [Thread-67492 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:07.574 [DEBUG] [Thread-67492 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:07.574 [INFO] [Thread-67492 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90564299, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104539625003876, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993028, telescope_ra=17.8834517, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.90321, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.8572712092775, telescope_dec_j2k=-24.2490851991276, observability=1)
2025-11-17T11:44:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.305550575256348s
2025-11-17T11:44:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8854797;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90524;2460996.90572779;11.73742694;1.3;_
2025-11-17T11:44:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.8854797;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90524;2460996.90572779;11.73742694;1.3;_
2025-11-17T11:44:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:14.882 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.8854797, teldec = -24.256535
2025-11-17T11:44:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8854797 -24.256535
2025-11-17T11:44:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8854797 -24.256535
2025-11-17T11:44:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8854797 -24.256535
2025-11-17T11:44:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.8854797;-24.256535;50.108404;89.993028;50.08601;90.12017;14.90524;2460996.90572781;11.73742694;1.3;_17.8592989729407 -24.24916085456
2025-11-17T11:44:14.883 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.8592989729407     dec_j2k = -24.24916085456
2025-11-17T11:44:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104539424444162;171.162357330327;_
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104539424444162;171.162357330327;_
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:44:14.889 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44207)
2025-11-17T11:44:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:14.890 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:14.897 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90572779, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104539424444162, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993028, telescope_ra=17.8854797, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.90524, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.8592989729407, telescope_dec_j2k=-24.24916085456, observability=1)
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.995485305786133s
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:21.893 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:21.894 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:21.895 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8874593;-24.256535;50.108404;89.993027;50.08601;90.12017;14.90721;2460996.90580897;11.73940111;1.3;_
2025-11-17T11:44:21.895 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.8874593;-24.256535;50.108404;89.993027;50.08601;90.12017;14.90721;2460996.90580897;11.73940111;1.3;_
2025-11-17T11:44:21.895 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:21.895 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:21.895 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:21.896 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:21.896 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:21.896 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.8874593, teldec = -24.256535
2025-11-17T11:44:21.896 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.8874593 -24.256535
2025-11-17T11:44:21.896 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.8874593 -24.256535
2025-11-17T11:44:21.896 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8874593 -24.256535
2025-11-17T11:44:21.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.8874593;-24.256535;50.108404;89.993027;50.08601;90.12017;14.90721;2460996.90580899;11.73940111;1.3;_17.8612783433275 -24.249234706757
2025-11-17T11:44:21.897 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.8612783433275     dec_j2k = -24.249234706757
2025-11-17T11:44:21.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:21.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:21.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104540026123304;171.162351965909;_
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104540026123304;171.162351965909;_
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:21.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:21.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:21.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:21.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:21.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41551)
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:21.903 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:21.910 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:21.911 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:21.911 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:21.911 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:44:21.911 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90580897, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540026123304, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108404, telescope_az=89.993027, telescope_ra=17.8874593, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.90721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:43:36.740705', telescope_ra_j2k=17.8612783433275, telescope_dec_j2k=-24.249234706757, observability=1)
2025-11-17T11:44:21.911 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.081886291503906 seconds ago
2025-11-17T11:44:22.368 [DEBUG] [Thread-67493 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:22.368 [DEBUG] [Thread-67493 (handle)] [server.py] [get_status()] Status age = 0.45768046379089355s
2025-11-17T11:44:22.368 [DEBUG] [Thread-67493 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.45768046379089355
2025-11-17T11:44:36.882 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:36.882 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:36.883 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:36.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:36.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:36.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:36.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:36.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:36.884 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:36.885 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:36.886 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:44:36.886 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:44:36.886 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:44:36.886 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:36.907 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:44:36
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.996272563934326s
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:36.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:36.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:36.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8916382;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91139;2460996.90598274;11.74356861;1.3;_
2025-11-17T11:44:36.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.8916382;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91139;2460996.90598274;11.74356861;1.3;_
2025-11-17T11:44:36.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:36.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:36.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:36.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:36.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:36.910 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.8916382, teldec = -24.256535
2025-11-17T11:44:36.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8916382 -24.256535
2025-11-17T11:44:36.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8916382 -24.256535
2025-11-17T11:44:36.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8916382 -24.256535
2025-11-17T11:44:36.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.8916382;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91139;2460996.90598277;11.74356861;1.3;_17.8654567621328 -24.2493906149431
2025-11-17T11:44:36.911 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.8654567621328     dec_j2k = -24.2493906149431
2025-11-17T11:44:36.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:36.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:36.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104539705227761;171.162357330327;_
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104539705227761;171.162357330327;_
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:36.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:36.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:36.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:36.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:36.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51027)
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:36.917 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:36.924 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:36.924 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90598274, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104539705227761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993027, telescope_ra=17.8916382, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.91139, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8654567621328, telescope_dec_j2k=-24.2493906149431, observability=1)
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:37.887 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:44:37.888 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:37.889 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:37.890 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:37.890 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:37.890 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:37.890 [DEBUG] [ThreadPoolExecutor-2742_0] [payload.py] [to_registers()] [0]
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54437)
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:37.896 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:37.903 [DEBUG] [ThreadPoolExecutor-2742_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Status age = 3.573702573776245s
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:40.498 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:40.499 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:40.500 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 17;17.8926131;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91237;2460996.90602431;11.74454083;1.3;_
2025-11-17T11:44:40.500 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response 17;17.8926131;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91237;2460996.90602431;11.74454083;1.3;_
2025-11-17T11:44:40.500 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:40.500 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:40.500 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:40.501 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:40.501 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:40.501 [INFO] [Thread-67494 (handle)] [driver.py] [get_status()] Telra = 17.8926131, teldec = -24.256535
2025-11-17T11:44:40.501 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8926131 -24.256535
2025-11-17T11:44:40.501 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8926131 -24.256535
2025-11-17T11:44:40.501 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8926131 -24.256535
2025-11-17T11:44:40.502 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 17;17.8926131;-24.256535;50.108403;89.993027;50.08601;90.12017;14.91237;2460996.90602433;11.74454083;1.3;_17.8664315505606 -24.2494269883829
2025-11-17T11:44:40.502 [INFO] [Thread-67494 (handle)] [driver.py] [get_status()] ra_j2k = 17.8664315505606     dec_j2k = -24.2494269883829
2025-11-17T11:44:40.502 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:40.502 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:40.502 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 140;0.104540748138274;171.162368059163;_
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response 140;0.104540748138274;171.162368059163;_
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:40.503 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:40.504 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:40.504 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:40.505 [DEBUG] [Thread-67494 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:40.506 [DEBUG] [Thread-67494 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46849)
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:40.512 [DEBUG] [Thread-67494 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:40.520 [DEBUG] [Thread-67494 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:40.520 [INFO] [Thread-67494 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90602431, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540748138274, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993027, telescope_ra=17.8926131, telescope_dec=-24.256535, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.91237, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8664315505606, telescope_dec_j2k=-24.2494269883829, observability=1)
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.017130851745605s
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:54.537 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:54.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:54.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8965436;-24.256534;50.108403;89.993027;50.08601;90.12017;14.9163;2460996.90618679;11.74846056;1.3;_
2025-11-17T11:44:54.539 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.8965436;-24.256534;50.108403;89.993027;50.08601;90.12017;14.9163;2460996.90618679;11.74846056;1.3;_
2025-11-17T11:44:54.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:54.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:54.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:54.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:54.540 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:54.540 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.8965436, teldec = -24.256534
2025-11-17T11:44:54.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8965436 -24.256534
2025-11-17T11:44:54.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8965436 -24.256534
2025-11-17T11:44:54.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8965436 -24.256534
2025-11-17T11:44:54.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.8965436;-24.256534;50.108403;89.993027;50.08601;90.12017;14.9163;2460996.90618682;11.74846056;1.3;_17.8703616035682 -24.2495726405823
2025-11-17T11:44:54.541 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.8703616035682     dec_j2k = -24.2495726405823
2025-11-17T11:44:54.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:54.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104540708026332;171.162357330327;_
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104540708026332;171.162357330327;_
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:54.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:54.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:54.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:54.544 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.036;-0.0033;_GetRotatorData
2025-11-17T11:44:54.544 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42635)
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:54.548 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:54.556 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:54.556 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90618679, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.964)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540708026332, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993027, telescope_ra=17.8965436, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.9163, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8703616035682, telescope_dec_j2k=-24.2495726405823, observability=1)
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Status age = 4.004636287689209s
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:44:58.561 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:44:58.562 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:44:58.563 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 17;17.8976539;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91741;2460996.90623337;11.74956778;1.3;_
2025-11-17T11:44:58.563 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response 17;17.8976539;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91741;2460996.90623337;11.74956778;1.3;_
2025-11-17T11:44:58.563 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:44:58.563 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:44:58.563 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:44:58.564 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:58.564 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:44:58.564 [INFO] [Thread-67495 (handle)] [driver.py] [get_status()] Telra = 17.8976539, teldec = -24.256534
2025-11-17T11:44:58.564 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] UnCookCoordinates 17.8976539 -24.256534
2025-11-17T11:44:58.564 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.8976539 -24.256534
2025-11-17T11:44:58.564 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.8976539 -24.256534
2025-11-17T11:44:58.565 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 17;17.8976539;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91741;2460996.90623339;11.74956778;1.3;_17.8714717780086 -24.249614068924
2025-11-17T11:44:58.565 [INFO] [Thread-67495 (handle)] [driver.py] [get_status()] ra_j2k = 17.8714717780086     dec_j2k = -24.249614068924
2025-11-17T11:44:58.565 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:44:58.565 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:44:58.565 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 140;0.104540507466618;171.162362694745;_
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response 140;0.104540507466618;171.162362694745;_
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.00329;_GetRotatorData
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:44:58.566 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:44:58.567 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:44:58.567 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:44:58.567 [DEBUG] [Thread-67495 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:58.567 [DEBUG] [Thread-67495 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:44:58.567 [DEBUG] [Thread-67495 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54163)
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:44:58.570 [DEBUG] [Thread-67495 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:44:58.577 [DEBUG] [Thread-67495 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:44:58.577 [INFO] [Thread-67495 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90623337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540507466618, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993027, telescope_ra=17.8976539, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.91741, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8714717780086, telescope_dec_j2k=-24.249614068924, observability=1)
2025-11-17T11:45:02.904 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:02.904 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:02.904 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:02.904 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:02.904 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:02.905 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:45:02.906 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:45:02.907 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Status age = 9.03577446937561s
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:07.613 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:07.614 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:07.615 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 17;17.9001674;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91992;2460996.90633814;11.75207444;1.3;_
2025-11-17T11:45:07.615 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response 17;17.9001674;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91992;2460996.90633814;11.75207444;1.3;_
2025-11-17T11:45:07.615 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:07.615 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:07.615 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:07.616 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:07.616 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:07.616 [INFO] [Thread-67496 (handle)] [driver.py] [get_status()] Telra = 17.9001674, teldec = -24.256534
2025-11-17T11:45:07.616 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9001674 -24.256534
2025-11-17T11:45:07.616 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9001674 -24.256534
2025-11-17T11:45:07.616 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9001674 -24.256534
2025-11-17T11:45:07.617 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 17;17.9001674;-24.256534;50.108403;89.993027;50.08601;90.12017;14.91992;2460996.90633816;11.75207444;1.3;_17.8739849950105 -24.2497078570588
2025-11-17T11:45:07.617 [INFO] [Thread-67496 (handle)] [driver.py] [get_status()] ra_j2k = 17.8739849950105     dec_j2k = -24.2497078570588
2025-11-17T11:45:07.617 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:07.617 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:07.617 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 140;0.104541069033817;171.162368059163;_
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response 140;0.104541069033817;171.162368059163;_
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.036;-0.0033;_GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.036 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:07.618 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:07.619 [DEBUG] [Thread-67496 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:07.620 [DEBUG] [Thread-67496 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:07.620 [DEBUG] [Thread-67496 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:07.626 [DEBUG] [Thread-67496 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56297)
2025-11-17T11:45:07.627 [DEBUG] [Thread-67496 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:07.627 [DEBUG] [Thread-67496 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:07.627 [DEBUG] [Thread-67496 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:07.627 [DEBUG] [Thread-67496 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:07.627 [DEBUG] [Thread-67496 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:07.634 [DEBUG] [Thread-67496 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:07.635 [INFO] [Thread-67496 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90633814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.036, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.104), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104541069033817, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993027, telescope_ra=17.9001674, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.91992, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8739849950105, telescope_dec_j2k=-24.2497078570588, observability=1)
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.25342583656311s
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9021952;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92195;2460996.90642234;11.75409667;1.3;_
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.9021952;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92195;2460996.90642234;11.75409667;1.3;_
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:14.891 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.9021952, teldec = -24.256534
2025-11-17T11:45:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9021952 -24.256534
2025-11-17T11:45:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9021952 -24.256534
2025-11-17T11:45:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9021952 -24.256534
2025-11-17T11:45:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9021952;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92195;2460996.90642236;11.75409667;1.3;_17.876012567956 -24.2497835244547
2025-11-17T11:45:14.892 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.876012567956     dec_j2k = -24.2497835244547
2025-11-17T11:45:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104540868474103;171.162351965909;_
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104540868474103;171.162351965909;_
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52261)
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:14.907 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:14.907 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:14.907 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90642234, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540868474103, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993026, telescope_ra=17.9021952, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.92195, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.876012567956, telescope_dec_j2k=-24.2497835244547, observability=1)
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Status age = 1.7139465808868408s
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:16.621 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:16.622 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:16.623 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 17;17.9027027;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92246;2460996.9064424;11.75460278;1.3;_
2025-11-17T11:45:16.623 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response 17;17.9027027;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92246;2460996.9064424;11.75460278;1.3;_
2025-11-17T11:45:16.623 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:16.623 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:16.624 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:16.624 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:16.624 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:16.624 [INFO] [Thread-67497 (handle)] [driver.py] [get_status()] Telra = 17.9027027, teldec = -24.256534
2025-11-17T11:45:16.625 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9027027 -24.256534
2025-11-17T11:45:16.625 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9027027 -24.256534
2025-11-17T11:45:16.625 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9027027 -24.256534
2025-11-17T11:45:16.626 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 17;17.9027027;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92246;2460996.90644242;11.75460278;1.3;_17.8765200113066 -24.249802462181
2025-11-17T11:45:16.626 [INFO] [Thread-67497 (handle)] [driver.py] [get_status()] ra_j2k = 17.8765200113066     dec_j2k = -24.249802462181
2025-11-17T11:45:16.626 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:16.626 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:16.626 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:16.626 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 140;0.104540667914389;171.162351965909;_
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response 140;0.104540667914389;171.162351965909;_
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:16.627 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:16.628 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:16.628 [DEBUG] [Thread-67497 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:45:16.628 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:16.628 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:16.628 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:16.629 [DEBUG] [Thread-67497 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:16.629 [DEBUG] [Thread-67497 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:16.629 [DEBUG] [Thread-67497 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38933)
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:16.635 [DEBUG] [Thread-67497 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:16.642 [DEBUG] [Thread-67497 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:16.642 [DEBUG] [Thread-67497 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:16.643 [DEBUG] [Thread-67497 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:16.643 [INFO] [Thread-67497 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9064424, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540667914389, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993026, telescope_ra=17.9027027, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.92246, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8765200113066, telescope_dec_j2k=-24.249802462181, observability=1)
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.327723741531372s
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:21.971 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:21.972 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:21.973 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9041778;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92393;2460996.90650431;11.75607389;1.3;_
2025-11-17T11:45:21.973 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.9041778;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92393;2460996.90650431;11.75607389;1.3;_
2025-11-17T11:45:21.973 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:21.973 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:21.973 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:21.974 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:21.974 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:21.974 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.9041778, teldec = -24.256534
2025-11-17T11:45:21.974 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.9041778 -24.256534
2025-11-17T11:45:21.974 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.9041778 -24.256534
2025-11-17T11:45:21.974 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9041778 -24.256534
2025-11-17T11:45:21.975 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9041778;-24.256534;50.108403;89.993026;50.08601;90.12017;14.92393;2460996.90650434;11.75607389;1.3;_17.8779949470488 -24.2498575073948
2025-11-17T11:45:21.975 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.8779949470488     dec_j2k = -24.2498575073948
2025-11-17T11:45:21.975 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:21.975 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:21.975 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10454110914576;171.162357330327;_
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10454110914576;171.162357330327;_
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:21.976 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:21.977 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:21.977 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:21.977 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:21.981 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33971)
2025-11-17T11:45:21.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:21.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:21.981 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:21.981 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:21.982 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:21.989 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:21.989 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:21.990 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:45:21.990 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90650431, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10454110914576, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108403, telescope_az=89.993026, telescope_ra=17.9041778, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.92393, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8779949470488, telescope_dec_j2k=-24.2498575073948, observability=1)
2025-11-17T11:45:21.990 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.083168506622314 seconds ago
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Status age = 12.74212646484375s
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:34.732 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 17;17.9077456;-24.256534;50.108402;89.993026;50.08601;90.12017;14.9275;2460996.906652;11.75963194;1.3;_
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response 17;17.9077456;-24.256534;50.108402;89.993026;50.08601;90.12017;14.9275;2460996.906652;11.75963194;1.3;_
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:34.733 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:34.734 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:34.734 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:34.734 [INFO] [Thread-67498 (handle)] [driver.py] [get_status()] Telra = 17.9077456, teldec = -24.256534
2025-11-17T11:45:34.734 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9077456 -24.256534
2025-11-17T11:45:34.734 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9077456 -24.256534
2025-11-17T11:45:34.734 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9077456 -24.256534
2025-11-17T11:45:34.735 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 17;17.9077456;-24.256534;50.108402;89.993026;50.08601;90.12017;14.9275;2460996.90665203;11.75963194;1.3;_17.8815623522197 -24.2499906492221
2025-11-17T11:45:34.735 [INFO] [Thread-67498 (handle)] [driver.py] [get_status()] ra_j2k = 17.8815623522197     dec_j2k = -24.2499906492221
2025-11-17T11:45:34.735 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:34.735 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 140;0.104541309705474;171.162368059163;_
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response 140;0.104541309705474;171.162368059163;_
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:34.736 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:34.737 [DEBUG] [Thread-67498 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:34.737 [DEBUG] [Thread-67498 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:34.737 [DEBUG] [Thread-67498 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:34.743 [DEBUG] [Thread-67498 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49767)
2025-11-17T11:45:34.743 [DEBUG] [Thread-67498 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:34.743 [DEBUG] [Thread-67498 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:34.743 [DEBUG] [Thread-67498 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:34.743 [DEBUG] [Thread-67498 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:34.744 [DEBUG] [Thread-67498 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:34.751 [DEBUG] [Thread-67498 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:34.751 [INFO] [Thread-67498 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.906652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104541309705474, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993026, telescope_ra=17.9077456, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.9275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8815623522197, telescope_dec_j2k=-24.2499906492221, observability=1)
2025-11-17T11:45:36.995 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:45:36
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.2442896366119385s
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:36.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:36.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:36.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:36.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9083615;-24.256534;50.108402;89.993026;50.08601;90.12017;14.92812;2460996.90667822;11.76024611;1.3;_
2025-11-17T11:45:36.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.9083615;-24.256534;50.108402;89.993026;50.08601;90.12017;14.92812;2460996.90667822;11.76024611;1.3;_
2025-11-17T11:45:36.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:36.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:36.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:36.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:36.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:36.999 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.9083615, teldec = -24.256534
2025-11-17T11:45:36.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9083615 -24.256534
2025-11-17T11:45:36.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9083615 -24.256534
2025-11-17T11:45:36.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9083615 -24.256534
2025-11-17T11:45:37.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9083615;-24.256534;50.108402;89.993026;50.08601;90.12017;14.92812;2460996.90667824;11.76024611;1.3;_17.8821781844135 -24.2500136338406
2025-11-17T11:45:37.000 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.8821781844135     dec_j2k = -24.2500136338406
2025-11-17T11:45:37.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:37.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:37.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104540988809931;171.162351965909;_
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104540988809931;171.162351965909;_
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:37.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:37.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:37.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:37.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:37.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45495)
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:37.007 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:37.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:37.014 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90667822, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104540988809931, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993026, telescope_ra=17.9083615, telescope_dec=-24.256534, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.92812, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:44:36.882410', telescope_ra_j2k=17.8821781844135, telescope_dec_j2k=-24.2500136338406, observability=1)
2025-11-17T11:45:37.026 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:37.027 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:37.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:37.028 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:37.028 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:37.028 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:37.028 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:45:37.029 [INFO] [ThreadPoolExecutor-2743_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:45:37.029 [INFO] [ThreadPoolExecutor-2743_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Status age = 15.778727293014526s
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:52.793 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:45:52.794 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:45:52.795 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 17;17.9127596;-24.256533;50.108402;89.993026;50.08601;90.12017;14.93252;2460996.90686105;11.76463222;1.3;_
2025-11-17T11:45:52.795 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response 17;17.9127596;-24.256533;50.108402;89.993026;50.08601;90.12017;14.93252;2460996.90686105;11.76463222;1.3;_
2025-11-17T11:45:52.795 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:45:52.795 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:45:52.795 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:45:52.796 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:52.796 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:45:52.796 [INFO] [Thread-67499 (handle)] [driver.py] [get_status()] Telra = 17.9127596, teldec = -24.256533
2025-11-17T11:45:52.796 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9127596 -24.256533
2025-11-17T11:45:52.796 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9127596 -24.256533
2025-11-17T11:45:52.796 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9127596 -24.256533
2025-11-17T11:45:52.797 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 17;17.9127596;-24.256533;50.108402;89.993026;50.08601;90.12017;14.93252;2460996.90686108;11.76463222;1.3;_17.8865758034268 -24.2501767713412
2025-11-17T11:45:52.797 [INFO] [Thread-67499 (handle)] [driver.py] [get_status()] ra_j2k = 17.8865758034268     dec_j2k = -24.2501767713412
2025-11-17T11:45:52.797 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:45:52.797 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 140;0.104541871272673;171.162368059163;_
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response 140;0.104541871272673;171.162368059163;_
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:52.798 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:45:52.799 [DEBUG] [Thread-67499 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53295)
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:45:52.806 [DEBUG] [Thread-67499 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:45:52.813 [DEBUG] [Thread-67499 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:45:52.813 [DEBUG] [Thread-67499 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:52.813 [DEBUG] [Thread-67499 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:45:52.814 [DEBUG] [Thread-67499 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:45:52.814 [INFO] [Thread-67499 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90686105, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104541871272673, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993026, telescope_ra=17.9127596, telescope_dec=-24.256533, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.93252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8865758034268, telescope_dec_j2k=-24.2501767713412, observability=1)
2025-11-17T11:45:53.650 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:45:53.651 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.8366830348968506s
2025-11-17T11:45:53.651 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8366830348968506
2025-11-17T11:45:57.907 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.907 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.907 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:57.907 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:45:57.908 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:45:57.909 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:45:57.909 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.909 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.909 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.909 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:57.910 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:57.910 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:57.910 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.910 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:57.910 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:57.911 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:45:57.912 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:45:57.913 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Park
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:45:57.914 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 29;17.914179;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93393;2460996.9069203;11.76604778;1.3;_Park Command Successful
2025-11-17T11:45:58.915 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:45:58.915 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:45:58.915 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:45:58.916 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:45:58.916 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:45:59.916 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:45:59.916 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:45:59.916 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:45:59.917 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:45:59.917 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:46:00.917 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:46:00.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:46:00.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:46:00.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:46:00.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:46:01.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:46:01.918 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:46:01.920 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:01.921 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:01.923 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:01.923 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:01.923 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:46:01.924 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:02.924 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:02.925 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:02.925 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:02.925 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:02.925 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:46:02.926 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:46:02.927 [DEBUG] [ThreadPoolExecutor-2742_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:02.927 [INFO] [ThreadPoolExecutor-2742_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Status age = 14.849939823150635s
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:07.664 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 17;17.9169073;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93666;2460996.90703316;11.76876861;1.3;_
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response 17;17.9169073;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93666;2460996.90703316;11.76876861;1.3;_
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:07.665 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:07.666 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:07.666 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:07.666 [INFO] [Thread-67500 (handle)] [driver.py] [get_status()] Telra = 17.9169073, teldec = -24.256533
2025-11-17T11:46:07.666 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9169073 -24.256533
2025-11-17T11:46:07.666 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9169073 -24.256533
2025-11-17T11:46:07.666 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9169073 -24.256533
2025-11-17T11:46:07.667 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 17;17.9169073;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93666;2460996.90703318;11.76876861;1.3;_17.8907230544804 -24.2503315730916
2025-11-17T11:46:07.667 [INFO] [Thread-67500 (handle)] [driver.py] [get_status()] ra_j2k = 17.8907230544804     dec_j2k = -24.2503315730916
2025-11-17T11:46:07.667 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:07.667 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:07.667 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 140;0.104542071832387;171.162357330327;_
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response 140;0.104542071832387;171.162357330327;_
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:07.668 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:07.669 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:07.669 [DEBUG] [Thread-67500 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:07.669 [DEBUG] [Thread-67500 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:07.669 [DEBUG] [Thread-67500 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41365)
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:07.675 [DEBUG] [Thread-67500 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:07.682 [DEBUG] [Thread-67500 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:07.682 [DEBUG] [Thread-67500 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:07.683 [DEBUG] [Thread-67500 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:07.683 [INFO] [Thread-67500 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90703316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104542071832387, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993025, telescope_ra=17.9169073, telescope_dec=-24.256533, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.93666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8907230544804, telescope_dec_j2k=-24.2503315730916, observability=1)
2025-11-17T11:46:10.873 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Status age = 3.19057035446167s
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 17;17.9178056;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93756;2460996.9070703;11.76966444;1.3;_
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response 17;17.9178056;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93756;2460996.9070703;11.76966444;1.3;_
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:10.874 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:10.875 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:10.875 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:10.875 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:10.876 [INFO] [Thread-67501 (handle)] [driver.py] [get_status()] Telra = 17.9178056, teldec = -24.256533
2025-11-17T11:46:10.876 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9178056 -24.256533
2025-11-17T11:46:10.876 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9178056 -24.256533
2025-11-17T11:46:10.876 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9178056 -24.256533
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 17;17.9178056;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93756;2460996.90707034;11.76966444;1.3;_17.8916212578681 -24.2503651008893
2025-11-17T11:46:10.877 [INFO] [Thread-67501 (handle)] [driver.py] [get_status()] ra_j2k = 17.8916212578681     dec_j2k = -24.2503651008893
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 140;0.104542192168215;171.162351965909;_
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response 140;0.104542192168215;171.162351965909;_
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:10.877 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:10.878 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:10.879 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:10.879 [DEBUG] [Thread-67501 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:10.879 [DEBUG] [Thread-67501 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:10.879 [DEBUG] [Thread-67501 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37751)
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:10.884 [DEBUG] [Thread-67501 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:10.891 [DEBUG] [Thread-67501 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:10.891 [INFO] [Thread-67501 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9070703, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104542192168215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993025, telescope_ra=17.9178056, telescope_dec=-24.256533, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.93756, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8916212578681, telescope_dec_j2k=-24.2503651008893, observability=1)
2025-11-17T11:46:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.005006551742554s
2025-11-17T11:46:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9189189;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93867;2460996.90711688;11.77077472;1.3;_
2025-11-17T11:46:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.9189189;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93867;2460996.90711688;11.77077472;1.3;_
2025-11-17T11:46:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:14.900 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.9189189, teldec = -24.256533
2025-11-17T11:46:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9189189 -24.256533
2025-11-17T11:46:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9189189 -24.256533
2025-11-17T11:46:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9189189 -24.256533
2025-11-17T11:46:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9189189;-24.256533;50.108402;89.993025;50.08601;90.12017;14.93867;2460996.90711691;11.77077472;1.3;_17.8927344384386 -24.2504066538328
2025-11-17T11:46:14.901 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.8927344384386     dec_j2k = -24.2504066538328
2025-11-17T11:46:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104542392727929;171.162346601491;_
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104542392727929;171.162346601491;_
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60651)
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:14.917 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90711688, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104542392727929, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108402, telescope_az=89.993025, telescope_ra=17.9189189, telescope_dec=-24.256533, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.93867, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8927344384386, telescope_dec_j2k=-24.2504066538328, observability=1)
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.132355690002441s
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:22.050 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9209258;-24.256533;50.108401;89.993025;50.08601;90.12017;14.94068;2460996.90719966;11.77277611;1.3;_
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.9209258;-24.256533;50.108401;89.993025;50.08601;90.12017;14.94068;2460996.90719966;11.77277611;1.3;_
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:22.051 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:22.052 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:22.052 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:22.053 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:22.053 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.9209258, teldec = -24.256533
2025-11-17T11:46:22.053 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.9209258 -24.256533
2025-11-17T11:46:22.053 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.9209258 -24.256533
2025-11-17T11:46:22.053 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9209258 -24.256533
2025-11-17T11:46:22.054 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9209258;-24.256533;50.108401;89.993025;50.08601;90.12017;14.94068;2460996.9071997;11.77277611;1.3;_17.894741124004 -24.2504815611934
2025-11-17T11:46:22.054 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.894741124004     dec_j2k = -24.2504815611934
2025-11-17T11:46:22.054 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:22.054 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:22.054 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:22.054 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104542713623472;171.162357330327;_
2025-11-17T11:46:22.055 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104542713623472;171.162357330327;_
2025-11-17T11:46:22.055 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:22.055 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:22.055 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:22.055 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:22.056 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:22.057 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:22.057 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:22.057 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52211)
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:22.063 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:22.070 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:22.071 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:46:22.071 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90719966, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104542713623472, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993025, telescope_ra=17.9209258, telescope_dec=-24.256533, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.94068, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.894741124004, telescope_dec_j2k=-24.2504815611934, observability=1)
2025-11-17T11:46:22.071 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07585787773132 seconds ago
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Status age = 6.908367156982422s
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:28.979 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 17;17.9228505;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94261;2460996.90727986;11.77469556;1.3;_
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response 17;17.9228505;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94261;2460996.90727986;11.77469556;1.3;_
2025-11-17T11:46:28.980 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:28.981 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:28.981 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:28.982 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:28.982 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:28.982 [INFO] [Thread-67502 (handle)] [driver.py] [get_status()] Telra = 17.9228505, teldec = -24.256532
2025-11-17T11:46:28.982 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9228505 -24.256532
2025-11-17T11:46:28.982 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9228505 -24.256532
2025-11-17T11:46:28.982 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9228505 -24.256532
2025-11-17T11:46:28.983 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 17;17.9228505;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94261;2460996.9072799;11.77469556;1.3;_17.8966656195863 -24.250552402402
2025-11-17T11:46:28.983 [INFO] [Thread-67502 (handle)] [driver.py] [get_status()] ra_j2k = 17.8966656195863     dec_j2k = -24.250552402402
2025-11-17T11:46:28.983 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:28.983 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:28.983 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 140;0.1045433955265;171.162357330327;_
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response 140;0.1045433955265;171.162357330327;_
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:28.984 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:28.985 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:28.986 [DEBUG] [Thread-67502 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:28.986 [DEBUG] [Thread-67502 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:28.986 [DEBUG] [Thread-67502 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36255)
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:28.989 [DEBUG] [Thread-67502 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:28.996 [DEBUG] [Thread-67502 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:28.997 [DEBUG] [Thread-67502 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:28.997 [DEBUG] [Thread-67502 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:28.997 [INFO] [Thread-67502 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90727986, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1045433955265, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993025, telescope_ra=17.9228505, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.94261, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8966656195863, telescope_dec_j2k=-24.250552402402, observability=1)
2025-11-17T11:46:37.082 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:46:37
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.085616111755371s
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:37.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9251017;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94486;2460996.90737365;11.77694056;1.3;_
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.9251017;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94486;2460996.90737365;11.77694056;1.3;_
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:37.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:37.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:37.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:37.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:37.085 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.9251017, teldec = -24.256532
2025-11-17T11:46:37.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9251017 -24.256532
2025-11-17T11:46:37.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9251017 -24.256532
2025-11-17T11:46:37.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9251017 -24.256532
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9251017;-24.256532;50.108401;89.993025;50.08601;90.12017;14.94486;2460996.90737367;11.77694056;1.3;_17.8989165815436 -24.2506364327877
2025-11-17T11:46:37.086 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.8989165815436     dec_j2k = -24.2506364327877
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104543355414557;171.162357330327;_
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104543355414557;171.162357330327;_
2025-11-17T11:46:37.086 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:37.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:37.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:37.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:37.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:37.093 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34171)
2025-11-17T11:46:37.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:37.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:37.094 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:37.094 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:37.094 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:37.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:37.101 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:37.101 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90737365, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104543355414557, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993025, telescope_ra=17.9251017, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.94486, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:45:37.026551', telescope_ra_j2k=17.8989165815436, telescope_dec_j2k=-24.2506364327877, observability=1)
2025-11-17T11:46:37.172 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:37.172 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:37.173 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:37.174 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:46:37.174 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:37.174 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:37.174 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:37.174 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:37.174 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:46:37.175 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:46:37.176 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:38.176 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:38.176 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:38.176 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:38.176 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:38.176 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:46:38.177 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:38.178 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:38.179 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:38.179 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:38.179 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:38.179 [DEBUG] [ThreadPoolExecutor-2744_0] [payload.py] [to_registers()] [0]
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57745)
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:38.185 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:38.192 [DEBUG] [ThreadPoolExecutor-2744_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Status age = 9.944087982177734s
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:47.045 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:47.047 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:47.048 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 17;17.9278887;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94764;2460996.90748898;11.77972;1.3;_
2025-11-17T11:46:47.048 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response 17;17.9278887;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94764;2460996.90748898;11.77972;1.3;_
2025-11-17T11:46:47.048 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:47.048 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:47.048 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:47.049 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:47.049 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:47.049 [INFO] [Thread-67503 (handle)] [driver.py] [get_status()] Telra = 17.9278887, teldec = -24.256532
2025-11-17T11:46:47.049 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9278887 -24.256532
2025-11-17T11:46:47.049 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9278887 -24.256532
2025-11-17T11:46:47.049 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9278887 -24.256532
2025-11-17T11:46:47.050 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 17;17.9278887;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94764;2460996.907489;11.77972;1.3;_17.9017032887649 -24.2507404663832
2025-11-17T11:46:47.050 [INFO] [Thread-67503 (handle)] [driver.py] [get_status()] ra_j2k = 17.9017032887649     dec_j2k = -24.2507404663832
2025-11-17T11:46:47.050 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:47.050 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:47.050 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:47.051 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 140;0.104543916981756;171.162351965909;_
2025-11-17T11:46:47.051 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response 140;0.104543916981756;171.162351965909;_
2025-11-17T11:46:47.051 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:47.052 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:47.053 [DEBUG] [Thread-67503 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:47.053 [DEBUG] [Thread-67503 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:47.053 [DEBUG] [Thread-67503 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:47.058 [DEBUG] [Thread-67503 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55303)
2025-11-17T11:46:47.058 [DEBUG] [Thread-67503 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:47.059 [DEBUG] [Thread-67503 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:47.059 [DEBUG] [Thread-67503 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:47.059 [DEBUG] [Thread-67503 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:47.059 [DEBUG] [Thread-67503 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:47.066 [DEBUG] [Thread-67503 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:47.066 [INFO] [Thread-67503 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90748898, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104543916981756, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993024, telescope_ra=17.9278887, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.94764, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9017032887649, telescope_dec_j2k=-24.2507404663832, observability=1)
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.674731016159058s
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:46:52.741 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:46:52.742 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:46:52.742 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:46:52.742 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:46:52.742 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:46:52.742 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:46:52.743 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9294786;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94923;2460996.9075549;11.78130556;1.3;_
2025-11-17T11:46:52.743 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.9294786;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94923;2460996.9075549;11.78130556;1.3;_
2025-11-17T11:46:52.743 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:46:52.743 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:46:52.743 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:46:52.744 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:52.744 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:46:52.744 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.9294786, teldec = -24.256532
2025-11-17T11:46:52.744 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9294786 -24.256532
2025-11-17T11:46:52.744 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9294786 -24.256532
2025-11-17T11:46:52.744 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9294786 -24.256532
2025-11-17T11:46:52.745 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9294786;-24.256532;50.108401;89.993024;50.08601;90.12017;14.94923;2460996.90755492;11.78130556;1.3;_17.9032930226948 -24.250799816118
2025-11-17T11:46:52.745 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.9032930226948     dec_j2k = -24.250799816118
2025-11-17T11:46:52.745 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:46:52.745 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:46:52.745 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104543796645928;171.162351965909;_
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104543796645928;171.162351965909;_
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:52.746 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:46:52.747 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:46:52.748 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:52.748 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:46:52.748 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45327)
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:46:52.750 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:46:52.758 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:46:52.758 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9075549, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104543796645928, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993024, telescope_ra=17.9294786, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.94923, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9032930226948, telescope_dec_j2k=-24.250799816118, observability=1)
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:03.193 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:03.194 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:47:03.195 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:47:03.196 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Status age = 12.407252550125122s
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:05.165 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 17;17.9329094;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95266;2460996.90769868;11.78472694;1.3;_
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response 17;17.9329094;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95266;2460996.90769868;11.78472694;1.3;_
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:05.166 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:05.167 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:05.167 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:05.167 [INFO] [Thread-67504 (handle)] [driver.py] [get_status()] Telra = 17.9329094, teldec = -24.256532
2025-11-17T11:47:05.167 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9329094 -24.256532
2025-11-17T11:47:05.167 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9329094 -24.256532
2025-11-17T11:47:05.167 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9329094 -24.256532
2025-11-17T11:47:05.168 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 17;17.9329094;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95266;2460996.9076987;11.78472694;1.3;_17.9067234666923 -24.2509278893375
2025-11-17T11:47:05.168 [INFO] [Thread-67504 (handle)] [driver.py] [get_status()] ra_j2k = 17.9067234666923     dec_j2k = -24.2509278893375
2025-11-17T11:47:05.169 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:05.169 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:05.169 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:05.169 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 140;0.104544638996727;171.162357330327;_
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response 140;0.104544638996727;171.162357330327;_
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:05.170 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:05.171 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:05.172 [DEBUG] [Thread-67504 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:05.172 [DEBUG] [Thread-67504 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:05.172 [DEBUG] [Thread-67504 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60249)
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:05.179 [DEBUG] [Thread-67504 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:05.187 [DEBUG] [Thread-67504 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:05.187 [INFO] [Thread-67504 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90769868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104544638996727, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993024, telescope_ra=17.9329094, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.95266, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9067234666923, telescope_dec_j2k=-24.2509278893375, observability=1)
2025-11-17T11:47:07.716 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:07.716 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Status age = 2.529069185256958s
2025-11-17T11:47:07.716 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:07.717 [DEBUG] [Thread-67505 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:07.717 [DEBUG] [Thread-67505 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:07.717 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:07.717 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:07.717 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:07.718 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:07.719 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 17;17.9336286;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95338;2460996.90772823;11.78544417;1.3;_
2025-11-17T11:47:07.719 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response 17;17.9336286;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95338;2460996.90772823;11.78544417;1.3;_
2025-11-17T11:47:07.719 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:07.719 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:07.719 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:07.720 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:07.720 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:07.720 [INFO] [Thread-67505 (handle)] [driver.py] [get_status()] Telra = 17.9336286, teldec = -24.256532
2025-11-17T11:47:07.720 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9336286 -24.256532
2025-11-17T11:47:07.720 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9336286 -24.256532
2025-11-17T11:47:07.720 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9336286 -24.256532
2025-11-17T11:47:07.721 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 17;17.9336286;-24.256532;50.108401;89.993024;50.08601;90.12017;14.95338;2460996.90772825;11.78544417;1.3;_17.9074425924715 -24.2509547380843
2025-11-17T11:47:07.721 [INFO] [Thread-67505 (handle)] [driver.py] [get_status()] ra_j2k = 17.9074425924715     dec_j2k = -24.2509547380843
2025-11-17T11:47:07.721 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:07.721 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:07.721 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 140;0.104544839556441;171.162351965909;_
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response 140;0.104544839556441;171.162351965909;_
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:07.722 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:07.723 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:07.724 [DEBUG] [Thread-67505 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:07.724 [DEBUG] [Thread-67505 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:07.724 [DEBUG] [Thread-67505 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57545)
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:07.728 [DEBUG] [Thread-67505 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:07.735 [DEBUG] [Thread-67505 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:07.735 [INFO] [Thread-67505 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90772823, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104544839556441, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108401, telescope_az=89.993024, telescope_ra=17.9336286, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.95338, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9074425924715, telescope_dec_j2k=-24.2509547380843, observability=1)
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.137324571609497s
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9356394;-24.256532;50.1084;89.993024;50.08601;90.12017;14.95539;2460996.90781104;11.78744944;1.3;_
2025-11-17T11:47:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.9356394;-24.256532;50.1084;89.993024;50.08601;90.12017;14.95539;2460996.90781104;11.78744944;1.3;_
2025-11-17T11:47:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:14.875 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.9356394, teldec = -24.256532
2025-11-17T11:47:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9356394 -24.256532
2025-11-17T11:47:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9356394 -24.256532
2025-11-17T11:47:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9356394 -24.256532
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9356394;-24.256532;50.1084;89.993024;50.08601;90.12017;14.95539;2460996.90781106;11.78744944;1.3;_17.9094531857094 -24.2510298053578
2025-11-17T11:47:14.876 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9094531857094     dec_j2k = -24.2510298053578
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104545160451983;171.162357330327;_
2025-11-17T11:47:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104545160451983;171.162357330327;_
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:47:14.881 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34555)
2025-11-17T11:47:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:14.882 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:14.882 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:14.889 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90781104, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104545160451983, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993024, telescope_ra=17.9356394, telescope_dec=-24.256532, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.95539, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9094531857094, telescope_dec_j2k=-24.2510298053578, observability=1)
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.241731643676758s
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:22.131 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:22.132 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:22.132 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:22.133 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.937646;-24.256531;50.1084;89.993024;50.08601;90.12017;14.9574;2460996.90789506;11.78945056;1.3;_
2025-11-17T11:47:22.134 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.937646;-24.256531;50.1084;89.993024;50.08601;90.12017;14.9574;2460996.90789506;11.78945056;1.3;_
2025-11-17T11:47:22.134 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:22.134 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:22.134 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:22.135 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:22.135 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:22.135 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.937646, teldec = -24.256531
2025-11-17T11:47:22.135 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.937646 -24.256531
2025-11-17T11:47:22.135 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.937646 -24.256531
2025-11-17T11:47:22.135 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.937646 -24.256531
2025-11-17T11:47:22.136 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.937646;-24.256531;50.1084;89.993024;50.08601;90.12017;14.9574;2460996.90789509;11.78945056;1.3;_17.9114595806813 -24.2511037177644
2025-11-17T11:47:22.136 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9114595806813     dec_j2k = -24.2511037177644
2025-11-17T11:47:22.136 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:22.136 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:22.136 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104545641795297;171.162362694745;_
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104545641795297;171.162362694745;_
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:22.137 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:22.138 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:22.139 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:22.139 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:22.139 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:22.145 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38891)
2025-11-17T11:47:22.145 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:22.145 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:22.146 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:22.146 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:22.146 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:22.153 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:47:22.153 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90789506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104545641795297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993024, telescope_ra=17.937646, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.9574, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9114595806813, telescope_dec_j2k=-24.2511037177644, observability=1)
2025-11-17T11:47:22.153 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07102560997009 seconds ago
2025-11-17T11:47:23.243 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Status age = 1.0904819965362549s
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:23.244 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:23.245 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:23.246 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 17;17.9379537;-24.256531;50.1084;89.993024;50.08601;90.12017;14.95771;2460996.90790794;11.7897575;1.3;_
2025-11-17T11:47:23.246 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response 17;17.9379537;-24.256531;50.1084;89.993024;50.08601;90.12017;14.95771;2460996.90790794;11.7897575;1.3;_
2025-11-17T11:47:23.246 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:23.246 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:23.246 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:23.247 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:23.247 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:23.247 [INFO] [Thread-67506 (handle)] [driver.py] [get_status()] Telra = 17.9379537, teldec = -24.256531
2025-11-17T11:47:23.247 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9379537 -24.256531
2025-11-17T11:47:23.247 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9379537 -24.256531
2025-11-17T11:47:23.248 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9379537 -24.256531
2025-11-17T11:47:23.248 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 17;17.9379537;-24.256531;50.1084;89.993024;50.08601;90.12017;14.95771;2460996.90790796;11.7897575;1.3;_17.9117672493082 -24.2511152052845
2025-11-17T11:47:23.249 [INFO] [Thread-67506 (handle)] [driver.py] [get_status()] ra_j2k = 17.9117672493082     dec_j2k = -24.2511152052845
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 140;0.104545280787811;171.162357330327;_
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response 140;0.104545280787811;171.162357330327;_
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:23.249 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:23.250 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:23.251 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:23.251 [DEBUG] [Thread-67506 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:23.251 [DEBUG] [Thread-67506 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:23.251 [DEBUG] [Thread-67506 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57387)
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:23.257 [DEBUG] [Thread-67506 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:23.264 [DEBUG] [Thread-67506 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:23.264 [INFO] [Thread-67506 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90790794, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104545280787811, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993024, telescope_ra=17.9379537, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.95771, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9117672493082, telescope_dec_j2k=-24.2511152052845, observability=1)
2025-11-17T11:47:37.169 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:47:37
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.904662370681763s
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:37.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:37.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:37.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9418249;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96158;2460996.90806911;11.79361806;1.3;_
2025-11-17T11:47:37.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.9418249;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96158;2460996.90806911;11.79361806;1.3;_
2025-11-17T11:47:37.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:37.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:37.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:37.172 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.9418249, teldec = -24.256531
2025-11-17T11:47:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9418249 -24.256531
2025-11-17T11:47:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9418249 -24.256531
2025-11-17T11:47:37.172 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9418249 -24.256531
2025-11-17T11:47:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9418249;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96158;2460996.90806913;11.79361806;1.3;_17.9156380568138 -24.2512597344339
2025-11-17T11:47:37.173 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.9156380568138     dec_j2k = -24.2512597344339
2025-11-17T11:47:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:37.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104546323698324;171.162362694745;_
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104546323698324;171.162362694745;_
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:37.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:37.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:37.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:37.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:47:37.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:37.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:37.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:37.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:37.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:37.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:47:37.177 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46499)
2025-11-17T11:47:37.178 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:37.178 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:37.178 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:37.178 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:37.178 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:37.185 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:37.185 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90806911, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104546323698324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993023, telescope_ra=17.9418249, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.96158, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:46:37.171963', telescope_ra_j2k=17.9156380568138, telescope_dec_j2k=-24.2512597344339, observability=1)
2025-11-17T11:47:37.313 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:37.313 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:37.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:37.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:37.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:37.314 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:37.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:37.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:37.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:37.315 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:37.315 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:47:37.315 [INFO] [ThreadPoolExecutor-2745_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:47:37.315 [INFO] [ThreadPoolExecutor-2745_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:47:41.297 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:41.297 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Status age = 4.112189769744873s
2025-11-17T11:47:41.297 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:41.297 [DEBUG] [Thread-67507 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:41.297 [DEBUG] [Thread-67507 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:41.298 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:41.299 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 17;17.9429942;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96275;2460996.90811688;11.79478417;1.3;_
2025-11-17T11:47:41.299 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response 17;17.9429942;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96275;2460996.90811688;11.79478417;1.3;_
2025-11-17T11:47:41.299 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:41.299 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:41.299 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:41.300 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:41.300 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:41.300 [INFO] [Thread-67507 (handle)] [driver.py] [get_status()] Telra = 17.9429942, teldec = -24.256531
2025-11-17T11:47:41.300 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9429942 -24.256531
2025-11-17T11:47:41.300 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9429942 -24.256531
2025-11-17T11:47:41.300 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9429942 -24.256531
2025-11-17T11:47:41.301 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 17;17.9429942;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96275;2460996.90811691;11.79478417;1.3;_17.9168072390667 -24.2513033909405
2025-11-17T11:47:41.301 [INFO] [Thread-67507 (handle)] [driver.py] [get_status()] ra_j2k = 17.9168072390667     dec_j2k = -24.2513033909405
2025-11-17T11:47:41.301 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:41.301 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:41.301 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 140;0.104546243474439;171.162362694745;_
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response 140;0.104546243474439;171.162362694745;_
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:41.302 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:41.303 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:41.303 [DEBUG] [Thread-67507 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:41.303 [DEBUG] [Thread-67507 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:41.303 [DEBUG] [Thread-67507 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39373)
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:41.306 [DEBUG] [Thread-67507 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:41.314 [DEBUG] [Thread-67507 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:41.314 [INFO] [Thread-67507 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90811688, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104546243474439, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993023, telescope_ra=17.9429942, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.96275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9168072390667, telescope_dec_j2k=-24.2513033909405, observability=1)
2025-11-17T11:47:51.850 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:51.850 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.536408185958862s
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:51.851 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:51.852 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.945918;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96567;2460996.90823903;11.7977;1.3;_
2025-11-17T11:47:51.852 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.945918;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96567;2460996.90823903;11.7977;1.3;_
2025-11-17T11:47:51.852 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:51.852 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:51.852 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:51.853 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:51.853 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:51.853 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.945918, teldec = -24.256531
2025-11-17T11:47:51.853 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.945918 -24.256531
2025-11-17T11:47:51.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.945918 -24.256531
2025-11-17T11:47:51.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.945918 -24.256531
2025-11-17T11:47:51.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.945918;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96567;2460996.90823905;11.7977;1.3;_17.9197307462803 -24.2514125553937
2025-11-17T11:47:51.855 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.9197307462803     dec_j2k = -24.2514125553937
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104546283586382;171.162351965909;_
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104546283586382;171.162351965909;_
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:51.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:51.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:51.856 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:51.856 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:51.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:51.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:51.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:51.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:51.858 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:51.858 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56621)
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:51.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:51.870 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:51.871 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90823903, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104546283586382, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993023, telescope_ra=17.945918, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.96567, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9197307462803, telescope_dec_j2k=-24.2514125553937, observability=1)
2025-11-17T11:47:58.196 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.196 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.196 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:58.196 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:58.196 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:47:58.197 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:58.198 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:58.199 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.199 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:58.199 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:58.199 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.200 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:47:58.201 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.202 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:58.202 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:58.202 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:58.202 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:58.202 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Park
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:47:58.203 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:47:58.204 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 29;17.9477051;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96746;2460996.90831255;11.79948222;1.3;_Park Command Successful
2025-11-17T11:47:59.204 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:47:59.204 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:47:59.204 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:47:59.205 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:47:59.205 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Status age = 7.563747406005859s
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:47:59.434 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:47:59.435 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 17;17.9480319;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96779;2460996.90832681;11.79980806;1.3;_
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response 17;17.9480319;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96779;2460996.90832681;11.79980806;1.3;_
2025-11-17T11:47:59.436 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:47:59.437 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:47:59.437 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:47:59.438 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:59.438 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:47:59.438 [INFO] [Thread-67508 (handle)] [driver.py] [get_status()] Telra = 17.9480319, teldec = -24.256531
2025-11-17T11:47:59.438 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9480319 -24.256531
2025-11-17T11:47:59.438 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9480319 -24.256531
2025-11-17T11:47:59.438 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9480319 -24.256531
2025-11-17T11:47:59.439 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 17;17.9480319;-24.256531;50.1084;89.993023;50.08601;90.12017;14.96779;2460996.90832684;11.79980806;1.3;_17.9218444360534 -24.251491483349
2025-11-17T11:47:59.439 [INFO] [Thread-67508 (handle)] [driver.py] [get_status()] ra_j2k = 17.9218444360534     dec_j2k = -24.251491483349
2025-11-17T11:47:59.439 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:47:59.439 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:47:59.439 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 140;0.104547085825238;171.162357330327;_
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response 140;0.104547085825238;171.162357330327;_
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:59.440 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:47:59.441 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:47:59.442 [DEBUG] [Thread-67508 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:59.442 [DEBUG] [Thread-67508 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:47:59.442 [DEBUG] [Thread-67508 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:47:59.446 [DEBUG] [Thread-67508 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32865)
2025-11-17T11:47:59.446 [DEBUG] [Thread-67508 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:47:59.446 [DEBUG] [Thread-67508 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:47:59.446 [DEBUG] [Thread-67508 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:47:59.447 [DEBUG] [Thread-67508 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:47:59.447 [DEBUG] [Thread-67508 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:47:59.454 [DEBUG] [Thread-67508 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:47:59.454 [INFO] [Thread-67508 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90832681, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547085825238, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1084, telescope_az=89.993023, telescope_ra=17.9480319, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.96779, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9218444360534, telescope_dec_j2k=-24.251491483349, observability=1)
2025-11-17T11:48:00.205 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:48:00.205 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:48:00.205 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:48:00.206 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:48:00.206 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:48:01.206 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:48:01.206 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:48:01.206 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:48:01.207 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:48:01.207 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:48:02.207 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:48:02.207 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:48:02.207 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:48:02.209 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:48:02.210 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:03.210 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:48:03.211 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:48:03.212 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:48:03.212 [DEBUG] [ThreadPoolExecutor-2744_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:03.212 [INFO] [ThreadPoolExecutor-2744_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Status age = 8.315388202667236s
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:07.770 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:07.771 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:07.771 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:07.771 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 17;17.9503515;-24.256531;50.108399;89.993023;50.08601;90.12017;14.97011;2460996.90842328;11.80212139;1.3;_
2025-11-17T11:48:07.771 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response 17;17.9503515;-24.256531;50.108399;89.993023;50.08601;90.12017;14.97011;2460996.90842328;11.80212139;1.3;_
2025-11-17T11:48:07.772 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:07.772 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:07.772 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:07.773 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:07.773 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:07.773 [INFO] [Thread-67509 (handle)] [driver.py] [get_status()] Telra = 17.9503515, teldec = -24.256531
2025-11-17T11:48:07.773 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9503515 -24.256531
2025-11-17T11:48:07.773 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9503515 -24.256531
2025-11-17T11:48:07.773 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9503515 -24.256531
2025-11-17T11:48:07.774 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 17;17.9503515;-24.256531;50.108399;89.993023;50.08601;90.12017;14.97011;2460996.90842331;11.80212139;1.3;_17.9241638067765 -24.2515780938685
2025-11-17T11:48:07.774 [INFO] [Thread-67509 (handle)] [driver.py] [get_status()] ra_j2k = 17.9241638067765     dec_j2k = -24.2515780938685
2025-11-17T11:48:07.774 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:07.774 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:07.774 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 140;0.104546885265524;171.162362694745;_
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response 140;0.104546885265524;171.162362694745;_
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:07.775 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:07.776 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:07.777 [DEBUG] [Thread-67509 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:07.777 [DEBUG] [Thread-67509 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:07.777 [DEBUG] [Thread-67509 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:07.778 [DEBUG] [Thread-67509 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35507)
2025-11-17T11:48:07.778 [DEBUG] [Thread-67509 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:07.778 [DEBUG] [Thread-67509 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:07.779 [DEBUG] [Thread-67509 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:07.779 [DEBUG] [Thread-67509 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:07.779 [DEBUG] [Thread-67509 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:07.786 [DEBUG] [Thread-67509 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:07.786 [INFO] [Thread-67509 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90842328, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104546885265524, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993023, telescope_ra=17.9503515, telescope_dec=-24.256531, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97011, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9241638067765, telescope_dec_j2k=-24.2515780938685, observability=1)
2025-11-17T11:48:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.089983224868774s
2025-11-17T11:48:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.952352;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97211;2460996.90850553;11.80411639;1.3;_
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.952352;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97211;2460996.90850553;11.80411639;1.3;_
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:14.879 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.952352, teldec = -24.25653
2025-11-17T11:48:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.952352 -24.25653
2025-11-17T11:48:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.952352 -24.25653
2025-11-17T11:48:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.952352 -24.25653
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.952352;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97211;2460996.90850556;11.80411639;1.3;_17.9261641104225 -24.2516517915553
2025-11-17T11:48:14.881 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9261641104225     dec_j2k = -24.2516517915553
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104547286384952;171.162346601491;_
2025-11-17T11:48:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104547286384952;171.162346601491;_
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43277)
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:14.893 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90850553, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547286384952, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993023, telescope_ra=17.952352, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97211, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9261641104225, telescope_dec_j2k=-24.2516517915553, observability=1)
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Status age = 2.6105597019195557s
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:17.504 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:17.505 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 17;17.9530809;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97284;2460996.90853595;11.80484333;1.3;_
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response 17;17.9530809;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97284;2460996.90853595;11.80484333;1.3;_
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:17.506 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:17.507 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:17.507 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:17.507 [INFO] [Thread-67510 (handle)] [driver.py] [get_status()] Telra = 17.9530809, teldec = -24.25653
2025-11-17T11:48:17.508 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9530809 -24.25653
2025-11-17T11:48:17.508 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9530809 -24.25653
2025-11-17T11:48:17.508 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9530809 -24.25653
2025-11-17T11:48:17.508 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 17;17.9530809;-24.25653;50.108399;89.993023;50.08601;90.12017;14.97284;2460996.90853597;11.80484333;1.3;_17.9268929390787 -24.251679008721
2025-11-17T11:48:17.509 [INFO] [Thread-67510 (handle)] [driver.py] [get_status()] ra_j2k = 17.9268929390787     dec_j2k = -24.251679008721
2025-11-17T11:48:17.509 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:17.509 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:17.509 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:17.509 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 140;0.104547847952151;171.162357330327;_
2025-11-17T11:48:17.509 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response 140;0.104547847952151;171.162357330327;_
2025-11-17T11:48:17.510 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:17.510 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:17.510 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:17.510 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:17.510 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:17.511 [DEBUG] [Thread-67510 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56993)
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:17.514 [DEBUG] [Thread-67510 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:17.521 [DEBUG] [Thread-67510 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:17.521 [DEBUG] [Thread-67510 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:17.521 [DEBUG] [Thread-67510 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:17.521 [DEBUG] [Thread-67510 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:17.522 [DEBUG] [Thread-67510 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:17.522 [DEBUG] [Thread-67510 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:17.522 [DEBUG] [Thread-67510 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:17.522 [DEBUG] [Thread-67510 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:17.522 [DEBUG] [Thread-67510 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:17.522 [INFO] [Thread-67510 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90853595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547847952151, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993023, telescope_ra=17.9530809, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97284, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9268929390787, telescope_dec_j2k=-24.251679008721, observability=1)
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.690965890884399s
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:22.213 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:22.214 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9543881;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97414;2460996.90859044;11.80614694;1.3;_
2025-11-17T11:48:22.214 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.9543881;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97414;2460996.90859044;11.80614694;1.3;_
2025-11-17T11:48:22.214 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:22.214 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:22.214 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:22.215 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:22.215 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:22.215 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.9543881, teldec = -24.25653
2025-11-17T11:48:22.215 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.9543881 -24.25653
2025-11-17T11:48:22.215 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.9543881 -24.25653
2025-11-17T11:48:22.215 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9543881 -24.25653
2025-11-17T11:48:22.216 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9543881;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97414;2460996.90859046;11.80614694;1.3;_17.9282000114957 -24.2517278201971
2025-11-17T11:48:22.216 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9282000114957     dec_j2k = -24.2517278201971
2025-11-17T11:48:22.216 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:22.216 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:22.216 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104547928176037;171.162368059163;_
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104547928176037;171.162368059163;_
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:22.217 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:22.218 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45311)
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:22.225 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:22.232 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:48:22.233 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90859044, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547928176037, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993022, telescope_ra=17.9543881, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97414, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9282000114957, telescope_dec_j2k=-24.2517278201971, observability=1)
2025-11-17T11:48:22.233 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.063852310180664 seconds ago
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Status age = 13.33827543258667s
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:35.571 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:35.572 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:35.573 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 17;17.9580916;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97785;2460996.90874506;11.80984028;1.3;_
2025-11-17T11:48:35.573 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response 17;17.9580916;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97785;2460996.90874506;11.80984028;1.3;_
2025-11-17T11:48:35.573 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:35.573 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:35.573 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:35.574 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:35.574 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:35.574 [INFO] [Thread-67511 (handle)] [driver.py] [get_status()] Telra = 17.9580916, teldec = -24.25653
2025-11-17T11:48:35.574 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9580916 -24.25653
2025-11-17T11:48:35.574 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9580916 -24.25653
2025-11-17T11:48:35.574 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9580916 -24.25653
2025-11-17T11:48:35.575 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 17;17.9580916;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97785;2460996.90874508;11.80984028;1.3;_17.9319031525727 -24.2518661145034
2025-11-17T11:48:35.575 [INFO] [Thread-67511 (handle)] [driver.py] [get_status()] ra_j2k = 17.9319031525727     dec_j2k = -24.2518661145034
2025-11-17T11:48:35.575 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:35.575 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:35.575 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 140;0.104547246273009;171.162346601491;_
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response 140;0.104547246273009;171.162346601491;_
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:35.576 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:35.577 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:35.578 [DEBUG] [Thread-67511 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:35.578 [DEBUG] [Thread-67511 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:35.578 [DEBUG] [Thread-67511 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54449)
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:35.582 [DEBUG] [Thread-67511 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:35.589 [DEBUG] [Thread-67511 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:35.589 [INFO] [Thread-67511 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90874506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547246273009, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993022, telescope_ra=17.9580916, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9319031525727, telescope_dec_j2k=-24.2518661145034, observability=1)
2025-11-17T11:48:37.246 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:48:37
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.656733512878418s
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:37.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:37.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9585682;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97832;2460996.90876444;11.81031556;1.3;_
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.9585682;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97832;2460996.90876444;11.81031556;1.3;_
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:37.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:37.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:37.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:37.249 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.9585682, teldec = -24.25653
2025-11-17T11:48:37.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9585682 -24.25653
2025-11-17T11:48:37.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9585682 -24.25653
2025-11-17T11:48:37.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9585682 -24.25653
2025-11-17T11:48:37.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9585682;-24.25653;50.108399;89.993022;50.08601;90.12017;14.97832;2460996.90876447;11.81031556;1.3;_17.9323797066558 -24.2518839118775
2025-11-17T11:48:37.250 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.9323797066558     dec_j2k = -24.2518839118775
2025-11-17T11:48:37.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:37.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104547607280494;171.162357330327;_
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104547607280494;171.162357330327;_
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:37.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:37.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:37.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:37.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:48:37.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40259)
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:37.255 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:37.262 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:37.263 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90876444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547607280494, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993022, telescope_ra=17.9585682, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.97832, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:47:37.313127', telescope_ra_j2k=17.9323797066558, telescope_dec_j2k=-24.2518839118775, observability=1)
2025-11-17T11:48:37.453 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:37.454 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:37.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:37.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:37.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:37.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:37.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:37.455 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:37.456 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:48:37.457 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:48:37.457 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:48:37.457 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:38.458 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:38.458 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:38.458 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:38.458 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:38.458 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:48:38.459 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:38.460 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:38.461 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:38.461 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:38.461 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:38.461 [DEBUG] [ThreadPoolExecutor-2746_0] [payload.py] [to_registers()] [0]
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47587)
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:38.466 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:38.473 [DEBUG] [ThreadPoolExecutor-2746_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.69419550895691s
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:50.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:50.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:50.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9623858;-24.25653;50.108399;89.993022;50.08601;90.12017;14.98214;2460996.90892314;11.81412278;1.3;_
2025-11-17T11:48:50.959 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.9623858;-24.25653;50.108399;89.993022;50.08601;90.12017;14.98214;2460996.90892314;11.81412278;1.3;_
2025-11-17T11:48:50.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:50.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:50.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:50.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:50.960 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:50.960 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.9623858, teldec = -24.25653
2025-11-17T11:48:50.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9623858 -24.25653
2025-11-17T11:48:50.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9623858 -24.25653
2025-11-17T11:48:50.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9623858 -24.25653
2025-11-17T11:48:50.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9623858;-24.25653;50.108399;89.993022;50.08601;90.12017;14.98214;2460996.90892316;11.81412278;1.3;_17.936196941102 -24.2520264734084
2025-11-17T11:48:50.961 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.936196941102     dec_j2k = -24.2520264734084
2025-11-17T11:48:50.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:50.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:50.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104547607280494;171.162351965909;_
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104547607280494;171.162351965909;_
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:50.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:50.964 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:50.965 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:50.968 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47287)
2025-11-17T11:48:50.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:50.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:50.968 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:50.968 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:50.969 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:50.975 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:50.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:50.976 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90892314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547607280494, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108399, telescope_az=89.993022, telescope_ra=17.9623858, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.98214, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.936196941102, telescope_dec_j2k=-24.2520264734084, observability=1)
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Status age = 2.7042441368103027s
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:48:53.680 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:48:53.681 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:48:53.682 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 17;17.9631415;-24.25653;50.108398;89.993022;50.08601;90.12017;14.9829;2460996.90895465;11.81487639;1.3;_
2025-11-17T11:48:53.682 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response 17;17.9631415;-24.25653;50.108398;89.993022;50.08601;90.12017;14.9829;2460996.90895465;11.81487639;1.3;_
2025-11-17T11:48:53.682 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:48:53.682 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:48:53.682 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:48:53.683 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:53.683 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:48:53.683 [INFO] [Thread-67512 (handle)] [driver.py] [get_status()] Telra = 17.9631415, teldec = -24.25653
2025-11-17T11:48:53.683 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9631415 -24.25653
2025-11-17T11:48:53.684 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9631415 -24.25653
2025-11-17T11:48:53.684 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9631415 -24.25653
2025-11-17T11:48:53.684 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 17;17.9631415;-24.25653;50.108398;89.993022;50.08601;90.12017;14.9829;2460996.90895468;11.81487639;1.3;_17.936952569213 -24.2520546943778
2025-11-17T11:48:53.685 [INFO] [Thread-67512 (handle)] [driver.py] [get_status()] ra_j2k = 17.936952569213     dec_j2k = -24.2520546943778
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 140;0.104548128735751;171.162362694745;_
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response 140;0.104548128735751;171.162362694745;_
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:53.685 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:48:53.686 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:48:53.687 [DEBUG] [Thread-67512 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:53.687 [DEBUG] [Thread-67512 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:48:53.687 [DEBUG] [Thread-67512 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57067)
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:48:53.689 [DEBUG] [Thread-67512 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:48:53.696 [DEBUG] [Thread-67512 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:48:53.697 [INFO] [Thread-67512 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90895465, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104548128735751, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993022, telescope_ra=17.9631415, telescope_dec=-24.25653, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.9829, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.936952569213, telescope_dec_j2k=-24.2520546943778, observability=1)
2025-11-17T11:49:03.473 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:03.474 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:03.474 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:03.474 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:03.474 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:03.474 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:49:03.475 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:49:03.476 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:07.820 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:07.820 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Status age = 14.123926877975464s
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:07.821 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:07.822 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:07.823 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 17;17.9670951;-24.256529;50.108398;89.993022;50.08601;90.12017;14.98685;2460996.90911832;11.81881917;1.3;_
2025-11-17T11:49:07.823 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response 17;17.9670951;-24.256529;50.108398;89.993022;50.08601;90.12017;14.98685;2460996.90911832;11.81881917;1.3;_
2025-11-17T11:49:07.823 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:07.823 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:07.823 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:07.824 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:07.824 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:07.824 [INFO] [Thread-67513 (handle)] [driver.py] [get_status()] Telra = 17.9670951, teldec = -24.256529
2025-11-17T11:49:07.824 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9670951 -24.256529
2025-11-17T11:49:07.824 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9670951 -24.256529
2025-11-17T11:49:07.824 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9670951 -24.256529
2025-11-17T11:49:07.825 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 17;17.9670951;-24.256529;50.108398;89.993022;50.08601;90.12017;14.98685;2460996.90911834;11.81881917;1.3;_17.940905795859 -24.2522013418789
2025-11-17T11:49:07.825 [INFO] [Thread-67513 (handle)] [driver.py] [get_status()] ra_j2k = 17.940905795859     dec_j2k = -24.2522013418789
2025-11-17T11:49:07.825 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:07.825 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:07.825 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 140;0.104547968287979;171.162357330327;_
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response 140;0.104547968287979;171.162357330327;_
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:07.826 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:07.827 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:07.828 [DEBUG] [Thread-67513 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:07.828 [DEBUG] [Thread-67513 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:07.828 [DEBUG] [Thread-67513 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51541)
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:07.831 [DEBUG] [Thread-67513 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:07.838 [DEBUG] [Thread-67513 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:07.839 [INFO] [Thread-67513 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90911832, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104547968287979, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993022, telescope_ra=17.9670951, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.98685, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.940905795859, telescope_dec_j2k=-24.2522013418789, observability=1)
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Status age = 3.911432981491089s
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:11.750 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:11.751 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 17;17.9681797;-24.256529;50.108398;89.993021;50.08601;90.12017;14.98794;2460996.9091638;11.81990083;1.3;_
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response 17;17.9681797;-24.256529;50.108398;89.993021;50.08601;90.12017;14.98794;2460996.9091638;11.81990083;1.3;_
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:11.752 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:11.753 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:11.753 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:11.753 [INFO] [Thread-67514 (handle)] [driver.py] [get_status()] Telra = 17.9681797, teldec = -24.256529
2025-11-17T11:49:11.753 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9681797 -24.256529
2025-11-17T11:49:11.753 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9681797 -24.256529
2025-11-17T11:49:11.753 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9681797 -24.256529
2025-11-17T11:49:11.754 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 17;17.9681797;-24.256529;50.108398;89.993021;50.08601;90.12017;14.98794;2460996.90916382;11.81990083;1.3;_17.9419902941292 -24.2522418473876
2025-11-17T11:49:11.754 [INFO] [Thread-67514 (handle)] [driver.py] [get_status()] ra_j2k = 17.9419902941292     dec_j2k = -24.2522418473876
2025-11-17T11:49:11.754 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 140;0.104548249071579;171.162351965909;_
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response 140;0.104548249071579;171.162351965909;_
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:11.755 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:11.756 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:11.756 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:11.756 [DEBUG] [Thread-67514 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:11.756 [DEBUG] [Thread-67514 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:11.756 [DEBUG] [Thread-67514 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56897)
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:11.760 [DEBUG] [Thread-67514 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:11.767 [DEBUG] [Thread-67514 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:11.767 [DEBUG] [Thread-67514 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:11.767 [DEBUG] [Thread-67514 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:11.767 [DEBUG] [Thread-67514 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:11.768 [DEBUG] [Thread-67514 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:11.768 [DEBUG] [Thread-67514 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:11.768 [DEBUG] [Thread-67514 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:11.768 [DEBUG] [Thread-67514 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:11.768 [DEBUG] [Thread-67514 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:11.768 [INFO] [Thread-67514 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9091638, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104548249071579, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993021, telescope_ra=17.9681797, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.98794, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.9419902941292, telescope_dec_j2k=-24.2522418473876, observability=1)
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1164212226867676s
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9690493;-24.256529;50.108398;89.993021;50.08601;90.12017;14.9888;2460996.90920007;11.82076806;1.3;_
2025-11-17T11:49:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.9690493;-24.256529;50.108398;89.993021;50.08601;90.12017;14.9888;2460996.90920007;11.82076806;1.3;_
2025-11-17T11:49:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:14.887 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.9690493, teldec = -24.256529
2025-11-17T11:49:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9690493 -24.256529
2025-11-17T11:49:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9690493 -24.256529
2025-11-17T11:49:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9690493 -24.256529
2025-11-17T11:49:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9690493;-24.256529;50.108398;89.993021;50.08601;90.12017;14.9888;2460996.90920009;11.82076806;1.3;_17.9428598127978 -24.2522743238222
2025-11-17T11:49:14.888 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9428598127978     dec_j2k = -24.2522743238222
2025-11-17T11:49:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10454840951935;171.162357330327;_
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10454840951935;171.162357330327;_
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:49:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54603)
2025-11-17T11:49:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:14.894 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:14.901 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90920007, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10454840951935, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993021, telescope_ra=17.9690493, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.9888, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.9428598127978, telescope_dec_j2k=-24.2522743238222, observability=1)
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.391740560531616s
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:22.293 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:22.294 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:22.295 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9711066;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99086;2460996.90928582;11.82281972;1.3;_
2025-11-17T11:49:22.295 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.9711066;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99086;2460996.90928582;11.82281972;1.3;_
2025-11-17T11:49:22.295 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:22.295 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:22.295 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:22.296 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:22.296 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:22.296 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.9711066, teldec = -24.256529
2025-11-17T11:49:22.296 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.9711066 -24.256529
2025-11-17T11:49:22.296 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.9711066 -24.256529
2025-11-17T11:49:22.296 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9711066 -24.256529
2025-11-17T11:49:22.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9711066;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99086;2460996.90928584;11.82281972;1.3;_17.9449169212083 -24.2523511577183
2025-11-17T11:49:22.297 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9449169212083     dec_j2k = -24.2523511577183
2025-11-17T11:49:22.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:22.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:22.297 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:22.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10454869030295;171.162357330327;_
2025-11-17T11:49:22.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10454869030295;171.162357330327;_
2025-11-17T11:49:22.298 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:22.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:22.298 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:22.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:22.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:22.299 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:22.300 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60721)
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:22.306 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:22.313 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:49:22.314 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90928582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10454869030295, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993021, telescope_ra=17.9711066, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.99086, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.9449169212083, telescope_dec_j2k=-24.2523511577183, observability=1)
2025-11-17T11:49:22.314 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0677649974823 seconds ago
2025-11-17T11:49:29.816 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:29.816 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Status age = 7.502969741821289s
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:29.817 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:29.818 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:29.818 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 17;17.9732015;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99296;2460996.90937289;11.82490889;1.3;_
2025-11-17T11:49:29.819 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response 17;17.9732015;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99296;2460996.90937289;11.82490889;1.3;_
2025-11-17T11:49:29.819 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:29.819 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:29.819 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:29.820 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:29.820 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:29.820 [INFO] [Thread-67515 (handle)] [driver.py] [get_status()] Telra = 17.9732015, teldec = -24.256529
2025-11-17T11:49:29.820 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9732015 -24.256529
2025-11-17T11:49:29.820 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9732015 -24.256529
2025-11-17T11:49:29.820 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9732015 -24.256529
2025-11-17T11:49:29.821 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 17;17.9732015;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99296;2460996.90937293;11.82490889;1.3;_17.947011627308 -24.2524293974812
2025-11-17T11:49:29.821 [INFO] [Thread-67515 (handle)] [driver.py] [get_status()] ra_j2k = 17.947011627308     dec_j2k = -24.2524293974812
2025-11-17T11:49:29.821 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:29.821 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:29.821 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 140;0.104549572765692;171.162346601491;_
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response 140;0.104549572765692;171.162346601491;_
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:29.822 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:29.823 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:29.824 [DEBUG] [Thread-67515 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:29.824 [DEBUG] [Thread-67515 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:29.824 [DEBUG] [Thread-67515 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36341)
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:29.830 [DEBUG] [Thread-67515 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:29.837 [DEBUG] [Thread-67515 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:29.838 [DEBUG] [Thread-67515 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:29.838 [INFO] [Thread-67515 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90937289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104549572765692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993021, telescope_ra=17.9732015, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.99296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.947011627308, telescope_dec_j2k=-24.2524293974812, observability=1)
2025-11-17T11:49:37.323 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:49:37
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.485334157943726s
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:37.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:37.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:37.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.975315;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99507;2460996.90945978;11.82701667;1.3;_
2025-11-17T11:49:37.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.975315;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99507;2460996.90945978;11.82701667;1.3;_
2025-11-17T11:49:37.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:37.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:37.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:37.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:37.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:37.326 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.975315, teldec = -24.256529
2025-11-17T11:49:37.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.975315 -24.256529
2025-11-17T11:49:37.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.975315 -24.256529
2025-11-17T11:49:37.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.975315 -24.256529
2025-11-17T11:49:37.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.975315;-24.256529;50.108398;89.993021;50.08601;90.12017;14.99507;2460996.9094598;11.82701667;1.3;_17.9491249329038 -24.2525083335459
2025-11-17T11:49:37.327 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.9491249329038     dec_j2k = -24.2525083335459
2025-11-17T11:49:37.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:37.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:37.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104549011198492;171.162351965909;_
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104549011198492;171.162351965909;_
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:37.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:37.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59501)
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:37.331 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:37.338 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:37.338 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:37.338 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:37.339 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:37.339 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90945978, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104549011198492, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108398, telescope_az=89.993021, telescope_ra=17.975315, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.99507, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:48:37.453528', telescope_ra_j2k=17.9491249329038, telescope_dec_j2k=-24.2525083335459, observability=1)
2025-11-17T11:49:37.594 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:37.594 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:37.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:37.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:37.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:37.595 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:37.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:37.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:37.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:37.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:37.596 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:49:37.596 [INFO] [ThreadPoolExecutor-2747_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:49:37.597 [INFO] [ThreadPoolExecutor-2747_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Status age = 10.587224960327148s
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:47.926 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:47.927 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:47.928 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:47.929 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 17;17.9782442;-24.256529;50.108397;89.993021;50.08601;90.12017;14.998;2460996.90958251;11.82993778;1.3;_
2025-11-17T11:49:47.929 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response 17;17.9782442;-24.256529;50.108397;89.993021;50.08601;90.12017;14.998;2460996.90958251;11.82993778;1.3;_
2025-11-17T11:49:47.929 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:47.929 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:47.929 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:47.930 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:47.930 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:47.930 [INFO] [Thread-67516 (handle)] [driver.py] [get_status()] Telra = 17.9782442, teldec = -24.256529
2025-11-17T11:49:47.930 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9782442 -24.256529
2025-11-17T11:49:47.930 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9782442 -24.256529
2025-11-17T11:49:47.930 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9782442 -24.256529
2025-11-17T11:49:47.931 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 17;17.9782721;-24.256522;50.108397;89.99301;50.08601;90.12016;14.99803;2460996.90958253;11.82996583;1.3;_17.952053865492 -24.2526177374544
2025-11-17T11:49:47.931 [INFO] [Thread-67516 (handle)] [driver.py] [get_status()] ra_j2k = 17.952053865492     dec_j2k = -24.2526177374544
2025-11-17T11:49:47.931 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:47.931 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:47.931 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 140;0.104548850750721;171.162362694745;_
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response 140;0.104548850750721;171.162362694745;_
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:47.932 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:47.933 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:47.934 [DEBUG] [Thread-67516 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:47.934 [DEBUG] [Thread-67516 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:47.934 [DEBUG] [Thread-67516 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46925)
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:47.937 [DEBUG] [Thread-67516 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:47.944 [DEBUG] [Thread-67516 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:47.944 [DEBUG] [Thread-67516 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:47.944 [DEBUG] [Thread-67516 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:47.944 [DEBUG] [Thread-67516 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:47.945 [DEBUG] [Thread-67516 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:47.945 [DEBUG] [Thread-67516 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:47.945 [DEBUG] [Thread-67516 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:47.945 [DEBUG] [Thread-67516 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:47.945 [DEBUG] [Thread-67516 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:47.945 [INFO] [Thread-67516 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90958251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104548850750721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.993021, telescope_ra=17.9782442, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.998, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.952053865492, telescope_dec_j2k=-24.2526177374544, observability=1)
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.1170434951782227s
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:50.062 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:50.063 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:49:50.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:49:50.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:49:50.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:49:50.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9788522;-24.256529;50.108397;89.993021;50.08601;90.12017;14.99861;2460996.90960721;11.83054417;1.3;_
2025-11-17T11:49:50.064 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.9788522;-24.256529;50.108397;89.993021;50.08601;90.12017;14.99861;2460996.90960721;11.83054417;1.3;_
2025-11-17T11:49:50.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:49:50.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:49:50.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:49:50.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:50.065 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:49:50.065 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.9788522, teldec = -24.256529
2025-11-17T11:49:50.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9788522 -24.256529
2025-11-17T11:49:50.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9788522 -24.256529
2025-11-17T11:49:50.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9788522 -24.256529
2025-11-17T11:49:50.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9788522;-24.256529;50.108397;89.993021;50.08601;90.12017;14.99861;2460996.90960725;11.83054417;1.3;_17.9526618102811 -24.2526404462825
2025-11-17T11:49:50.066 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.9526618102811     dec_j2k = -24.2526404462825
2025-11-17T11:49:50.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:49:50.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:49:50.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104548850750721;171.162357330327;_
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104548850750721;171.162357330327;_
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:50.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:49:50.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:49:50.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:50.069 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:49:50.069 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46387)
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:49:50.070 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:49:50.077 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:49:50.078 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.90960721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104548850750721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.993021, telescope_ra=17.9788522, telescope_dec=-24.256529, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=14.99861, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9526618102811, telescope_dec_j2k=-24.2526404462825, observability=1)
2025-11-17T11:49:58.476 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.476 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.477 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:58.477 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:58.477 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:49:58.478 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:58.479 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:58.480 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:49:58.481 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:49:58.482 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Park
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:49:58.483 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:49:58.484 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 29;17.98119;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00095;2460996.90970468;11.83287556;1.3;_Park Command Successful
2025-11-17T11:49:59.484 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:49:59.484 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:49:59.484 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:49:59.485 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:49:59.485 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:50:00.485 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:50:00.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:50:00.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:50:00.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:50:00.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:50:01.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:50:01.486 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:50:01.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:50:01.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:50:01.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:50:02.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:50:02.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:50:02.487 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:50:02.488 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:50:02.489 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:50:02.489 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:03.489 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:03.490 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:03.490 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:03.490 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:03.490 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:50:03.491 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:50:03.492 [DEBUG] [ThreadPoolExecutor-2746_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:03.492 [INFO] [ThreadPoolExecutor-2746_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:50:06.004 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:06.004 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Status age = 15.926941156387329s
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:06.005 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 17;17.983286;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00304;2460996.90979174;11.83496583;1.3;_
2025-11-17T11:50:06.006 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response 17;17.983286;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00304;2460996.90979174;11.83496583;1.3;_
2025-11-17T11:50:06.007 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:06.007 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:06.007 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:06.008 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:06.008 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:06.008 [INFO] [Thread-67517 (handle)] [driver.py] [get_status()] Telra = 17.983286, teldec = -24.256528
2025-11-17T11:50:06.008 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] UnCookCoordinates 17.983286 -24.256528
2025-11-17T11:50:06.008 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.983286 -24.256528
2025-11-17T11:50:06.008 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.983286 -24.256528
2025-11-17T11:50:06.009 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 17;17.983286;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00304;2460996.90979177;11.83496583;1.3;_17.9570952109197 -24.2528050528862
2025-11-17T11:50:06.009 [INFO] [Thread-67517 (handle)] [driver.py] [get_status()] ra_j2k = 17.9570952109197     dec_j2k = -24.2528050528862
2025-11-17T11:50:06.009 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:06.009 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:06.009 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 140;0.104549291982092;171.162357330327;_
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response 140;0.104549291982092;171.162357330327;_
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:06.010 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:06.011 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:06.012 [DEBUG] [Thread-67517 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:06.012 [DEBUG] [Thread-67517 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:06.012 [DEBUG] [Thread-67517 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:06.016 [DEBUG] [Thread-67517 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40033)
2025-11-17T11:50:06.016 [DEBUG] [Thread-67517 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:06.016 [DEBUG] [Thread-67517 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:06.016 [DEBUG] [Thread-67517 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:06.017 [DEBUG] [Thread-67517 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:06.017 [DEBUG] [Thread-67517 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:06.024 [DEBUG] [Thread-67517 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:06.024 [DEBUG] [Thread-67517 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:06.024 [DEBUG] [Thread-67517 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:06.025 [DEBUG] [Thread-67517 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:06.025 [INFO] [Thread-67517 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90979174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104549291982092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.983286, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.00304, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9570952109197, telescope_dec_j2k=-24.2528050528862, observability=1)
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Status age = 1.8463408946990967s
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:07.871 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:07.872 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 17;17.9838094;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00356;2460996.90981334;11.83548778;1.3;_
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response 17;17.9838094;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00356;2460996.90981334;11.83548778;1.3;_
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:07.873 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:07.874 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:07.874 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:07.874 [INFO] [Thread-67518 (handle)] [driver.py] [get_status()] Telra = 17.9838094, teldec = -24.256528
2025-11-17T11:50:07.874 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9838094 -24.256528
2025-11-17T11:50:07.874 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9838094 -24.256528
2025-11-17T11:50:07.874 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9838094 -24.256528
2025-11-17T11:50:07.875 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 17;17.9838094;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00356;2460996.90981337;11.83548778;1.3;_17.9576185641077 -24.2528246028093
2025-11-17T11:50:07.875 [INFO] [Thread-67518 (handle)] [driver.py] [get_status()] ra_j2k = 17.9576185641077     dec_j2k = -24.2528246028093
2025-11-17T11:50:07.875 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:07.875 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:07.875 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 140;0.104549372205978;171.162362694745;_
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response 140;0.104549372205978;171.162362694745;_
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:07.876 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:07.877 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:07.878 [DEBUG] [Thread-67518 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:07.878 [DEBUG] [Thread-67518 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:07.878 [DEBUG] [Thread-67518 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:50:07.881 [DEBUG] [Thread-67518 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47581)
2025-11-17T11:50:07.881 [DEBUG] [Thread-67518 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:07.881 [DEBUG] [Thread-67518 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:07.881 [DEBUG] [Thread-67518 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:07.882 [DEBUG] [Thread-67518 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:07.882 [DEBUG] [Thread-67518 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:07.888 [DEBUG] [Thread-67518 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:07.889 [DEBUG] [Thread-67518 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:07.889 [INFO] [Thread-67518 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90981334, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104549372205978, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.9838094, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.00356, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9576185641077, telescope_dec_j2k=-24.2528246028093, observability=1)
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.0039660930633545s
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9857642;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00552;2460996.90989462;11.83743722;1.3;_
2025-11-17T11:50:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;17.9857642;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00552;2460996.90989462;11.83743722;1.3;_
2025-11-17T11:50:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:14.896 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 17.9857642, teldec = -24.256528
2025-11-17T11:50:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9857642 -24.256528
2025-11-17T11:50:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9857642 -24.256528
2025-11-17T11:50:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9857642 -24.256528
2025-11-17T11:50:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;17.9857642;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00552;2460996.90989464;11.83743722;1.3;_17.9595731899372 -24.2528976188955
2025-11-17T11:50:14.897 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9595731899372     dec_j2k = -24.2528976188955
2025-11-17T11:50:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104549733213463;171.162362694745;_
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104549733213463;171.162362694745;_
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34223)
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:14.912 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:14.912 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:14.913 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:14.913 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.90989462, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104549733213463, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.9857642, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.00552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9595731899372, telescope_dec_j2k=-24.2528976188955, observability=1)
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.46107816696167s
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:22.374 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:22.375 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:22.376 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9878554;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00761;2460996.9099812;11.83952278;1.3;_
2025-11-17T11:50:22.376 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;17.9878554;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00761;2460996.9099812;11.83952278;1.3;_
2025-11-17T11:50:22.376 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:22.376 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:22.376 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:22.377 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:22.377 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:22.377 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 17.9878554, teldec = -24.256528
2025-11-17T11:50:22.377 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 17.9878554 -24.256528
2025-11-17T11:50:22.377 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 17.9878554 -24.256528
2025-11-17T11:50:22.377 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9878554 -24.256528
2025-11-17T11:50:22.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;17.9878554;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00761;2460996.90998123;11.83952278;1.3;_17.9616642047723 -24.2529757312401
2025-11-17T11:50:22.378 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9616642047723     dec_j2k = -24.2529757312401
2025-11-17T11:50:22.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:22.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:22.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10454997388512;171.162357330327;_
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10454997388512;171.162357330327;_
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:22.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:22.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:22.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:22.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:22.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:22.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:22.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:22.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:22.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:22.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55595)
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:22.383 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:22.390 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:50:22.390 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9099812, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10454997388512, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.9878554, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.00761, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9616642047723, telescope_dec_j2k=-24.2529757312401, observability=1)
2025-11-17T11:50:22.391 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06773614883423 seconds ago
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Status age = 1.6802363395690918s
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:24.071 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 17;17.9883226;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00808;2460996.91000083;11.83998861;1.3;_
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response 17;17.9883226;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00808;2460996.91000083;11.83998861;1.3;_
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:24.072 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:24.073 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:24.073 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:24.073 [INFO] [Thread-67519 (handle)] [driver.py] [get_status()] Telra = 17.9883226, teldec = -24.256528
2025-11-17T11:50:24.073 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9883226 -24.256528
2025-11-17T11:50:24.074 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9883226 -24.256528
2025-11-17T11:50:24.074 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9883226 -24.256528
2025-11-17T11:50:24.075 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 17;17.9883226;-24.256528;50.108397;89.99302;50.08601;90.12017;15.00808;2460996.91000086;11.83998861;1.3;_17.9621313635678 -24.252993182704
2025-11-17T11:50:24.075 [INFO] [Thread-67519 (handle)] [driver.py] [get_status()] ra_j2k = 17.9621313635678     dec_j2k = -24.252993182704
2025-11-17T11:50:24.075 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:24.075 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:24.075 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 140;0.104550375004548;171.162357330327;_
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response 140;0.104550375004548;171.162357330327;_
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:24.076 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:24.077 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:24.078 [DEBUG] [Thread-67519 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:24.078 [DEBUG] [Thread-67519 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:24.078 [DEBUG] [Thread-67519 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:24.083 [DEBUG] [Thread-67519 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40859)
2025-11-17T11:50:24.083 [DEBUG] [Thread-67519 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:24.084 [DEBUG] [Thread-67519 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:24.084 [DEBUG] [Thread-67519 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:24.084 [DEBUG] [Thread-67519 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:24.084 [DEBUG] [Thread-67519 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:24.091 [DEBUG] [Thread-67519 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:24.091 [INFO] [Thread-67519 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91000083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104550375004548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.9883226, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.00808, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9621313635678, telescope_dec_j2k=-24.252993182704, observability=1)
2025-11-17T11:50:37.399 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:50:37
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.30783486366272s
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:37.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:37.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:37.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:37.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:37.401 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:37.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:37.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:37.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:37.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9920285;-24.256528;50.108397;89.99302;50.08601;90.12017;15.01178;2460996.9101551;11.84368444;1.3;_
2025-11-17T11:50:37.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;17.9920285;-24.256528;50.108397;89.99302;50.08601;90.12017;15.01178;2460996.9101551;11.84368444;1.3;_
2025-11-17T11:50:37.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:37.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:37.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:37.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:37.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:37.403 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 17.9920285, teldec = -24.256528
2025-11-17T11:50:37.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9920285 -24.256528
2025-11-17T11:50:37.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9920285 -24.256528
2025-11-17T11:50:37.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9920285 -24.256528
2025-11-17T11:50:37.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;17.9920285;-24.256528;50.108397;89.99302;50.08601;90.12017;15.01178;2460996.91015514;11.84368444;1.3;_17.9658369388461 -24.2531316128364
2025-11-17T11:50:37.404 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.9658369388461     dec_j2k = -24.2531316128364
2025-11-17T11:50:37.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:37.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:37.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:37.404 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10455041511649;171.162362694745;_
2025-11-17T11:50:37.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10455041511649;171.162362694745;_
2025-11-17T11:50:37.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:37.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:37.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:37.405 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:37.406 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:37.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:37.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:37.407 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33557)
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:37.413 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:37.420 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:37.421 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9101551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10455041511649, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108397, telescope_az=89.99302, telescope_ra=17.9920285, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.01178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:49:37.594186', telescope_ra_j2k=17.9658369388461, telescope_dec_j2k=-24.2531316128364, observability=1)
2025-11-17T11:50:37.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:37.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:37.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:37.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:37.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:37.737 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:37.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:37.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:37.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:37.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:37.738 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:37.739 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:50:37.740 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:50:38.741 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:38.742 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:38.743 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:38.743 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:38.743 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:38.743 [DEBUG] [ThreadPoolExecutor-2748_0] [payload.py] [to_registers()] [0]
2025-11-17T11:50:38.745 [DEBUG] [ThreadPoolExecutor-2748_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36909)
2025-11-17T11:50:38.746 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:38.746 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:38.746 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:50:38.746 [DEBUG] [ThreadPoolExecutor-2748_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:38.746 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:38.753 [DEBUG] [ThreadPoolExecutor-2748_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Status age = 4.774536371231079s
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:42.195 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:42.196 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:42.197 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 17;17.993373;-24.256528;50.108396;89.99302;50.08601;90.12017;15.01313;2460996.91021061;11.84502528;1.3;_
2025-11-17T11:50:42.197 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response 17;17.993373;-24.256528;50.108396;89.99302;50.08601;90.12017;15.01313;2460996.91021061;11.84502528;1.3;_
2025-11-17T11:50:42.197 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:42.197 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:42.197 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:42.198 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:42.198 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:42.198 [INFO] [Thread-67520 (handle)] [driver.py] [get_status()] Telra = 17.993373, teldec = -24.256528
2025-11-17T11:50:42.198 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] UnCookCoordinates 17.993373 -24.256528
2025-11-17T11:50:42.198 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.993373 -24.256528
2025-11-17T11:50:42.199 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.993373 -24.256528
2025-11-17T11:50:42.199 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 17;17.993373;-24.256528;50.108396;89.99302;50.08601;90.12017;15.01313;2460996.91021064;11.84502528;1.3;_17.9671813219671 -24.2531818363597
2025-11-17T11:50:42.199 [INFO] [Thread-67520 (handle)] [driver.py] [get_status()] ra_j2k = 17.9671813219671     dec_j2k = -24.2531818363597
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 140;0.104551016795633;171.162357330327;_
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response 140;0.104551016795633;171.162357330327;_
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:42.200 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:42.201 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:42.202 [DEBUG] [Thread-67520 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:42.207 [DEBUG] [Thread-67520 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50271)
2025-11-17T11:50:42.208 [DEBUG] [Thread-67520 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:42.208 [DEBUG] [Thread-67520 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:42.208 [DEBUG] [Thread-67520 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:42.208 [DEBUG] [Thread-67520 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:42.208 [DEBUG] [Thread-67520 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:42.215 [DEBUG] [Thread-67520 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:42.216 [INFO] [Thread-67520 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91021061, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104551016795633, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.99302, telescope_ra=17.993373, telescope_dec=-24.256528, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.01313, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9671813219671, telescope_dec_j2k=-24.2531818363597, observability=1)
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.95109486579895s
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:50:49.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:50:49.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:50:49.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9953239;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01508;2460996.91029131;11.84697083;1.3;_
2025-11-17T11:50:49.169 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;17.9953239;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01508;2460996.91029131;11.84697083;1.3;_
2025-11-17T11:50:49.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:50:49.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:50:49.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:50:49.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:49.170 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:50:49.170 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 17.9953239, teldec = -24.256527
2025-11-17T11:50:49.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9953239 -24.256527
2025-11-17T11:50:49.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9953239 -24.256527
2025-11-17T11:50:49.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9953239 -24.256527
2025-11-17T11:50:49.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;17.9953239;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01508;2460996.91029133;11.84697083;1.3;_17.9691320534534 -24.2532537129052
2025-11-17T11:50:49.171 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.9691320534534     dec_j2k = -24.2532537129052
2025-11-17T11:50:49.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:50:49.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:50:49.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104551337691175;171.162362694745;_
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104551337691175;171.162362694745;_
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:49.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:50:49.173 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:50:49.174 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52431)
2025-11-17T11:50:49.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:50:49.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:50:49.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:50:49.174 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:50:49.175 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:50:49.181 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:50:49.181 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:50:49.182 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:50:49.182 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91029131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104551337691175, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=17.9953239, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.01508, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9691320534534, telescope_dec_j2k=-24.2532537129052, observability=1)
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Status age = 11.085412740707397s
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:00.267 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:00.268 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:00.268 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:00.268 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:00.268 [DEBUG] [Thread-67521 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:00.268 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 17;17.9984151;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01817;2460996.91041978;11.85005361;1.3;_
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response 17;17.9984151;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01817;2460996.91041978;11.85005361;1.3;_
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:00.269 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:00.270 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:00.270 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:00.270 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:00.270 [INFO] [Thread-67521 (handle)] [driver.py] [get_status()] Telra = 17.9984151, teldec = -24.256527
2025-11-17T11:51:00.271 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] UnCookCoordinates 17.9984151 -24.256527
2025-11-17T11:51:00.271 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 17.9984151 -24.256527
2025-11-17T11:51:00.271 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 17.9984151 -24.256527
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 17;17.9984151;-24.256527;50.108396;89.993019;50.08601;90.12017;15.01817;2460996.91041981;11.85005361;1.3;_17.9722229882621 -24.253369188071
2025-11-17T11:51:00.272 [INFO] [Thread-67521 (handle)] [driver.py] [get_status()] ra_j2k = 17.9722229882621     dec_j2k = -24.253369188071
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 140;0.104551458027003;171.162362694745;_
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response 140;0.104551458027003;171.162362694745;_
2025-11-17T11:51:00.272 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:00.273 [DEBUG] [Thread-67521 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:00.274 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:00.274 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:00.274 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:00.275 [DEBUG] [Thread-67521 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:00.275 [DEBUG] [Thread-67521 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:00.275 [DEBUG] [Thread-67521 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49725)
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:00.278 [DEBUG] [Thread-67521 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:00.285 [DEBUG] [Thread-67521 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:00.285 [INFO] [Thread-67521 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91041978, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104551458027003, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=17.9984151, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.01817, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9722229882621, telescope_dec_j2k=-24.253369188071, observability=1)
2025-11-17T11:51:03.753 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:03.754 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:03.755 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:03.755 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:03.755 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:03.755 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:03.755 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:03.756 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:51:03.756 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:51:03.756 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:51:03.756 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:07.922 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Status age = 7.637341022491455s
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:07.923 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:07.924 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:07.925 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 17;18.0005348;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02029;2460996.91050839;11.8521675;1.3;_
2025-11-17T11:51:07.925 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response 17;18.0005348;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02029;2460996.91050839;11.8521675;1.3;_
2025-11-17T11:51:07.925 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:07.925 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:07.925 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:07.926 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:07.926 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:07.926 [INFO] [Thread-67522 (handle)] [driver.py] [get_status()] Telra = 18.0005348, teldec = -24.256527
2025-11-17T11:51:07.926 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0005348 -24.256527
2025-11-17T11:51:07.926 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0005348 -24.256527
2025-11-17T11:51:07.926 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0005348 -24.256527
2025-11-17T11:51:07.927 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 17;18.0005348;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02029;2460996.91050841;11.8521675;1.3;_17.974342507928 -24.2534483734662
2025-11-17T11:51:07.927 [INFO] [Thread-67522 (handle)] [driver.py] [get_status()] ra_j2k = 17.974342507928     dec_j2k = -24.2534483734662
2025-11-17T11:51:07.927 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:07.927 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:07.927 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 140;0.104551257467289;171.162362694745;_
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response 140;0.104551257467289;171.162362694745;_
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:07.928 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:07.929 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:07.930 [DEBUG] [Thread-67522 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:07.930 [DEBUG] [Thread-67522 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:07.930 [DEBUG] [Thread-67522 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53477)
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:07.931 [DEBUG] [Thread-67522 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:07.938 [DEBUG] [Thread-67522 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:07.938 [DEBUG] [Thread-67522 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:07.938 [DEBUG] [Thread-67522 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:07.939 [DEBUG] [Thread-67522 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:07.939 [INFO] [Thread-67522 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91050839, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104551257467289, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=18.0005348, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02029, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.974342507928, telescope_dec_j2k=-24.2534483734662, observability=1)
2025-11-17T11:51:14.862 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.923734664916992s
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:14.863 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:14.864 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.002486;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02224;2460996.91058872;11.85411333;1.3;_
2025-11-17T11:51:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.002486;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02224;2460996.91058872;11.85411333;1.3;_
2025-11-17T11:51:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:14.865 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:14.866 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.002486, teldec = -24.256527
2025-11-17T11:51:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.002486 -24.256527
2025-11-17T11:51:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.002486 -24.256527
2025-11-17T11:51:14.866 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.002486 -24.256527
2025-11-17T11:51:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.002486;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02224;2460996.91058874;11.85411333;1.3;_17.9762935430173 -24.2535212654078
2025-11-17T11:51:14.867 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9762935430173     dec_j2k = -24.2535212654078
2025-11-17T11:51:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:14.867 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104552019594203;171.162362694745;_
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104552019594203;171.162362694745;_
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:14.868 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:14.869 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59297)
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:14.876 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:14.883 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91058872, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104552019594203, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=18.002486, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02224, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9762935430173, telescope_dec_j2k=-24.2535212654078, observability=1)
2025-11-17T11:51:18.331 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Status age = 3.44832706451416s
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:18.332 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:18.333 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 17;18.0034311;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02319;2460996.91062885;11.85505583;1.3;_
2025-11-17T11:51:18.333 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response 17;18.0034311;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02319;2460996.91062885;11.85505583;1.3;_
2025-11-17T11:51:18.333 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:18.333 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:18.333 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:18.334 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:18.334 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:18.334 [INFO] [Thread-67523 (handle)] [driver.py] [get_status()] Telra = 18.0034311, teldec = -24.256527
2025-11-17T11:51:18.334 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0034311 -24.256527
2025-11-17T11:51:18.334 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0034311 -24.256527
2025-11-17T11:51:18.335 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0034311 -24.256527
2025-11-17T11:51:18.335 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 17;18.0034311;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02319;2460996.91062888;11.85505583;1.3;_17.9772385635147 -24.2535565723765
2025-11-17T11:51:18.336 [INFO] [Thread-67523 (handle)] [driver.py] [get_status()] ra_j2k = 17.9772385635147     dec_j2k = -24.2535565723765
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 140;0.104552019594203;171.162351965909;_
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response 140;0.104552019594203;171.162351965909;_
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:18.336 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:18.337 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:18.338 [DEBUG] [Thread-67523 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:18.338 [DEBUG] [Thread-67523 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:18.338 [DEBUG] [Thread-67523 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51831)
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:18.341 [DEBUG] [Thread-67523 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:18.348 [DEBUG] [Thread-67523 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:18.349 [INFO] [Thread-67523 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91062885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104552019594203, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=18.0034311, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02319, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9772385635147, telescope_dec_j2k=-24.2535565723765, observability=1)
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.102196931838989s
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:22.451 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:22.452 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:22.453 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0046001;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02436;2460996.91067654;11.85622167;1.3;_
2025-11-17T11:51:22.453 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.0046001;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02436;2460996.91067654;11.85622167;1.3;_
2025-11-17T11:51:22.453 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:22.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:22.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:22.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:22.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:22.455 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.0046001, teldec = -24.256527
2025-11-17T11:51:22.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.0046001 -24.256527
2025-11-17T11:51:22.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.0046001 -24.256527
2025-11-17T11:51:22.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0046001 -24.256527
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0046001;-24.256527;50.108396;89.993019;50.08601;90.12017;15.02436;2460996.91067657;11.85622167;1.3;_17.9784074655161 -24.2536002441413
2025-11-17T11:51:22.456 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9784074655161     dec_j2k = -24.2536002441413
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104552541049459;171.162351965909;_
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104552541049459;171.162351965909;_
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:22.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:22.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:22.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:22.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:22.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:22.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:22.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:22.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:22.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:22.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35849)
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:22.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:22.472 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:22.473 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:51:22.473 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91067654, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104552541049459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108396, telescope_az=89.993019, telescope_ra=18.0046001, telescope_dec=-24.256527, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02436, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9784074655161, telescope_dec_j2k=-24.2536002441413, observability=1)
2025-11-17T11:51:22.473 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07419514656067 seconds ago
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Status age = 13.969966650009155s
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:36.443 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 17;18.0084768;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02823;2460996.91083847;11.86008778;1.3;_
2025-11-17T11:51:36.444 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response 17;18.0084768;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02823;2460996.91083847;11.86008778;1.3;_
2025-11-17T11:51:36.445 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:36.445 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:36.445 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:36.446 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:36.446 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:36.446 [INFO] [Thread-67524 (handle)] [driver.py] [get_status()] Telra = 18.0084768, teldec = -24.256526
2025-11-17T11:51:36.446 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0084768 -24.256526
2025-11-17T11:51:36.446 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0084768 -24.256526
2025-11-17T11:51:36.446 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0084768 -24.256526
2025-11-17T11:51:36.447 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 17;18.0084768;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02823;2460996.91083851;11.86008778;1.3;_17.9822838434077 -24.2537440736168
2025-11-17T11:51:36.447 [INFO] [Thread-67524 (handle)] [driver.py] [get_status()] ra_j2k = 17.9822838434077     dec_j2k = -24.2537440736168
2025-11-17T11:51:36.447 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:36.447 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:36.447 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 140;0.104552861945002;171.162357330327;_
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response 140;0.104552861945002;171.162357330327;_
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:36.448 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:36.449 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:36.450 [DEBUG] [Thread-67524 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:36.450 [DEBUG] [Thread-67524 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:36.450 [DEBUG] [Thread-67524 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:36.456 [DEBUG] [Thread-67524 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44319)
2025-11-17T11:51:36.456 [DEBUG] [Thread-67524 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:36.457 [DEBUG] [Thread-67524 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:36.457 [DEBUG] [Thread-67524 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:36.457 [DEBUG] [Thread-67524 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:36.457 [DEBUG] [Thread-67524 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:36.464 [DEBUG] [Thread-67524 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:36.464 [INFO] [Thread-67524 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91083847, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104552861945002, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0084768, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02823, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.9822838434077, telescope_dec_j2k=-24.2537440736168, observability=1)
2025-11-17T11:51:37.481 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:51:37
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.0167274475097656s
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:37.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:37.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:37.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:37.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:37.482 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:37.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0087754;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02853;2460996.9108505;11.86038556;1.3;_
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.0087754;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02853;2460996.9108505;11.86038556;1.3;_
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:37.483 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:37.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:37.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:37.484 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.0087754, teldec = -24.256526
2025-11-17T11:51:37.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0087754 -24.256526
2025-11-17T11:51:37.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0087754 -24.256526
2025-11-17T11:51:37.484 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0087754 -24.256526
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0087754;-24.256526;50.108395;89.993018;50.08601;90.12017;15.02853;2460996.91085052;11.86038556;1.3;_17.982582418753 -24.2537552291719
2025-11-17T11:51:37.485 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.982582418753     dec_j2k = -24.2537552291719
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104553463624144;171.162362694745;_
2025-11-17T11:51:37.485 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104553463624144;171.162362694745;_
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:37.486 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:37.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:37.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:37.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:37.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:37.487 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44299)
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:37.490 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:37.497 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:37.497 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9108505, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104553463624144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0087754, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.02853, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:50:37.736081', telescope_ra_j2k=17.982582418753, telescope_dec_j2k=-24.2537552291719, observability=1)
2025-11-17T11:51:37.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:37.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:37.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:37.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:37.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:37.880 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:37.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:37.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:37.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:37.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:37.881 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:51:37.882 [INFO] [ThreadPoolExecutor-2749_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:51:37.882 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.777463912963867s
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:48.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:48.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:48.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:48.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0117914;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03155;2460996.91097543;11.86339333;1.3;_
2025-11-17T11:51:48.277 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0117914;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03155;2460996.91097543;11.86339333;1.3;_
2025-11-17T11:51:48.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:48.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:48.278 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:48.278 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:48.278 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:48.278 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0117914, teldec = -24.256526
2025-11-17T11:51:48.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0117914 -24.256526
2025-11-17T11:51:48.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0117914 -24.256526
2025-11-17T11:51:48.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0117914 -24.256526
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0117914;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03155;2460996.91097545;11.86339333;1.3;_17.9855981710985 -24.2538679068782
2025-11-17T11:51:48.280 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 17.9855981710985     dec_j2k = -24.2538679068782
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104553423512201;171.162357330327;_
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104553423512201;171.162357330327;_
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:48.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:48.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:48.282 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:48.282 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59521)
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:48.285 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:48.292 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:48.293 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:48.293 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91097543, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104553423512201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0117914, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.03155, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9855981710985, telescope_dec_j2k=-24.2538679068782, observability=1)
2025-11-17T11:51:54.512 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:51:54.512 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Status age = 6.219870567321777s
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:51:54.513 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:51:54.514 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 17;18.0135189;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03327;2460996.91104762;11.86511611;1.3;_
2025-11-17T11:51:54.514 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response 17;18.0135189;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03327;2460996.91104762;11.86511611;1.3;_
2025-11-17T11:51:54.514 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:51:54.514 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:51:54.514 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:51:54.515 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:54.515 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:51:54.515 [INFO] [Thread-67525 (handle)] [driver.py] [get_status()] Telra = 18.0135189, teldec = -24.256526
2025-11-17T11:51:54.515 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0135189 -24.256526
2025-11-17T11:51:54.515 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0135189 -24.256526
2025-11-17T11:51:54.515 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0135189 -24.256526
2025-11-17T11:51:54.516 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 17;18.0135189;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03327;2460996.91104764;11.86511611;1.3;_17.9873255303703 -24.2539324473526
2025-11-17T11:51:54.516 [INFO] [Thread-67525 (handle)] [driver.py] [get_status()] ra_j2k = 17.9873255303703     dec_j2k = -24.2539324473526
2025-11-17T11:51:54.516 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:51:54.516 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:51:54.516 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 140;0.104553784519686;171.162357330327;_
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response 140;0.104553784519686;171.162357330327;_
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:54.517 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:51:54.518 [DEBUG] [Thread-67525 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36645)
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:51:54.521 [DEBUG] [Thread-67525 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:51:54.528 [DEBUG] [Thread-67525 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:51:54.529 [DEBUG] [Thread-67525 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:51:54.529 [INFO] [Thread-67525 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91104762, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104553784519686, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0135189, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.03327, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9873255303703, telescope_dec_j2k=-24.2539324473526, observability=1)
2025-11-17T11:51:58.756 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.757 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.757 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:58.757 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:58.757 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:51:58.758 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:51:58.759 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.759 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.759 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.759 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:58.759 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:58.760 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:51:58.761 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:51:58.762 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Park
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:51:58.763 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:51:58.764 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 29;18.0147161;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03447;2460996.91109681;11.86631;1.3;_Park Command Successful
2025-11-17T11:51:59.764 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:51:59.764 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:51:59.764 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:51:59.765 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:51:59.765 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:52:00.765 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:52:00.765 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:52:00.765 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:52:00.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:52:00.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:52:01.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:52:01.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:52:01.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:52:01.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:52:01.766 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:52:02.767 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:52:02.767 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:52:02.767 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:02.768 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:52:02.769 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:52:02.770 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:03.770 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:03.770 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:03.771 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:03.771 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:03.771 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:52:03.772 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:52:03.773 [DEBUG] [ThreadPoolExecutor-2748_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:03.773 [INFO] [ThreadPoolExecutor-2748_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:52:07.974 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Status age = 13.445671319961548s
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:07.975 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:07.976 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 17;18.0172784;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03703;2460996.91120343;11.86886528;1.3;_
2025-11-17T11:52:07.976 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response 17;18.0172784;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03703;2460996.91120343;11.86886528;1.3;_
2025-11-17T11:52:07.976 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:07.976 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:07.977 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:07.977 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:07.977 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:07.978 [INFO] [Thread-67526 (handle)] [driver.py] [get_status()] Telra = 18.0172784, teldec = -24.256526
2025-11-17T11:52:07.978 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0172784 -24.256526
2025-11-17T11:52:07.978 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0172784 -24.256526
2025-11-17T11:52:07.978 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0172784 -24.256526
2025-11-17T11:52:07.979 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 17;18.0172784;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03703;2460996.91120346;11.86886528;1.3;_17.9910847269351 -24.2540729073179
2025-11-17T11:52:07.979 [INFO] [Thread-67526 (handle)] [driver.py] [get_status()] ra_j2k = 17.9910847269351     dec_j2k = -24.2540729073179
2025-11-17T11:52:07.979 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:07.979 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:07.979 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 140;0.104554827430199;171.162351965909;_
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response 140;0.104554827430199;171.162351965909;_
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:07.980 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:07.981 [DEBUG] [Thread-67526 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:07.987 [DEBUG] [Thread-67526 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37459)
2025-11-17T11:52:07.988 [DEBUG] [Thread-67526 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:07.988 [DEBUG] [Thread-67526 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:07.988 [DEBUG] [Thread-67526 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:07.988 [DEBUG] [Thread-67526 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:07.988 [DEBUG] [Thread-67526 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:07.995 [DEBUG] [Thread-67526 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:07.995 [INFO] [Thread-67526 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91120343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104554827430199, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0172784, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.03703, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9910847269351, telescope_dec_j2k=-24.2540729073179, observability=1)
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Status age = 4.640181303024292s
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:12.635 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 17;18.0185574;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03831;2460996.91125736;11.87014083;1.3;_
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response 17;18.0185574;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03831;2460996.91125736;11.87014083;1.3;_
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:12.636 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:12.637 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:12.637 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:12.637 [INFO] [Thread-67527 (handle)] [driver.py] [get_status()] Telra = 18.0185574, teldec = -24.256526
2025-11-17T11:52:12.637 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0185574 -24.256526
2025-11-17T11:52:12.637 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0185574 -24.256526
2025-11-17T11:52:12.638 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0185574 -24.256526
2025-11-17T11:52:12.638 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 17;18.0185574;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03831;2460996.91125738;11.87014083;1.3;_17.9923636245882 -24.2541206933014
2025-11-17T11:52:12.638 [INFO] [Thread-67527 (handle)] [driver.py] [get_status()] ra_j2k = 17.9923636245882     dec_j2k = -24.2541206933014
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 140;0.104555148325742;171.162357330327;_
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response 140;0.104555148325742;171.162357330327;_
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:12.639 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:12.640 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:12.641 [DEBUG] [Thread-67527 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:12.641 [DEBUG] [Thread-67527 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:12.641 [DEBUG] [Thread-67527 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:12.647 [DEBUG] [Thread-67527 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34657)
2025-11-17T11:52:12.647 [DEBUG] [Thread-67527 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:12.647 [DEBUG] [Thread-67527 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:12.648 [DEBUG] [Thread-67527 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:12.648 [DEBUG] [Thread-67527 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:12.648 [DEBUG] [Thread-67527 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:12.655 [DEBUG] [Thread-67527 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:12.655 [INFO] [Thread-67527 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91125736, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104555148325742, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0185574, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.03831, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9923636245882, telescope_dec_j2k=-24.2541206933014, observability=1)
2025-11-17T11:52:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.2281031608581543s
2025-11-17T11:52:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0192028;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03896;2460996.9112834;11.87078444;1.3;_
2025-11-17T11:52:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.0192028;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03896;2460996.9112834;11.87078444;1.3;_
2025-11-17T11:52:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:14.887 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.0192028, teldec = -24.256526
2025-11-17T11:52:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0192028 -24.256526
2025-11-17T11:52:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0192028 -24.256526
2025-11-17T11:52:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0192028 -24.256526
2025-11-17T11:52:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0192028;-24.256526;50.108395;89.993018;50.08601;90.12017;15.03896;2460996.91128343;11.87078444;1.3;_17.9930089731129 -24.2541448068853
2025-11-17T11:52:14.888 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 17.9930089731129     dec_j2k = -24.2541448068853
2025-11-17T11:52:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104555950564598;171.162351965909;_
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104555950564598;171.162351965909;_
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43437)
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:14.901 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:14.902 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9112834, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104555950564598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993018, telescope_ra=18.0192028, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.03896, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9930089731129, telescope_dec_j2k=-24.2541448068853, observability=1)
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.631617546081543s
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:22.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:22.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:22.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0213216;-24.256526;50.108395;89.993017;50.08601;90.12017;15.04108;2460996.91137193;11.8728975;1.3;_
2025-11-17T11:52:22.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.0213216;-24.256526;50.108395;89.993017;50.08601;90.12017;15.04108;2460996.91137193;11.8728975;1.3;_
2025-11-17T11:52:22.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:22.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:22.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:22.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:22.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:22.536 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.0213216, teldec = -24.256526
2025-11-17T11:52:22.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.0213216 -24.256526
2025-11-17T11:52:22.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.0213216 -24.256526
2025-11-17T11:52:22.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0213216 -24.256526
2025-11-17T11:52:22.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0213216;-24.256526;50.108395;89.993017;50.08601;90.12017;15.04108;2460996.91137196;11.8728975;1.3;_17.9951276049258 -24.2542239707078
2025-11-17T11:52:22.537 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 17.9951276049258     dec_j2k = -24.2542239707078
2025-11-17T11:52:22.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:22.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:22.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104556070900426;171.162357330327;_
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104556070900426;171.162357330327;_
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:22.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:22.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:22.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:22.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:22.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:22.542 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49645)
2025-11-17T11:52:22.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:22.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:22.543 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:22.543 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:22.543 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:22.550 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:52:22.550 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91137193, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104556070900426, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108395, telescope_az=89.993017, telescope_ra=18.0213216, telescope_dec=-24.256526, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.04108, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9951276049258, telescope_dec_j2k=-24.2542239707078, observability=1)
2025-11-17T11:52:22.550 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0692183971405 seconds ago
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Status age = 8.156560182571411s
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:30.707 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:30.708 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:30.709 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 17;18.0235993;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04335;2460996.91146654;11.87516889;1.3;_
2025-11-17T11:52:30.709 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response 17;18.0235993;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04335;2460996.91146654;11.87516889;1.3;_
2025-11-17T11:52:30.709 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:30.709 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:30.709 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:30.710 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:30.710 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:30.710 [INFO] [Thread-67528 (handle)] [driver.py] [get_status()] Telra = 18.0235993, teldec = -24.256525
2025-11-17T11:52:30.710 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0235993 -24.256525
2025-11-17T11:52:30.710 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0235993 -24.256525
2025-11-17T11:52:30.710 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0235993 -24.256525
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 17;18.0235993;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04335;2460996.91146656;11.87516889;1.3;_17.9974051256978 -24.2543080727266
2025-11-17T11:52:30.711 [INFO] [Thread-67528 (handle)] [driver.py] [get_status()] ra_j2k = 17.9974051256978     dec_j2k = -24.2543080727266
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 140;0.10455655224374;171.162357330327;_
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response 140;0.10455655224374;171.162357330327;_
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:30.711 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:30.712 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:30.713 [DEBUG] [Thread-67528 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47649)
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:30.718 [DEBUG] [Thread-67528 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:30.725 [DEBUG] [Thread-67528 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:30.726 [DEBUG] [Thread-67528 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:30.726 [DEBUG] [Thread-67528 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:30.726 [DEBUG] [Thread-67528 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:30.726 [INFO] [Thread-67528 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91146654, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10455655224374, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993017, telescope_ra=18.0235993, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.04335, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9974051256978, telescope_dec_j2k=-24.2543080727266, observability=1)
2025-11-17T11:52:37.558 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:52:37
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.832505226135254s
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:37.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:37.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:37.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0255229;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04528;2460996.91154583;11.87708722;1.3;_
2025-11-17T11:52:37.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.0255229;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04528;2460996.91154583;11.87708722;1.3;_
2025-11-17T11:52:37.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:37.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:37.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:37.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:37.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:37.561 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.0255229, teldec = -24.256525
2025-11-17T11:52:37.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0255229 -24.256525
2025-11-17T11:52:37.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0255229 -24.256525
2025-11-17T11:52:37.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0255229 -24.256525
2025-11-17T11:52:37.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0255229;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04528;2460996.91154586;11.87708722;1.3;_17.9993285752724 -24.2543799453713
2025-11-17T11:52:37.562 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 17.9993285752724     dec_j2k = -24.2543799453713
2025-11-17T11:52:37.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:37.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:37.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104556512131797;171.162357330327;_
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104556512131797;171.162357330327;_
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:37.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:37.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:37.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:37.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:37.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:37.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:37.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:37.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:37.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:37.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:52:37.567 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58763)
2025-11-17T11:52:37.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:37.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:37.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:37.568 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:37.568 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:37.575 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:37.575 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91154583, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104556512131797, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993017, telescope_ra=18.0255229, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.04528, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:51:37.879210', telescope_ra_j2k=17.9993285752724, telescope_dec_j2k=-24.2543799453713, observability=1)
2025-11-17T11:52:38.021 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:38.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:38.023 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:38.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:38.024 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:38.024 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:52:38.025 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:52:38.026 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:39.026 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:39.026 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:39.026 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:39.026 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:39.026 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:52:39.027 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:39.028 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:39.029 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:39.029 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:39.029 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:39.029 [DEBUG] [ThreadPoolExecutor-2750_0] [payload.py] [to_registers()] [0]
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42717)
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:39.031 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:39.038 [DEBUG] [ThreadPoolExecutor-2750_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.805457353591919s
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:47.381 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0282303;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04799;2460996.91165951;11.87978722;1.3;_
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0282303;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04799;2460996.91165951;11.87978722;1.3;_
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:47.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:47.383 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:47.383 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:47.383 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0282303, teldec = -24.256525
2025-11-17T11:52:47.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0282303 -24.256525
2025-11-17T11:52:47.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0282303 -24.256525
2025-11-17T11:52:47.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0282303 -24.256525
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0282303;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04799;2460996.91165954;11.87978722;1.3;_18.0020357652725 -24.2544811050747
2025-11-17T11:52:47.385 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.0020357652725     dec_j2k = -24.2544811050747
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104557234146767;171.162362694745;_
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104557234146767;171.162362694745;_
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:47.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:47.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:47.387 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:47.387 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:47.387 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34647)
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:47.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:47.398 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:47.398 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91165951, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104557234146767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993017, telescope_ra=18.0282303, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.04799, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0020357652725, telescope_dec_j2k=-24.2544811050747, observability=1)
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Status age = 1.3726089000701904s
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:52:48.771 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:52:48.772 [DEBUG] [Thread-67529 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:52:48.772 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:52:48.772 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:52:48.772 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:52:48.772 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:52:48.773 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 17;18.0286222;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04838;2460996.9116756;11.88017806;1.3;_
2025-11-17T11:52:48.773 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response 17;18.0286222;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04838;2460996.9116756;11.88017806;1.3;_
2025-11-17T11:52:48.773 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:52:48.773 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:52:48.773 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:52:48.774 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:48.774 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:52:48.774 [INFO] [Thread-67529 (handle)] [driver.py] [get_status()] Telra = 18.0286222, teldec = -24.256525
2025-11-17T11:52:48.774 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0286222 -24.256525
2025-11-17T11:52:48.774 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0286222 -24.256525
2025-11-17T11:52:48.774 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0286222 -24.256525
2025-11-17T11:52:48.775 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 17;18.0286222;-24.256525;50.108394;89.993017;50.08601;90.12017;15.04838;2460996.91167564;11.88017806;1.3;_18.0024276350412 -24.2544957482244
2025-11-17T11:52:48.775 [INFO] [Thread-67529 (handle)] [driver.py] [get_status()] ra_j2k = 18.0024276350412     dec_j2k = -24.2544957482244
2025-11-17T11:52:48.775 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:52:48.775 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:52:48.775 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 140;0.104557354482596;171.162351965909;_
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response 140;0.104557354482596;171.162351965909;_
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:48.776 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:52:48.777 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:52:48.778 [DEBUG] [Thread-67529 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:48.778 [DEBUG] [Thread-67529 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:52:48.778 [DEBUG] [Thread-67529 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33597)
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:52:48.782 [DEBUG] [Thread-67529 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:52:48.790 [DEBUG] [Thread-67529 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:52:48.790 [INFO] [Thread-67529 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9116756, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104557354482596, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993017, telescope_ra=18.0286222, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.04838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0024276350412, telescope_dec_j2k=-24.2544957482244, observability=1)
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:04.039 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:04.040 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:53:04.041 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:53:04.042 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:06.873 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Status age = 18.083199501037598s
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:06.874 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:06.875 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:06.876 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 17;18.0336643;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05342;2460996.91188514;11.88520639;1.3;_
2025-11-17T11:53:06.876 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response 17;18.0336643;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05342;2460996.91188514;11.88520639;1.3;_
2025-11-17T11:53:06.876 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:06.876 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:06.876 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:06.877 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:06.877 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:06.877 [INFO] [Thread-67530 (handle)] [driver.py] [get_status()] Telra = 18.0336643, teldec = -24.256525
2025-11-17T11:53:06.878 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0336643 -24.256525
2025-11-17T11:53:06.878 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0336643 -24.256525
2025-11-17T11:53:06.878 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0336643 -24.256525
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 17;18.0336643;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05342;2460996.91188516;11.88520639;1.3;_18.0074693498483 -24.2546841468328
2025-11-17T11:53:06.879 [INFO] [Thread-67530 (handle)] [driver.py] [get_status()] ra_j2k = 18.0074693498483     dec_j2k = -24.2546841468328
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 140;0.104557514930367;171.162351965909;_
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response 140;0.104557514930367;171.162351965909;_
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:06.879 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:06.880 [DEBUG] [Thread-67530 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59147)
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:06.883 [DEBUG] [Thread-67530 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:06.890 [DEBUG] [Thread-67530 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:06.891 [DEBUG] [Thread-67530 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:06.891 [DEBUG] [Thread-67530 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:06.891 [INFO] [Thread-67530 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91188514, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104557514930367, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993016, telescope_ra=18.0336643, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.05342, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0074693498483, telescope_dec_j2k=-24.2546841468328, observability=1)
2025-11-17T11:53:08.028 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Status age = 1.1379666328430176s
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:08.029 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 17;18.0339999;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05376;2460996.9118985;11.88554111;1.3;_
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response 17;18.0339999;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05376;2460996.9118985;11.88554111;1.3;_
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:08.030 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:08.031 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:08.031 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:08.031 [INFO] [Thread-67531 (handle)] [driver.py] [get_status()] Telra = 18.0339999, teldec = -24.256525
2025-11-17T11:53:08.031 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0339999 -24.256525
2025-11-17T11:53:08.031 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0339999 -24.256525
2025-11-17T11:53:08.031 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0339999 -24.256525
2025-11-17T11:53:08.032 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 17;18.0339999;-24.256525;50.108394;89.993016;50.08601;90.12017;15.05376;2460996.91189852;11.88554111;1.3;_18.0078049244575 -24.2546966867584
2025-11-17T11:53:08.032 [INFO] [Thread-67531 (handle)] [driver.py] [get_status()] ra_j2k = 18.0078049244575     dec_j2k = -24.2546966867584
2025-11-17T11:53:08.032 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:08.032 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 140;0.104557875937852;171.162357330327;_
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response 140;0.104557875937852;171.162357330327;_
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:08.033 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:08.034 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:08.035 [DEBUG] [Thread-67531 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:08.035 [DEBUG] [Thread-67531 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:08.035 [DEBUG] [Thread-67531 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:08.037 [DEBUG] [Thread-67531 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56019)
2025-11-17T11:53:08.038 [DEBUG] [Thread-67531 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:08.038 [DEBUG] [Thread-67531 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:08.038 [DEBUG] [Thread-67531 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:08.038 [DEBUG] [Thread-67531 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:08.038 [DEBUG] [Thread-67531 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:08.045 [DEBUG] [Thread-67531 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:08.045 [INFO] [Thread-67531 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9118985, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104557875937852, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993016, telescope_ra=18.0339999, telescope_dec=-24.256525, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.05376, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0078049244575, telescope_dec_j2k=-24.2546966867584, observability=1)
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.846781492233276s
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0358948;-24.256524;50.108394;89.993016;50.08601;90.12017;15.05565;2460996.91197793;11.88743083;1.3;_
2025-11-17T11:53:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.0358948;-24.256524;50.108394;89.993016;50.08601;90.12017;15.05565;2460996.91197793;11.88743083;1.3;_
2025-11-17T11:53:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.0358948, teldec = -24.256524
2025-11-17T11:53:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0358948 -24.256524
2025-11-17T11:53:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0358948 -24.256524
2025-11-17T11:53:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0358948 -24.256524
2025-11-17T11:53:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0358948;-24.256524;50.108394;89.993016;50.08601;90.12017;15.05565;2460996.91197796;11.88743083;1.3;_18.0096996818723 -24.2547664915103
2025-11-17T11:53:14.896 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.0096996818723     dec_j2k = -24.2547664915103
2025-11-17T11:53:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104558878736422;171.162357330327;_
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104558878736422;171.162357330327;_
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40673)
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:14.910 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91197793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104558878736422, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108394, telescope_az=89.993016, telescope_ra=18.0358948, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.05565, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0096996818723, telescope_dec_j2k=-24.2547664915103, observability=1)
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.699736833572388s
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:22.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:22.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:22.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:22.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.038061;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05782;2460996.91206726;11.88959111;1.3;_
2025-11-17T11:53:22.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.038061;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05782;2460996.91206726;11.88959111;1.3;_
2025-11-17T11:53:22.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:22.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:22.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:22.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:22.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:22.613 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.038061, teldec = -24.256524
2025-11-17T11:53:22.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.038061 -24.256524
2025-11-17T11:53:22.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.038061 -24.256524
2025-11-17T11:53:22.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.038061 -24.256524
2025-11-17T11:53:22.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.038061;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05782;2460996.91206729;11.88959111;1.3;_18.0118657198505 -24.2548474344854
2025-11-17T11:53:22.614 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0118657198505     dec_j2k = -24.2548474344854
2025-11-17T11:53:22.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:22.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:22.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104559680975279;171.162357330327;_
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104559680975279;171.162357330327;_
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:22.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:22.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:22.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:22.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:22.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43145)
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:22.618 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:22.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:22.625 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:22.626 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:53:22.626 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91206726, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104559680975279, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993016, telescope_ra=18.038061, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.05782, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0118657198505, telescope_dec_j2k=-24.2548474344854, observability=1)
2025-11-17T11:53:22.626 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06798076629639 seconds ago
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Status age = 2.3233134746551514s
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:24.949 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:24.950 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:24.951 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 17;18.0387058;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05846;2460996.91209434;11.89023417;1.3;_
2025-11-17T11:53:24.951 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response 17;18.0387058;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05846;2460996.91209434;11.89023417;1.3;_
2025-11-17T11:53:24.951 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:24.951 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:24.951 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:24.952 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:24.952 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:24.952 [INFO] [Thread-67532 (handle)] [driver.py] [get_status()] Telra = 18.0387058, teldec = -24.256524
2025-11-17T11:53:24.952 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0387058 -24.256524
2025-11-17T11:53:24.952 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0387058 -24.256524
2025-11-17T11:53:24.952 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0387058 -24.256524
2025-11-17T11:53:24.953 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 17;18.0387058;-24.256524;50.108393;89.993016;50.08601;90.12017;15.05846;2460996.91209436;11.89023417;1.3;_18.0125104718709 -24.2548715284878
2025-11-17T11:53:24.953 [INFO] [Thread-67532 (handle)] [driver.py] [get_status()] ra_j2k = 18.0125104718709     dec_j2k = -24.2548715284878
2025-11-17T11:53:24.953 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:24.953 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 140;0.104560001870821;171.162357330327;_
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response 140;0.104560001870821;171.162357330327;_
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:24.954 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:24.955 [DEBUG] [Thread-67532 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:24.957 [DEBUG] [Thread-67532 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36187)
2025-11-17T11:53:24.958 [DEBUG] [Thread-67532 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:24.958 [DEBUG] [Thread-67532 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:24.958 [DEBUG] [Thread-67532 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:24.958 [DEBUG] [Thread-67532 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:24.958 [DEBUG] [Thread-67532 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:24.965 [DEBUG] [Thread-67532 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:24.965 [INFO] [Thread-67532 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91209434, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104560001870821, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993016, telescope_ra=18.0387058, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.05846, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0125104718709, telescope_dec_j2k=-24.2548715284878, observability=1)
2025-11-17T11:53:37.636 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:53:37
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.670917510986328s
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:37.636 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:37.637 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:37.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.042245;-24.256524;50.108393;89.993016;50.08601;90.12017;15.062;2460996.91224118;11.89376361;1.3;_
2025-11-17T11:53:37.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.042245;-24.256524;50.108393;89.993016;50.08601;90.12017;15.062;2460996.91224118;11.89376361;1.3;_
2025-11-17T11:53:37.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:37.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:37.638 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:37.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:37.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:37.639 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.042245, teldec = -24.256524
2025-11-17T11:53:37.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.042245 -24.256524
2025-11-17T11:53:37.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.042245 -24.256524
2025-11-17T11:53:37.639 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.042245 -24.256524
2025-11-17T11:53:37.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.042245;-24.256524;50.108393;89.993016;50.08601;90.12017;15.062;2460996.9122412;11.89376361;1.3;_18.0160494105495 -24.2550037779221
2025-11-17T11:53:37.640 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.0160494105495     dec_j2k = -24.2550037779221
2025-11-17T11:53:37.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:37.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:37.640 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:37.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104560242542478;171.162341237072;_
2025-11-17T11:53:37.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104560242542478;171.162341237072;_
2025-11-17T11:53:37.641 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:37.641 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:37.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:37.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:37.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:37.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:37.647 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36551)
2025-11-17T11:53:37.647 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:37.647 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:37.648 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:37.648 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:37.648 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:37.655 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:37.655 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91224118, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104560242542478, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993016, telescope_ra=18.042245, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:52:38.021557', telescope_ra_j2k=18.0160494105495, telescope_dec_j2k=-24.2550037779221, observability=1)
2025-11-17T11:53:38.164 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:38.164 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:38.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:38.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:38.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:38.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:38.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:38.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:38.165 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:53:38.165 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:38.166 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:38.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:38.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:38.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:38.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:38.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:38.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:38.167 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:53:38.167 [INFO] [ThreadPoolExecutor-2751_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:53:38.167 [INFO] [ThreadPoolExecutor-2751_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Status age = 5.351576805114746s
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:43.007 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:43.008 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:43.009 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 17;18.0437477;-24.256524;50.108393;89.993016;50.08601;90.12017;15.0635;2460996.91230334;11.89526222;1.3;_
2025-11-17T11:53:43.009 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response 17;18.0437477;-24.256524;50.108393;89.993016;50.08601;90.12017;15.0635;2460996.91230334;11.89526222;1.3;_
2025-11-17T11:53:43.009 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:43.009 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:43.009 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:43.010 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:43.010 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:43.010 [INFO] [Thread-67533 (handle)] [driver.py] [get_status()] Telra = 18.0437477, teldec = -24.256524
2025-11-17T11:53:43.010 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0437477 -24.256524
2025-11-17T11:53:43.010 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0437477 -24.256524
2025-11-17T11:53:43.010 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0437477 -24.256524
2025-11-17T11:53:43.011 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 17;18.0437477;-24.256524;50.108393;89.993016;50.08601;90.12017;15.0635;2460996.91230337;11.89526222;1.3;_18.0175520006347 -24.2550599301046
2025-11-17T11:53:43.011 [INFO] [Thread-67533 (handle)] [driver.py] [get_status()] ra_j2k = 18.0175520006347     dec_j2k = -24.2550599301046
2025-11-17T11:53:43.011 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:43.011 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:43.011 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 140;0.104560603549963;171.162368059163;_
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response 140;0.104560603549963;171.162368059163;_
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:43.012 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:43.013 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:43.014 [DEBUG] [Thread-67533 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:43.014 [DEBUG] [Thread-67533 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:43.014 [DEBUG] [Thread-67533 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40197)
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:43.018 [DEBUG] [Thread-67533 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:43.025 [DEBUG] [Thread-67533 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:43.026 [DEBUG] [Thread-67533 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:43.026 [INFO] [Thread-67533 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91230334, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104560603549963, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993016, telescope_ra=18.0437477, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.0635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0175520006347, telescope_dec_j2k=-24.2550599301046, observability=1)
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.466276168823242s
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:46.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:53:46.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:53:46.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0446997;-24.256524;50.108393;89.993016;50.08601;90.12017;15.06445;2460996.91234368;11.89621167;1.3;_
2025-11-17T11:53:46.494 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0446997;-24.256524;50.108393;89.993016;50.08601;90.12017;15.06445;2460996.91234368;11.89621167;1.3;_
2025-11-17T11:53:46.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:53:46.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:53:46.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:53:46.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:46.495 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:53:46.495 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0446997, teldec = -24.256524
2025-11-17T11:53:46.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0446997 -24.256524
2025-11-17T11:53:46.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0446997 -24.256524
2025-11-17T11:53:46.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0446997 -24.256524
2025-11-17T11:53:46.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0446997;-24.256524;50.108393;89.993016;50.08601;90.12017;15.06445;2460996.9123437;11.89621167;1.3;_18.0185039313212 -24.2550955042089
2025-11-17T11:53:46.496 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.0185039313212     dec_j2k = -24.2550955042089
2025-11-17T11:53:46.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:53:46.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:53:46.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:53:46.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104560603549963;171.162362694745;_
2025-11-17T11:53:46.497 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104560603549963;171.162362694745;_
2025-11-17T11:53:46.497 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:53:46.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:46.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:53:46.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:53:46.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:53:46.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:46.499 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:53:46.499 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36161)
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:53:46.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:53:46.511 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:53:46.511 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91234368, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104560603549963, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993016, telescope_ra=18.0446997, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.06445, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0185039313212, telescope_dec_j2k=-24.2550955042089, observability=1)
2025-11-17T11:53:59.042 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.042 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.042 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:59.042 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:59.042 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:53:59.043 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:59.044 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:59.045 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:53:59.046 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:53:59.047 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Park
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:53:59.048 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 29;18.0482107;-24.256524;50.108393;89.993015;50.08601;90.12017;15.06797;2460996.91248898;11.89971306;1.3;_Park Command Successful
2025-11-17T11:54:00.049 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:54:00.049 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:54:00.049 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:54:00.050 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:54:00.050 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:54:01.050 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:54:01.050 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:54:01.050 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:54:01.051 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:54:01.051 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Status age = 14.620190858840942s
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:01.131 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:01.132 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 17;18.0487895;-24.256524;50.108393;89.993015;50.08601;90.12017;15.06854;2460996.9125131;11.90029028;1.3;_
2025-11-17T11:54:01.133 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response 17;18.0487895;-24.256524;50.108393;89.993015;50.08601;90.12017;15.06854;2460996.9125131;11.90029028;1.3;_
2025-11-17T11:54:01.133 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:01.133 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:01.133 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:01.134 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:01.134 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:01.134 [INFO] [Thread-67534 (handle)] [driver.py] [get_status()] Telra = 18.0487895, teldec = -24.256524
2025-11-17T11:54:01.134 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0487895 -24.256524
2025-11-17T11:54:01.134 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0487895 -24.256524
2025-11-17T11:54:01.134 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0487895 -24.256524
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 17;18.0487895;-24.256524;50.108393;89.993015;50.08601;90.12017;15.06854;2460996.91251314;11.90029028;1.3;_18.0225934363777 -24.2552483327329
2025-11-17T11:54:01.135 [INFO] [Thread-67534 (handle)] [driver.py] [get_status()] ra_j2k = 18.0225934363777     dec_j2k = -24.2552483327329
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 140;0.104561325564934;171.162362694745;_
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response 140;0.104561325564934;171.162362694745;_
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:01.135 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:01.136 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:01.136 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:01.137 [DEBUG] [Thread-67534 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:01.137 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:01.137 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:01.137 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:01.138 [DEBUG] [Thread-67534 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:01.138 [DEBUG] [Thread-67534 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:01.138 [DEBUG] [Thread-67534 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:01.140 [DEBUG] [Thread-67534 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57619)
2025-11-17T11:54:01.140 [DEBUG] [Thread-67534 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:01.140 [DEBUG] [Thread-67534 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:01.141 [DEBUG] [Thread-67534 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:01.141 [DEBUG] [Thread-67534 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:01.141 [DEBUG] [Thread-67534 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:01.148 [DEBUG] [Thread-67534 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:01.148 [INFO] [Thread-67534 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9125131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561325564934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993015, telescope_ra=18.0487895, telescope_dec=-24.256524, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.06854, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0225934363777, telescope_dec_j2k=-24.2552483327329, observability=1)
2025-11-17T11:54:02.051 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:54:02.051 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:54:02.051 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:54:02.052 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:54:02.052 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:54:03.052 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:54:03.052 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:54:03.052 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:03.053 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:54:03.054 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:54:03.055 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:04.055 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:04.055 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:04.055 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:04.055 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:04.056 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:04.056 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:04.056 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:54:04.057 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:54:04.058 [DEBUG] [ThreadPoolExecutor-2750_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:04.058 [INFO] [ThreadPoolExecutor-2750_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Status age = 6.929911851882935s
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:08.078 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:08.079 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:08.079 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:08.079 [DEBUG] [Thread-67535 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 17;18.0507148;-24.256523;50.108393;89.993015;50.08601;90.12017;15.07047;2460996.91259352;11.90221028;1.3;_
2025-11-17T11:54:08.080 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response 17;18.0507148;-24.256523;50.108393;89.993015;50.08601;90.12017;15.07047;2460996.91259352;11.90221028;1.3;_
2025-11-17T11:54:08.081 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:08.081 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:08.081 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:08.082 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:08.082 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:08.082 [INFO] [Thread-67535 (handle)] [driver.py] [get_status()] Telra = 18.0507148, teldec = -24.256523
2025-11-17T11:54:08.082 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0507148 -24.256523
2025-11-17T11:54:08.082 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0507148 -24.256523
2025-11-17T11:54:08.082 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0507148 -24.256523
2025-11-17T11:54:08.083 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 17;18.0507148;-24.256523;50.108393;89.993015;50.08601;90.12017;15.07047;2460996.91259355;11.90221028;1.3;_18.0245185993192 -24.2553192788355
2025-11-17T11:54:08.083 [INFO] [Thread-67535 (handle)] [driver.py] [get_status()] ra_j2k = 18.0245185993192     dec_j2k = -24.2553192788355
2025-11-17T11:54:08.083 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:08.083 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:08.083 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 140;0.104561365676876;171.162351965909;_
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response 140;0.104561365676876;171.162351965909;_
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:08.084 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:08.085 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:08.086 [DEBUG] [Thread-67535 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:08.086 [DEBUG] [Thread-67535 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:08.086 [DEBUG] [Thread-67535 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:08.092 [DEBUG] [Thread-67535 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52967)
2025-11-17T11:54:08.092 [DEBUG] [Thread-67535 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:08.092 [DEBUG] [Thread-67535 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:08.093 [DEBUG] [Thread-67535 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:08.093 [DEBUG] [Thread-67535 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:08.093 [DEBUG] [Thread-67535 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:08.100 [DEBUG] [Thread-67535 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:08.100 [INFO] [Thread-67535 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91259352, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561365676876, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108393, telescope_az=89.993015, telescope_ra=18.0507148, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.07047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0245185993192, telescope_dec_j2k=-24.2553192788355, observability=1)
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.799555063247681s
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0526102;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07237;2460996.91267248;11.90410056;1.3;_
2025-11-17T11:54:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.0526102;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07237;2460996.91267248;11.90410056;1.3;_
2025-11-17T11:54:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:14.903 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.0526102, teldec = -24.256523
2025-11-17T11:54:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0526102 -24.256523
2025-11-17T11:54:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0526102 -24.256523
2025-11-17T11:54:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0526102 -24.256523
2025-11-17T11:54:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0526102;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07237;2460996.9126725;11.90410056;1.3;_18.0264138651857 -24.255390108163
2025-11-17T11:54:14.904 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.0264138651857     dec_j2k = -24.255390108163
2025-11-17T11:54:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104561486012705;171.162357330327;_
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104561486012705;171.162357330327;_
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46435)
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:14.918 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:14.918 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:14.919 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:14.919 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91267248, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561486012705, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993015, telescope_ra=18.0526102, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.07237, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0264138651857, telescope_dec_j2k=-24.255390108163, observability=1)
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Status age = 4.278119325637817s
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:19.197 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:19.198 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:19.198 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:19.199 [DEBUG] [Thread-67536 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:19.199 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:19.199 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:19.199 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:19.199 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:19.200 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 17;18.0538327;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07359;2460996.91272222;11.90531972;1.3;_
2025-11-17T11:54:19.200 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response 17;18.0538327;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07359;2460996.91272222;11.90531972;1.3;_
2025-11-17T11:54:19.200 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:19.200 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:19.200 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:19.201 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:19.201 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:19.201 [INFO] [Thread-67536 (handle)] [driver.py] [get_status()] Telra = 18.0538327, teldec = -24.256523
2025-11-17T11:54:19.201 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0538327 -24.256523
2025-11-17T11:54:19.201 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0538327 -24.256523
2025-11-17T11:54:19.201 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0538327 -24.256523
2025-11-17T11:54:19.202 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 17;18.0538327;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07359;2460996.91272225;11.90531972;1.3;_18.0276362791948 -24.25543579216
2025-11-17T11:54:19.202 [INFO] [Thread-67536 (handle)] [driver.py] [get_status()] ra_j2k = 18.0276362791948     dec_j2k = -24.25543579216
2025-11-17T11:54:19.202 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:19.202 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:19.202 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 140;0.10456084422162;171.162357330327;_
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response 140;0.10456084422162;171.162357330327;_
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:19.203 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:19.204 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:19.205 [DEBUG] [Thread-67536 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:19.205 [DEBUG] [Thread-67536 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:19.205 [DEBUG] [Thread-67536 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46615)
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:19.211 [DEBUG] [Thread-67536 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:19.218 [DEBUG] [Thread-67536 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:19.219 [INFO] [Thread-67536 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91272222, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10456084422162, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993015, telescope_ra=18.0538327, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.07359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0276362791948, telescope_dec_j2k=-24.25543579216, observability=1)
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.4672608375549316s
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:22.686 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:22.687 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:22.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0547854;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07454;2460996.91276259;11.90626972;1.3;_
2025-11-17T11:54:22.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.0547854;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07454;2460996.91276259;11.90626972;1.3;_
2025-11-17T11:54:22.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:22.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:22.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:22.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:22.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:22.689 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.0547854, teldec = -24.256523
2025-11-17T11:54:22.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.0547854 -24.256523
2025-11-17T11:54:22.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.0547854 -24.256523
2025-11-17T11:54:22.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0547854 -24.256523
2025-11-17T11:54:22.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0547854;-24.256523;50.108392;89.993015;50.08601;90.12017;15.07454;2460996.91276262;11.90626972;1.3;_18.0285889124659 -24.2554713940806
2025-11-17T11:54:22.690 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0285889124659     dec_j2k = -24.2554713940806
2025-11-17T11:54:22.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:22.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:22.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104561887132133;171.162362694745;_
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104561887132133;171.162362694745;_
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:22.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:22.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:22.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:22.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:22.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38851)
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:22.699 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:22.706 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:22.706 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:22.706 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:22.706 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:22.706 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:22.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:22.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:22.707 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:22.707 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:54:22.707 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91276259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561887132133, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993015, telescope_ra=18.0547854, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.07454, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0285889124659, telescope_dec_j2k=-24.2554713940806, observability=1)
2025-11-17T11:54:22.707 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07090187072754 seconds ago
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Status age = 14.56624960899353s
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:37.273 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:37.274 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:37.274 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 17;18.0588554;-24.256523;50.108392;89.993014;50.08601;90.12017;15.07861;2460996.91293142;11.91032861;1.3;_
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response 17;18.0588554;-24.256523;50.108392;89.993014;50.08601;90.12017;15.07861;2460996.91293142;11.91032861;1.3;_
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:37.275 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:37.276 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:37.276 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:37.276 [INFO] [Thread-67537 (handle)] [driver.py] [get_status()] Telra = 18.0588554, teldec = -24.256523
2025-11-17T11:54:37.276 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0588554 -24.256523
2025-11-17T11:54:37.276 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0588554 -24.256523
2025-11-17T11:54:37.276 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0588554 -24.256523
2025-11-17T11:54:37.277 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 17;18.0588554;-24.256523;50.108392;89.993014;50.08601;90.12017;15.07861;2460996.91293145;11.91032861;1.3;_18.0326586301994 -24.2556234895303
2025-11-17T11:54:37.277 [INFO] [Thread-67537 (handle)] [driver.py] [get_status()] ra_j2k = 18.0326586301994     dec_j2k = -24.2556234895303
2025-11-17T11:54:37.277 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:37.277 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:37.277 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 140;0.104562007467961;171.162357330327;_
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response 140;0.104562007467961;171.162357330327;_
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:37.278 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:37.279 [DEBUG] [Thread-67537 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:37.279 [DEBUG] [Thread-67537 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:54:37.279 [DEBUG] [Thread-67537 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41831)
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:37.280 [DEBUG] [Thread-67537 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:37.287 [DEBUG] [Thread-67537 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:37.287 [DEBUG] [Thread-67537 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:37.287 [DEBUG] [Thread-67537 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:37.287 [DEBUG] [Thread-67537 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:37.287 [DEBUG] [Thread-67537 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:37.288 [DEBUG] [Thread-67537 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:37.288 [DEBUG] [Thread-67537 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:37.288 [DEBUG] [Thread-67537 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:37.288 [DEBUG] [Thread-67537 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:37.288 [INFO] [Thread-67537 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91293142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562007467961, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993014, telescope_ra=18.0588554, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.07861, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:53:38.164167', telescope_ra_j2k=18.0326586301994, telescope_dec_j2k=-24.2556234895303, observability=1)
2025-11-17T11:54:37.716 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:54:37
2025-11-17T11:54:37.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:37.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.42830538749694824s
2025-11-17T11:54:37.716 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.42830538749694824
2025-11-17T11:54:38.305 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:38.306 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:38.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:38.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:38.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:38.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:38.307 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:54:38.307 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:38.307 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:54:38.308 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:54:38.309 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:54:38.309 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:39.309 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:54:39.310 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:39.311 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:39.312 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:39.312 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:39.312 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:39.312 [DEBUG] [ThreadPoolExecutor-2752_0] [payload.py] [to_registers()] [0]
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53989)
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:39.314 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:39.321 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:39.322 [DEBUG] [ThreadPoolExecutor-2752_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.315411806106567s
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:45.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:45.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0611622;-24.256523;50.108392;89.993014;50.08601;90.12017;15.08092;2460996.91302784;11.91262917;1.3;_
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0611622;-24.256523;50.108392;89.993014;50.08601;90.12017;15.08092;2460996.91302784;11.91262917;1.3;_
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:45.605 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0611622, teldec = -24.256523
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0611622 -24.256523
2025-11-17T11:54:45.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0611622 -24.256523
2025-11-17T11:54:45.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0611622 -24.256523
2025-11-17T11:54:45.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0611622;-24.256523;50.108392;89.993014;50.08601;90.12017;15.08092;2460996.91302785;11.91262917;1.3;_18.0349652722339 -24.2557096954914
2025-11-17T11:54:45.607 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.0349652722339     dec_j2k = -24.2557096954914
2025-11-17T11:54:45.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:45.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:45.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104561606348533;171.162357330327;_
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104561606348533;171.162357330327;_
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:45.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:45.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:45.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:45.610 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:45.610 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55427)
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:45.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:45.623 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:45.623 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91302784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561606348533, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993014, telescope_ra=18.0611622, telescope_dec=-24.256523, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.08092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0349652722339, telescope_dec_j2k=-24.2557096954914, observability=1)
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Status age = 9.774664163589478s
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:54:55.398 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:54:55.399 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:54:55.400 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 17;18.0638975;-24.256522;50.108392;89.993014;50.08601;90.12017;15.08365;2460996.9131412;11.91535694;1.3;_
2025-11-17T11:54:55.400 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response 17;18.0638975;-24.256522;50.108392;89.993014;50.08601;90.12017;15.08365;2460996.9131412;11.91535694;1.3;_
2025-11-17T11:54:55.400 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:54:55.400 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:54:55.400 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:54:55.401 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:55.401 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:54:55.401 [INFO] [Thread-67538 (handle)] [driver.py] [get_status()] Telra = 18.0638975, teldec = -24.256522
2025-11-17T11:54:55.401 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0638975 -24.256522
2025-11-17T11:54:55.401 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0638975 -24.256522
2025-11-17T11:54:55.401 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0638975 -24.256522
2025-11-17T11:54:55.402 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 17;18.0638975;-24.256522;50.108392;89.993014;50.08601;90.12017;15.08365;2460996.91314123;11.91535694;1.3;_18.0377003870173 -24.2558109156943
2025-11-17T11:54:55.402 [INFO] [Thread-67538 (handle)] [driver.py] [get_status()] ra_j2k = 18.0377003870173     dec_j2k = -24.2558109156943
2025-11-17T11:54:55.402 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:54:55.402 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 140;0.104561927244076;171.162357330327;_
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response 140;0.104561927244076;171.162357330327;_
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:55.403 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:55.404 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:55.404 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:55.404 [DEBUG] [Thread-67538 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:55.405 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:54:55.405 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:54:55.405 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:54:55.406 [DEBUG] [Thread-67538 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:55.406 [DEBUG] [Thread-67538 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:54:55.406 [DEBUG] [Thread-67538 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:54:55.410 [DEBUG] [Thread-67538 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50423)
2025-11-17T11:54:55.410 [DEBUG] [Thread-67538 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:54:55.411 [DEBUG] [Thread-67538 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:54:55.411 [DEBUG] [Thread-67538 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:54:55.411 [DEBUG] [Thread-67538 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:54:55.411 [DEBUG] [Thread-67538 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:54:55.418 [DEBUG] [Thread-67538 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:54:55.418 [INFO] [Thread-67538 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9131412, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104561927244076, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108392, telescope_az=89.993014, telescope_ra=18.0638975, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.08365, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0377003870173, telescope_dec_j2k=-24.2558109156943, observability=1)
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:04.322 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:04.323 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:04.324 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:55:04.324 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:55:04.324 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:55:04.324 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Status age = 12.710915088653564s
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:08.129 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:08.130 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:08.131 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 17;18.0674589;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08721;2460996.91328855;11.91890861;1.3;_
2025-11-17T11:55:08.131 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response 17;18.0674589;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08721;2460996.91328855;11.91890861;1.3;_
2025-11-17T11:55:08.131 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:08.131 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:08.131 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:08.132 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:08.132 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:08.132 [INFO] [Thread-67539 (handle)] [driver.py] [get_status()] Telra = 18.0674589, teldec = -24.256522
2025-11-17T11:55:08.132 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0674589 -24.256522
2025-11-17T11:55:08.132 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0674589 -24.256522
2025-11-17T11:55:08.132 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0674589 -24.256522
2025-11-17T11:55:08.133 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 17;18.0674589;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08721;2460996.91328858;11.91890861;1.3;_18.041261548679 -24.2559440092983
2025-11-17T11:55:08.133 [INFO] [Thread-67539 (handle)] [driver.py] [get_status()] ra_j2k = 18.041261548679     dec_j2k = -24.2559440092983
2025-11-17T11:55:08.133 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:08.133 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 140;0.104562408587389;171.162362694745;_
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response 140;0.104562408587389;171.162362694745;_
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:08.134 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:08.135 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:08.136 [DEBUG] [Thread-67539 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:08.136 [DEBUG] [Thread-67539 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:08.136 [DEBUG] [Thread-67539 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52153)
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:08.141 [DEBUG] [Thread-67539 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:08.148 [DEBUG] [Thread-67539 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:08.148 [INFO] [Thread-67539 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91328855, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562408587389, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993014, telescope_ra=18.0674589, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.08721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.041261548679, telescope_dec_j2k=-24.2559440092983, observability=1)
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Status age = 5.31753134727478s
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:13.466 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:13.467 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:13.467 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 17;18.068934;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08869;2460996.91335031;11.92037972;1.3;_
2025-11-17T11:55:13.467 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response 17;18.068934;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08869;2460996.91335031;11.92037972;1.3;_
2025-11-17T11:55:13.467 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:13.468 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:13.468 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:13.468 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:13.469 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:13.469 [INFO] [Thread-67540 (handle)] [driver.py] [get_status()] Telra = 18.068934, teldec = -24.256522
2025-11-17T11:55:13.469 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] UnCookCoordinates 18.068934 -24.256522
2025-11-17T11:55:13.469 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.068934 -24.256522
2025-11-17T11:55:13.469 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.068934 -24.256522
2025-11-17T11:55:13.470 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 17;18.068934;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08869;2460996.91335035;11.92037972;1.3;_18.0427365509807 -24.2559991359526
2025-11-17T11:55:13.470 [INFO] [Thread-67540 (handle)] [driver.py] [get_status()] ra_j2k = 18.0427365509807     dec_j2k = -24.2559991359526
2025-11-17T11:55:13.470 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:13.470 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:13.470 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 140;0.104562167915733;171.162357330327;_
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response 140;0.104562167915733;171.162357330327;_
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:13.471 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:13.472 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:13.473 [DEBUG] [Thread-67540 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:13.473 [DEBUG] [Thread-67540 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:13.473 [DEBUG] [Thread-67540 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43851)
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:13.480 [DEBUG] [Thread-67540 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:13.487 [DEBUG] [Thread-67540 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:13.487 [DEBUG] [Thread-67540 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:13.487 [DEBUG] [Thread-67540 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:13.488 [DEBUG] [Thread-67540 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:13.488 [INFO] [Thread-67540 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91335031, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562167915733, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993014, telescope_ra=18.068934, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.08869, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0427365509807, telescope_dec_j2k=-24.2559991359526, observability=1)
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3882672786712646s
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0693265;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08908;2460996.91336664;11.92077111;1.3;_
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.0693265;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08908;2460996.91336664;11.92077111;1.3;_
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:14.879 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.0693265, teldec = -24.256522
2025-11-17T11:55:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0693265 -24.256522
2025-11-17T11:55:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0693265 -24.256522
2025-11-17T11:55:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0693265 -24.256522
2025-11-17T11:55:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0693265;-24.256522;50.108391;89.993014;50.08601;90.12017;15.08908;2460996.91336667;11.92077111;1.3;_18.0431290250854 -24.2560138042994
2025-11-17T11:55:14.880 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.0431290250854     dec_j2k = -24.2560138042994
2025-11-17T11:55:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104562689370989;171.162357330327;_
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104562689370989;171.162357330327;_
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50017)
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:14.891 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91336664, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562689370989, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993014, telescope_ra=18.0693265, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.08908, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0431290250854, telescope_dec_j2k=-24.2560138042994, observability=1)
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.875555038452148s
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:22.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0715303;-24.256522;50.108391;89.993014;50.08601;90.12017;15.09129;2460996.91345796;11.92296889;1.3;_
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.0715303;-24.256522;50.108391;89.993014;50.08601;90.12017;15.09129;2460996.91345796;11.92296889;1.3;_
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:22.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:22.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:22.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:22.769 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.0715303, teldec = -24.256522
2025-11-17T11:55:22.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.0715303 -24.256522
2025-11-17T11:55:22.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.0715303 -24.256522
2025-11-17T11:55:22.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0715303 -24.256522
2025-11-17T11:55:22.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0715303;-24.256522;50.108391;89.993014;50.08601;90.12017;15.09129;2460996.91345799;11.92296889;1.3;_18.0453326804739 -24.2560961641394
2025-11-17T11:55:22.770 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0453326804739     dec_j2k = -24.2560961641394
2025-11-17T11:55:22.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:22.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104562569035161;171.162362694745;_
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104562569035161;171.162362694745;_
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:22.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:22.772 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:22.773 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:22.773 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:22.773 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:22.775 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44289)
2025-11-17T11:55:22.775 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:22.775 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:22.775 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:22.776 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:22.776 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:22.783 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:55:22.783 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91345796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562569035161, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993014, telescope_ra=18.0715303, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.09129, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0453326804739, telescope_dec_j2k=-24.2560961641394, observability=1)
2025-11-17T11:55:22.783 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06741428375244 seconds ago
2025-11-17T11:55:31.532 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Status age = 8.749436140060425s
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:31.533 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:31.534 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:31.535 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 17;18.0739781;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09373;2460996.91355943;11.92541;1.3;_
2025-11-17T11:55:31.535 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response 17;18.0739781;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09373;2460996.91355943;11.92541;1.3;_
2025-11-17T11:55:31.535 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:31.535 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:31.535 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:31.536 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:31.536 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:31.536 [INFO] [Thread-67541 (handle)] [driver.py] [get_status()] Telra = 18.0739781, teldec = -24.256522
2025-11-17T11:55:31.537 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0739781 -24.256522
2025-11-17T11:55:31.537 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0739781 -24.256522
2025-11-17T11:55:31.537 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0739781 -24.256522
2025-11-17T11:55:31.537 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 17;18.0739781;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09373;2460996.91355946;11.92541;1.3;_18.0477803214136 -24.2561876433409
2025-11-17T11:55:31.538 [INFO] [Thread-67541 (handle)] [driver.py] [get_status()] ra_j2k = 18.0477803214136     dec_j2k = -24.2561876433409
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 140;0.104562889930703;171.162357330327;_
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response 140;0.104562889930703;171.162357330327;_
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:31.538 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:31.539 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:31.540 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:31.540 [DEBUG] [Thread-67541 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:31.540 [DEBUG] [Thread-67541 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:31.540 [DEBUG] [Thread-67541 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48347)
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:31.543 [DEBUG] [Thread-67541 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:31.550 [DEBUG] [Thread-67541 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:31.550 [INFO] [Thread-67541 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91355943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562889930703, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993013, telescope_ra=18.0739781, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.09373, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0477803214136, telescope_dec_j2k=-24.2561876433409, observability=1)
2025-11-17T11:55:37.777 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:55:37
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.226759433746338s
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:37.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:37.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:37.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0757106;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09547;2460996.9136317;11.92713778;1.3;_
2025-11-17T11:55:37.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.0757106;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09547;2460996.9136317;11.92713778;1.3;_
2025-11-17T11:55:37.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:37.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:37.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:37.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:37.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:37.780 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.0757106, teldec = -24.256522
2025-11-17T11:55:37.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0757106 -24.256522
2025-11-17T11:55:37.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0757106 -24.256522
2025-11-17T11:55:37.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0757106 -24.256522
2025-11-17T11:55:37.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0757106;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09547;2460996.91363172;11.92713778;1.3;_18.0495127098279 -24.2562523907433
2025-11-17T11:55:37.781 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.0495127098279     dec_j2k = -24.2562523907433
2025-11-17T11:55:37.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:37.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:37.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104563411385959;171.162357330327;_
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104563411385959;171.162357330327;_
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:37.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:37.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:37.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:37.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:37.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40985)
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:37.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:37.795 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:37.796 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:37.796 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9136317, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104563411385959, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993013, telescope_ra=18.0757106, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.09547, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:54:38.305384', telescope_ra_j2k=18.0495127098279, telescope_dec_j2k=-24.2562523907433, observability=1)
2025-11-17T11:55:38.448 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:38.448 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:38.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:38.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:38.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:38.449 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:38.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:38.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:38.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:38.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:38.450 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:55:38.450 [INFO] [ThreadPoolExecutor-2753_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:55:38.450 [INFO] [ThreadPoolExecutor-2753_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.919171333312988s
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:44.715 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0776367;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09739;2460996.91371199;11.92905861;1.3;_
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0776367;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09739;2460996.91371199;11.92905861;1.3;_
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:44.716 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:44.717 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:44.717 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:44.717 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0776367, teldec = -24.256522
2025-11-17T11:55:44.717 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0776367 -24.256522
2025-11-17T11:55:44.717 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0776367 -24.256522
2025-11-17T11:55:44.717 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0776367 -24.256522
2025-11-17T11:55:44.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0776367;-24.256522;50.108391;89.993013;50.08601;90.12017;15.09739;2460996.91371201;11.92905861;1.3;_18.05143868674 -24.2563243737801
2025-11-17T11:55:44.718 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.05143868674     dec_j2k = -24.2563243737801
2025-11-17T11:55:44.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:44.718 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:44.719 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104562689370989;171.162362694745;_
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104562689370989;171.162362694745;_
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:44.720 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:44.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:44.722 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:55:44.722 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52699)
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:44.726 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:44.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:44.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:44.733 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:44.733 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:44.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:44.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:44.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:44.734 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:44.734 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:44.734 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91371199, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104562689370989, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993013, telescope_ra=18.0776367, telescope_dec=-24.256522, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.09739, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.05143868674, telescope_dec_j2k=-24.2563243737801, observability=1)
2025-11-17T11:55:49.666 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:55:49.666 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Status age = 4.932718276977539s
2025-11-17T11:55:49.666 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:55:49.667 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:55:49.668 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:55:49.668 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:55:49.669 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 17;18.0790208;-24.256521;50.108391;89.993013;50.08601;90.12017;15.09878;2460996.91376932;11.93043889;1.3;_
2025-11-17T11:55:49.669 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response 17;18.0790208;-24.256521;50.108391;89.993013;50.08601;90.12017;15.09878;2460996.91376932;11.93043889;1.3;_
2025-11-17T11:55:49.669 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:55:49.669 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:55:49.669 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:55:49.670 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:49.670 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:55:49.670 [INFO] [Thread-67542 (handle)] [driver.py] [get_status()] Telra = 18.0790208, teldec = -24.256521
2025-11-17T11:55:49.670 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0790208 -24.256521
2025-11-17T11:55:49.670 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0790208 -24.256521
2025-11-17T11:55:49.670 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0790208 -24.256521
2025-11-17T11:55:49.671 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 17;18.0790208;-24.256521;50.108391;89.993013;50.08601;90.12017;15.09878;2460996.91376934;11.93043889;1.3;_18.0528226991173 -24.2563751012522
2025-11-17T11:55:49.671 [INFO] [Thread-67542 (handle)] [driver.py] [get_status()] ra_j2k = 18.0528226991173     dec_j2k = -24.2563751012522
2025-11-17T11:55:49.671 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:55:49.671 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:55:49.671 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 140;0.10456313060236;171.162357330327;_
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response 140;0.10456313060236;171.162357330327;_
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:49.672 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:55:49.673 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:55:49.674 [DEBUG] [Thread-67542 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:49.674 [DEBUG] [Thread-67542 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:55:49.674 [DEBUG] [Thread-67542 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39555)
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:55:49.680 [DEBUG] [Thread-67542 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:55:49.687 [DEBUG] [Thread-67542 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:55:49.687 [DEBUG] [Thread-67542 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:55:49.688 [DEBUG] [Thread-67542 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:55:49.688 [INFO] [Thread-67542 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91376932, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10456313060236, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108391, telescope_az=89.993013, telescope_ra=18.0790208, telescope_dec=-24.256521, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.09878, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.0528226991173, telescope_dec_j2k=-24.2563751012522, observability=1)
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.325 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:59.326 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:59.327 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:55:59.328 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:55:59.329 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:55:59.330 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:55:59.330 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:55:59.330 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:55:59.330 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Park
2025-11-17T11:55:59.330 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:55:59.331 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:55:59.331 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 29;18.0817039;-24.256521;50.10839;89.993013;50.08601;90.12017;15.10146;2460996.91388115;11.93311472;1.3;_Park Command Successful
2025-11-17T11:56:00.331 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:56:00.331 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:56:00.331 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:56:00.332 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:56:00.332 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:56:01.332 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:56:01.332 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:56:01.332 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:56:01.333 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:56:01.333 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:56:02.333 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:56:02.333 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:56:02.333 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:56:02.334 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:56:02.334 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T11:56:03.334 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:56:03.334 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:03.335 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:56:03.336 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:56:03.337 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:04.337 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:04.337 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:04.338 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:04.338 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:04.338 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:56:04.339 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:56:04.340 [DEBUG] [ThreadPoolExecutor-2752_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:04.340 [INFO] [ThreadPoolExecutor-2752_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Status age = 18.036409616470337s
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:07.724 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:07.725 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:07.725 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:07.725 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:07.726 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:07.727 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 17;18.0840414;-24.256521;50.10839;89.993013;50.08601;90.12017;15.1038;2460996.91397832;11.93544583;1.3;_
2025-11-17T11:56:07.727 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response 17;18.0840414;-24.256521;50.10839;89.993013;50.08601;90.12017;15.1038;2460996.91397832;11.93544583;1.3;_
2025-11-17T11:56:07.727 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:07.727 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:07.727 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:07.728 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:07.728 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:07.728 [INFO] [Thread-67543 (handle)] [driver.py] [get_status()] Telra = 18.0840414, teldec = -24.256521
2025-11-17T11:56:07.728 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0840414 -24.256521
2025-11-17T11:56:07.728 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0840414 -24.256521
2025-11-17T11:56:07.728 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0840414 -24.256521
2025-11-17T11:56:07.729 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 17;18.0840414;-24.256521;50.10839;89.993013;50.08601;90.12017;15.1038;2460996.91397834;11.93544583;1.3;_18.057842984968 -24.256562735608
2025-11-17T11:56:07.729 [INFO] [Thread-67543 (handle)] [driver.py] [get_status()] ra_j2k = 18.057842984968     dec_j2k = -24.256562735608
2025-11-17T11:56:07.729 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:07.729 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:07.729 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 140;0.104563571833731;171.162362694745;_
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response 140;0.104563571833731;171.162362694745;_
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:07.730 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:07.731 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:07.732 [DEBUG] [Thread-67543 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:07.732 [DEBUG] [Thread-67543 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:07.732 [DEBUG] [Thread-67543 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52973)
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:07.735 [DEBUG] [Thread-67543 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:07.742 [DEBUG] [Thread-67543 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:07.742 [DEBUG] [Thread-67543 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:07.742 [DEBUG] [Thread-67543 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:07.742 [DEBUG] [Thread-67543 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:07.743 [DEBUG] [Thread-67543 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:07.743 [DEBUG] [Thread-67543 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:07.743 [DEBUG] [Thread-67543 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:07.743 [DEBUG] [Thread-67543 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:07.743 [DEBUG] [Thread-67543 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:56:07.743 [INFO] [Thread-67543 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91397832, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104563571833731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993013, telescope_ra=18.0840414, telescope_dec=-24.256521, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.1038, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.057842984968, telescope_dec_j2k=-24.256562735608, observability=1)
2025-11-17T11:56:08.181 [DEBUG] [Thread-67544 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:08.181 [DEBUG] [Thread-67544 (handle)] [server.py] [get_status()] Status age = 0.4385702610015869s
2025-11-17T11:56:08.181 [DEBUG] [Thread-67544 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4385702610015869
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.137461185455322s
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0860491;-24.256521;50.10839;89.993012;50.08601;90.12017;15.1058;2460996.91406113;11.93744806;1.3;_
2025-11-17T11:56:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.0860491;-24.256521;50.10839;89.993012;50.08601;90.12017;15.1058;2460996.91406113;11.93744806;1.3;_
2025-11-17T11:56:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:14.883 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.0860491, teldec = -24.256521
2025-11-17T11:56:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0860491 -24.256521
2025-11-17T11:56:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0860491 -24.256521
2025-11-17T11:56:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0860491 -24.256521
2025-11-17T11:56:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.0860491;-24.256521;50.10839;89.993012;50.08601;90.12017;15.1058;2460996.91406116;11.93744806;1.3;_18.0598505612786 -24.2566377697768
2025-11-17T11:56:14.884 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.0598505612786     dec_j2k = -24.2566377697768
2025-11-17T11:56:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104563972953159;171.162351965909;_
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104563972953159;171.162351965909;_
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:56:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51273)
2025-11-17T11:56:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:14.893 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:14.900 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:56:14.901 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91406113, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104563972953159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993012, telescope_ra=18.0860491, telescope_dec=-24.256521, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.1058, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.0598505612786, telescope_dec_j2k=-24.2566377697768, observability=1)
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.942314863204956s
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:22.843 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:22.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:22.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0882713;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10803;2460996.9141533;11.93966417;1.3;_
2025-11-17T11:56:22.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.0882713;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10803;2460996.9141533;11.93966417;1.3;_
2025-11-17T11:56:22.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:22.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:22.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:22.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:22.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:22.846 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.0882713, teldec = -24.256521
2025-11-17T11:56:22.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.0882713 -24.256521
2025-11-17T11:56:22.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.0882713 -24.256521
2025-11-17T11:56:22.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0882713 -24.256521
2025-11-17T11:56:22.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.0882713;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10803;2460996.91415332;11.93966417;1.3;_18.0620726256646 -24.2567208208643
2025-11-17T11:56:22.848 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0620726256646     dec_j2k = -24.2567208208643
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104563611945674;171.162362694745;_
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104563611945674;171.162362694745;_
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:22.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:22.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:22.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:22.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:56:22.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54159)
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:22.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:22.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:22.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:22.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:56:22.864 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9141533, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104563611945674, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993012, telescope_ra=18.0882713, telescope_dec=-24.256521, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.10803, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.0620726256646, telescope_dec_j2k=-24.2567208208643, observability=1)
2025-11-17T11:56:22.864 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08711862564087 seconds ago
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Status age = 2.929483652114868s
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:25.793 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:25.794 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:25.795 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 17;18.0890844;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10884;2460996.91418744;11.940475;1.3;_
2025-11-17T11:56:25.795 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response 17;18.0890844;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10884;2460996.91418744;11.940475;1.3;_
2025-11-17T11:56:25.795 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:25.795 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:25.795 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:25.796 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:25.796 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:25.796 [INFO] [Thread-67545 (handle)] [driver.py] [get_status()] Telra = 18.0890844, teldec = -24.256521
2025-11-17T11:56:25.796 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0890844 -24.256521
2025-11-17T11:56:25.796 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0890844 -24.256521
2025-11-17T11:56:25.796 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0890844 -24.256521
2025-11-17T11:56:25.797 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 17;18.0890844;-24.256521;50.10839;89.993012;50.08601;90.12017;15.10884;2460996.91418747;11.940475;1.3;_18.0628856763823 -24.2567512092371
2025-11-17T11:56:25.797 [INFO] [Thread-67545 (handle)] [driver.py] [get_status()] ra_j2k = 18.0628856763823     dec_j2k = -24.2567512092371
2025-11-17T11:56:25.797 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:25.797 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:25.797 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 140;0.10456413340093;171.162357330327;_
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response 140;0.10456413340093;171.162357330327;_
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:25.798 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:25.799 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:25.800 [DEBUG] [Thread-67545 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:25.800 [DEBUG] [Thread-67545 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:25.800 [DEBUG] [Thread-67545 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:25.801 [DEBUG] [Thread-67545 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37235)
2025-11-17T11:56:25.802 [DEBUG] [Thread-67545 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:25.802 [DEBUG] [Thread-67545 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:25.802 [DEBUG] [Thread-67545 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:25.802 [DEBUG] [Thread-67545 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:25.802 [DEBUG] [Thread-67545 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:25.810 [DEBUG] [Thread-67545 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:56:25.810 [INFO] [Thread-67545 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91418744, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10456413340093, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993012, telescope_ra=18.0890844, telescope_dec=-24.256521, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.10884, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.0628856763823, telescope_dec_j2k=-24.2567512092371, observability=1)
2025-11-17T11:56:37.856 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:56:37
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.045911073684692s
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:37.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:37.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:37.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0924296;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11218;2460996.91432706;11.94381111;1.3;_
2025-11-17T11:56:37.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.0924296;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11218;2460996.91432706;11.94381111;1.3;_
2025-11-17T11:56:37.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:37.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:37.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:37.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:37.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:37.859 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.0924296, teldec = -24.25652
2025-11-17T11:56:37.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0924296 -24.25652
2025-11-17T11:56:37.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0924296 -24.25652
2025-11-17T11:56:37.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0924296 -24.25652
2025-11-17T11:56:37.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.0924296;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11218;2460996.91432708;11.94381111;1.3;_18.0662306757378 -24.2568752315257
2025-11-17T11:56:37.860 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.0662306757378     dec_j2k = -24.2568752315257
2025-11-17T11:56:37.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:37.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104565096087557;171.162362694745;_
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104565096087557;171.162362694745;_
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:37.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:37.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:37.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:37.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:37.863 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51825)
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:37.866 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:37.873 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:56:37.873 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91432706, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104565096087557, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993012, telescope_ra=18.0924296, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.11218, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:55:38.447756', telescope_ra_j2k=18.0662306757378, telescope_dec_j2k=-24.2568752315257, observability=1)
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:38.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:38.596 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:38.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:38.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:38.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:38.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:38.597 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:56:38.597 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:38.597 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:38.597 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:38.597 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:38.597 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:56:38.598 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:56:38.599 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:39.599 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:39.599 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:39.599 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:39.599 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:39.599 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:39.600 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:39.600 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:39.600 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:39.600 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:39.600 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:39.601 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:56:39.601 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:56:39.601 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:56:39.601 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:39.601 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:39.602 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:39.602 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:39.602 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:39.602 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:39.603 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:39.603 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:39.603 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:39.603 [DEBUG] [ThreadPoolExecutor-2754_0] [payload.py] [to_registers()] [0]
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39813)
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:39.607 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:39.614 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:39.614 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:56:39.614 [DEBUG] [ThreadPoolExecutor-2754_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:56:39.615 [DEBUG] [ThreadPoolExecutor-2754_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:56:39.615 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:39.615 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:39.615 [DEBUG] [ThreadPoolExecutor-2754_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.94769811630249s
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:56:43.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:56:43.822 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:56:43.823 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0940956;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11385;2460996.9143961;11.9454725;1.3;_
2025-11-17T11:56:43.823 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.0940956;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11385;2460996.9143961;11.9454725;1.3;_
2025-11-17T11:56:43.823 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:56:43.823 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:56:43.823 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:56:43.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:43.826 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:56:43.826 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.0940956, teldec = -24.25652
2025-11-17T11:56:43.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0940956 -24.25652
2025-11-17T11:56:43.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0940956 -24.25652
2025-11-17T11:56:43.826 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0940956 -24.25652
2025-11-17T11:56:43.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.0940956;-24.25652;50.10839;89.993012;50.08601;90.12017;15.11385;2460996.91439615;11.9454725;1.3;_18.0678965768579 -24.2569374962381
2025-11-17T11:56:43.827 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.0678965768579     dec_j2k = -24.2569374962381
2025-11-17T11:56:43.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:56:43.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:56:43.827 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104565256535329;171.162357330327;_
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104565256535329;171.162357330327;_
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:43.828 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:56:43.829 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:43.830 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:56:43.830 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46373)
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:56:43.834 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:56:43.841 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:56:43.841 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9143961, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104565256535329, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10839, telescope_az=89.993012, telescope_ra=18.0940956, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.11385, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0678965768579, telescope_dec_j2k=-24.2569374962381, observability=1)
2025-11-17T11:56:43.898 [DEBUG] [Thread-67546 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:56:43.898 [DEBUG] [Thread-67546 (handle)] [server.py] [get_status()] Status age = 0.05665016174316406s
2025-11-17T11:56:43.898 [DEBUG] [Thread-67546 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.05665016174316406
2025-11-17T11:57:01.968 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Status age = 18.127323865890503s
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:01.969 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:01.970 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:01.971 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 17;18.0991463;-24.25652;50.108389;89.993011;50.08601;90.12017;15.1189;2460996.91460615;11.95050944;1.3;_
2025-11-17T11:57:01.971 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response 17;18.0991463;-24.25652;50.108389;89.993011;50.08601;90.12017;15.1189;2460996.91460615;11.95050944;1.3;_
2025-11-17T11:57:01.971 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:01.971 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:01.971 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:01.972 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:01.972 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:01.972 [INFO] [Thread-67547 (handle)] [driver.py] [get_status()] Telra = 18.0991463, teldec = -24.25652
2025-11-17T11:57:01.972 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] UnCookCoordinates 18.0991463 -24.25652
2025-11-17T11:57:01.972 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.0991463 -24.25652
2025-11-17T11:57:01.972 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.0991463 -24.25652
2025-11-17T11:57:01.973 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 17;18.0991463;-24.25652;50.108389;89.993011;50.08601;90.12017;15.1189;2460996.91460617;11.95050944;1.3;_18.0729469817471 -24.2571262609052
2025-11-17T11:57:01.973 [INFO] [Thread-67547 (handle)] [driver.py] [get_status()] ra_j2k = 18.0729469817471     dec_j2k = -24.2571262609052
2025-11-17T11:57:01.974 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:01.974 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:01.974 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 140;0.104565457095043;171.162357330327;_
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response 140;0.104565457095043;171.162357330327;_
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:01.975 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:01.976 [DEBUG] [Thread-67547 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:01.976 [DEBUG] [Thread-67547 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:01.976 [DEBUG] [Thread-67547 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59587)
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:01.978 [DEBUG] [Thread-67547 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:01.985 [DEBUG] [Thread-67547 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:01.985 [DEBUG] [Thread-67547 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:01.985 [DEBUG] [Thread-67547 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:01.985 [DEBUG] [Thread-67547 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:01.986 [DEBUG] [Thread-67547 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:01.986 [DEBUG] [Thread-67547 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:01.986 [DEBUG] [Thread-67547 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:01.986 [DEBUG] [Thread-67547 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:01.986 [DEBUG] [Thread-67547 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:01.986 [INFO] [Thread-67547 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91460615, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104565457095043, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.0991463, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.1189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0729469817471, telescope_dec_j2k=-24.2571262609052, observability=1)
2025-11-17T11:57:04.615 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:04.615 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:04.615 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:04.615 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:04.615 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:04.616 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:57:04.618 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:57:04.619 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Status age = 6.224320650100708s
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:08.210 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:08.211 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:08.211 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:08.211 [DEBUG] [Thread-67548 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:08.211 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:08.212 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:08.212 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:08.212 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:08.212 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 17;18.1009017;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12066;2460996.91467838;11.95226;1.3;_
2025-11-17T11:57:08.212 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response 17;18.1009017;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12066;2460996.91467838;11.95226;1.3;_
2025-11-17T11:57:08.213 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:08.213 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:08.213 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:08.214 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:08.214 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:08.214 [INFO] [Thread-67548 (handle)] [driver.py] [get_status()] Telra = 18.1009017, teldec = -24.25652
2025-11-17T11:57:08.214 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1009017 -24.25652
2025-11-17T11:57:08.214 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1009017 -24.25652
2025-11-17T11:57:08.214 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1009017 -24.25652
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 17;18.1009017;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12066;2460996.91467841;11.95226;1.3;_18.0747022808198 -24.2571918674422
2025-11-17T11:57:08.215 [INFO] [Thread-67548 (handle)] [driver.py] [get_status()] ra_j2k = 18.0747022808198     dec_j2k = -24.2571918674422
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 140;0.104565777990585;171.162346601491;_
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response 140;0.104565777990585;171.162346601491;_
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:08.215 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:08.216 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:08.217 [DEBUG] [Thread-67548 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:08.217 [DEBUG] [Thread-67548 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:08.217 [DEBUG] [Thread-67548 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55519)
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:08.220 [DEBUG] [Thread-67548 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:08.227 [DEBUG] [Thread-67548 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:08.227 [DEBUG] [Thread-67548 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:08.227 [DEBUG] [Thread-67548 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:08.228 [DEBUG] [Thread-67548 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:08.228 [INFO] [Thread-67548 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91467838, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104565777990585, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.1009017, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.12066, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0747022808198, telescope_dec_j2k=-24.2571918674422, observability=1)
2025-11-17T11:57:14.899 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.671786069869995s
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1027687;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12252;2460996.91475581;11.95412194;1.3;_
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.1027687;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12252;2460996.91475581;11.95412194;1.3;_
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:14.902 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.1027687, teldec = -24.25652
2025-11-17T11:57:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1027687 -24.25652
2025-11-17T11:57:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1027687 -24.25652
2025-11-17T11:57:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1027687 -24.25652
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1027687;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12252;2460996.91475582;11.95412194;1.3;_18.0765691744045 -24.2572616450676
2025-11-17T11:57:14.904 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.0765691744045     dec_j2k = -24.2572616450676
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104566379669727;171.162335872654;_
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104566379669727;171.162335872654;_
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:57:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51225)
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:14.921 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91475581, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104566379669727, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162335872654, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.1027687, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.12252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0765691744045, telescope_dec_j2k=-24.2572616450676, observability=1)
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Status age = 5.171993732452393s
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:20.093 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:20.094 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:20.095 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 17;18.1042185;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12397;2460996.91481591;11.95556778;1.3;_
2025-11-17T11:57:20.095 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response 17;18.1042185;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12397;2460996.91481591;11.95556778;1.3;_
2025-11-17T11:57:20.095 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:20.095 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:20.095 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:20.096 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:20.096 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:20.096 [INFO] [Thread-67549 (handle)] [driver.py] [get_status()] Telra = 18.1042185, teldec = -24.25652
2025-11-17T11:57:20.096 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1042185 -24.25652
2025-11-17T11:57:20.096 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1042185 -24.25652
2025-11-17T11:57:20.096 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1042185 -24.25652
2025-11-17T11:57:20.097 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 17;18.1042185;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12397;2460996.91481594;11.95556778;1.3;_18.0780188924289 -24.2573158302645
2025-11-17T11:57:20.097 [INFO] [Thread-67549 (handle)] [driver.py] [get_status()] ra_j2k = 18.0780188924289     dec_j2k = -24.2573158302645
2025-11-17T11:57:20.097 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:20.097 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:20.097 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 140;0.104566780789155;171.162341237072;_
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response 140;0.104566780789155;171.162341237072;_
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:20.098 [DEBUG] [Thread-67549 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:20.099 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:20.099 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:20.099 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:20.100 [DEBUG] [Thread-67549 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:20.100 [DEBUG] [Thread-67549 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:20.100 [DEBUG] [Thread-67549 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48649)
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:20.107 [DEBUG] [Thread-67549 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:20.114 [DEBUG] [Thread-67549 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:20.115 [DEBUG] [Thread-67549 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:20.115 [INFO] [Thread-67549 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91481591, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104566780789155, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.1042185, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.12397, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0780188924289, telescope_dec_j2k=-24.2573158302645, observability=1)
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.8090460300445557s
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:22.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:22.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:22.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1049954;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12475;2460996.91484868;11.9563425;1.3;_
2025-11-17T11:57:22.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.1049954;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12475;2460996.91484868;11.9563425;1.3;_
2025-11-17T11:57:22.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:22.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:22.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:22.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:22.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:22.927 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.1049954, teldec = -24.25652
2025-11-17T11:57:22.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.1049954 -24.25652
2025-11-17T11:57:22.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.1049954 -24.25652
2025-11-17T11:57:22.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1049954 -24.25652
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1049954;-24.25652;50.108389;89.993011;50.08601;90.12017;15.12475;2460996.9148487;11.9563425;1.3;_18.0787957487384 -24.2573448663524
2025-11-17T11:57:22.928 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0787957487384     dec_j2k = -24.2573448663524
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104565697766699;171.162341237072;_
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104565697766699;171.162341237072;_
2025-11-17T11:57:22.928 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:22.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:22.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:22.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:22.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:22.933 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42561)
2025-11-17T11:57:22.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:22.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:22.933 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:22.934 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:22.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:22.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:57:22.942 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91484868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104565697766699, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.1049954, telescope_dec=-24.25652, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.12475, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0787957487384, telescope_dec_j2k=-24.2573448663524, observability=1)
2025-11-17T11:57:22.942 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08623385429382 seconds ago
2025-11-17T11:57:37.934 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:57:37
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.992086172103882s
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:37.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:37.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:37.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:37.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:37.936 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:37.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:37.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:37.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:37.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1091782;-24.256519;50.108389;89.993011;50.08601;90.12017;15.12893;2460996.91502242;11.96051389;1.3;_
2025-11-17T11:57:37.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1091782;-24.256519;50.108389;89.993011;50.08601;90.12017;15.12893;2460996.91502242;11.96051389;1.3;_
2025-11-17T11:57:37.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:37.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:37.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:37.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:37.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:37.938 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1091782, teldec = -24.256519
2025-11-17T11:57:37.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1091782 -24.256519
2025-11-17T11:57:37.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1091782 -24.256519
2025-11-17T11:57:37.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1091782 -24.256519
2025-11-17T11:57:37.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1091782;-24.256519;50.108389;89.993011;50.08601;90.12017;15.12893;2460996.91502244;11.96051389;1.3;_18.0829783165587 -24.2575001958862
2025-11-17T11:57:37.939 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.0829783165587     dec_j2k = -24.2575001958862
2025-11-17T11:57:37.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:37.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:37.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:37.939 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104567021460812;171.162351965909;_
2025-11-17T11:57:37.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104567021460812;171.162351965909;_
2025-11-17T11:57:37.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:37.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:37.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:37.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:37.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:37.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:37.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:37.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33429)
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:37.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:37.951 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:37.951 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91502242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104567021460812, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108389, telescope_az=89.993011, telescope_ra=18.1091782, telescope_dec=-24.256519, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.12893, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:56:38.594736', telescope_ra_j2k=18.0829783165587, telescope_dec_j2k=-24.2575001958862, observability=1)
2025-11-17T11:57:38.152 [DEBUG] [Thread-67550 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:38.152 [DEBUG] [Thread-67550 (handle)] [server.py] [get_status()] Status age = 0.20096278190612793s
2025-11-17T11:57:38.152 [DEBUG] [Thread-67550 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.20096278190612793
2025-11-17T11:57:38.738 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:38.738 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:38.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:38.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:38.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:38.739 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:38.739 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:38.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:38.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:38.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:38.740 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:57:38.740 [INFO] [ThreadPoolExecutor-2755_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:57:38.740 [INFO] [ThreadPoolExecutor-2755_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:57:42.927 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.9761011600494385s
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:42.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:42.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:42.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1105709;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13033;2460996.91508021;11.96190278;1.3;_
2025-11-17T11:57:42.930 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.1105709;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13033;2460996.91508021;11.96190278;1.3;_
2025-11-17T11:57:42.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:42.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:42.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:42.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:42.931 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:42.931 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.1105709, teldec = -24.256519
2025-11-17T11:57:42.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1105709 -24.256519
2025-11-17T11:57:42.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1105709 -24.256519
2025-11-17T11:57:42.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1105709 -24.256519
2025-11-17T11:57:42.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1105709;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13033;2460996.91508023;11.96190278;1.3;_18.084370940252 -24.2575522472405
2025-11-17T11:57:42.932 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.084370940252     dec_j2k = -24.2575522472405
2025-11-17T11:57:42.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:42.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:42.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104567743475782;171.162351965909;_
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104567743475782;171.162351965909;_
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:42.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:42.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:42.935 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:42.935 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:42.935 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:42.937 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58363)
2025-11-17T11:57:42.938 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:42.938 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:42.938 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:42.938 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:42.938 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:42.945 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:42.946 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:42.946 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91508021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104567743475782, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.99301, telescope_ra=18.1105709, telescope_dec=-24.256519, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.13033, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.084370940252, telescope_dec_j2k=-24.2575522472405, observability=1)
2025-11-17T11:57:56.214 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:57:56.214 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Status age = 13.268906593322754s
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:56.215 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:57:56.216 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:57:56.217 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 17;18.1142741;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13403;2460996.91523399;11.96559583;1.3;_
2025-11-17T11:57:56.217 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response 17;18.1142741;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13403;2460996.91523399;11.96559583;1.3;_
2025-11-17T11:57:56.217 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:57:56.217 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:57:56.217 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:57:56.218 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:56.218 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:57:56.218 [INFO] [Thread-67551 (handle)] [driver.py] [get_status()] Telra = 18.1142741, teldec = -24.256519
2025-11-17T11:57:56.218 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1142741 -24.256519
2025-11-17T11:57:56.218 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1142741 -24.256519
2025-11-17T11:57:56.218 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1142741 -24.256519
2025-11-17T11:57:56.219 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 17;18.1142741;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13403;2460996.91523402;11.96559583;1.3;_18.0880739399433 -24.2576906523202
2025-11-17T11:57:56.219 [INFO] [Thread-67551 (handle)] [driver.py] [get_status()] ra_j2k = 18.0880739399433     dec_j2k = -24.2576906523202
2025-11-17T11:57:56.219 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:57:56.219 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:57:56.219 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 140;0.104568385266867;171.162357330327;_
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response 140;0.104568385266867;171.162357330327;_
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:57:56.220 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:57:56.221 [DEBUG] [Thread-67551 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:56.221 [DEBUG] [Thread-67551 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:57:56.222 [DEBUG] [Thread-67551 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39851)
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:57:56.228 [DEBUG] [Thread-67551 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:57:56.235 [DEBUG] [Thread-67551 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:57:56.235 [INFO] [Thread-67551 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91523399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104568385266867, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.99301, telescope_ra=18.1142741, telescope_dec=-24.256519, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.13403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.0880739399433, telescope_dec_j2k=-24.2576906523202, observability=1)
2025-11-17T11:57:59.620 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.620 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.620 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:59.620 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:59.620 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:57:59.621 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:59.622 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:59.623 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:57:59.624 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:57:59.625 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Park
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:57:59.626 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:57:59.627 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 29;18.1152175;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13497;2460996.91527346;11.96653667;1.3;_Park Command Successful
2025-11-17T11:58:00.627 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:58:00.627 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:58:00.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:58:00.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:58:00.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:58:01.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:58:01.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:58:01.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:58:01.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:58:01.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T11:58:02.628 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T11:58:02.629 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T11:58:02.629 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T11:58:02.629 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:58:02.629 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T11:58:03.630 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] ParkRotator
2025-11-17T11:58:03.630 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T11:58:03.630 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:03.631 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T11:58:03.632 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T11:58:03.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:58:04.633 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:58:04.634 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:58:04.634 [DEBUG] [ThreadPoolExecutor-2754_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:04.634 [INFO] [ThreadPoolExecutor-2754_0] [server.py] [done()] Shutdown complete...
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Status age = 12.025779724121094s
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:08.261 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:08.262 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 17;18.1176182;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13737;2460996.9153734;11.96893083;1.3;_
2025-11-17T11:58:08.263 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response 17;18.1176182;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13737;2460996.9153734;11.96893083;1.3;_
2025-11-17T11:58:08.263 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:08.263 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:08.263 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:08.264 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:08.264 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:08.264 [INFO] [Thread-67552 (handle)] [driver.py] [get_status()] Telra = 18.1176182, teldec = -24.256519
2025-11-17T11:58:08.264 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1176182 -24.256519
2025-11-17T11:58:08.264 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1176182 -24.256519
2025-11-17T11:58:08.264 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1176182 -24.256519
2025-11-17T11:58:08.265 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 17;18.1176182;-24.256519;50.108388;89.99301;50.08601;90.12017;15.13737;2460996.91537344;11.96893083;1.3;_18.0914178622947 -24.2578156363093
2025-11-17T11:58:08.265 [INFO] [Thread-67552 (handle)] [driver.py] [get_status()] ra_j2k = 18.0914178622947     dec_j2k = -24.2578156363093
2025-11-17T11:58:08.265 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:08.265 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:08.265 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 140;0.104568184707153;171.162357330327;_
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response 140;0.104568184707153;171.162357330327;_
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:08.266 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:08.267 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:08.268 [DEBUG] [Thread-67552 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:08.268 [DEBUG] [Thread-67552 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:08.268 [DEBUG] [Thread-67552 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52757)
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:08.272 [DEBUG] [Thread-67552 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:08.279 [DEBUG] [Thread-67552 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:08.279 [DEBUG] [Thread-67552 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:08.280 [DEBUG] [Thread-67552 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:08.280 [INFO] [Thread-67552 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9153734, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104568184707153, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.99301, telescope_ra=18.1176182, telescope_dec=-24.256519, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.13737, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.0914178622947, telescope_dec_j2k=-24.2578156363093, observability=1)
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Status age = 6.058409214019775s
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:14.338 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:14.339 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:14.340 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 17;18.1193179;-24.256518;50.108388;89.99301;50.08601;90.12017;15.13907;2460996.91544375;11.97062583;1.3;_
2025-11-17T11:58:14.340 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response 17;18.1193179;-24.256518;50.108388;89.99301;50.08601;90.12017;15.13907;2460996.91544375;11.97062583;1.3;_
2025-11-17T11:58:14.340 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:14.340 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:14.340 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:14.341 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:14.341 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:14.341 [INFO] [Thread-67553 (handle)] [driver.py] [get_status()] Telra = 18.1193179, teldec = -24.256518
2025-11-17T11:58:14.342 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1193179 -24.256518
2025-11-17T11:58:14.342 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1193179 -24.256518
2025-11-17T11:58:14.342 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1193179 -24.256518
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 17;18.1193179;-24.256518;50.108388;89.99301;50.08601;90.12017;15.13907;2460996.91544378;11.97062583;1.3;_18.0931174733786 -24.2578781617666
2025-11-17T11:58:14.343 [INFO] [Thread-67553 (handle)] [driver.py] [get_status()] ra_j2k = 18.0931174733786     dec_j2k = -24.2578781617666
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 140;0.104569027057952;171.162357330327;_
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response 140;0.104569027057952;171.162357330327;_
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:14.343 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:14.344 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:14.344 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:14.344 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:14.344 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:14.345 [DEBUG] [Thread-67553 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:14.345 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:14.345 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:14.345 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:14.346 [DEBUG] [Thread-67553 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:58:14.346 [DEBUG] [Thread-67553 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:58:14.346 [DEBUG] [Thread-67553 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48603)
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:14.347 [DEBUG] [Thread-67553 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:14.354 [DEBUG] [Thread-67553 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:14.355 [DEBUG] [Thread-67553 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:14.355 [DEBUG] [Thread-67553 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:14.355 [INFO] [Thread-67553 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91544375, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569027057952, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.99301, telescope_ra=18.1193179, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.13907, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.0931174733786, telescope_dec_j2k=-24.2578781617666, observability=1)
2025-11-17T11:58:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5477852821350098s
2025-11-17T11:58:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5477852821350098
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.647486448287964s
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:23.002 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.121737;-24.256518;50.108388;89.99301;50.08601;90.12017;15.14149;2460996.91554403;11.97303833;1.3;_
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.121737;-24.256518;50.108388;89.99301;50.08601;90.12017;15.14149;2460996.91554403;11.97303833;1.3;_
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:23.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:23.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:23.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:23.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:23.006 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.121737, teldec = -24.256518
2025-11-17T11:58:23.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.121737 -24.256518
2025-11-17T11:58:23.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.121737 -24.256518
2025-11-17T11:58:23.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.121737 -24.256518
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.121737;-24.256518;50.108388;89.99301;50.08601;90.12017;15.14149;2460996.91554406;11.97303833;1.3;_18.0955364479126 -24.2579685743212
2025-11-17T11:58:23.007 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.0955364479126     dec_j2k = -24.2579685743212
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104568786386295;171.162362694745;_
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104568786386295;171.162362694745;_
2025-11-17T11:58:23.007 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:23.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:23.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:23.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:23.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:23.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:23.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:23.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49807)
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:23.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:23.018 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:23.019 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:23.019 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:58:23.019 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91554403, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104568786386295, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.99301, telescope_ra=18.121737, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.14149, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.0955364479126, telescope_dec_j2k=-24.2579685743212, observability=1)
2025-11-17T11:58:23.019 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08490014076233 seconds ago
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Status age = 9.388483047485352s
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:32.407 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:32.408 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:32.409 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 17;18.1243327;-24.256518;50.108388;89.993009;50.08601;90.12017;15.14409;2460996.91565288;11.97562694;1.3;_
2025-11-17T11:58:32.409 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response 17;18.1243327;-24.256518;50.108388;89.993009;50.08601;90.12017;15.14409;2460996.91565288;11.97562694;1.3;_
2025-11-17T11:58:32.409 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:32.409 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:32.409 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:32.410 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:32.410 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:32.410 [INFO] [Thread-67554 (handle)] [driver.py] [get_status()] Telra = 18.1243327, teldec = -24.256518
2025-11-17T11:58:32.410 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1243327 -24.256518
2025-11-17T11:58:32.410 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1243327 -24.256518
2025-11-17T11:58:32.410 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1243327 -24.256518
2025-11-17T11:58:32.411 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 17;18.1243327;-24.256518;50.108388;89.993009;50.08601;90.12017;15.14412;2460996.9156529;11.975655;1.3;_18.098132015075 -24.2580655871198
2025-11-17T11:58:32.411 [INFO] [Thread-67554 (handle)] [driver.py] [get_status()] ra_j2k = 18.098132015075     dec_j2k = -24.2580655871198
2025-11-17T11:58:32.411 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:32.411 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:32.411 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 140;0.104569107281838;171.162357330327;_
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response 140;0.104569107281838;171.162357330327;_
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:32.412 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:32.413 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:32.414 [DEBUG] [Thread-67554 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:32.414 [DEBUG] [Thread-67554 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:32.414 [DEBUG] [Thread-67554 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35251)
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:32.418 [DEBUG] [Thread-67554 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:32.425 [DEBUG] [Thread-67554 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:32.426 [DEBUG] [Thread-67554 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:32.426 [INFO] [Thread-67554 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91565288, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569107281838, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108388, telescope_az=89.993009, telescope_ra=18.1243327, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.14409, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.098132015075, telescope_dec_j2k=-24.2580655871198, observability=1)
2025-11-17T11:58:38.012 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:58:38
2025-11-17T11:58:38.012 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:38.012 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.586760759353638s
2025-11-17T11:58:38.012 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:38.012 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:38.012 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:38.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:38.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1259204;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14568;2460996.91571775;11.97721028;1.3;_
2025-11-17T11:58:38.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1259204;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14568;2460996.91571775;11.97721028;1.3;_
2025-11-17T11:58:38.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:38.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:38.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:38.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:38.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:38.015 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1259204, teldec = -24.256518
2025-11-17T11:58:38.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1259204 -24.256518
2025-11-17T11:58:38.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1259204 -24.256518
2025-11-17T11:58:38.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1259204 -24.256518
2025-11-17T11:58:38.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1259204;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14568;2460996.91571778;11.97721028;1.3;_18.0997196347351 -24.2581249264343
2025-11-17T11:58:38.017 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.0997196347351     dec_j2k = -24.2581249264343
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104569468289323;171.162351965909;_
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104569468289323;171.162351965909;_
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:38.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:38.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:38.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:38.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:38.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:38.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:38.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:38.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:38.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:38.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40791)
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:38.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:38.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:38.031 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:38.031 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91571775, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569468289323, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993009, telescope_ra=18.1259204, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.14568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:57:38.737669', telescope_ra_j2k=18.0997196347351, telescope_dec_j2k=-24.2581249264343, observability=1)
2025-11-17T11:58:38.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:38.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:38.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:38.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:38.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:38.880 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:38.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:38.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:38.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:38.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:38.881 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:58:38.881 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T11:58:38.882 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T11:58:38.883 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:39.883 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:39.884 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:39.884 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:39.884 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:39.884 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T11:58:39.885 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:39.886 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:39.887 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:39.887 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:39.887 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:39.887 [DEBUG] [ThreadPoolExecutor-2756_0] [payload.py] [to_registers()] [0]
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55347)
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:39.888 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:39.895 [DEBUG] [ThreadPoolExecutor-2756_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.000412225723267s
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:42.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:42.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:42.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1270309;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14679;2460996.91576427;11.97831778;1.3;_
2025-11-17T11:58:42.033 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.1270309;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14679;2460996.91576427;11.97831778;1.3;_
2025-11-17T11:58:42.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:42.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:42.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:42.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:42.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:42.034 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.1270309, teldec = -24.256518
2025-11-17T11:58:42.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1270309 -24.256518
2025-11-17T11:58:42.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1270309 -24.256518
2025-11-17T11:58:42.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1270309 -24.256518
2025-11-17T11:58:42.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1270309;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14679;2460996.91576429;11.97831778;1.3;_18.1008300789537 -24.2581664306563
2025-11-17T11:58:42.035 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1008300789537     dec_j2k = -24.2581664306563
2025-11-17T11:58:42.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:42.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:42.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104568946834067;171.162368059163;_
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104568946834067;171.162368059163;_
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:42.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:42.037 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:42.040 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41835)
2025-11-17T11:58:42.040 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:42.040 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:42.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:42.041 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:42.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:42.048 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:42.048 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91576427, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104568946834067, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993009, telescope_ra=18.1270309, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.14679, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1008300789537, telescope_dec_j2k=-24.2581664306563, observability=1)
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Status age = 8.42250680923462s
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:58:50.471 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:58:50.472 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:58:50.473 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 17;18.1293717;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14913;2460996.91586196;11.98065222;1.3;_
2025-11-17T11:58:50.473 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response 17;18.1293717;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14913;2460996.91586196;11.98065222;1.3;_
2025-11-17T11:58:50.473 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:58:50.473 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:58:50.473 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:58:50.474 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:50.474 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:58:50.474 [INFO] [Thread-67555 (handle)] [driver.py] [get_status()] Telra = 18.1293717, teldec = -24.256518
2025-11-17T11:58:50.474 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1293717 -24.256518
2025-11-17T11:58:50.474 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1293717 -24.256518
2025-11-17T11:58:50.474 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1293717 -24.256518
2025-11-17T11:58:50.475 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 17;18.1293717;-24.256518;50.108387;89.993009;50.08601;90.12017;15.14913;2460996.91586198;11.98065222;1.3;_18.1031707624828 -24.2582539164367
2025-11-17T11:58:50.475 [INFO] [Thread-67555 (handle)] [driver.py] [get_status()] ra_j2k = 18.1031707624828     dec_j2k = -24.2582539164367
2025-11-17T11:58:50.475 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:58:50.475 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:58:50.475 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 140;0.104569909520694;171.162357330327;_
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response 140;0.104569909520694;171.162357330327;_
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:50.476 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:58:50.477 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:58:50.478 [DEBUG] [Thread-67555 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:58:50.478 [DEBUG] [Thread-67555 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:58:50.478 [DEBUG] [Thread-67555 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59859)
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:58:50.479 [DEBUG] [Thread-67555 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:58:50.486 [DEBUG] [Thread-67555 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:58:50.487 [INFO] [Thread-67555 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91586196, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569909520694, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993009, telescope_ra=18.1293717, telescope_dec=-24.256518, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.14913, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1031707624828, telescope_dec_j2k=-24.2582539164367, observability=1)
2025-11-17T11:59:04.896 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:04.896 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:04.896 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:04.896 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:04.896 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:04.897 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] CloseShutters
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T11:59:04.898 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T11:59:04.899 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Status age = 17.82733416557312s
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:08.314 [DEBUG] [Thread-67556 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:08.315 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:08.315 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:08.315 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:08.315 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:08.316 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 17;18.1343339;-24.256517;50.108387;89.993009;50.08601;90.12017;15.15409;2460996.91606846;11.98560083;1.3;_
2025-11-17T11:59:08.316 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response 17;18.1343339;-24.256517;50.108387;89.993009;50.08601;90.12017;15.15409;2460996.91606846;11.98560083;1.3;_
2025-11-17T11:59:08.316 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:08.316 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:08.316 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:08.317 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:08.317 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:08.317 [INFO] [Thread-67556 (handle)] [driver.py] [get_status()] Telra = 18.1343339, teldec = -24.256517
2025-11-17T11:59:08.317 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1343339 -24.256517
2025-11-17T11:59:08.317 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1343339 -24.256517
2025-11-17T11:59:08.317 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1343339 -24.256517
2025-11-17T11:59:08.318 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 17;18.1343623;-24.256517;50.108387;89.993009;50.08601;90.12017;15.15412;2460996.9160685;11.98562917;1.3;_18.1081327207567 -24.2584383746613
2025-11-17T11:59:08.318 [INFO] [Thread-67556 (handle)] [driver.py] [get_status()] ra_j2k = 18.1081327207567     dec_j2k = -24.2584383746613
2025-11-17T11:59:08.318 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:08.318 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:08.318 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 140;0.104569468289323;171.162346601491;_
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response 140;0.104569468289323;171.162346601491;_
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:08.319 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:08.320 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:08.321 [DEBUG] [Thread-67556 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:08.321 [DEBUG] [Thread-67556 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:08.321 [DEBUG] [Thread-67556 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58605)
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:08.323 [DEBUG] [Thread-67556 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:08.330 [DEBUG] [Thread-67556 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:08.331 [INFO] [Thread-67556 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91606846, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569468289323, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993009, telescope_ra=18.1343339, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.15409, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1081327207567, telescope_dec_j2k=-24.2584383746613, observability=1)
2025-11-17T11:59:08.593 [DEBUG] [Thread-67557 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:08.594 [DEBUG] [Thread-67557 (handle)] [server.py] [get_status()] Status age = 0.26297545433044434s
2025-11-17T11:59:08.594 [DEBUG] [Thread-67557 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.26297545433044434
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.543708801269531s
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1361756;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15593;2460996.9161444;11.9874375;1.3;_
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.1361756;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15593;2460996.9161444;11.9874375;1.3;_
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:14.877 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.1361756, teldec = -24.256517
2025-11-17T11:59:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1361756 -24.256517
2025-11-17T11:59:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1361756 -24.256517
2025-11-17T11:59:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1361756 -24.256517
2025-11-17T11:59:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1361756;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15593;2460996.91614442;11.9874375;1.3;_18.1099743326881 -24.2585072064238
2025-11-17T11:59:14.878 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1099743326881     dec_j2k = -24.2585072064238
2025-11-17T11:59:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104569949632637;171.162368059163;_
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104569949632637;171.162368059163;_
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39451)
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:14.884 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:14.892 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9161444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569949632637, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993008, telescope_ra=18.1361756, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.15593, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1099743326881, telescope_dec_j2k=-24.2585072064238, observability=1)
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.186387538909912s
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:23.079 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:23.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:23.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1384582;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15821;2460996.91623936;11.98971389;1.3;_
2025-11-17T11:59:23.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.1384582;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15821;2460996.91623936;11.98971389;1.3;_
2025-11-17T11:59:23.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:23.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:23.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:23.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:23.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:23.082 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.1384582, teldec = -24.256517
2025-11-17T11:59:23.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.1384582 -24.256517
2025-11-17T11:59:23.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.1384582 -24.256517
2025-11-17T11:59:23.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1384582 -24.256517
2025-11-17T11:59:23.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1384582;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15821;2460996.91623939;11.98971389;1.3;_18.1122568248293 -24.2585925161619
2025-11-17T11:59:23.083 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.1122568248293     dec_j2k = -24.2585925161619
2025-11-17T11:59:23.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:23.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:23.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104569147393781;171.162351965909;_
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104569147393781;171.162351965909;_
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:23.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:23.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:23.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:23.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:23.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:23.088 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38115)
2025-11-17T11:59:23.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:23.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:23.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:23.088 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:23.089 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:23.096 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T11:59:23.096 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91623936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104569147393781, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993008, telescope_ra=18.1384582, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.15821, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1122568248293, telescope_dec_j2k=-24.2585925161619, observability=1)
2025-11-17T11:59:23.096 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.084131956100464 seconds ago
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Status age = 3.570587396621704s
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:26.667 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 17;18.139459;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15921;2460996.91628088;11.99071194;1.3;_
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response 17;18.139459;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15921;2460996.91628088;11.99071194;1.3;_
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:26.668 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:26.669 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:26.669 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:26.669 [INFO] [Thread-67558 (handle)] [driver.py] [get_status()] Telra = 18.139459, teldec = -24.256517
2025-11-17T11:59:26.669 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] UnCookCoordinates 18.139459 -24.256517
2025-11-17T11:59:26.669 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.139459 -24.256517
2025-11-17T11:59:26.669 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.139459 -24.256517
2025-11-17T11:59:26.670 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 17;18.139459;-24.256517;50.108387;89.993008;50.08601;90.12017;15.15921;2460996.9162809;11.99071194;1.3;_18.1132575779902 -24.2586299199035
2025-11-17T11:59:26.670 [INFO] [Thread-67558 (handle)] [driver.py] [get_status()] ra_j2k = 18.1132575779902     dec_j2k = -24.2586299199035
2025-11-17T11:59:26.670 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:26.670 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:26.670 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 140;0.104570069968465;171.162357330327;_
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response 140;0.104570069968465;171.162357330327;_
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:26.672 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:26.673 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:26.674 [DEBUG] [Thread-67558 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:26.674 [DEBUG] [Thread-67558 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:26.674 [DEBUG] [Thread-67558 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51763)
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:26.677 [DEBUG] [Thread-67558 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:26.684 [DEBUG] [Thread-67558 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:26.684 [INFO] [Thread-67558 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91628088, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104570069968465, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108387, telescope_az=89.993008, telescope_ra=18.139459, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.15921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1132575779902, telescope_dec_j2k=-24.2586299199035, observability=1)
2025-11-17T11:59:38.092 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T11:59:38
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.40785527229309s
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:38.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:38.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:38.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1426391;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16239;2460996.91641312;11.99388333;1.3;_
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1426391;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16239;2460996.91641312;11.99388333;1.3;_
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:38.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:38.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:38.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:38.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:38.096 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1426391, teldec = -24.256517
2025-11-17T11:59:38.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1426391 -24.256517
2025-11-17T11:59:38.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1426391 -24.256517
2025-11-17T11:59:38.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1426391 -24.256517
2025-11-17T11:59:38.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1426391;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16239;2460996.91641316;11.99388333;1.3;_18.1164375309829 -24.2587487720597
2025-11-17T11:59:38.097 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.1164375309829     dec_j2k = -24.2587487720597
2025-11-17T11:59:38.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:38.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:38.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104570671647607;171.162368059163;_
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104570671647607;171.162368059163;_
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:38.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:38.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50133)
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:38.103 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:38.110 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:38.111 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91641312, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104570671647607, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993008, telescope_ra=18.1426391, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.16239, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:58:38.878587', telescope_ra_j2k=18.1164375309829, telescope_dec_j2k=-24.2587487720597, observability=1)
2025-11-17T11:59:39.022 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:39.023 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T11:59:39.023 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:39.024 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T11:59:39.025 [INFO] [ThreadPoolExecutor-2757_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T11:59:39.025 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.033637285232544s
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:41.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:41.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:41.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.143499;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16325;2460996.91644845;11.99474083;1.3;_
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.143499;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16325;2460996.91644845;11.99474083;1.3;_
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:41.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:41.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:41.147 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:41.147 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.143499, teldec = -24.256517
2025-11-17T11:59:41.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.143499 -24.256517
2025-11-17T11:59:41.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.143499 -24.256517
2025-11-17T11:59:41.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.143499 -24.256517
2025-11-17T11:59:41.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.143499;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16325;2460996.91644847;11.99474083;1.3;_18.1172973917094 -24.2587809096065
2025-11-17T11:59:41.148 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1172973917094     dec_j2k = -24.2587809096065
2025-11-17T11:59:41.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:41.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:41.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104570190304294;171.162357330327;_
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104570190304294;171.162357330327;_
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:41.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:41.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:41.150 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T11:59:41.150 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T11:59:41.151 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40421)
2025-11-17T11:59:41.151 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:41.151 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:41.152 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:41.152 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:41.152 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:41.159 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:41.159 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91644845, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104570190304294, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993008, telescope_ra=18.143499, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.16325, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1172973917094, telescope_dec_j2k=-24.2587809096065, observability=1)
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Getting status
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Status age = 3.57071590423584s
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:44.730 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T11:59:44.731 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T11:59:44.732 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 17;18.1444814;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16424;2460996.91648995;11.99572056;1.3;_
2025-11-17T11:59:44.732 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response 17;18.1444814;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16424;2460996.91648995;11.99572056;1.3;_
2025-11-17T11:59:44.732 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T11:59:44.732 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T11:59:44.732 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T11:59:44.733 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:44.733 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T11:59:44.733 [INFO] [Thread-67559 (handle)] [driver.py] [get_status()] Telra = 18.1444814, teldec = -24.256517
2025-11-17T11:59:44.733 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1444814 -24.256517
2025-11-17T11:59:44.733 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1444814 -24.256517
2025-11-17T11:59:44.733 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1444814 -24.256517
2025-11-17T11:59:44.734 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 17;18.1444814;-24.256517;50.108386;89.993008;50.08601;90.12017;15.16424;2460996.91648998;11.99572056;1.3;_18.1182797470896 -24.2588176253553
2025-11-17T11:59:44.734 [INFO] [Thread-67559 (handle)] [driver.py] [get_status()] ra_j2k = 18.1182797470896     dec_j2k = -24.2588176253553
2025-11-17T11:59:44.734 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T11:59:44.734 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 140;0.10457043097595;171.162351965909;_
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response 140;0.10457043097595;171.162351965909;_
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:44.735 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T11:59:44.736 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T11:59:44.737 [DEBUG] [Thread-67559 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:44.737 [DEBUG] [Thread-67559 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T11:59:44.737 [DEBUG] [Thread-67559 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47467)
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T11:59:44.738 [DEBUG] [Thread-67559 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T11:59:44.746 [DEBUG] [Thread-67559 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T11:59:44.746 [INFO] [Thread-67559 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91648995, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457043097595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993008, telescope_ra=18.1444814, telescope_dec=-24.256517, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.16424, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1182797470896, telescope_dec_j2k=-24.2588176253553, observability=1)
2025-11-17T11:59:59.899 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.899 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.899 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:59.899 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T11:59:59.900 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:59.901 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:59.902 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T11:59:59.903 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T11:59:59.904 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Park
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command Park
2025-11-17T11:59:59.905 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to Park
2025-11-17T11:59:59.906 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 29;18.1487155;-24.256516;50.108386;89.993007;50.08601;90.12017;15.16847;2460996.91666557;11.99994306;1.3;_Park Command Successful
2025-11-17T12:00:00.906 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:00:00.906 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:00:00.906 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:00:00.907 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:00:00.907 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:00:01.907 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:00:01.907 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:00:01.907 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:00:01.908 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:00:01.908 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:00:02.834 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Status age = 18.088403463363647s
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:02.835 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 17;18.1495488;-24.256516;50.108386;89.993007;50.08601;90.12017;15.1693;2460996.91669949;12.00077417;1.3;_
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response 17;18.1495488;-24.256516;50.108386;89.993007;50.08601;90.12017;15.1693;2460996.91669949;12.00077417;1.3;_
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:02.836 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:02.837 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:02.837 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:02.837 [INFO] [Thread-67560 (handle)] [driver.py] [get_status()] Telra = 18.1495488, teldec = -24.256516
2025-11-17T12:00:02.837 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1495488 -24.256516
2025-11-17T12:00:02.838 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1495488 -24.256516
2025-11-17T12:00:02.838 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1495488 -24.256516
2025-11-17T12:00:02.838 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 17;18.1495488;-24.256516;50.108386;89.993007;50.08601;90.12017;15.1693;2460996.91669951;12.00077417;1.3;_18.1233469213442 -24.2590060108627
2025-11-17T12:00:02.839 [INFO] [Thread-67560 (handle)] [driver.py] [get_status()] ra_j2k = 18.1233469213442     dec_j2k = -24.2590060108627
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 140;0.104570671647607;171.162362694745;_
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response 140;0.104570671647607;171.162362694745;_
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:02.839 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:02.840 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:02.840 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:02.840 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:02.841 [DEBUG] [Thread-67560 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:02.842 [DEBUG] [Thread-67560 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49257)
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:02.848 [DEBUG] [Thread-67560 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:02.855 [DEBUG] [Thread-67560 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:02.855 [INFO] [Thread-67560 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91669949, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104570671647607, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993007, telescope_ra=18.1495488, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.1693, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1233469213442, telescope_dec_j2k=-24.2590060108627, observability=1)
2025-11-17T12:00:02.908 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:00:02.908 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:00:02.908 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:00:02.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:00:02.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:03.909 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:00:03.910 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:00:03.911 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:04.911 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:04.911 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:04.911 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:04.911 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:04.911 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:00:04.912 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:00:04.913 [DEBUG] [ThreadPoolExecutor-2756_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:04.913 [INFO] [ThreadPoolExecutor-2756_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Status age = 5.508963584899902s
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:08.364 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:08.365 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:08.366 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 17;18.1510828;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17084;2460996.9167635;12.00230389;1.3;_
2025-11-17T12:00:08.366 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response 17;18.1510828;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17084;2460996.9167635;12.00230389;1.3;_
2025-11-17T12:00:08.366 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:08.366 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:08.366 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:08.367 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:08.367 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:08.367 [INFO] [Thread-67561 (handle)] [driver.py] [get_status()] Telra = 18.1510828, teldec = -24.256516
2025-11-17T12:00:08.367 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1510828 -24.256516
2025-11-17T12:00:08.367 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1510828 -24.256516
2025-11-17T12:00:08.367 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1510828 -24.256516
2025-11-17T12:00:08.368 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 17;18.1510828;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17084;2460996.91676352;12.00230389;1.3;_18.1248808543376 -24.2590633410887
2025-11-17T12:00:08.368 [INFO] [Thread-67561 (handle)] [driver.py] [get_status()] ra_j2k = 18.1248808543376     dec_j2k = -24.2590633410887
2025-11-17T12:00:08.368 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:08.368 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:08.368 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 140;0.104570832095378;171.162351965909;_
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response 140;0.104570832095378;171.162351965909;_
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:08.369 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:08.370 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:08.371 [DEBUG] [Thread-67561 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:08.371 [DEBUG] [Thread-67561 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:08.371 [DEBUG] [Thread-67561 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48963)
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:08.377 [DEBUG] [Thread-67561 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:08.385 [DEBUG] [Thread-67561 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:08.385 [INFO] [Thread-67561 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9167635, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104570832095378, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993007, telescope_ra=18.1510828, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17084, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1248808543376, telescope_dec_j2k=-24.2590633410887, observability=1)
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.4962615966796875s
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1528877;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17264;2460996.91683894;12.00410389;1.3;_
2025-11-17T12:00:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.1528877;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17264;2460996.91683894;12.00410389;1.3;_
2025-11-17T12:00:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:14.885 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.1528877, teldec = -24.256516
2025-11-17T12:00:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1528877 -24.256516
2025-11-17T12:00:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1528877 -24.256516
2025-11-17T12:00:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1528877 -24.256516
2025-11-17T12:00:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1528877;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17264;2460996.91683896;12.00410389;1.3;_18.1266856763257 -24.2591307954018
2025-11-17T12:00:14.886 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1266856763257     dec_j2k = -24.2591307954018
2025-11-17T12:00:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10457099254315;171.162351965909;_
2025-11-17T12:00:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10457099254315;171.162351965909;_
2025-11-17T12:00:14.887 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:14.887 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58485)
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:14.890 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:14.898 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91683894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457099254315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993007, telescope_ra=18.1528877, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1266856763257, telescope_dec_j2k=-24.2591307954018, observability=1)
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Status age = 6.005587339401245s
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:20.904 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:20.905 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:20.905 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 17;18.1545628;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17432;2460996.91690862;12.00577444;1.3;_
2025-11-17T12:00:20.905 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response 17;18.1545628;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17432;2460996.91690862;12.00577444;1.3;_
2025-11-17T12:00:20.905 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:20.905 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:20.906 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:20.906 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:20.906 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:20.907 [INFO] [Thread-67562 (handle)] [driver.py] [get_status()] Telra = 18.1545628, teldec = -24.256516
2025-11-17T12:00:20.907 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1545628 -24.256516
2025-11-17T12:00:20.907 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1545628 -24.256516
2025-11-17T12:00:20.907 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1545628 -24.256516
2025-11-17T12:00:20.908 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 17;18.1545628;-24.256516;50.108386;89.993007;50.08601;90.12017;15.17432;2460996.91690866;12.00577444;1.3;_18.128360704725 -24.2591933984448
2025-11-17T12:00:20.908 [INFO] [Thread-67562 (handle)] [driver.py] [get_status()] ra_j2k = 18.128360704725     dec_j2k = -24.2591933984448
2025-11-17T12:00:20.908 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:20.908 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:20.908 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:20.908 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 140;0.104571834893949;171.162351965909;_
2025-11-17T12:00:20.909 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response 140;0.104571834893949;171.162351965909;_
2025-11-17T12:00:20.909 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:20.909 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:20.909 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:20.909 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:20.910 [DEBUG] [Thread-67562 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:20.915 [DEBUG] [Thread-67562 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47847)
2025-11-17T12:00:20.915 [DEBUG] [Thread-67562 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:20.915 [DEBUG] [Thread-67562 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:20.915 [DEBUG] [Thread-67562 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:20.916 [DEBUG] [Thread-67562 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:20.916 [DEBUG] [Thread-67562 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:20.923 [DEBUG] [Thread-67562 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:20.923 [INFO] [Thread-67562 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91690862, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104571834893949, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108386, telescope_az=89.993007, telescope_ra=18.1545628, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17432, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.128360704725, telescope_dec_j2k=-24.2591933984448, observability=1)
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2325799465179443s
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:23.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1551806;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17494;2460996.91693469;12.00639056;1.3;_
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.1551806;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17494;2460996.91693469;12.00639056;1.3;_
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:23.157 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:23.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:23.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:23.158 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.1551806, teldec = -24.256516
2025-11-17T12:00:23.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.1551806 -24.256516
2025-11-17T12:00:23.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.1551806 -24.256516
2025-11-17T12:00:23.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1551806 -24.256516
2025-11-17T12:00:23.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1551806;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17494;2460996.91693471;12.00639056;1.3;_18.1289784785123 -24.259216487243
2025-11-17T12:00:23.159 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.1289784785123     dec_j2k = -24.259216487243
2025-11-17T12:00:23.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:23.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:23.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104571273326749;171.162357330327;_
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104571273326749;171.162357330327;_
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:23.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:23.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:23.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:23.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:23.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:23.166 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38587)
2025-11-17T12:00:23.166 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:23.166 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:23.166 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:23.166 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:23.167 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:23.173 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:23.174 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:00:23.174 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91693469, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104571273326749, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993007, telescope_ra=18.1551806, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17494, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1289784785123, telescope_dec_j2k=-24.259216487243, observability=1)
2025-11-17T12:00:23.174 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08214831352234 seconds ago
2025-11-17T12:00:38.171 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:00:38
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.997236251831055s
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:38.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:38.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:38.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1593802;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17913;2460996.9171085;12.01057861;1.3;_
2025-11-17T12:00:38.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1593802;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17913;2460996.9171085;12.01057861;1.3;_
2025-11-17T12:00:38.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:38.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:38.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:38.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:38.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:38.175 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1593802, teldec = -24.256516
2025-11-17T12:00:38.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1593802 -24.256516
2025-11-17T12:00:38.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1593802 -24.256516
2025-11-17T12:00:38.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1593802 -24.256516
2025-11-17T12:00:38.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1593802;-24.256516;50.108385;89.993007;50.08601;90.12017;15.17913;2460996.91710852;12.01057861;1.3;_18.1331779031071 -24.2593734362253
2025-11-17T12:00:38.176 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.1331779031071     dec_j2k = -24.2593734362253
2025-11-17T12:00:38.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:38.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:38.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104572597020862;171.162357330327;_
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104572597020862;171.162357330327;_
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:38.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:38.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:38.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:38.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:38.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:38.180 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57515)
2025-11-17T12:00:38.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:38.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:38.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:38.181 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:38.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:38.188 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:38.189 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9171085, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104572597020862, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993007, telescope_ra=18.1593802, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17913, lcu_permission=False, lcu_permission_timestamp='2025-11-17T11:59:39.022367', telescope_ra_j2k=18.1331779031071, telescope_dec_j2k=-24.2593734362253, observability=1)
2025-11-17T12:00:38.973 [DEBUG] [Thread-67563 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:38.973 [DEBUG] [Thread-67563 (handle)] [server.py] [get_status()] Status age = 0.7846794128417969s
2025-11-17T12:00:38.973 [DEBUG] [Thread-67563 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7846794128417969
2025-11-17T12:00:39.165 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:39.165 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:39.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:39.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:39.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:39.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:39.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:39.167 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:39.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:39.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:39.168 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:00:39.168 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:39.168 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:39.168 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:39.168 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:39.168 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:00:39.169 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:00:39.170 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:40.170 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:00:40.171 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:40.172 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:40.173 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:40.173 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:40.173 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:40.173 [DEBUG] [ThreadPoolExecutor-2758_0] [payload.py] [to_registers()] [0]
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56239)
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:40.178 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:40.185 [DEBUG] [ThreadPoolExecutor-2758_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.061671495437622s
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:40.250 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:40.252 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:40.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1599695;-24.256516;50.108385;89.993006;50.08601;90.12017;15.17972;2460996.91713256;12.01116639;1.3;_
2025-11-17T12:00:40.253 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.1599695;-24.256516;50.108385;89.993006;50.08601;90.12017;15.17972;2460996.91713256;12.01116639;1.3;_
2025-11-17T12:00:40.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:40.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:40.253 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:40.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:40.254 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:40.254 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.1599695, teldec = -24.256516
2025-11-17T12:00:40.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1599695 -24.256516
2025-11-17T12:00:40.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1599695 -24.256516
2025-11-17T12:00:40.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1599695 -24.256516
2025-11-17T12:00:40.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1599695;-24.256516;50.108385;89.993006;50.08601;90.12017;15.17972;2460996.91713258;12.01116639;1.3;_18.1337671788815 -24.2593954596098
2025-11-17T12:00:40.255 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1337671788815     dec_j2k = -24.2593954596098
2025-11-17T12:00:40.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:40.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:40.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104572677244748;171.162351965909;_
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104572677244748;171.162351965909;_
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:40.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:40.257 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42081)
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:40.264 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:40.271 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:40.271 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:40.271 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:40.271 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:40.271 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:40.272 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:40.272 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:40.272 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:40.272 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:40.272 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91713256, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104572677244748, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993006, telescope_ra=18.1599695, telescope_dec=-24.256516, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.17972, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1337671788815, telescope_dec_j2k=-24.2593954596098, observability=1)
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Status age = 16.82205057144165s
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:00:57.094 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:00:57.095 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:00:57.096 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 17;18.1646551;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18441;2460996.9173275;12.01583917;1.3;_
2025-11-17T12:00:57.096 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response 17;18.1646551;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18441;2460996.9173275;12.01583917;1.3;_
2025-11-17T12:00:57.096 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:00:57.097 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:00:57.097 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:00:57.097 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:57.097 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:00:57.098 [INFO] [Thread-67564 (handle)] [driver.py] [get_status()] Telra = 18.1646551, teldec = -24.256515
2025-11-17T12:00:57.098 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1646551 -24.256515
2025-11-17T12:00:57.098 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1646551 -24.256515
2025-11-17T12:00:57.098 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1646551 -24.256515
2025-11-17T12:00:57.099 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 17;18.1646551;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18441;2460996.91732754;12.01583917;1.3;_18.138452589857 -24.2595695690179
2025-11-17T12:00:57.099 [INFO] [Thread-67564 (handle)] [driver.py] [get_status()] ra_j2k = 18.138452589857     dec_j2k = -24.2595695690179
2025-11-17T12:00:57.099 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:00:57.099 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:00:57.099 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 140;0.104573038252233;171.162357330327;_
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response 140;0.104573038252233;171.162357330327;_
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:57.100 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:00:57.101 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:00:57.102 [DEBUG] [Thread-67564 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:57.102 [DEBUG] [Thread-67564 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:00:57.102 [DEBUG] [Thread-67564 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43701)
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:00:57.108 [DEBUG] [Thread-67564 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:00:57.115 [DEBUG] [Thread-67564 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:00:57.116 [DEBUG] [Thread-67564 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:00:57.116 [INFO] [Thread-67564 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9173275, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104573038252233, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993006, telescope_ra=18.1646551, telescope_dec=-24.256515, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.18441, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.138452589857, telescope_dec_j2k=-24.2595695690179, observability=1)
2025-11-17T12:01:05.185 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:05.185 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:05.185 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:05.185 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:05.186 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:01:05.187 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Status age = 11.298343658447266s
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:08.414 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:08.415 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:08.416 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 17;18.1677973;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18755;2460996.91745852;12.01897278;1.3;_
2025-11-17T12:01:08.416 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response 17;18.1677973;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18755;2460996.91745852;12.01897278;1.3;_
2025-11-17T12:01:08.416 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:08.416 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:08.416 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:08.417 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:08.417 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:08.417 [INFO] [Thread-67565 (handle)] [driver.py] [get_status()] Telra = 18.1677973, teldec = -24.256515
2025-11-17T12:01:08.417 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1677973 -24.256515
2025-11-17T12:01:08.417 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1677973 -24.256515
2025-11-17T12:01:08.417 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1677973 -24.256515
2025-11-17T12:01:08.418 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 17;18.1677973;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18755;2460996.91745854;12.01897278;1.3;_18.1415946663418 -24.259686997218
2025-11-17T12:01:08.418 [INFO] [Thread-67565 (handle)] [driver.py] [get_status()] ra_j2k = 18.1415946663418     dec_j2k = -24.259686997218
2025-11-17T12:01:08.418 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:08.418 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:08.418 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 140;0.104575083961316;171.162362694745;_
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response 140;0.104575083961316;171.162362694745;_
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:08.419 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:08.420 [DEBUG] [Thread-67565 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:08.424 [DEBUG] [Thread-67565 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49975)
2025-11-17T12:01:08.424 [DEBUG] [Thread-67565 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:08.424 [DEBUG] [Thread-67565 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:08.425 [DEBUG] [Thread-67565 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:08.425 [DEBUG] [Thread-67565 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:08.425 [DEBUG] [Thread-67565 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:08.431 [DEBUG] [Thread-67565 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:08.432 [DEBUG] [Thread-67565 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:08.432 [INFO] [Thread-67565 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91745852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104575083961316, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993006, telescope_ra=18.1677973, telescope_dec=-24.256515, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.18755, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1415946663418, telescope_dec_j2k=-24.259686997218, observability=1)
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.458664178848267s
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.169612;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18937;2460996.91753348;12.0207825;1.3;_
2025-11-17T12:01:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.169612;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18937;2460996.91753348;12.0207825;1.3;_
2025-11-17T12:01:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:14.894 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.169612, teldec = -24.256515
2025-11-17T12:01:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.169612 -24.256515
2025-11-17T12:01:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.169612 -24.256515
2025-11-17T12:01:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.169612 -24.256515
2025-11-17T12:01:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.169612;-24.256515;50.108385;89.993006;50.08601;90.12017;15.18937;2460996.91753351;12.0207825;1.3;_18.1434092962448 -24.2597548143906
2025-11-17T12:01:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1434092962448     dec_j2k = -24.2597548143906
2025-11-17T12:01:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104574963625487;171.162357330327;_
2025-11-17T12:01:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104574963625487;171.162357330327;_
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40641)
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:14.904 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:14.912 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91753348, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104574963625487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108385, telescope_az=89.993006, telescope_ra=18.169612, telescope_dec=-24.256515, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.18937, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1434092962448, telescope_dec_j2k=-24.2597548143906, observability=1)
2025-11-17T12:01:15.161 [DEBUG] [Thread-67566 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:15.161 [DEBUG] [Thread-67566 (handle)] [server.py] [get_status()] Status age = 0.24882864952087402s
2025-11-17T12:01:15.161 [DEBUG] [Thread-67566 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.24882864952087402
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.322040557861328s
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:23.234 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:23.235 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:23.235 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:23.235 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:23.235 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:23.235 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:23.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:23.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:23.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1719211;-24.256515;50.108384;89.993006;50.08601;90.12017;15.19168;2460996.91763005;12.02308528;1.3;_
2025-11-17T12:01:23.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.1719211;-24.256515;50.108384;89.993006;50.08601;90.12017;15.19168;2460996.91763005;12.02308528;1.3;_
2025-11-17T12:01:23.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:23.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:23.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:23.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:23.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:23.238 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.1719211, teldec = -24.256515
2025-11-17T12:01:23.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.1719211 -24.256515
2025-11-17T12:01:23.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.1719211 -24.256515
2025-11-17T12:01:23.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1719211 -24.256515
2025-11-17T12:01:23.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1719211;-24.256515;50.108384;89.993006;50.08601;90.12017;15.19168;2460996.91763008;12.02308528;1.3;_18.1457183083591 -24.259841107143
2025-11-17T12:01:23.239 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.1457183083591     dec_j2k = -24.259841107143
2025-11-17T12:01:23.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:23.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:23.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104574963625487;171.162368059163;_
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104574963625487;171.162368059163;_
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:23.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:23.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:23.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:23.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:23.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38959)
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:23.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:23.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:23.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:23.254 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:23.254 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:23.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:23.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:23.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:23.255 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:23.255 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:01:23.255 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91763005, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104574963625487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993006, telescope_ra=18.1719211, telescope_dec=-24.256515, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.19168, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1457183083591, telescope_dec_j2k=-24.259841107143, observability=1)
2025-11-17T12:01:23.255 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08380603790283 seconds ago
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Status age = 9.982521533966064s
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:33.237 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:33.238 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:33.238 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:33.238 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:33.238 [DEBUG] [Thread-67567 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 17;18.1747149;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19447;2460996.91774582;12.02587139;1.3;_
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response 17;18.1747149;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19447;2460996.91774582;12.02587139;1.3;_
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:33.239 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:33.240 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:33.240 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:33.240 [INFO] [Thread-67567 (handle)] [driver.py] [get_status()] Telra = 18.1747149, teldec = -24.256514
2025-11-17T12:01:33.240 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1747149 -24.256514
2025-11-17T12:01:33.240 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1747149 -24.256514
2025-11-17T12:01:33.240 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1747149 -24.256514
2025-11-17T12:01:33.241 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 17;18.1747149;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19447;2460996.91774584;12.02587139;1.3;_18.1485120041846 -24.2599445125401
2025-11-17T12:01:33.241 [INFO] [Thread-67567 (handle)] [driver.py] [get_status()] ra_j2k = 18.1485120041846     dec_j2k = -24.2599445125401
2025-11-17T12:01:33.241 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:33.241 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:33.241 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 140;0.104575525192687;171.162357330327;_
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response 140;0.104575525192687;171.162357330327;_
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:33.242 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:33.243 [DEBUG] [Thread-67567 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35083)
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:33.245 [DEBUG] [Thread-67567 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:33.252 [DEBUG] [Thread-67567 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:33.252 [INFO] [Thread-67567 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91774582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104575525192687, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993005, telescope_ra=18.1747149, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.19447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1485120041846, telescope_dec_j2k=-24.2599445125401, observability=1)
2025-11-17T12:01:38.249 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:01:38
2025-11-17T12:01:38.249 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:38.249 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.997031927108765s
2025-11-17T12:01:38.249 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:38.250 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:38.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1761062;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19586;2460996.91780383;12.02725889;1.3;_
2025-11-17T12:01:38.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1761062;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19586;2460996.91780383;12.02725889;1.3;_
2025-11-17T12:01:38.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:38.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:38.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:38.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:38.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:38.252 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1761062, teldec = -24.256514
2025-11-17T12:01:38.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1761062 -24.256514
2025-11-17T12:01:38.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1761062 -24.256514
2025-11-17T12:01:38.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1761062 -24.256514
2025-11-17T12:01:38.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1761062;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19586;2460996.91780385;12.02725889;1.3;_18.1499032530069 -24.2599965055032
2025-11-17T12:01:38.254 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.1499032530069     dec_j2k = -24.2599965055032
2025-11-17T12:01:38.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:38.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:38.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:38.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104574963625487;171.162357330327;_
2025-11-17T12:01:38.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104574963625487;171.162357330327;_
2025-11-17T12:01:38.255 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:38.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:38.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:38.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:38.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:38.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:38.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:01:38.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48781)
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:38.259 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:38.266 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:38.266 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91780383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104574963625487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993005, telescope_ra=18.1761062, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.19586, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:00:39.164948', telescope_ra_j2k=18.1499032530069, telescope_dec_j2k=-24.2599965055032, observability=1)
2025-11-17T12:01:39.307 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:39.307 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:39.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:39.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:39.308 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:39.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:39.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:39.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:39.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:39.309 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:01:39.309 [INFO] [ThreadPoolExecutor-2759_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:01:39.309 [INFO] [ThreadPoolExecutor-2759_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.1013352870941162s
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:39.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:39.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:39.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1764139;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19617;2460996.91781678;12.02756583;1.3;_
2025-11-17T12:01:39.370 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.1764139;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19617;2460996.91781678;12.02756583;1.3;_
2025-11-17T12:01:39.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:39.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:39.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:39.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:39.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:39.371 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.1764139, teldec = -24.256514
2025-11-17T12:01:39.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1764139 -24.256514
2025-11-17T12:01:39.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1764139 -24.256514
2025-11-17T12:01:39.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1764139 -24.256514
2025-11-17T12:01:39.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.1764139;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19617;2460996.91781681;12.02756583;1.3;_18.1502109417603 -24.2600080042309
2025-11-17T12:01:39.373 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1502109417603     dec_j2k = -24.2600080042309
2025-11-17T12:01:39.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:39.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:39.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:39.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104575324632973;171.162357330327;_
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104575324632973;171.162357330327;_
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:39.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:39.375 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:39.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:39.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:39.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:39.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:39.376 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:39.376 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44349)
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:39.379 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:39.386 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:39.386 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:39.387 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:39.387 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91781678, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104575324632973, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993005, telescope_ra=18.1764139, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.19617, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1502109417603, telescope_dec_j2k=-24.2600080042309, observability=1)
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Status age = 11.95486307144165s
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:01:51.342 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 17;18.1797561;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19951;2460996.91795536;12.03089889;1.3;_
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response 17;18.1797561;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19951;2460996.91795536;12.03089889;1.3;_
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:01:51.343 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:01:51.344 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:51.344 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:01:51.345 [INFO] [Thread-67568 (handle)] [driver.py] [get_status()] Telra = 18.1797561, teldec = -24.256514
2025-11-17T12:01:51.345 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1797561 -24.256514
2025-11-17T12:01:51.345 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1797561 -24.256514
2025-11-17T12:01:51.345 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1797561 -24.256514
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 17;18.1797561;-24.256514;50.108384;89.993005;50.08601;90.12017;15.19951;2460996.91795539;12.03089889;1.3;_18.1535530212777 -24.2601329010631
2025-11-17T12:01:51.346 [INFO] [Thread-67568 (handle)] [driver.py] [get_status()] ra_j2k = 18.1535530212777     dec_j2k = -24.2601329010631
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 140;0.10457556530463;171.162357330327;_
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response 140;0.10457556530463;171.162357330327;_
2025-11-17T12:01:51.346 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:01:51.347 [DEBUG] [Thread-67568 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:51.348 [DEBUG] [Thread-67568 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:01:51.348 [DEBUG] [Thread-67568 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:01:51.349 [DEBUG] [Thread-67568 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48331)
2025-11-17T12:01:51.349 [DEBUG] [Thread-67568 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:01:51.349 [DEBUG] [Thread-67568 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:01:51.349 [DEBUG] [Thread-67568 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:01:51.349 [DEBUG] [Thread-67568 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:01:51.350 [DEBUG] [Thread-67568 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:01:51.356 [DEBUG] [Thread-67568 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:01:51.357 [DEBUG] [Thread-67568 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:01:51.357 [INFO] [Thread-67568 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91795536, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457556530463, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993005, telescope_ra=18.1797561, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.19951, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1535530212777, telescope_dec_j2k=-24.2601329010631, observability=1)
2025-11-17T12:02:00.188 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.188 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.188 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:00.188 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:00.188 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:02:00.189 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:00.190 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:00.191 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.192 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:00.193 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:00.194 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:00.194 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:00.194 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Park
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:02:00.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 29;18.1822301;-24.256514;50.108384;89.993005;50.08601;90.12017;15.20198;2460996.91805781;12.03336611;1.3;_Park Command Successful
2025-11-17T12:02:01.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:02:01.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:02:01.195 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:02:01.196 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:02:01.196 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:02:02.196 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:02:02.197 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:02:02.197 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:02:02.197 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:02:02.197 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:02:03.198 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:02:03.198 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:02:03.198 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:02:03.199 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:02:03.199 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:02:04.199 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:02:04.199 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:02:04.199 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:04.200 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:02:04.201 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:02:04.202 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:05.202 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:05.202 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:05.202 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:05.202 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:05.202 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:02:05.203 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:02:05.204 [DEBUG] [ThreadPoolExecutor-2758_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:05.204 [INFO] [ThreadPoolExecutor-2758_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:02:08.464 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Status age = 17.107593536376953s
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:08.465 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:08.466 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:08.467 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 17;18.1845186;-24.256514;50.108384;89.993005;50.08601;90.12017;15.20427;2460996.91815354;12.03564833;1.3;_
2025-11-17T12:02:08.467 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response 17;18.1845186;-24.256514;50.108384;89.993005;50.08601;90.12017;15.20427;2460996.91815354;12.03564833;1.3;_
2025-11-17T12:02:08.467 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:08.467 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:08.467 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:08.468 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:08.468 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:08.468 [INFO] [Thread-67569 (handle)] [driver.py] [get_status()] Telra = 18.1845186, teldec = -24.256514
2025-11-17T12:02:08.468 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1845186 -24.256514
2025-11-17T12:02:08.468 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1845186 -24.256514
2025-11-17T12:02:08.468 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1845186 -24.256514
2025-11-17T12:02:08.469 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 17;18.1845186;-24.256514;50.108384;89.993005;50.08601;90.12017;15.20427;2460996.91815358;12.03564833;1.3;_18.1583153549002 -24.2603108708618
2025-11-17T12:02:08.469 [INFO] [Thread-67569 (handle)] [driver.py] [get_status()] ra_j2k = 18.1583153549002     dec_j2k = -24.2603108708618
2025-11-17T12:02:08.469 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:08.469 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:08.469 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 140;0.104576166983772;171.162362694745;_
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response 140;0.104576166983772;171.162362694745;_
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:08.470 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:08.471 [DEBUG] [Thread-67569 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:08.474 [DEBUG] [Thread-67569 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33195)
2025-11-17T12:02:08.475 [DEBUG] [Thread-67569 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:08.475 [DEBUG] [Thread-67569 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:08.475 [DEBUG] [Thread-67569 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:08.475 [DEBUG] [Thread-67569 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:08.475 [DEBUG] [Thread-67569 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:08.482 [DEBUG] [Thread-67569 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:02:08.482 [INFO] [Thread-67569 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91815354, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576166983772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108384, telescope_az=89.993005, telescope_ra=18.1845186, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.20427, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1583153549002, telescope_dec_j2k=-24.2603108708618, observability=1)
2025-11-17T12:02:09.418 [DEBUG] [Thread-67570 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:09.418 [DEBUG] [Thread-67570 (handle)] [server.py] [get_status()] Status age = 0.9359498023986816s
2025-11-17T12:02:09.418 [DEBUG] [Thread-67570 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9359498023986816
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.42801833152771s
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1863294;-24.256514;50.108383;89.993004;50.08601;90.12017;15.20608;2460996.91822815;12.03745417;1.3;_
2025-11-17T12:02:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.1863294;-24.256514;50.108383;89.993004;50.08601;90.12017;15.20608;2460996.91822815;12.03745417;1.3;_
2025-11-17T12:02:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:14.913 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.1863294, teldec = -24.256514
2025-11-17T12:02:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1863294 -24.256514
2025-11-17T12:02:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1863294 -24.256514
2025-11-17T12:02:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1863294 -24.256514
2025-11-17T12:02:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.1863294;-24.256514;50.108383;89.993004;50.08601;90.12017;15.20608;2460996.91822817;12.03745417;1.3;_18.1601260932762 -24.2603785376032
2025-11-17T12:02:14.914 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1601260932762     dec_j2k = -24.2603785376032
2025-11-17T12:02:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104576166983772;171.162362694745;_
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104576166983772;171.162362694745;_
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:02:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58537)
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:14.921 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:02:14.929 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91822815, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576166983772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108383, telescope_az=89.993004, telescope_ra=18.1863294, telescope_dec=-24.256514, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.20608, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1601260932762, telescope_dec_j2k=-24.2603785376032, observability=1)
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.385749340057373s
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:23.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1886677;-24.256513;50.108383;89.993004;50.08601;90.12017;15.20842;2460996.91832542;12.03978611;1.3;_
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.1886677;-24.256513;50.108383;89.993004;50.08601;90.12017;15.20842;2460996.91832542;12.03978611;1.3;_
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:23.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:23.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:23.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:23.317 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.1886677, teldec = -24.256513
2025-11-17T12:02:23.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.1886677 -24.256513
2025-11-17T12:02:23.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.1886677 -24.256513
2025-11-17T12:02:23.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1886677 -24.256513
2025-11-17T12:02:23.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.1886677;-24.256513;50.108383;89.993004;50.08601;90.12017;15.20842;2460996.91832544;12.03978611;1.3;_18.162464315234 -24.2604649153845
2025-11-17T12:02:23.318 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.162464315234     dec_j2k = -24.2604649153845
2025-11-17T12:02:23.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:23.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:23.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104576728550971;171.162362694745;_
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104576728550971;171.162362694745;_
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:23.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:23.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:23.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:23.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:23.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33927)
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:23.328 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:23.335 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:02:23.336 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91832542, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576728550971, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108383, telescope_az=89.993004, telescope_ra=18.1886677, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.20842, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.162464315234, telescope_dec_j2k=-24.2604649153845, observability=1)
2025-11-17T12:02:23.336 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08630037307739 seconds ago
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Status age = 4.192804336547852s
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:27.528 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:27.529 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:27.530 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 17;18.1898445;-24.256513;50.108383;89.993004;50.08601;90.12017;15.2096;2460996.91837419;12.04095972;1.3;_
2025-11-17T12:02:27.530 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response 17;18.1898445;-24.256513;50.108383;89.993004;50.08601;90.12017;15.2096;2460996.91837419;12.04095972;1.3;_
2025-11-17T12:02:27.530 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:27.530 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:27.530 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:27.531 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:27.531 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:27.531 [INFO] [Thread-67571 (handle)] [driver.py] [get_status()] Telra = 18.1898445, teldec = -24.256513
2025-11-17T12:02:27.531 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1898445 -24.256513
2025-11-17T12:02:27.531 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1898445 -24.256513
2025-11-17T12:02:27.531 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1898445 -24.256513
2025-11-17T12:02:27.532 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 17;18.1898445;-24.256513;50.108383;89.993004;50.08601;90.12017;15.2096;2460996.91837421;12.04095972;1.3;_18.1636410764256 -24.2605088897293
2025-11-17T12:02:27.532 [INFO] [Thread-67571 (handle)] [driver.py] [get_status()] ra_j2k = 18.1636410764256     dec_j2k = -24.2605088897293
2025-11-17T12:02:27.532 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:27.532 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:27.532 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 140;0.104576487879314;171.162351965909;_
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response 140;0.104576487879314;171.162351965909;_
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:27.533 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:27.534 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:27.535 [DEBUG] [Thread-67571 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:27.535 [DEBUG] [Thread-67571 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:27.535 [DEBUG] [Thread-67571 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:27.541 [DEBUG] [Thread-67571 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56771)
2025-11-17T12:02:27.542 [DEBUG] [Thread-67571 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:27.542 [DEBUG] [Thread-67571 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:27.542 [DEBUG] [Thread-67571 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:27.542 [DEBUG] [Thread-67571 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:27.542 [DEBUG] [Thread-67571 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:27.549 [DEBUG] [Thread-67571 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:27.549 [DEBUG] [Thread-67571 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:27.549 [DEBUG] [Thread-67571 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:27.550 [DEBUG] [Thread-67571 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:02:27.550 [INFO] [Thread-67571 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91837419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576487879314, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108383, telescope_az=89.993004, telescope_ra=18.1898445, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2096, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1636410764256, telescope_dec_j2k=-24.2605088897293, observability=1)
2025-11-17T12:02:38.327 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:02:38
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.777588605880737s
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:38.327 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:38.328 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:38.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1928522;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21261;2460996.91849918;12.04395917;1.3;_
2025-11-17T12:02:38.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.1928522;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21261;2460996.91849918;12.04395917;1.3;_
2025-11-17T12:02:38.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:38.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:38.329 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:38.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:38.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:38.331 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.1928522, teldec = -24.256513
2025-11-17T12:02:38.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1928522 -24.256513
2025-11-17T12:02:38.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1928522 -24.256513
2025-11-17T12:02:38.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1928522 -24.256513
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.1928522;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21261;2460996.9184992;12.04395917;1.3;_18.1666486789682 -24.2606212794615
2025-11-17T12:02:38.332 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.1666486789682     dec_j2k = -24.2606212794615
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104576929110685;171.162362694745;_
2025-11-17T12:02:38.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104576929110685;171.162362694745;_
2025-11-17T12:02:38.333 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:38.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:38.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:38.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:38.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:38.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:38.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:02:38.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37567)
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:38.337 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:38.344 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:38.344 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:38.344 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:38.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:02:38.345 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91849918, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576929110685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108383, telescope_az=89.993004, telescope_ra=18.1928522, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.21261, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:01:39.307164', telescope_ra_j2k=18.1666486789682, telescope_dec_j2k=-24.2606212794615, observability=1)
2025-11-17T12:02:38.480 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:38.480 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.13535284996032715s
2025-11-17T12:02:38.480 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.13535284996032715
2025-11-17T12:02:39.449 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:39.450 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:39.450 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:39.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:39.451 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:39.452 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:02:39.453 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:40.454 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:40.454 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:40.454 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:40.454 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:40.454 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:02:40.455 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:40.456 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:40.457 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:40.457 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:40.457 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:40.457 [DEBUG] [ThreadPoolExecutor-2760_0] [payload.py] [to_registers()] [0]
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56131)
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:40.460 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:40.467 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:40.467 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:02:40.467 [DEBUG] [ThreadPoolExecutor-2760_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:02:40.467 [DEBUG] [ThreadPoolExecutor-2760_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:02:40.468 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:40.468 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:40.468 [DEBUG] [ThreadPoolExecutor-2760_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Status age = 7.250133991241455s
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:02:45.595 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:02:45.596 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:02:45.596 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:02:45.596 [DEBUG] [Thread-67572 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:02:45.596 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:02:45.596 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:02:45.597 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:02:45.597 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:02:45.597 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 17;18.1948816;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21464;2460996.9185833;12.04598306;1.3;_
2025-11-17T12:02:45.597 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response 17;18.1948816;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21464;2460996.9185833;12.04598306;1.3;_
2025-11-17T12:02:45.598 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:02:45.598 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:02:45.598 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:02:45.599 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:45.599 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:02:45.599 [INFO] [Thread-67572 (handle)] [driver.py] [get_status()] Telra = 18.1948816, teldec = -24.256513
2025-11-17T12:02:45.599 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1948816 -24.256513
2025-11-17T12:02:45.599 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1948816 -24.256513
2025-11-17T12:02:45.599 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1948816 -24.256513
2025-11-17T12:02:45.600 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 17;18.1948816;-24.256513;50.108383;89.993004;50.08601;90.12017;15.21464;2460996.91858333;12.04598306;1.3;_18.1686780146156 -24.2606971117371
2025-11-17T12:02:45.600 [INFO] [Thread-67572 (handle)] [driver.py] [get_status()] ra_j2k = 18.1686780146156     dec_j2k = -24.2606971117371
2025-11-17T12:02:45.600 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:02:45.600 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:02:45.600 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 140;0.104577129670399;171.162362694745;_
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response 140;0.104577129670399;171.162362694745;_
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:02:45.601 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:02:45.602 [DEBUG] [Thread-67572 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:45.602 [DEBUG] [Thread-67572 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:02:45.602 [DEBUG] [Thread-67572 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:02:45.602 [DEBUG] [Thread-67572 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60405)
2025-11-17T12:02:45.603 [DEBUG] [Thread-67572 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:02:45.603 [DEBUG] [Thread-67572 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:02:45.603 [DEBUG] [Thread-67572 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:02:45.603 [DEBUG] [Thread-67572 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:02:45.603 [DEBUG] [Thread-67572 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:02:45.610 [DEBUG] [Thread-67572 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:02:45.610 [INFO] [Thread-67572 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9185833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104577129670399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108383, telescope_az=89.993004, telescope_ra=18.1948816, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.21464, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1686780146156, telescope_dec_j2k=-24.2606971117371, observability=1)
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Status age = 18.051914930343628s
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:03.662 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:03.663 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:03.664 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 17;18.1998973;-24.256513;50.108382;89.993003;50.08601;90.12017;15.21965;2460996.91879241;12.050985;1.3;_
2025-11-17T12:03:03.664 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response 17;18.1998973;-24.256513;50.108382;89.993003;50.08601;90.12017;15.21965;2460996.91879241;12.050985;1.3;_
2025-11-17T12:03:03.664 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:03.664 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:03.664 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:03.665 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:03.665 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:03.665 [INFO] [Thread-67573 (handle)] [driver.py] [get_status()] Telra = 18.1998973, teldec = -24.256513
2025-11-17T12:03:03.665 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] UnCookCoordinates 18.1998973 -24.256513
2025-11-17T12:03:03.665 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.1998973 -24.256513
2025-11-17T12:03:03.665 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.1998973 -24.256513
2025-11-17T12:03:03.666 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 17;18.1998973;-24.256513;50.108382;89.993003;50.08601;90.12017;15.21965;2460996.91879243;12.050985;1.3;_18.1736935604245 -24.2608845290373
2025-11-17T12:03:03.666 [INFO] [Thread-67573 (handle)] [driver.py] [get_status()] ra_j2k = 18.1736935604245     dec_j2k = -24.2608845290373
2025-11-17T12:03:03.666 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:03.666 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:03.666 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 140;0.104576407655428;171.162357330327;_
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response 140;0.104576407655428;171.162357330327;_
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:03.667 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:03.668 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:03.669 [DEBUG] [Thread-67573 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:03.669 [DEBUG] [Thread-67573 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:03.669 [DEBUG] [Thread-67573 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:03.671 [DEBUG] [Thread-67573 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58941)
2025-11-17T12:03:03.671 [DEBUG] [Thread-67573 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:03.671 [DEBUG] [Thread-67573 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:03.671 [DEBUG] [Thread-67573 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:03.671 [DEBUG] [Thread-67573 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:03.672 [DEBUG] [Thread-67573 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:03.679 [DEBUG] [Thread-67573 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:03.679 [INFO] [Thread-67573 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91879241, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104576407655428, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993003, telescope_ra=18.1998973, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.21965, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1736935604245, telescope_dec_j2k=-24.2608845290373, observability=1)
2025-11-17T12:03:05.468 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:05.468 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:05.468 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:05.468 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:05.468 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:05.469 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:05.470 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:05.471 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:03:05.471 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:03:05.471 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:03:05.471 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Status age = 4.830964803695679s
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:08.510 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:08.511 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 17;18.201263;-24.256513;50.108382;89.993003;50.08601;90.12017;15.22102;2460996.91884852;12.05234694;1.3;_
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response 17;18.201263;-24.256513;50.108382;89.993003;50.08601;90.12017;15.22102;2460996.91884852;12.05234694;1.3;_
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:08.512 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:08.513 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:08.513 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:08.513 [INFO] [Thread-67574 (handle)] [driver.py] [get_status()] Telra = 18.201263, teldec = -24.256513
2025-11-17T12:03:08.513 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] UnCookCoordinates 18.201263 -24.256513
2025-11-17T12:03:08.513 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.201263 -24.256513
2025-11-17T12:03:08.513 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.201263 -24.256513
2025-11-17T12:03:08.514 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 17;18.201263;-24.256513;50.108382;89.993003;50.08601;90.12017;15.22102;2460996.91884854;12.05234694;1.3;_18.1750592196388 -24.2609355590461
2025-11-17T12:03:08.514 [INFO] [Thread-67574 (handle)] [driver.py] [get_status()] ra_j2k = 18.1750592196388     dec_j2k = -24.2609355590461
2025-11-17T12:03:08.514 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:08.514 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:08.515 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:08.515 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 140;0.104577209894285;171.162362694745;_
2025-11-17T12:03:08.515 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response 140;0.104577209894285;171.162362694745;_
2025-11-17T12:03:08.515 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:08.516 [DEBUG] [Thread-67574 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:08.517 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:08.517 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:08.517 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:08.518 [DEBUG] [Thread-67574 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:08.518 [DEBUG] [Thread-67574 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:08.518 [DEBUG] [Thread-67574 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39699)
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:08.519 [DEBUG] [Thread-67574 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:08.526 [DEBUG] [Thread-67574 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:08.527 [DEBUG] [Thread-67574 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:08.527 [INFO] [Thread-67574 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91884852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104577209894285, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993003, telescope_ra=18.201263, telescope_dec=-24.256513, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.22102, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1750592196388, telescope_dec_j2k=-24.2609355590461, observability=1)
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.351113796234131s
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2030208;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22278;2460996.91892222;12.0541;1.3;_
2025-11-17T12:03:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2030208;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22278;2460996.91892222;12.0541;1.3;_
2025-11-17T12:03:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:14.881 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2030208, teldec = -24.256512
2025-11-17T12:03:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2030208 -24.256512
2025-11-17T12:03:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2030208 -24.256512
2025-11-17T12:03:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2030208 -24.256512
2025-11-17T12:03:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2030208;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22278;2460996.91892225;12.0541;1.3;_18.1768169680978 -24.2610002395205
2025-11-17T12:03:14.882 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1768169680978     dec_j2k = -24.2610002395205
2025-11-17T12:03:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:14.883 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104577450565941;171.162346601491;_
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104577450565941;171.162346601491;_
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:14.884 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:14.885 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:14.886 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36139)
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:14.889 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:14.896 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:14.896 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:14.896 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:14.897 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:14.897 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91892222, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104577450565941, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993003, telescope_ra=18.2030208, telescope_dec=-24.256512, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.22278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1768169680978, telescope_dec_j2k=-24.2610002395205, observability=1)
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Status age = 6.894352436065674s
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:21.791 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:21.793 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:21.794 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 17;18.2049444;-24.256512;50.108382;89.993003;50.08601;90.12017;15.2247;2460996.91900225;12.05601833;1.3;_
2025-11-17T12:03:21.794 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response 17;18.2049444;-24.256512;50.108382;89.993003;50.08601;90.12017;15.2247;2460996.91900225;12.05601833;1.3;_
2025-11-17T12:03:21.794 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:21.794 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:21.794 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:21.795 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:21.795 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:21.795 [INFO] [Thread-67575 (handle)] [driver.py] [get_status()] Telra = 18.2049444, teldec = -24.256512
2025-11-17T12:03:21.795 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2049444 -24.256512
2025-11-17T12:03:21.795 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2049444 -24.256512
2025-11-17T12:03:21.795 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2049444 -24.256512
2025-11-17T12:03:21.796 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 17;18.2049444;-24.256512;50.108382;89.993003;50.08601;90.12017;15.2247;2460996.91900227;12.05601833;1.3;_18.1787405124503 -24.2610721142837
2025-11-17T12:03:21.796 [INFO] [Thread-67575 (handle)] [driver.py] [get_status()] ra_j2k = 18.1787405124503     dec_j2k = -24.2610721142837
2025-11-17T12:03:21.796 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:21.796 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:21.796 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 140;0.104578373140626;171.162357330327;_
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response 140;0.104578373140626;171.162357330327;_
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:21.797 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:21.798 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:21.799 [DEBUG] [Thread-67575 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:21.799 [DEBUG] [Thread-67575 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:21.799 [DEBUG] [Thread-67575 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:21.805 [DEBUG] [Thread-67575 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50041)
2025-11-17T12:03:21.805 [DEBUG] [Thread-67575 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:21.805 [DEBUG] [Thread-67575 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:21.805 [DEBUG] [Thread-67575 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:21.805 [DEBUG] [Thread-67575 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:21.806 [DEBUG] [Thread-67575 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:21.814 [DEBUG] [Thread-67575 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:21.814 [INFO] [Thread-67575 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91900225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578373140626, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993003, telescope_ra=18.2049444, telescope_dec=-24.256512, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2247, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1787405124503, telescope_dec_j2k=-24.2610721142837, observability=1)
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.581634521484375s
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:23.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:23.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:23.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2053923;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22515;2460996.91902081;12.056465;1.3;_
2025-11-17T12:03:23.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2053923;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22515;2460996.91902081;12.056465;1.3;_
2025-11-17T12:03:23.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:23.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:23.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:23.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:23.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:23.399 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2053923, teldec = -24.256512
2025-11-17T12:03:23.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2053923 -24.256512
2025-11-17T12:03:23.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2053923 -24.256512
2025-11-17T12:03:23.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2053923 -24.256512
2025-11-17T12:03:23.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2053923;-24.256512;50.108382;89.993003;50.08601;90.12017;15.22515;2460996.91902083;12.056465;1.3;_18.1791883996392 -24.2610888498196
2025-11-17T12:03:23.400 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.1791883996392     dec_j2k = -24.2610888498196
2025-11-17T12:03:23.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:23.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:23.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104577209894285;171.162346601491;_
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104577209894285;171.162346601491;_
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:23.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:23.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:23.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:23.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:23.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43023)
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:23.407 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:23.414 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:03:23.414 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91902081, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104577209894285, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993003, telescope_ra=18.2053923, telescope_dec=-24.256512, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.22515, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1791883996392, telescope_dec_j2k=-24.2610888498196, observability=1)
2025-11-17T12:03:23.414 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.087151527404785 seconds ago
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.15659475326538s
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:37.571 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:37.572 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:37.573 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2093415;-24.256512;50.108382;89.993002;50.08601;90.12017;15.2291;2460996.91918487;12.06040333;1.3;_
2025-11-17T12:03:37.573 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.2093415;-24.256512;50.108382;89.993002;50.08601;90.12017;15.2291;2460996.91918487;12.06040333;1.3;_
2025-11-17T12:03:37.573 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:37.573 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:37.573 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:37.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:37.574 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:37.574 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.2093415, teldec = -24.256512
2025-11-17T12:03:37.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2093415 -24.256512
2025-11-17T12:03:37.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2093415 -24.256512
2025-11-17T12:03:37.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2093415 -24.256512
2025-11-17T12:03:37.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2093415;-24.256512;50.108382;89.993002;50.08601;90.12017;15.2291;2460996.9191849;12.06040333;1.3;_18.1831374890686 -24.2612364074945
2025-11-17T12:03:37.575 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1831374890686     dec_j2k = -24.2612364074945
2025-11-17T12:03:37.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:37.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:37.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104578012133141;171.162351965909;_
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104578012133141;171.162351965909;_
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:37.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:37.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:37.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:37.578 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:37.578 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34509)
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:37.584 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:37.592 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:37.592 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91918487, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578012133141, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993002, telescope_ra=18.2093415, telescope_dec=-24.256512, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2291, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:02:39.449487', telescope_ra_j2k=18.1831374890686, telescope_dec_j2k=-24.2612364074945, observability=1)
2025-11-17T12:03:38.405 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:03:38
2025-11-17T12:03:38.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:38.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.8127884864807129s
2025-11-17T12:03:38.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8127884864807129
2025-11-17T12:03:39.592 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:39.592 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:39.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:39.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:39.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:39.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:39.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:39.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:39.593 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:39.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:39.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:39.595 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:03:39.595 [INFO] [ThreadPoolExecutor-2761_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:03:39.595 [INFO] [ThreadPoolExecutor-2761_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:03:39.855 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Status age = 2.2633590698242188s
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:39.856 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:39.857 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:39.858 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 17;18.2099863;-24.256512;50.108382;89.993002;50.08601;90.12017;15.22974;2460996.91921132;12.06104639;1.3;_
2025-11-17T12:03:39.858 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response 17;18.2099863;-24.256512;50.108382;89.993002;50.08601;90.12017;15.22974;2460996.91921132;12.06104639;1.3;_
2025-11-17T12:03:39.858 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:39.858 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:39.858 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:39.859 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:39.859 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:39.859 [INFO] [Thread-67576 (handle)] [driver.py] [get_status()] Telra = 18.2099863, teldec = -24.256512
2025-11-17T12:03:39.859 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2099863 -24.256512
2025-11-17T12:03:39.859 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2099863 -24.256512
2025-11-17T12:03:39.859 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2099863 -24.256512
2025-11-17T12:03:39.860 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 17;18.2099863;-24.256512;50.108382;89.993002;50.08601;90.12017;15.22974;2460996.91921134;12.06104639;1.3;_18.1837822714227 -24.2612604994161
2025-11-17T12:03:39.860 [INFO] [Thread-67576 (handle)] [driver.py] [get_status()] ra_j2k = 18.1837822714227     dec_j2k = -24.2612604994161
2025-11-17T12:03:39.860 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:39.860 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:39.860 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:39.861 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 140;0.104578333028683;171.162357330327;_
2025-11-17T12:03:39.861 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response 140;0.104578333028683;171.162357330327;_
2025-11-17T12:03:39.861 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:39.861 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:39.861 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:39.862 [DEBUG] [Thread-67576 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:39.869 [DEBUG] [Thread-67576 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42263)
2025-11-17T12:03:39.869 [DEBUG] [Thread-67576 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:39.869 [DEBUG] [Thread-67576 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:39.870 [DEBUG] [Thread-67576 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:39.870 [DEBUG] [Thread-67576 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:39.870 [DEBUG] [Thread-67576 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:39.876 [DEBUG] [Thread-67576 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:39.877 [DEBUG] [Thread-67576 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:39.877 [INFO] [Thread-67576 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91921132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578333028683, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108382, telescope_az=89.993002, telescope_ra=18.2099863, telescope_dec=-24.256512, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.22974, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1837822714227, telescope_dec_j2k=-24.2612604994161, observability=1)
2025-11-17T12:03:57.914 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Status age = 18.03751850128174s
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:03:57.915 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:03:57.916 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 17;18.2150275;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23478;2460996.91942032;12.06607389;1.3;_
2025-11-17T12:03:57.916 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response 17;18.2150275;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23478;2460996.91942032;12.06607389;1.3;_
2025-11-17T12:03:57.916 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:03:57.916 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:03:57.916 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:03:57.917 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:57.917 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:03:57.917 [INFO] [Thread-67577 (handle)] [driver.py] [get_status()] Telra = 18.2150275, teldec = -24.256511
2025-11-17T12:03:57.917 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2150275 -24.256511
2025-11-17T12:03:57.917 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2150275 -24.256511
2025-11-17T12:03:57.917 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2150275 -24.256511
2025-11-17T12:03:57.918 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 17;18.2150275;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23478;2460996.91942035;12.06607389;1.3;_18.1888233376033 -24.2614478523829
2025-11-17T12:03:57.918 [INFO] [Thread-67577 (handle)] [driver.py] [get_status()] ra_j2k = 18.1888233376033     dec_j2k = -24.2614478523829
2025-11-17T12:03:57.918 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:03:57.918 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:03:57.919 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:03:57.919 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 140;0.104578774260054;171.162362694745;_
2025-11-17T12:03:57.919 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response 140;0.104578774260054;171.162362694745;_
2025-11-17T12:03:57.919 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:03:57.920 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:57.920 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:57.920 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:57.920 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:03:57.920 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:03:57.921 [DEBUG] [Thread-67577 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:03:57.921 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:03:57.921 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:03:57.921 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:03:57.922 [DEBUG] [Thread-67577 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:57.922 [DEBUG] [Thread-67577 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:03:57.922 [DEBUG] [Thread-67577 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35681)
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:03:57.924 [DEBUG] [Thread-67577 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:03:57.931 [DEBUG] [Thread-67577 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:03:57.931 [INFO] [Thread-67577 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.91942032, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578774260054, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993002, telescope_ra=18.2150275, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.23478, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1888233376033, telescope_dec_j2k=-24.2614478523829, observability=1)
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.472 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:04:00.473 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:00.474 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:00.475 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:04:00.476 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:00.477 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Park
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:04:00.478 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:04:00.479 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 29;18.2157278;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23548;2460996.91944998;12.06677222;1.3;_Park Command Successful
2025-11-17T12:04:01.479 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:04:01.479 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:04:01.479 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:04:01.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:04:01.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:04:02.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:04:02.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:04:02.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:04:02.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:04:02.480 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:04:03.481 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:04:03.481 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:04:03.481 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:04:03.481 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:04:03.481 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:04:04.482 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:04:04.482 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:04:04.482 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:04.483 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:04:04.484 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:04:04.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:05.485 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:04:05.486 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:04:05.486 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:04:05.486 [DEBUG] [ThreadPoolExecutor-2760_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:05.486 [INFO] [ThreadPoolExecutor-2760_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Status age = 10.626493692398071s
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:08.558 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:08.559 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 17;18.2179867;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23774;2460996.91954351;12.069025;1.3;_
2025-11-17T12:04:08.559 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response 17;18.2179867;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23774;2460996.91954351;12.069025;1.3;_
2025-11-17T12:04:08.559 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:08.559 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:08.559 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:08.560 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:08.560 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:08.560 [INFO] [Thread-67578 (handle)] [driver.py] [get_status()] Telra = 18.2179867, teldec = -24.256511
2025-11-17T12:04:08.560 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2179867 -24.256511
2025-11-17T12:04:08.560 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2179867 -24.256511
2025-11-17T12:04:08.560 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2179867 -24.256511
2025-11-17T12:04:08.561 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 17;18.2179867;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23774;2460996.91954353;12.069025;1.3;_18.191782462189 -24.2615584131578
2025-11-17T12:04:08.561 [INFO] [Thread-67578 (handle)] [driver.py] [get_status()] ra_j2k = 18.191782462189     dec_j2k = -24.2615584131578
2025-11-17T12:04:08.561 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:08.561 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:08.561 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 140;0.104578373140626;171.162351965909;_
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response 140;0.104578373140626;171.162351965909;_
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:08.562 [DEBUG] [Thread-67578 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:08.563 [DEBUG] [Thread-67578 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51301)
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:08.569 [DEBUG] [Thread-67578 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:08.576 [DEBUG] [Thread-67578 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:08.576 [DEBUG] [Thread-67578 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:08.577 [DEBUG] [Thread-67578 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:08.577 [INFO] [Thread-67578 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91954351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578373140626, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993002, telescope_ra=18.2179867, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.23774, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.191782462189, telescope_dec_j2k=-24.2615584131578, observability=1)
2025-11-17T12:04:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.312507629394531s
2025-11-17T12:04:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2197418;-24.256511;50.108381;89.993002;50.08601;90.12017;15.2395;2460996.91961679;12.07077528;1.3;_
2025-11-17T12:04:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2197418;-24.256511;50.108381;89.993002;50.08601;90.12017;15.2395;2460996.91961679;12.07077528;1.3;_
2025-11-17T12:04:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:14.892 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2197418, teldec = -24.256511
2025-11-17T12:04:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2197418 -24.256511
2025-11-17T12:04:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2197418 -24.256511
2025-11-17T12:04:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2197418 -24.256511
2025-11-17T12:04:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2197418;-24.256511;50.108381;89.993002;50.08601;90.12017;15.2395;2460996.91961682;12.07077528;1.3;_18.1935375185985 -24.2616239856272
2025-11-17T12:04:14.893 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.1935375185985     dec_j2k = -24.2616239856272
2025-11-17T12:04:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104579055043654;171.162351965909;_
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104579055043654;171.162351965909;_
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:14.897 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46573)
2025-11-17T12:04:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:14.897 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:14.898 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:14.898 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:14.905 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:14.905 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91961679, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579055043654, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993002, telescope_ra=18.2197418, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2395, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1935375185985, telescope_dec_j2k=-24.2616239856272, observability=1)
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Status age = 1.1341962814331055s
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:16.039 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:16.040 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:16.041 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 17;18.2200688;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23982;2460996.9196301;12.07110139;1.3;_
2025-11-17T12:04:16.041 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response 17;18.2200688;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23982;2460996.9196301;12.07110139;1.3;_
2025-11-17T12:04:16.041 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:16.041 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:16.041 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:16.042 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:16.042 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:16.042 [INFO] [Thread-67579 (handle)] [driver.py] [get_status()] Telra = 18.2200688, teldec = -24.256511
2025-11-17T12:04:16.042 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2200688 -24.256511
2025-11-17T12:04:16.042 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2200688 -24.256511
2025-11-17T12:04:16.042 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2200688 -24.256511
2025-11-17T12:04:16.043 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 17;18.2200688;-24.256511;50.108381;89.993002;50.08601;90.12017;15.23982;2460996.91963013;12.07110139;1.3;_18.1938645105706 -24.2616362026179
2025-11-17T12:04:16.043 [INFO] [Thread-67579 (handle)] [driver.py] [get_status()] ra_j2k = 18.1938645105706     dec_j2k = -24.2616362026179
2025-11-17T12:04:16.043 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:16.043 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 140;0.104578774260054;171.162368059163;_
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response 140;0.104578774260054;171.162368059163;_
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:16.044 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:16.045 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:16.045 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:16.046 [DEBUG] [Thread-67579 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44681)
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:16.048 [DEBUG] [Thread-67579 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:16.055 [DEBUG] [Thread-67579 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:16.055 [DEBUG] [Thread-67579 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:16.055 [DEBUG] [Thread-67579 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:16.055 [DEBUG] [Thread-67579 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:16.055 [DEBUG] [Thread-67579 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:16.056 [DEBUG] [Thread-67579 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:16.056 [DEBUG] [Thread-67579 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:16.056 [DEBUG] [Thread-67579 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:16.056 [DEBUG] [Thread-67579 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:16.056 [INFO] [Thread-67579 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9196301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104578774260054, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993002, telescope_ra=18.2200688, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.23982, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1938645105706, telescope_dec_j2k=-24.2616362026179, observability=1)
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.41808295249939s
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:23.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:23.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:23.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2221322;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24189;2460996.91971616;12.07315917;1.3;_
2025-11-17T12:04:23.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2221322;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24189;2460996.91971616;12.07315917;1.3;_
2025-11-17T12:04:23.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:23.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:23.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:23.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:23.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:23.477 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2221322, teldec = -24.256511
2025-11-17T12:04:23.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2221322 -24.256511
2025-11-17T12:04:23.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2221322 -24.256511
2025-11-17T12:04:23.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2221322 -24.256511
2025-11-17T12:04:23.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2221322;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24189;2460996.91971618;12.07315917;1.3;_18.195927860592 -24.2617132922934
2025-11-17T12:04:23.478 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.195927860592     dec_j2k = -24.2617132922934
2025-11-17T12:04:23.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:23.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:23.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10457885448394;171.162351965909;_
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10457885448394;171.162351965909;_
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:23.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:23.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:23.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:23.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:23.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:23.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:23.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:23.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:23.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:04:23.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44349)
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:23.488 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:23.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:23.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:23.496 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:04:23.496 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91971616, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457885448394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993001, telescope_ra=18.2221322, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.24189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.195927860592, telescope_dec_j2k=-24.2617132922934, observability=1)
2025-11-17T12:04:23.496 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09118366241455 seconds ago
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Status age = 10.60825490951538s
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:34.104 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:34.105 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:34.106 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 17;18.2250912;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24485;2460996.91983919;12.07611;1.3;_
2025-11-17T12:04:34.106 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response 17;18.2250912;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24485;2460996.91983919;12.07611;1.3;_
2025-11-17T12:04:34.106 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:34.106 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:34.106 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:34.107 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:34.107 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:34.107 [INFO] [Thread-67580 (handle)] [driver.py] [get_status()] Telra = 18.2250912, teldec = -24.256511
2025-11-17T12:04:34.107 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2250912 -24.256511
2025-11-17T12:04:34.108 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2250912 -24.256511
2025-11-17T12:04:34.108 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2250912 -24.256511
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 17;18.2250912;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24485;2460996.91983921;12.07611;1.3;_18.1988867909643 -24.2618238400283
2025-11-17T12:04:34.109 [INFO] [Thread-67580 (handle)] [driver.py] [get_status()] ra_j2k = 18.1988867909643     dec_j2k = -24.2618238400283
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 140;0.104579014931711;171.162351965909;_
2025-11-17T12:04:34.109 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response 140;0.104579014931711;171.162351965909;_
2025-11-17T12:04:34.110 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:34.110 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:34.110 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:34.110 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:34.110 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:34.111 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:34.111 [DEBUG] [Thread-67580 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:34.111 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:34.111 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:34.111 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:34.112 [DEBUG] [Thread-67580 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:34.112 [DEBUG] [Thread-67580 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:34.112 [DEBUG] [Thread-67580 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:34.118 [DEBUG] [Thread-67580 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43937)
2025-11-17T12:04:34.118 [DEBUG] [Thread-67580 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:34.118 [DEBUG] [Thread-67580 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:34.118 [DEBUG] [Thread-67580 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:34.118 [DEBUG] [Thread-67580 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:34.119 [DEBUG] [Thread-67580 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:34.125 [DEBUG] [Thread-67580 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:34.126 [DEBUG] [Thread-67580 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:34.126 [INFO] [Thread-67580 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91983919, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579014931711, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993001, telescope_ra=18.2250912, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.24485, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1988867909643, telescope_dec_j2k=-24.2618238400283, observability=1)
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5581068992614746s
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:36.684 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:36.685 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:36.685 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:36.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:36.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2258106;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24557;2460996.91986906;12.0768275;1.3;_
2025-11-17T12:04:36.687 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.2258106;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24557;2460996.91986906;12.0768275;1.3;_
2025-11-17T12:04:36.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:36.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:36.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:36.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:36.688 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:36.688 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.2258106, teldec = -24.256511
2025-11-17T12:04:36.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2258106 -24.256511
2025-11-17T12:04:36.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2258106 -24.256511
2025-11-17T12:04:36.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2258106 -24.256511
2025-11-17T12:04:36.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2258106;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24557;2460996.91986909;12.0768275;1.3;_18.1996061744001 -24.2618507163245
2025-11-17T12:04:36.689 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.1996061744001     dec_j2k = -24.2618507163245
2025-11-17T12:04:36.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:36.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:36.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104579335827253;171.162346601491;_
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104579335827253;171.162346601491;_
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:36.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:36.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:36.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:36.693 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:36.693 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43747)
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:36.695 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:36.702 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:36.702 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91986906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579335827253, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993001, telescope_ra=18.2258106, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.24557, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.1996061744001, telescope_dec_j2k=-24.2618507163245, observability=1)
2025-11-17T12:04:38.466 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:04:38
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.7634265422821045s
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:38.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:38.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:38.467 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:38.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:38.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:38.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:38.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2263148;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24607;2460996.91988968;12.07733028;1.3;_
2025-11-17T12:04:38.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.2263148;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24607;2460996.91988968;12.07733028;1.3;_
2025-11-17T12:04:38.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:38.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:38.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:38.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:38.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:38.469 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.2263148, teldec = -24.256511
2025-11-17T12:04:38.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2263148 -24.256511
2025-11-17T12:04:38.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2263148 -24.256511
2025-11-17T12:04:38.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2263148 -24.256511
2025-11-17T12:04:38.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2263148;-24.256511;50.108381;89.993001;50.08601;90.12017;15.24607;2460996.9198897;12.07733028;1.3;_18.2001103628758 -24.2618695528085
2025-11-17T12:04:38.470 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2001103628758     dec_j2k = -24.2618695528085
2025-11-17T12:04:38.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:38.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:38.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104579175379482;171.162357330327;_
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104579175379482;171.162357330327;_
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:38.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:38.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:38.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:38.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:38.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37339)
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:38.477 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:38.484 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:38.485 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.91988968, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579175379482, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108381, telescope_az=89.993001, telescope_ra=18.2263148, telescope_dec=-24.256511, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.24607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:03:39.591949', telescope_ra_j2k=18.2001103628758, telescope_dec_j2k=-24.2618695528085, observability=1)
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:39.737 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:04:39.737 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:39.737 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:39.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:39.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:39.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:39.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:39.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:39.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:39.738 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:04:39.738 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:39.738 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:39.738 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:39.738 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:39.738 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:04:39.739 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:04:39.740 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:40.740 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:40.740 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:40.740 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:40.740 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:40.740 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:04:40.741 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:40.742 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:40.743 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:40.743 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:40.743 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:40.743 [DEBUG] [ThreadPoolExecutor-2762_0] [payload.py] [to_registers()] [0]
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37545)
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:40.748 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:40.756 [DEBUG] [ThreadPoolExecutor-2762_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:52.170 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Status age = 13.685318231582642s
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:04:52.171 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 17;18.2301269;-24.25651;50.10838;89.993001;50.08601;90.12017;15.24988;2460996.92004829;12.08113194;1.3;_
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response 17;18.2301269;-24.25651;50.10838;89.993001;50.08601;90.12017;15.24988;2460996.92004829;12.08113194;1.3;_
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:04:52.172 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:04:52.174 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:52.174 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:04:52.174 [INFO] [Thread-67581 (handle)] [driver.py] [get_status()] Telra = 18.2301269, teldec = -24.25651
2025-11-17T12:04:52.174 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2301269 -24.25651
2025-11-17T12:04:52.174 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2301269 -24.25651
2025-11-17T12:04:52.174 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2301269 -24.25651
2025-11-17T12:04:52.175 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 17;18.2301269;-24.25651;50.10838;89.993001;50.08601;90.12017;15.24988;2460996.92004832;12.08113194;1.3;_18.2039223782061 -24.2620109673593
2025-11-17T12:04:52.175 [INFO] [Thread-67581 (handle)] [driver.py] [get_status()] ra_j2k = 18.2039223782061     dec_j2k = -24.2620109673593
2025-11-17T12:04:52.175 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:04:52.175 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:04:52.175 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 140;0.10457957649891;171.162351965909;_
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response 140;0.10457957649891;171.162351965909;_
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:52.176 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:04:52.177 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:04:52.178 [DEBUG] [Thread-67581 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:52.178 [DEBUG] [Thread-67581 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:04:52.178 [DEBUG] [Thread-67581 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46979)
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:04:52.182 [DEBUG] [Thread-67581 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:04:52.189 [DEBUG] [Thread-67581 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:04:52.190 [INFO] [Thread-67581 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92004829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457957649891, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993001, telescope_ra=18.2301269, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.24988, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.2039223782061, telescope_dec_j2k=-24.2620109673593, observability=1)
2025-11-17T12:05:05.756 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:05.756 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:05.756 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:05.756 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:05.756 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:05.757 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:05:05.758 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:05:05.759 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:05:05.759 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Status age = 16.424193143844604s
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:08.614 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:08.615 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 17;18.2346949;-24.25651;50.10838;89.993;50.08601;90.12017;15.25445;2460996.9202386;12.0856875;1.3;_
2025-11-17T12:05:08.615 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response 17;18.2346949;-24.25651;50.10838;89.993;50.08601;90.12017;15.25445;2460996.9202386;12.0856875;1.3;_
2025-11-17T12:05:08.615 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:08.615 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:08.616 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:08.616 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:08.616 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:08.617 [INFO] [Thread-67582 (handle)] [driver.py] [get_status()] Telra = 18.2346949, teldec = -24.25651
2025-11-17T12:05:08.617 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2346949 -24.25651
2025-11-17T12:05:08.617 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2346949 -24.25651
2025-11-17T12:05:08.617 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2346949 -24.25651
2025-11-17T12:05:08.618 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 17;18.2346949;-24.25651;50.10838;89.993;50.08601;90.12017;15.25445;2460996.92023862;12.0856875;1.3;_18.2084902817723 -24.2621816155895
2025-11-17T12:05:08.618 [INFO] [Thread-67582 (handle)] [driver.py] [get_status()] ra_j2k = 18.2084902817723     dec_j2k = -24.2621816155895
2025-11-17T12:05:08.618 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:08.618 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:08.618 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 140;0.104579656722796;171.162357330327;_
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response 140;0.104579656722796;171.162357330327;_
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:08.619 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:08.620 [DEBUG] [Thread-67582 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:08.620 [DEBUG] [Thread-67582 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:08.620 [DEBUG] [Thread-67582 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50525)
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:08.621 [DEBUG] [Thread-67582 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:08.628 [DEBUG] [Thread-67582 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:08.628 [INFO] [Thread-67582 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9202386, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579656722796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2346949, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.25445, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.2084902817723, telescope_dec_j2k=-24.2621816155895, observability=1)
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Status age = 1.6494107246398926s
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:10.278 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:10.279 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 17;18.2351715;-24.25651;50.10838;89.993;50.08601;90.12017;15.25493;2460996.92025786;12.08616278;1.3;_
2025-11-17T12:05:10.279 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response 17;18.2351715;-24.25651;50.10838;89.993;50.08601;90.12017;15.25493;2460996.92025786;12.08616278;1.3;_
2025-11-17T12:05:10.279 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:10.279 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:10.279 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:10.280 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:10.280 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:10.280 [INFO] [Thread-67583 (handle)] [driver.py] [get_status()] Telra = 18.2351715, teldec = -24.25651
2025-11-17T12:05:10.280 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2351715 -24.25651
2025-11-17T12:05:10.280 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2351715 -24.25651
2025-11-17T12:05:10.280 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2351715 -24.25651
2025-11-17T12:05:10.281 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 17;18.2351715;-24.25651;50.10838;89.993;50.08601;90.12017;15.25493;2460996.92025788;12.08616278;1.3;_18.2089668720415 -24.2621994197282
2025-11-17T12:05:10.281 [INFO] [Thread-67583 (handle)] [driver.py] [get_status()] ra_j2k = 18.2089668720415     dec_j2k = -24.2621994197282
2025-11-17T12:05:10.281 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:10.281 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:10.281 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:10.282 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 140;0.104579456163082;171.162351965909;_
2025-11-17T12:05:10.282 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response 140;0.104579456163082;171.162351965909;_
2025-11-17T12:05:10.282 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:10.282 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:10.282 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:10.283 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:10.284 [DEBUG] [Thread-67583 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:10.284 [DEBUG] [Thread-67583 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:10.284 [DEBUG] [Thread-67583 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34319)
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:10.286 [DEBUG] [Thread-67583 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:10.293 [DEBUG] [Thread-67583 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:10.294 [INFO] [Thread-67583 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92025786, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579456163082, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2351715, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.25493, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.2089668720415, telescope_dec_j2k=-24.2621994197282, observability=1)
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.604601144790649s
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2364528;-24.25651;50.10838;89.993;50.08601;90.12017;15.25621;2460996.92031134;12.08744056;1.3;_
2025-11-17T12:05:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2364528;-24.25651;50.10838;89.993;50.08601;90.12017;15.25621;2460996.92031134;12.08744056;1.3;_
2025-11-17T12:05:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:14.901 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2364528, teldec = -24.25651
2025-11-17T12:05:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2364528 -24.25651
2025-11-17T12:05:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2364528 -24.25651
2025-11-17T12:05:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2364528 -24.25651
2025-11-17T12:05:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2364528;-24.25651;50.10838;89.993;50.08601;90.12017;15.25621;2460996.92031137;12.08744056;1.3;_18.210248146191 -24.2622472843518
2025-11-17T12:05:14.902 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.210248146191     dec_j2k = -24.2622472843518
2025-11-17T12:05:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104580017730281;171.162362694745;_
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104580017730281;171.162362694745;_
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48543)
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:14.919 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:14.919 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:14.920 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92031134, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580017730281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2364528, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.25621, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.210248146191, telescope_dec_j2k=-24.2622472843518, observability=1)
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.636295318603516s
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:23.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:23.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:23.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2388805;-24.25651;50.10838;89.993;50.08601;90.12017;15.25864;2460996.92041155;12.08986167;1.3;_
2025-11-17T12:05:23.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2388805;-24.25651;50.10838;89.993;50.08601;90.12017;15.25864;2460996.92041155;12.08986167;1.3;_
2025-11-17T12:05:23.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:23.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:23.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:23.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:23.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:23.559 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2388805, teldec = -24.25651
2025-11-17T12:05:23.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2388805 -24.25651
2025-11-17T12:05:23.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2388805 -24.25651
2025-11-17T12:05:23.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2388805 -24.25651
2025-11-17T12:05:23.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2388805;-24.25651;50.10838;89.993;50.08601;90.12017;15.25864;2460996.92041157;12.08986167;1.3;_18.21267579845 -24.2623379728487
2025-11-17T12:05:23.560 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.21267579845     dec_j2k = -24.2623379728487
2025-11-17T12:05:23.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:23.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:23.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10457957649891;171.162357330327;_
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10457957649891;171.162357330327;_
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:23.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:23.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56097)
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:23.570 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:23.577 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:23.577 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:23.577 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:23.577 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:23.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:23.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:23.578 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:23.578 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:23.578 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:05:23.578 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92041155, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457957649891, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2388805, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.25864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.21267579845, telescope_dec_j2k=-24.2623379728487, observability=1)
2025-11-17T12:05:23.578 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.112178802490234 seconds ago
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Status age = 4.768523931503296s
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:28.346 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:28.347 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:28.348 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:28.348 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:28.348 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 17;18.2402153;-24.25651;50.10838;89.993;50.08601;90.12017;15.25997;2460996.92046699;12.09119278;1.3;_
2025-11-17T12:05:28.348 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response 17;18.2402153;-24.25651;50.10838;89.993;50.08601;90.12017;15.25997;2460996.92046699;12.09119278;1.3;_
2025-11-17T12:05:28.348 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:28.349 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:28.349 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:28.349 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:28.350 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:28.350 [INFO] [Thread-67584 (handle)] [driver.py] [get_status()] Telra = 18.2402153, teldec = -24.25651
2025-11-17T12:05:28.350 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2402153 -24.25651
2025-11-17T12:05:28.350 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2402153 -24.25651
2025-11-17T12:05:28.350 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2402153 -24.25651
2025-11-17T12:05:28.351 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 17;18.2402153;-24.25651;50.10838;89.993;50.08601;90.12017;15.25997;2460996.92046703;12.09119278;1.3;_18.2140105728917 -24.2623878344886
2025-11-17T12:05:28.351 [INFO] [Thread-67584 (handle)] [driver.py] [get_status()] ra_j2k = 18.2140105728917     dec_j2k = -24.2623878344886
2025-11-17T12:05:28.351 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:28.351 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:28.351 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 140;0.10457985728251;171.162351965909;_
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response 140;0.10457985728251;171.162351965909;_
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:28.352 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:28.353 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:28.354 [DEBUG] [Thread-67584 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:28.354 [DEBUG] [Thread-67584 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:28.354 [DEBUG] [Thread-67584 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:28.359 [DEBUG] [Thread-67584 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50767)
2025-11-17T12:05:28.360 [DEBUG] [Thread-67584 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:28.360 [DEBUG] [Thread-67584 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:28.360 [DEBUG] [Thread-67584 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:28.360 [DEBUG] [Thread-67584 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:28.360 [DEBUG] [Thread-67584 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:28.367 [DEBUG] [Thread-67584 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:28.367 [INFO] [Thread-67584 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92046699, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10457985728251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2402153, telescope_dec=-24.25651, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.25997, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.2140105728917, telescope_dec_j2k=-24.2623878344886, observability=1)
2025-11-17T12:05:35.794 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.427436590194702s
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:35.795 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:35.796 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:35.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.242279;-24.256509;50.10838;89.993;50.08601;90.12017;15.26203;2460996.92055321;12.09325083;1.3;_
2025-11-17T12:05:35.797 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.242279;-24.256509;50.10838;89.993;50.08601;90.12017;15.26203;2460996.92055321;12.09325083;1.3;_
2025-11-17T12:05:35.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:35.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:35.797 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:35.799 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.242279, teldec = -24.256509
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.242279 -24.256509
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.242279 -24.256509
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.242279 -24.256509
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.242279;-24.256509;50.10838;89.993;50.08601;90.12017;15.26203;2460996.92055323;12.09325083;1.3;_18.216074234541 -24.2624639232426
2025-11-17T12:05:35.799 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.216074234541     dec_j2k = -24.2624639232426
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:35.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:35.800 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:35.800 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104580017730281;171.162357330327;_
2025-11-17T12:05:35.800 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104580017730281;171.162357330327;_
2025-11-17T12:05:35.800 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:35.800 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:35.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:35.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:35.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:35.801 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:35.802 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:05:35.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:35.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:35.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:35.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:35.803 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:35.803 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:05:35.809 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33427)
2025-11-17T12:05:35.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:35.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:35.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:35.810 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:35.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:35.817 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:35.817 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92055321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580017730281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.242279, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.26203, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.216074234541, telescope_dec_j2k=-24.2624639232426, observability=1)
2025-11-17T12:05:38.546 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:05:38
2025-11-17T12:05:38.546 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:38.546 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.729309558868408s
2025-11-17T12:05:38.546 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:38.546 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:38.546 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:38.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2430344;-24.256509;50.10838;89.993;50.08601;90.12017;15.26279;2460996.92058505;12.09400417;1.3;_
2025-11-17T12:05:38.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.2430344;-24.256509;50.10838;89.993;50.08601;90.12017;15.26279;2460996.92058505;12.09400417;1.3;_
2025-11-17T12:05:38.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:38.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:38.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:38.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:38.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:38.550 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.2430344, teldec = -24.256509
2025-11-17T12:05:38.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2430344 -24.256509
2025-11-17T12:05:38.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2430344 -24.256509
2025-11-17T12:05:38.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2430344 -24.256509
2025-11-17T12:05:38.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2430344;-24.256509;50.10838;89.993;50.08601;90.12017;15.26279;2460996.92058508;12.09400417;1.3;_18.2168296207228 -24.2624921405664
2025-11-17T12:05:38.551 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2168296207228     dec_j2k = -24.2624921405664
2025-11-17T12:05:38.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:38.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:38.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:38.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104580138066109;171.162351965909;_
2025-11-17T12:05:38.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104580138066109;171.162351965909;_
2025-11-17T12:05:38.552 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:38.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:38.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:38.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:38.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:38.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:38.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:05:38.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38451)
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:38.559 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:38.566 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:38.566 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:38.566 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:38.566 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:38.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:38.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:38.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:38.567 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:38.567 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:38.567 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92058505, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580138066109, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10838, telescope_az=89.993, telescope_ra=18.2430344, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.26279, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:04:39.735892', telescope_ra_j2k=18.2168296207228, telescope_dec_j2k=-24.2624921405664, observability=1)
2025-11-17T12:05:39.878 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:39.878 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:39.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:39.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:39.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:39.880 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:39.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:39.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:39.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:39.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:39.881 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:05:39.881 [INFO] [ThreadPoolExecutor-2763_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:05:39.881 [INFO] [ThreadPoolExecutor-2763_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:05:46.410 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:05:46.410 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Status age = 7.8436384201049805s
2025-11-17T12:05:46.410 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:05:46.410 [DEBUG] [Thread-67585 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:05:46.411 [DEBUG] [Thread-67585 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:05:46.411 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:05:46.411 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:05:46.411 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:05:46.412 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:05:46.413 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 17;18.2452282;-24.256509;50.108379;89.993;50.08601;90.12017;15.26498;2460996.92067608;12.09619194;1.3;_
2025-11-17T12:05:46.413 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response 17;18.2452282;-24.256509;50.108379;89.993;50.08601;90.12017;15.26498;2460996.92067608;12.09619194;1.3;_
2025-11-17T12:05:46.413 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:05:46.413 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:05:46.413 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:05:46.414 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:46.414 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:05:46.414 [INFO] [Thread-67585 (handle)] [driver.py] [get_status()] Telra = 18.2452282, teldec = -24.256509
2025-11-17T12:05:46.414 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2452282 -24.256509
2025-11-17T12:05:46.414 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2452282 -24.256509
2025-11-17T12:05:46.414 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2452282 -24.256509
2025-11-17T12:05:46.415 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 17;18.2452282;-24.256509;50.108379;89.993;50.08601;90.12017;15.26498;2460996.9206761;12.09619194;1.3;_18.2190233814824 -24.2625740870462
2025-11-17T12:05:46.415 [INFO] [Thread-67585 (handle)] [driver.py] [get_status()] ra_j2k = 18.2190233814824     dec_j2k = -24.2625740870462
2025-11-17T12:05:46.415 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:05:46.415 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:05:46.415 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 140;0.104579897394453;171.162346601491;_
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response 140;0.104579897394453;171.162346601491;_
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:46.416 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:46.417 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:46.417 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:46.417 [DEBUG] [Thread-67585 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:46.417 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:05:46.417 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:05:46.418 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:05:46.418 [DEBUG] [Thread-67585 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:46.418 [DEBUG] [Thread-67585 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:05:46.418 [DEBUG] [Thread-67585 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:05:46.420 [DEBUG] [Thread-67585 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46847)
2025-11-17T12:05:46.421 [DEBUG] [Thread-67585 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:05:46.421 [DEBUG] [Thread-67585 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:05:46.421 [DEBUG] [Thread-67585 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:05:46.421 [DEBUG] [Thread-67585 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:05:46.421 [DEBUG] [Thread-67585 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:05:46.428 [DEBUG] [Thread-67585 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:05:46.428 [INFO] [Thread-67585 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92067608, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104579897394453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.993, telescope_ra=18.2452282, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.26498, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2190233814824, telescope_dec_j2k=-24.2625740870462, observability=1)
2025-11-17T12:06:00.759 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.760 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.760 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:00.760 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:00.760 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:06:00.761 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:00.762 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:00.763 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:06:00.764 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:00.765 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Park
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:06:00.766 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:06:00.767 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 29;18.2492433;-24.256509;50.108379;89.992999;50.08601;90.12017;15.269;2460996.92084221;12.10019611;1.3;_Park Command Successful
2025-11-17T12:06:01.767 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:06:01.767 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:06:01.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:06:01.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:06:01.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:06:02.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:06:02.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:06:02.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:06:02.768 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:06:02.769 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:06:03.769 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:06:03.769 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:06:03.769 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:06:03.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:06:03.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Status age = 18.096102476119995s
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:04.524 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:04.525 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 17;18.2502795;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27003;2460996.92088572;12.10122944;1.3;_
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response 17;18.2502795;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27003;2460996.92088572;12.10122944;1.3;_
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:04.526 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:04.527 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:04.527 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:04.527 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:04.527 [INFO] [Thread-67586 (handle)] [driver.py] [get_status()] Telra = 18.2502795, teldec = -24.256509
2025-11-17T12:06:04.528 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2502795 -24.256509
2025-11-17T12:06:04.528 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2502795 -24.256509
2025-11-17T12:06:04.528 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2502795 -24.256509
2025-11-17T12:06:04.529 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 17;18.2502795;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27003;2460996.92088574;12.10122944;1.3;_18.2240745961637 -24.2627627655658
2025-11-17T12:06:04.529 [INFO] [Thread-67586 (handle)] [driver.py] [get_status()] ra_j2k = 18.2240745961637     dec_j2k = -24.2627627655658
2025-11-17T12:06:04.529 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:04.529 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:04.529 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 140;0.104580699633309;171.162357330327;_
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response 140;0.104580699633309;171.162357330327;_
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:04.530 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:04.531 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:04.532 [DEBUG] [Thread-67586 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:04.532 [DEBUG] [Thread-67586 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:04.532 [DEBUG] [Thread-67586 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47953)
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:04.534 [DEBUG] [Thread-67586 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:04.541 [DEBUG] [Thread-67586 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:04.541 [INFO] [Thread-67586 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92088572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580699633309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992999, telescope_ra=18.2502795, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27003, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2240745961637, telescope_dec_j2k=-24.2627627655658, observability=1)
2025-11-17T12:06:04.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:06:04.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:06:04.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:06:04.770 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:04.771 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:06:04.772 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:06:04.773 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:05.773 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:06:05.774 [DEBUG] [ThreadPoolExecutor-2762_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:05.774 [INFO] [ThreadPoolExecutor-2762_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:06:08.656 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Status age = 4.115229845046997s
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:08.657 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:08.658 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:08.659 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 17;18.2514204;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27117;2460996.92093355;12.10236722;1.3;_
2025-11-17T12:06:08.659 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response 17;18.2514204;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27117;2460996.92093355;12.10236722;1.3;_
2025-11-17T12:06:08.659 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:08.659 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:08.659 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:08.660 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:08.660 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:08.660 [INFO] [Thread-67587 (handle)] [driver.py] [get_status()] Telra = 18.2514204, teldec = -24.256509
2025-11-17T12:06:08.660 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2514204 -24.256509
2025-11-17T12:06:08.660 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2514204 -24.256509
2025-11-17T12:06:08.660 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2514204 -24.256509
2025-11-17T12:06:08.661 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 17;18.2514204;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27117;2460996.92093358;12.10236722;1.3;_18.2252154778651 -24.2628053797989
2025-11-17T12:06:08.661 [INFO] [Thread-67587 (handle)] [driver.py] [get_status()] ra_j2k = 18.2252154778651     dec_j2k = -24.2628053797989
2025-11-17T12:06:08.661 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:08.661 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:08.661 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 140;0.104580258401938;171.162351965909;_
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response 140;0.104580258401938;171.162351965909;_
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:08.662 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:08.663 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:08.664 [DEBUG] [Thread-67587 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:08.664 [DEBUG] [Thread-67587 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:08.664 [DEBUG] [Thread-67587 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56793)
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:08.665 [DEBUG] [Thread-67587 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:08.672 [DEBUG] [Thread-67587 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:08.673 [INFO] [Thread-67587 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92093355, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580258401938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992999, telescope_ra=18.2514204, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27117, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2252154778651, telescope_dec_j2k=-24.2628053797989, observability=1)
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.228623151779175s
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2531771;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27293;2460996.92100581;12.10411917;1.3;_
2025-11-17T12:06:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2531771;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27293;2460996.92100581;12.10411917;1.3;_
2025-11-17T12:06:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:14.904 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2531771, teldec = -24.256509
2025-11-17T12:06:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2531771 -24.256509
2025-11-17T12:06:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2531771 -24.256509
2025-11-17T12:06:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2531771 -24.256509
2025-11-17T12:06:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2531771;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27293;2460996.92100584;12.10411917;1.3;_18.2269721503899 -24.2628709941557
2025-11-17T12:06:14.905 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.2269721503899     dec_j2k = -24.2628709941557
2025-11-17T12:06:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104580178178052;171.162351965909;_
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104580178178052;171.162351965909;_
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:14.912 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38625)
2025-11-17T12:06:14.912 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:14.913 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:14.920 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92100581, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580178178052, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992999, telescope_ra=18.2531771, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27293, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2269721503899, telescope_dec_j2k=-24.2628709941557, observability=1)
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Status age = 7.6746742725372314s
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:22.595 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 17;18.2553155;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27507;2460996.92109486;12.10625167;1.3;_
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response 17;18.2553155;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27507;2460996.92109486;12.10625167;1.3;_
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:22.596 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:22.597 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:22.597 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:22.597 [INFO] [Thread-67588 (handle)] [driver.py] [get_status()] Telra = 18.2553155, teldec = -24.256509
2025-11-17T12:06:22.597 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2553155 -24.256509
2025-11-17T12:06:22.597 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2553155 -24.256509
2025-11-17T12:06:22.598 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2553155 -24.256509
2025-11-17T12:06:22.598 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 17;18.2553155;-24.256509;50.108379;89.992999;50.08601;90.12017;15.27507;2460996.92109488;12.10625167;1.3;_18.2291105180906 -24.2629508639002
2025-11-17T12:06:22.598 [INFO] [Thread-67588 (handle)] [driver.py] [get_status()] ra_j2k = 18.2291105180906     dec_j2k = -24.2629508639002
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 140;0.104580980416908;171.162362694745;_
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response 140;0.104580980416908;171.162362694745;_
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:22.599 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:22.600 [DEBUG] [Thread-67588 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:22.607 [DEBUG] [Thread-67588 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42567)
2025-11-17T12:06:22.607 [DEBUG] [Thread-67588 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:22.607 [DEBUG] [Thread-67588 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:22.607 [DEBUG] [Thread-67588 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:22.608 [DEBUG] [Thread-67588 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:22.608 [DEBUG] [Thread-67588 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:22.615 [DEBUG] [Thread-67588 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:22.615 [INFO] [Thread-67588 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92109486, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580980416908, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992999, telescope_ra=18.2553155, telescope_dec=-24.256509, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27507, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2291105180906, telescope_dec_j2k=-24.2629508639002, observability=1)
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.02236008644104s
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:23.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:23.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:23.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2555957;-24.256508;50.108379;89.992999;50.08601;90.12017;15.27535;2460996.92110694;12.10653111;1.3;_
2025-11-17T12:06:23.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2555957;-24.256508;50.108379;89.992999;50.08601;90.12017;15.27535;2460996.92110694;12.10653111;1.3;_
2025-11-17T12:06:23.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:23.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:23.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:23.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:23.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:23.641 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2555957, teldec = -24.256508
2025-11-17T12:06:23.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2555957 -24.256508
2025-11-17T12:06:23.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2555957 -24.256508
2025-11-17T12:06:23.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2555957 -24.256508
2025-11-17T12:06:23.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2555957;-24.256508;50.108379;89.992999;50.08601;90.12017;15.27535;2460996.92110697;12.10653111;1.3;_18.2293907141512 -24.262960329382
2025-11-17T12:06:23.642 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.2293907141512     dec_j2k = -24.262960329382
2025-11-17T12:06:23.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:23.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:23.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104580699633309;171.162351965909;_
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104580699633309;171.162351965909;_
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:23.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:23.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:23.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:23.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:23.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53053)
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:23.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:23.659 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:06:23.659 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92110694, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580699633309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992999, telescope_ra=18.2555957, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2293907141512, telescope_dec_j2k=-24.262960329382, observability=1)
2025-11-17T12:06:23.659 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11322283744812 seconds ago
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.247979164123535s
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:34.907 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:34.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:34.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2587418;-24.256508;50.108379;89.992998;50.08601;90.12017;15.2785;2460996.92123737;12.10966861;1.3;_
2025-11-17T12:06:34.909 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.2587418;-24.256508;50.108379;89.992998;50.08601;90.12017;15.2785;2460996.92123737;12.10966861;1.3;_
2025-11-17T12:06:34.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:34.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:34.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:34.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:34.910 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:34.910 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.2587418, teldec = -24.256508
2025-11-17T12:06:34.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2587418 -24.256508
2025-11-17T12:06:34.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2587418 -24.256508
2025-11-17T12:06:34.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2587418 -24.256508
2025-11-17T12:06:34.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2587418;-24.256508;50.108379;89.992998;50.08601;90.12017;15.2785;2460996.9212374;12.10966861;1.3;_18.2325367691604 -24.263077833683
2025-11-17T12:06:34.911 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.2325367691604     dec_j2k = -24.263077833683
2025-11-17T12:06:34.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:34.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:34.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10458086008108;171.162368059163;_
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10458086008108;171.162368059163;_
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:34.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:34.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:34.914 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:06:34.914 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58709)
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:34.918 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:34.925 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:34.926 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:34.926 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92123737, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10458086008108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992998, telescope_ra=18.2587418, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2325367691604, telescope_dec_j2k=-24.263077833683, observability=1)
2025-11-17T12:06:38.627 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:06:38
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.7014031410217285s
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:38.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:38.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:38.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2597788;-24.256508;50.108379;89.992998;50.08601;90.12017;15.27953;2460996.92128043;12.11070278;1.3;_
2025-11-17T12:06:38.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.2597788;-24.256508;50.108379;89.992998;50.08601;90.12017;15.27953;2460996.92128043;12.11070278;1.3;_
2025-11-17T12:06:38.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:38.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:38.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:38.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:38.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:38.630 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.2597788, teldec = -24.256508
2025-11-17T12:06:38.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2597788 -24.256508
2025-11-17T12:06:38.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2597788 -24.256508
2025-11-17T12:06:38.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2597788 -24.256508
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2597788;-24.256508;50.108379;89.992998;50.08601;90.12017;15.27953;2460996.92128045;12.11070278;1.3;_18.2335737549275 -24.2631165640124
2025-11-17T12:06:38.631 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2335737549275     dec_j2k = -24.2631165640124
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104581261200508;171.162357330327;_
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104581261200508;171.162357330327;_
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:38.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:38.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:38.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:38.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:38.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:38.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:38.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:38.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:38.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:38.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:38.638 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35395)
2025-11-17T12:06:38.638 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:38.638 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:38.638 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:38.639 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:38.639 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:38.645 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:38.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:38.646 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92128043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581261200508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108379, telescope_az=89.992998, telescope_ra=18.2597788, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.27953, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:05:39.878384', telescope_ra_j2k=18.2335737549275, telescope_dec_j2k=-24.2631165640124, observability=1)
2025-11-17T12:06:40.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:40.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:40.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:40.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:40.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:40.021 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:40.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:40.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:40.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:40.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:40.022 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:06:40.022 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:40.022 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:40.022 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:40.022 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:06:40.023 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:06:40.024 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Status age = 2.0153982639312744s
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:40.661 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:40.662 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:40.663 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 17;18.2603381;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28009;2460996.92130397;12.11126056;1.3;_
2025-11-17T12:06:40.663 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response 17;18.2603381;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28009;2460996.92130397;12.11126056;1.3;_
2025-11-17T12:06:40.663 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:40.663 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:40.664 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:40.664 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:40.664 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:40.665 [INFO] [Thread-67589 (handle)] [driver.py] [get_status()] Telra = 18.2603381, teldec = -24.256508
2025-11-17T12:06:40.665 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2603381 -24.256508
2025-11-17T12:06:40.665 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2603381 -24.256508
2025-11-17T12:06:40.665 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2603381 -24.256508
2025-11-17T12:06:40.666 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 17;18.2603381;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28009;2460996.921304;12.11126056;1.3;_18.2341330473738 -24.2631374528299
2025-11-17T12:06:40.666 [INFO] [Thread-67589 (handle)] [driver.py] [get_status()] ra_j2k = 18.2341330473738     dec_j2k = -24.2631374528299
2025-11-17T12:06:40.666 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:40.666 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:40.666 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 140;0.104580458961652;171.162351965909;_
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response 140;0.104580458961652;171.162351965909;_
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:40.667 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:40.668 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:40.669 [DEBUG] [Thread-67589 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:40.669 [DEBUG] [Thread-67589 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:40.669 [DEBUG] [Thread-67589 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51709)
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:40.676 [DEBUG] [Thread-67589 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:40.683 [DEBUG] [Thread-67589 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:40.683 [INFO] [Thread-67589 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92130397, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104580458961652, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992998, telescope_ra=18.2603381, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.28009, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2341330473738, telescope_dec_j2k=-24.2631374528299, observability=1)
2025-11-17T12:06:41.024 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:41.024 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:41.024 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:41.024 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:41.024 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:06:41.025 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:41.026 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:41.027 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:41.027 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:41.027 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:41.027 [DEBUG] [ThreadPoolExecutor-2764_0] [payload.py] [to_registers()] [0]
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49035)
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:41.028 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:41.036 [DEBUG] [ThreadPoolExecutor-2764_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Status age = 18.105911016464233s
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:06:58.789 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:06:58.790 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:06:58.790 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:06:58.791 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:06:58.792 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 17;18.2654083;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28516;2460996.9215138;12.11631694;1.3;_
2025-11-17T12:06:58.792 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response 17;18.2654083;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28516;2460996.9215138;12.11631694;1.3;_
2025-11-17T12:06:58.792 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:06:58.792 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:06:58.792 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:06:58.793 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:58.793 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:06:58.793 [INFO] [Thread-67590 (handle)] [driver.py] [get_status()] Telra = 18.2654083, teldec = -24.256508
2025-11-17T12:06:58.793 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2654083 -24.256508
2025-11-17T12:06:58.793 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2654083 -24.256508
2025-11-17T12:06:58.793 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2654083 -24.256508
2025-11-17T12:06:58.794 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 17;18.2654083;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28516;2460996.92151382;12.11631694;1.3;_18.2392031828242 -24.2633268100878
2025-11-17T12:06:58.794 [INFO] [Thread-67590 (handle)] [driver.py] [get_status()] ra_j2k = 18.2392031828242     dec_j2k = -24.2633268100878
2025-11-17T12:06:58.794 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:06:58.794 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:06:58.794 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:06:58.795 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 140;0.104581541984108;171.162368059163;_
2025-11-17T12:06:58.795 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response 140;0.104581541984108;171.162368059163;_
2025-11-17T12:06:58.795 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:06:58.795 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:58.795 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:06:58.796 [DEBUG] [Thread-67590 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38467)
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:06:58.799 [DEBUG] [Thread-67590 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:06:58.806 [DEBUG] [Thread-67590 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:06:58.806 [INFO] [Thread-67590 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9215138, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581541984108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992998, telescope_ra=18.2654083, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.28516, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2392031828242, telescope_dec_j2k=-24.2633268100878, observability=1)
2025-11-17T12:07:06.036 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:06.037 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:06.037 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:06.037 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:06.037 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:06.038 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:07:06.039 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:07:06.040 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:08.701 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:08.701 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Status age = 9.895141124725342s
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:08.702 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:08.703 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:08.704 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 17;18.2681625;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28792;2460996.92162852;12.11906361;1.3;_
2025-11-17T12:07:08.704 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response 17;18.2681625;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28792;2460996.92162852;12.11906361;1.3;_
2025-11-17T12:07:08.704 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:08.704 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:08.704 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:08.705 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:08.705 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:08.705 [INFO] [Thread-67591 (handle)] [driver.py] [get_status()] Telra = 18.2681625, teldec = -24.256508
2025-11-17T12:07:08.705 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2681625 -24.256508
2025-11-17T12:07:08.705 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2681625 -24.256508
2025-11-17T12:07:08.705 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2681625 -24.256508
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 17;18.2681625;-24.256508;50.108378;89.992998;50.08601;90.12017;15.28792;2460996.92162854;12.11906361;1.3;_18.2419573507243 -24.2634296673824
2025-11-17T12:07:08.706 [INFO] [Thread-67591 (handle)] [driver.py] [get_status()] ra_j2k = 18.2419573507243     dec_j2k = -24.2634296673824
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 140;0.104581501872165;171.162362694745;_
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response 140;0.104581501872165;171.162362694745;_
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:08.706 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:08.707 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:08.708 [DEBUG] [Thread-67591 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:08.708 [DEBUG] [Thread-67591 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:08.708 [DEBUG] [Thread-67591 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36419)
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:08.715 [DEBUG] [Thread-67591 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:08.722 [DEBUG] [Thread-67591 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:08.722 [DEBUG] [Thread-67591 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:08.722 [DEBUG] [Thread-67591 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:08.722 [DEBUG] [Thread-67591 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:08.722 [DEBUG] [Thread-67591 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:08.723 [DEBUG] [Thread-67591 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:08.723 [DEBUG] [Thread-67591 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:08.723 [DEBUG] [Thread-67591 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:08.723 [DEBUG] [Thread-67591 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:08.723 [INFO] [Thread-67591 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92162852, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581501872165, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992998, telescope_ra=18.2681625, telescope_dec=-24.256508, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.28792, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2419573507243, telescope_dec_j2k=-24.2634296673824, observability=1)
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.148927211761475s
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:14.872 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:14.873 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2698616;-24.256507;50.108378;89.992997;50.08601;90.12017;15.28962;2460996.92169993;12.12075806;1.3;_
2025-11-17T12:07:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2698616;-24.256507;50.108378;89.992997;50.08601;90.12017;15.28962;2460996.92169993;12.12075806;1.3;_
2025-11-17T12:07:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:14.875 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2698616, teldec = -24.256507
2025-11-17T12:07:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2698616 -24.256507
2025-11-17T12:07:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2698616 -24.256507
2025-11-17T12:07:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2698616 -24.256507
2025-11-17T12:07:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2698616;-24.256507;50.108378;89.992997;50.08601;90.12017;15.28962;2460996.92169995;12.12075806;1.3;_18.243656432162 -24.263492119919
2025-11-17T12:07:14.876 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.243656432162     dec_j2k = -24.263492119919
2025-11-17T12:07:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104581622207993;171.162351965909;_
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104581622207993;171.162351965909;_
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33857)
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:14.885 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:14.893 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:14.893 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:14.893 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:14.894 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:14.894 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:14.894 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92169993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581622207993, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992997, telescope_ra=18.2698616, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.28962, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.243656432162, telescope_dec_j2k=-24.263492119919, observability=1)
2025-11-17T12:07:16.902 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:16.902 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Status age = 2.008610725402832s
2025-11-17T12:07:16.902 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:16.902 [DEBUG] [Thread-67592 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:16.902 [DEBUG] [Thread-67592 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:16.903 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:16.904 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 17;18.2704502;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2902;2460996.92172343;12.121345;1.3;_
2025-11-17T12:07:16.904 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response 17;18.2704502;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2902;2460996.92172343;12.121345;1.3;_
2025-11-17T12:07:16.904 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:16.904 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:16.904 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:16.905 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:16.905 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:16.905 [INFO] [Thread-67592 (handle)] [driver.py] [get_status()] Telra = 18.2704502, teldec = -24.256507
2025-11-17T12:07:16.905 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2704502 -24.256507
2025-11-17T12:07:16.905 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2704502 -24.256507
2025-11-17T12:07:16.905 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2704502 -24.256507
2025-11-17T12:07:16.906 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 17;18.2704502;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2902;2460996.92172345;12.121345;1.3;_18.2442450258477 -24.2635141007775
2025-11-17T12:07:16.906 [INFO] [Thread-67592 (handle)] [driver.py] [get_status()] ra_j2k = 18.2442450258477     dec_j2k = -24.2635141007775
2025-11-17T12:07:16.906 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:16.906 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:16.906 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 140;0.104581341424394;171.162362694745;_
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response 140;0.104581341424394;171.162362694745;_
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:16.907 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:16.908 [DEBUG] [Thread-67592 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:16.908 [DEBUG] [Thread-67592 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:16.908 [DEBUG] [Thread-67592 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35999)
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:16.909 [DEBUG] [Thread-67592 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:16.916 [DEBUG] [Thread-67592 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:16.916 [INFO] [Thread-67592 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92172343, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581341424394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992997, telescope_ra=18.2704502, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2902, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2442450258477, telescope_dec_j2k=-24.2635141007775, observability=1)
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.8023154735565186s
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:23.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2723456;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2921;2460996.92180232;12.12323528;1.3;_
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2723456;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2921;2460996.92180232;12.12323528;1.3;_
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:23.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:23.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:23.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:23.721 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2723456, teldec = -24.256507
2025-11-17T12:07:23.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2723456 -24.256507
2025-11-17T12:07:23.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2723456 -24.256507
2025-11-17T12:07:23.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2723456 -24.256507
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2723456;-24.256507;50.108378;89.992997;50.08601;90.12017;15.2921;2460996.92180234;12.12323528;1.3;_18.2461404061623 -24.2635848822451
2025-11-17T12:07:23.722 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.2461404061623     dec_j2k = -24.2635848822451
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104581902991593;171.162362694745;_
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104581902991593;171.162362694745;_
2025-11-17T12:07:23.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:23.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:23.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:23.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:23.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:23.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55847)
2025-11-17T12:07:23.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:23.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:23.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:23.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:23.731 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:23.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:23.739 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:23.739 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:23.739 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:07:23.739 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92180232, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581902991593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108378, telescope_az=89.992997, telescope_ra=18.2723456, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.2921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2461404061623, telescope_dec_j2k=-24.2635848822451, observability=1)
2025-11-17T12:07:23.739 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11206412315369 seconds ago
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.278957605361938s
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:34.018 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:34.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:34.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:34.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:34.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2752112;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29497;2460996.92192152;12.12609306;1.3;_
2025-11-17T12:07:34.020 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.2752112;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29497;2460996.92192152;12.12609306;1.3;_
2025-11-17T12:07:34.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:34.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:34.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:34.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:34.021 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:34.021 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.2752112, teldec = -24.256507
2025-11-17T12:07:34.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2752112 -24.256507
2025-11-17T12:07:34.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2752112 -24.256507
2025-11-17T12:07:34.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2752112 -24.256507
2025-11-17T12:07:34.022 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2752112;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29497;2460996.92192155;12.12609306;1.3;_18.2490059782772 -24.2636918919567
2025-11-17T12:07:34.022 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.2490059782772     dec_j2k = -24.2636918919567
2025-11-17T12:07:34.022 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:34.022 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:34.022 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104582424446849;171.162341237072;_
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104582424446849;171.162341237072;_
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:34.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:34.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:34.025 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:34.025 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:34.025 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:34.031 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46059)
2025-11-17T12:07:34.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:34.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:34.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:34.032 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:34.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:34.039 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:34.039 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92192152, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582424446849, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992997, telescope_ra=18.2752112, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.29497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2490059782772, telescope_dec_j2k=-24.2636918919567, observability=1)
2025-11-17T12:07:34.969 [DEBUG] [Thread-67593 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:34.969 [DEBUG] [Thread-67593 (handle)] [server.py] [get_status()] Status age = 0.930370569229126s
2025-11-17T12:07:34.970 [DEBUG] [Thread-67593 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.930370569229126
2025-11-17T12:07:38.707 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:07:38
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.66785740852356s
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:38.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:38.708 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:38.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:38.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:38.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:38.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2764992;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29625;2460996.9219758;12.1273775;1.3;_
2025-11-17T12:07:38.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.2764992;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29625;2460996.9219758;12.1273775;1.3;_
2025-11-17T12:07:38.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:38.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:38.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:38.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:38.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:38.710 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.2764992, teldec = -24.256507
2025-11-17T12:07:38.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2764992 -24.256507
2025-11-17T12:07:38.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2764992 -24.256507
2025-11-17T12:07:38.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2764992 -24.256507
2025-11-17T12:07:38.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2764992;-24.256507;50.108377;89.992997;50.08601;90.12017;15.29625;2460996.92197582;12.1273775;1.3;_18.2502939664797 -24.2637399884831
2025-11-17T12:07:38.711 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2502939664797     dec_j2k = -24.2637399884831
2025-11-17T12:07:38.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:38.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:38.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104581341424394;171.162362694745;_
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104581341424394;171.162362694745;_
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:38.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:38.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:38.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:38.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:38.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44829)
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:38.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:38.722 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:38.722 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:38.722 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:38.723 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:38.723 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9219758, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104581341424394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992997, telescope_ra=18.2764992, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.29625, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:06:40.019775', telescope_ra_j2k=18.2502939664797, telescope_dec_j2k=-24.2637399884831, observability=1)
2025-11-17T12:07:40.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:40.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:40.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:40.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:40.163 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:40.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:40.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:40.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:40.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:40.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:40.164 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:07:40.165 [INFO] [ThreadPoolExecutor-2765_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:07:40.165 [INFO] [ThreadPoolExecutor-2765_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Status age = 14.316502094268799s
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:07:53.039 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:07:53.040 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:07:53.041 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 17;18.2805049;-24.256507;50.108377;89.992997;50.08601;90.12017;15.30026;2460996.92214168;12.13137222;1.3;_
2025-11-17T12:07:53.041 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response 17;18.2805049;-24.256507;50.108377;89.992997;50.08601;90.12017;15.30026;2460996.92214168;12.13137222;1.3;_
2025-11-17T12:07:53.041 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:07:53.041 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:07:53.041 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:07:53.042 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:53.042 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:07:53.042 [INFO] [Thread-67594 (handle)] [driver.py] [get_status()] Telra = 18.2805049, teldec = -24.256507
2025-11-17T12:07:53.042 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2805049 -24.256507
2025-11-17T12:07:53.042 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2805049 -24.256507
2025-11-17T12:07:53.042 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2805049 -24.256507
2025-11-17T12:07:53.043 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 17;18.2805049;-24.256507;50.108377;89.992997;50.08601;90.12017;15.30026;2460996.9221417;12.13137222;1.3;_18.2542996327063 -24.2638895650624
2025-11-17T12:07:53.043 [INFO] [Thread-67594 (handle)] [driver.py] [get_status()] ra_j2k = 18.2542996327063     dec_j2k = -24.2638895650624
2025-11-17T12:07:53.043 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:07:53.043 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:07:53.043 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 140;0.104582344222964;171.162357330327;_
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response 140;0.104582344222964;171.162357330327;_
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:53.044 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:07:53.045 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:07:53.046 [DEBUG] [Thread-67594 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:53.046 [DEBUG] [Thread-67594 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:07:53.046 [DEBUG] [Thread-67594 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41749)
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:07:53.048 [DEBUG] [Thread-67594 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:07:53.055 [DEBUG] [Thread-67594 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:07:53.055 [DEBUG] [Thread-67594 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:07:53.056 [DEBUG] [Thread-67594 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:07:53.056 [INFO] [Thread-67594 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92214168, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582344222964, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992997, telescope_ra=18.2805049, telescope_dec=-24.256507, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.30026, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2542996327063, telescope_dec_j2k=-24.2638895650624, observability=1)
2025-11-17T12:08:01.040 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.040 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.040 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:01.040 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:01.040 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:08:01.041 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:01.042 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:01.043 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:08:01.044 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:01.045 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Park
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:08:01.046 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:08:01.047 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 29;18.282739;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30249;2460996.92223434;12.13360028;1.3;_Park Command Successful
2025-11-17T12:08:02.047 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:08:02.047 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:08:02.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:08:02.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:08:02.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:08:03.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:08:03.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:08:03.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:08:03.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:08:03.048 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:08:04.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:08:04.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:08:04.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:08:04.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:08:04.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:08:05.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:08:05.049 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:08:05.050 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:05.051 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:08:05.052 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:08:05.053 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:06.053 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:06.053 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:06.053 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:06.053 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:06.053 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:08:06.054 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:08:06.055 [DEBUG] [ThreadPoolExecutor-2764_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:06.055 [INFO] [ThreadPoolExecutor-2764_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Status age = 15.700303077697754s
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:08.756 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:08.757 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:08.758 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 17;18.2848779;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30463;2460996.92232359;12.13573333;1.3;_
2025-11-17T12:08:08.758 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response 17;18.2848779;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30463;2460996.92232359;12.13573333;1.3;_
2025-11-17T12:08:08.758 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:08.758 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:08.759 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:08.759 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:08.759 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:08.760 [INFO] [Thread-67595 (handle)] [driver.py] [get_status()] Telra = 18.2848779, teldec = -24.256506
2025-11-17T12:08:08.760 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2848779 -24.256506
2025-11-17T12:08:08.760 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2848779 -24.256506
2025-11-17T12:08:08.760 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2848779 -24.256506
2025-11-17T12:08:08.763 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 17;18.2848779;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30463;2460996.92232362;12.13573333;1.3;_18.2586726010762 -24.2640518493396
2025-11-17T12:08:08.763 [INFO] [Thread-67595 (handle)] [driver.py] [get_status()] ra_j2k = 18.2586726010762     dec_j2k = -24.2640518493396
2025-11-17T12:08:08.763 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:08.763 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:08.763 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 140;0.104582424446849;171.162351965909;_
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response 140;0.104582424446849;171.162351965909;_
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:08.764 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:08.765 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:08.766 [DEBUG] [Thread-67595 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:08.766 [DEBUG] [Thread-67595 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:08.766 [DEBUG] [Thread-67595 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53357)
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:08.768 [DEBUG] [Thread-67595 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:08.775 [DEBUG] [Thread-67595 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:08.776 [INFO] [Thread-67595 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92232359, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582424446849, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992996, telescope_ra=18.2848779, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.30463, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2586726010762, telescope_dec_j2k=-24.2640518493396, observability=1)
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Status age = 2.338350772857666s
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:11.114 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:11.115 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 17;18.2855503;-24.256506;50.108377;89.992996;50.08601;90.12017;15.3053;2460996.92235088;12.13640389;1.3;_
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response 17;18.2855503;-24.256506;50.108377;89.992996;50.08601;90.12017;15.3053;2460996.92235088;12.13640389;1.3;_
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:11.116 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:11.117 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:11.117 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:11.118 [INFO] [Thread-67596 (handle)] [driver.py] [get_status()] Telra = 18.2855503, teldec = -24.256506
2025-11-17T12:08:11.118 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2855503 -24.256506
2025-11-17T12:08:11.118 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2855503 -24.256506
2025-11-17T12:08:11.118 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2855503 -24.256506
2025-11-17T12:08:11.119 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 17;18.2855503;-24.256506;50.108377;89.992996;50.08601;90.12017;15.3053;2460996.92235091;12.13640389;1.3;_18.2593449966487 -24.2640769554753
2025-11-17T12:08:11.119 [INFO] [Thread-67596 (handle)] [driver.py] [get_status()] ra_j2k = 18.2593449966487     dec_j2k = -24.2640769554753
2025-11-17T12:08:11.119 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:11.119 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:11.119 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 140;0.104582544782678;171.162346601491;_
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response 140;0.104582544782678;171.162346601491;_
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:11.120 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:11.121 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:11.122 [DEBUG] [Thread-67596 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:11.122 [DEBUG] [Thread-67596 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:11.122 [DEBUG] [Thread-67596 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56073)
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:11.124 [DEBUG] [Thread-67596 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:11.131 [DEBUG] [Thread-67596 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:11.131 [INFO] [Thread-67596 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92235088, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582544782678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992996, telescope_ra=18.2855503, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3053, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2593449966487, telescope_dec_j2k=-24.2640769554753, observability=1)
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.7610161304473877s
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2865865;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30634;2460996.92239461;12.13743722;1.3;_
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.2865865;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30634;2460996.92239461;12.13743722;1.3;_
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.2865865, teldec = -24.256506
2025-11-17T12:08:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2865865 -24.256506
2025-11-17T12:08:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2865865 -24.256506
2025-11-17T12:08:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2865865 -24.256506
2025-11-17T12:08:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.2865865;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30634;2460996.92239463;12.13743722;1.3;_18.2603811900694 -24.2641156448271
2025-11-17T12:08:14.896 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.2603811900694     dec_j2k = -24.2641156448271
2025-11-17T12:08:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104582705230449;171.162351965909;_
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104582705230449;171.162351965909;_
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40161)
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:14.915 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92239461, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582705230449, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992996, telescope_ra=18.2865865, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.30634, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2603811900694, telescope_dec_j2k=-24.2641156448271, observability=1)
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.88430142402649s
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:23.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:23.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:23.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2890613;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30882;2460996.9224977;12.13990528;1.3;_
2025-11-17T12:08:23.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.2890613;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30882;2460996.9224977;12.13990528;1.3;_
2025-11-17T12:08:23.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:23.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:23.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:23.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:23.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:23.802 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.2890613, teldec = -24.256506
2025-11-17T12:08:23.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.2890613 -24.256506
2025-11-17T12:08:23.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.2890613 -24.256506
2025-11-17T12:08:23.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2890613 -24.256506
2025-11-17T12:08:23.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.2890613;-24.256506;50.108377;89.992996;50.08601;90.12017;15.30882;2460996.92249772;12.13990528;1.3;_18.2628559755509 -24.2642080463358
2025-11-17T12:08:23.803 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.2628559755509     dec_j2k = -24.2642080463358
2025-11-17T12:08:23.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:23.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:23.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104583066237934;171.162357330327;_
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104583066237934;171.162357330327;_
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:23.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:23.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47009)
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:23.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:23.815 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:08:23.815 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9224977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583066237934, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108377, telescope_az=89.992996, telescope_ra=18.2890613, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.30882, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2628559755509, telescope_dec_j2k=-24.2642080463358, observability=1)
2025-11-17T12:08:23.815 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10857439041138 seconds ago
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Status age = 5.414909362792969s
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:29.230 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:29.231 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:29.232 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 17;18.2905922;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31035;2460996.92256056;12.14143194;1.3;_
2025-11-17T12:08:29.232 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response 17;18.2905922;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31035;2460996.92256056;12.14143194;1.3;_
2025-11-17T12:08:29.232 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:29.232 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:29.232 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:29.233 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:29.233 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:29.233 [INFO] [Thread-67597 (handle)] [driver.py] [get_status()] Telra = 18.2905922, teldec = -24.256506
2025-11-17T12:08:29.233 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2905922 -24.256506
2025-11-17T12:08:29.233 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2905922 -24.256506
2025-11-17T12:08:29.233 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2905922 -24.256506
2025-11-17T12:08:29.234 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 17;18.2905922;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31035;2460996.92256058;12.14143194;1.3;_18.2643868674135 -24.2642652041365
2025-11-17T12:08:29.234 [INFO] [Thread-67597 (handle)] [driver.py] [get_status()] ra_j2k = 18.2643868674135     dec_j2k = -24.2642652041365
2025-11-17T12:08:29.234 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:29.234 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:29.234 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 140;0.104583266797648;171.162357330327;_
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response 140;0.104583266797648;171.162357330327;_
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:29.235 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:29.236 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:29.237 [DEBUG] [Thread-67597 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:29.237 [DEBUG] [Thread-67597 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:29.237 [DEBUG] [Thread-67597 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37597)
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:29.240 [DEBUG] [Thread-67597 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:29.247 [DEBUG] [Thread-67597 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:29.247 [DEBUG] [Thread-67597 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:29.247 [DEBUG] [Thread-67597 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:29.247 [DEBUG] [Thread-67597 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:29.248 [DEBUG] [Thread-67597 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:29.248 [DEBUG] [Thread-67597 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:29.248 [DEBUG] [Thread-67597 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:29.248 [DEBUG] [Thread-67597 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:29.248 [DEBUG] [Thread-67597 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:29.248 [INFO] [Thread-67597 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92256056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583266797648, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992996, telescope_ra=18.2905922, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.31035, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2643868674135, telescope_dec_j2k=-24.2642652041365, observability=1)
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.8835041522979736s
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:33.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:33.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:33.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2916846;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31144;2460996.92260571;12.14252139;1.3;_
2025-11-17T12:08:33.133 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.2916846;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31144;2460996.92260571;12.14252139;1.3;_
2025-11-17T12:08:33.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:33.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:33.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:33.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:33.134 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:33.134 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.2916846, teldec = -24.256506
2025-11-17T12:08:33.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2916846 -24.256506
2025-11-17T12:08:33.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2916846 -24.256506
2025-11-17T12:08:33.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2916846 -24.256506
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.2916846;-24.256506;50.108376;89.992996;50.08601;90.12017;15.31144;2460996.92260573;12.14252139;1.3;_18.2654792620012 -24.2643059894297
2025-11-17T12:08:33.136 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.2654792620012     dec_j2k = -24.2643059894297
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104583467357362;171.162357330327;_
2025-11-17T12:08:33.136 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104583467357362;171.162357330327;_
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:33.137 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:33.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:33.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:33.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:33.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:33.139 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:33.139 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39017)
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:33.140 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:33.147 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:33.147 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:33.148 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:33.148 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92260571, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583467357362, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992996, telescope_ra=18.2916846, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.31144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2654792620012, telescope_dec_j2k=-24.2643059894297, observability=1)
2025-11-17T12:08:38.783 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:08:38
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.635115146636963s
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:38.783 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:38.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:38.784 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2932441;-24.256506;50.108376;89.992996;50.08601;90.12017;15.313;2460996.92267112;12.14407667;1.3;_
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.2932441;-24.256506;50.108376;89.992996;50.08601;90.12017;15.313;2460996.92267112;12.14407667;1.3;_
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:38.785 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:38.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:38.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:38.786 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.2932441, teldec = -24.256506
2025-11-17T12:08:38.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2932441 -24.256506
2025-11-17T12:08:38.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2932441 -24.256506
2025-11-17T12:08:38.786 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2932441 -24.256506
2025-11-17T12:08:38.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.2932441;-24.256506;50.108376;89.992996;50.08601;90.12017;15.313;2460996.92267115;12.14407667;1.3;_18.2670387548436 -24.2643642132042
2025-11-17T12:08:38.787 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2670387548436     dec_j2k = -24.2643642132042
2025-11-17T12:08:38.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:38.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:38.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104582745342392;171.162351965909;_
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104582745342392;171.162351965909;_
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:38.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:08:38.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39229)
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:38.794 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:38.801 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:38.801 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92267112, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582745342392, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992996, telescope_ra=18.2932441, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.313, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:07:40.162260', telescope_ra_j2k=18.2670387548436, telescope_dec_j2k=-24.2643642132042, observability=1)
2025-11-17T12:08:40.304 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:40.305 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:40.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:40.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:40.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:40.306 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:40.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:40.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:40.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:40.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:40.307 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:08:40.307 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:40.307 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:08:40.308 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:08:40.309 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:41.309 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:41.309 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:41.309 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:41.309 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:08:41.310 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:41.311 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:41.312 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:41.312 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:41.312 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:41.312 [DEBUG] [ThreadPoolExecutor-2766_0] [payload.py] [to_registers()] [0]
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38383)
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:41.316 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:41.323 [DEBUG] [ThreadPoolExecutor-2766_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Status age = 8.487411260604858s
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:08:47.289 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:08:47.290 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:08:47.291 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 17;18.2956059;-24.256506;50.108376;89.992995;50.08601;90.12017;15.31536;2460996.92276957;12.14643194;1.3;_
2025-11-17T12:08:47.291 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response 17;18.2956059;-24.256506;50.108376;89.992995;50.08601;90.12017;15.31536;2460996.92276957;12.14643194;1.3;_
2025-11-17T12:08:47.291 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:08:47.291 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:08:47.291 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:08:47.292 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:47.292 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:08:47.293 [INFO] [Thread-67598 (handle)] [driver.py] [get_status()] Telra = 18.2956059, teldec = -24.256506
2025-11-17T12:08:47.293 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] UnCookCoordinates 18.2956059 -24.256506
2025-11-17T12:08:47.293 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.2956059 -24.256506
2025-11-17T12:08:47.293 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.2956059 -24.256506
2025-11-17T12:08:47.294 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 17;18.2956059;-24.256506;50.108376;89.992995;50.08601;90.12017;15.31536;2460996.9227696;12.14643194;1.3;_18.2694005452778 -24.2644523886706
2025-11-17T12:08:47.294 [INFO] [Thread-67598 (handle)] [driver.py] [get_status()] ra_j2k = 18.2694005452778     dec_j2k = -24.2644523886706
2025-11-17T12:08:47.294 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:08:47.294 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:08:47.294 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 140;0.10458314646182;171.162357330327;_
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response 140;0.10458314646182;171.162357330327;_
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:47.295 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:47.296 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:47.296 [DEBUG] [Thread-67598 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:47.296 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:08:47.296 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:08:47.296 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:08:47.297 [DEBUG] [Thread-67598 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:47.297 [DEBUG] [Thread-67598 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:08:47.297 [DEBUG] [Thread-67598 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60257)
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:08:47.298 [DEBUG] [Thread-67598 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:08:47.305 [DEBUG] [Thread-67598 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:08:47.305 [INFO] [Thread-67598 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92276957, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10458314646182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992995, telescope_ra=18.2956059, telescope_dec=-24.256506, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.31536, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2694005452778, telescope_dec_j2k=-24.2644523886706, observability=1)
2025-11-17T12:09:05.363 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:05.363 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Status age = 18.058112144470215s
2025-11-17T12:09:05.363 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:05.363 [DEBUG] [Thread-67599 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:05.363 [DEBUG] [Thread-67599 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:05.364 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:05.365 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 17;18.3006527;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32041;2460996.92297876;12.151465;1.3;_
2025-11-17T12:09:05.365 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response 17;18.3006527;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32041;2460996.92297876;12.151465;1.3;_
2025-11-17T12:09:05.365 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:05.365 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:05.365 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:05.366 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:05.366 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:05.366 [INFO] [Thread-67599 (handle)] [driver.py] [get_status()] Telra = 18.3006527, teldec = -24.256505
2025-11-17T12:09:05.366 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3006527 -24.256505
2025-11-17T12:09:05.367 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3006527 -24.256505
2025-11-17T12:09:05.367 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3006527 -24.256505
2025-11-17T12:09:05.367 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 17;18.3006527;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32041;2460996.92297878;12.151465;1.3;_18.2744473301809 -24.2646397974119
2025-11-17T12:09:05.368 [INFO] [Thread-67599 (handle)] [driver.py] [get_status()] ra_j2k = 18.2744473301809     dec_j2k = -24.2646397974119
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 140;0.104583708029019;171.162351965909;_
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response 140;0.104583708029019;171.162351965909;_
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:05.368 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:05.369 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:05.369 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:05.369 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:05.369 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:05.370 [DEBUG] [Thread-67599 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:05.370 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:05.370 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:05.370 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:05.371 [DEBUG] [Thread-67599 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:05.371 [DEBUG] [Thread-67599 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:05.371 [DEBUG] [Thread-67599 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46553)
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:05.373 [DEBUG] [Thread-67599 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:05.380 [DEBUG] [Thread-67599 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:05.381 [INFO] [Thread-67599 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92297876, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583708029019, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992995, telescope_ra=18.3006527, telescope_dec=-24.256505, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.32041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2744473301809, telescope_dec_j2k=-24.2646397974119, observability=1)
2025-11-17T12:09:06.324 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:06.324 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:06.324 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:06.324 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:06.324 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:06.325 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:09:06.326 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:09:06.327 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Status age = 3.427335023880005s
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:08.808 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:08.809 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:08.810 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 17;18.3016048;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32136;2460996.92301863;12.15241444;1.3;_
2025-11-17T12:09:08.810 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response 17;18.3016048;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32136;2460996.92301863;12.15241444;1.3;_
2025-11-17T12:09:08.810 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:08.810 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:08.811 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:08.811 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:08.811 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:08.812 [INFO] [Thread-67600 (handle)] [driver.py] [get_status()] Telra = 18.3016048, teldec = -24.256505
2025-11-17T12:09:08.812 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3016048 -24.256505
2025-11-17T12:09:08.812 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3016048 -24.256505
2025-11-17T12:09:08.812 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3016048 -24.256505
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 17;18.3016048;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32136;2460996.92301867;12.15241444;1.3;_18.2753994280809 -24.2646753401635
2025-11-17T12:09:08.813 [INFO] [Thread-67600 (handle)] [driver.py] [get_status()] ra_j2k = 18.2753994280809     dec_j2k = -24.2646753401635
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 140;0.104582945902106;171.162357330327;_
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response 140;0.104582945902106;171.162357330327;_
2025-11-17T12:09:08.813 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:08.814 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:08.814 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:08.814 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:08.815 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:08.816 [DEBUG] [Thread-67600 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:08.816 [DEBUG] [Thread-67600 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:08.816 [DEBUG] [Thread-67600 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55257)
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:08.823 [DEBUG] [Thread-67600 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:08.830 [DEBUG] [Thread-67600 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:08.830 [INFO] [Thread-67600 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92301863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104582945902106, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992995, telescope_ra=18.3016048, telescope_dec=-24.256505, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.32136, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2753994280809, telescope_dec_j2k=-24.2646753401635, observability=1)
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.065566301345825s
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3033041;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32306;2460996.92308909;12.15410917;1.3;_
2025-11-17T12:09:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3033041;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32306;2460996.92308909;12.15410917;1.3;_
2025-11-17T12:09:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:14.899 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3033041, teldec = -24.256505
2025-11-17T12:09:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3033041 -24.256505
2025-11-17T12:09:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3033041 -24.256505
2025-11-17T12:09:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3033041 -24.256505
2025-11-17T12:09:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3033041;-24.256505;50.108376;89.992995;50.08601;90.12017;15.32306;2460996.92308912;12.15410917;1.3;_18.2770987249528 -24.2647387754965
2025-11-17T12:09:14.900 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.2770987249528     dec_j2k = -24.2647387754965
2025-11-17T12:09:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104583948700676;171.162357330327;_
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104583948700676;171.162357330327;_
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:14.908 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35003)
2025-11-17T12:09:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:14.908 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:14.916 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92308909, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583948700676, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108376, telescope_az=89.992995, telescope_ra=18.3033041, telescope_dec=-24.256505, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.32306, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2770987249528, telescope_dec_j2k=-24.2647387754965, observability=1)
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Status age = 8.544730424880981s
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:23.461 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:23.462 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:23.463 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 17;18.3056948;-24.256505;50.108375;89.992994;50.08601;90.12017;15.32545;2460996.92318823;12.15649333;1.3;_
2025-11-17T12:09:23.463 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response 17;18.3056948;-24.256505;50.108375;89.992994;50.08601;90.12017;15.32545;2460996.92318823;12.15649333;1.3;_
2025-11-17T12:09:23.463 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:23.463 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:23.463 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:23.464 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:23.464 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:23.464 [INFO] [Thread-67601 (handle)] [driver.py] [get_status()] Telra = 18.3056948, teldec = -24.256505
2025-11-17T12:09:23.464 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3056948 -24.256505
2025-11-17T12:09:23.464 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3056948 -24.256505
2025-11-17T12:09:23.464 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3056948 -24.256505
2025-11-17T12:09:23.465 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 17;18.3056948;-24.256505;50.108375;89.992994;50.08601;90.12017;15.32545;2460996.92318825;12.15649333;1.3;_18.2794894218973 -24.2648280186406
2025-11-17T12:09:23.465 [INFO] [Thread-67601 (handle)] [driver.py] [get_status()] ra_j2k = 18.2794894218973     dec_j2k = -24.2648280186406
2025-11-17T12:09:23.465 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:23.465 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:23.465 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 140;0.104583627805133;171.162357330327;_
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response 140;0.104583627805133;171.162357330327;_
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:23.466 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:23.467 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:23.468 [DEBUG] [Thread-67601 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:23.468 [DEBUG] [Thread-67601 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:23.468 [DEBUG] [Thread-67601 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:23.472 [DEBUG] [Thread-67601 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35723)
2025-11-17T12:09:23.472 [DEBUG] [Thread-67601 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:23.472 [DEBUG] [Thread-67601 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:23.473 [DEBUG] [Thread-67601 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:23.473 [DEBUG] [Thread-67601 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:23.473 [DEBUG] [Thread-67601 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:23.480 [DEBUG] [Thread-67601 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:23.480 [INFO] [Thread-67601 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92318823, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583627805133, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992994, telescope_ra=18.3056948, telescope_dec=-24.256505, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.32545, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2794894218973, telescope_dec_j2k=-24.2648280186406, observability=1)
2025-11-17T12:09:23.875 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:09:23.875 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3944063186645508s
2025-11-17T12:09:23.875 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3944063186645508
2025-11-17T12:09:23.875 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09198975563049 seconds ago
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.761860132217407s
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:32.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:32.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:32.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:32.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3081504;-24.256505;50.108375;89.992994;50.08601;90.12017;15.3279;2460996.92328986;12.15894222;1.3;_
2025-11-17T12:09:32.244 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.3081504;-24.256505;50.108375;89.992994;50.08601;90.12017;15.3279;2460996.92328986;12.15894222;1.3;_
2025-11-17T12:09:32.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:32.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:32.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:32.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:32.245 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:32.246 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.3081504, teldec = -24.256505
2025-11-17T12:09:32.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3081504 -24.256505
2025-11-17T12:09:32.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3081504 -24.256505
2025-11-17T12:09:32.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3081504 -24.256505
2025-11-17T12:09:32.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3081504;-24.256505;50.108375;89.992994;50.08601;90.12017;15.3279;2460996.92328988;12.15894222;1.3;_18.2819450203961 -24.2649196815752
2025-11-17T12:09:32.247 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.2819450203961     dec_j2k = -24.2649196815752
2025-11-17T12:09:32.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:32.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:32.247 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104584309708161;171.162357330327;_
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104584309708161;171.162357330327;_
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:32.248 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:32.249 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43745)
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:32.252 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:32.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:32.259 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92328986, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584309708161, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992994, telescope_ra=18.3081504, telescope_dec=-24.256505, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3279, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2819450203961, telescope_dec_j2k=-24.2649196815752, observability=1)
2025-11-17T12:09:38.863 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:09:38
2025-11-17T12:09:38.863 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:38.863 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.6040778160095215s
2025-11-17T12:09:38.863 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:38.863 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:38.864 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:38.864 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:38.864 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:38.864 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:38.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:38.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3099896;-24.256504;50.108375;89.992994;50.08601;90.12017;15.32974;2460996.9233665;12.16077639;1.3;_
2025-11-17T12:09:38.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3099896;-24.256504;50.108375;89.992994;50.08601;90.12017;15.32974;2460996.9233665;12.16077639;1.3;_
2025-11-17T12:09:38.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:38.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:38.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:38.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:38.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:38.867 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3099896, teldec = -24.256504
2025-11-17T12:09:38.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3099896 -24.256504
2025-11-17T12:09:38.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3099896 -24.256504
2025-11-17T12:09:38.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3099896 -24.256504
2025-11-17T12:09:38.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3099896;-24.256504;50.108375;89.992994;50.08601;90.12017;15.32974;2460996.92336653;12.16077639;1.3;_18.2837842205581 -24.2649873335876
2025-11-17T12:09:38.868 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.2837842205581     dec_j2k = -24.2649873335876
2025-11-17T12:09:38.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104584470155932;171.162357330327;_
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104584470155932;171.162357330327;_
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:38.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:38.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:38.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:38.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:38.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48331)
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:38.872 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:38.879 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:38.880 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:38.880 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9233665, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584470155932, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992994, telescope_ra=18.3099896, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.32974, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:08:40.304555', telescope_ra_j2k=18.2837842205581, telescope_dec_j2k=-24.2649873335876, observability=1)
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:40.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:40.446 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:40.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:40.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:40.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:40.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:40.447 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:09:40.447 [INFO] [ThreadPoolExecutor-2767_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:09:40.447 [INFO] [ThreadPoolExecutor-2767_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Status age = 2.6545562744140625s
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:41.534 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:41.535 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:41.536 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 17;18.3107367;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33049;2460996.92339741;12.16152139;1.3;_
2025-11-17T12:09:41.536 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response 17;18.3107367;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33049;2460996.92339741;12.16152139;1.3;_
2025-11-17T12:09:41.536 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:41.536 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:41.536 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:41.537 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:41.537 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:41.537 [INFO] [Thread-67602 (handle)] [driver.py] [get_status()] Telra = 18.3107367, teldec = -24.256504
2025-11-17T12:09:41.537 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3107367 -24.256504
2025-11-17T12:09:41.537 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3107367 -24.256504
2025-11-17T12:09:41.537 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3107367 -24.256504
2025-11-17T12:09:41.538 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 17;18.3107367;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33049;2460996.92339743;12.16152139;1.3;_18.2845313208087 -24.2650152201637
2025-11-17T12:09:41.538 [INFO] [Thread-67602 (handle)] [driver.py] [get_status()] ra_j2k = 18.2845313208087     dec_j2k = -24.2650152201637
2025-11-17T12:09:41.538 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:41.538 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:41.538 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 140;0.104583587693191;171.162351965909;_
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response 140;0.104583587693191;171.162351965909;_
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:41.539 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:41.540 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:41.541 [DEBUG] [Thread-67602 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:41.541 [DEBUG] [Thread-67602 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:41.541 [DEBUG] [Thread-67602 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38131)
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:41.544 [DEBUG] [Thread-67602 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:41.551 [DEBUG] [Thread-67602 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:41.551 [INFO] [Thread-67602 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92339741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104583587693191, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992994, telescope_ra=18.3107367, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.33049, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2845313208087, telescope_dec_j2k=-24.2650152201637, observability=1)
2025-11-17T12:09:59.602 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Status age = 18.051204681396484s
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:09:59.603 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:09:59.604 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:09:59.605 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 17;18.3157593;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33551;2460996.92360654;12.16653028;1.3;_
2025-11-17T12:09:59.605 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response 17;18.3157593;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33551;2460996.92360654;12.16653028;1.3;_
2025-11-17T12:09:59.605 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:09:59.605 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:09:59.605 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:09:59.606 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:59.606 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:09:59.606 [INFO] [Thread-67603 (handle)] [driver.py] [get_status()] Telra = 18.3157593, teldec = -24.256504
2025-11-17T12:09:59.606 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3157593 -24.256504
2025-11-17T12:09:59.606 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3157593 -24.256504
2025-11-17T12:09:59.606 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3157593 -24.256504
2025-11-17T12:09:59.607 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 17;18.3157593;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33551;2460996.92360656;12.16653028;1.3;_18.2895539264804 -24.2652026886388
2025-11-17T12:09:59.607 [INFO] [Thread-67603 (handle)] [driver.py] [get_status()] ra_j2k = 18.2895539264804     dec_j2k = -24.2652026886388
2025-11-17T12:09:59.607 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:09:59.607 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:09:59.607 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 140;0.104584630603704;171.162351965909;_
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response 140;0.104584630603704;171.162351965909;_
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:59.608 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:09:59.609 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:09:59.610 [DEBUG] [Thread-67603 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:59.610 [DEBUG] [Thread-67603 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:09:59.610 [DEBUG] [Thread-67603 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:09:59.617 [DEBUG] [Thread-67603 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50395)
2025-11-17T12:09:59.617 [DEBUG] [Thread-67603 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:09:59.617 [DEBUG] [Thread-67603 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:09:59.617 [DEBUG] [Thread-67603 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:09:59.617 [DEBUG] [Thread-67603 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:09:59.618 [DEBUG] [Thread-67603 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:09:59.624 [DEBUG] [Thread-67603 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:09:59.625 [DEBUG] [Thread-67603 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:09:59.625 [INFO] [Thread-67603 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92360654, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584630603704, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992994, telescope_ra=18.3157593, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.33551, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2895539264804, telescope_dec_j2k=-24.2652026886388, observability=1)
2025-11-17T12:10:01.327 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.327 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.327 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:01.327 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:01.327 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:10:01.329 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:01.330 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:01.331 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:10:01.332 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:01.333 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Park
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:10:01.334 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:10:01.335 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 29;18.3162278;-24.256504;50.108375;89.992994;50.08601;90.12017;15.33598;2460996.92362656;12.1669975;1.3;_Park Command Successful
2025-11-17T12:10:02.335 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:10:02.335 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:10:02.335 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:10:02.337 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:10:02.337 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:10:03.337 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:10:03.337 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:10:03.337 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:10:03.338 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:10:03.338 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:10:04.338 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:10:04.339 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:10:04.339 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:10:04.339 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:10:04.339 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:10:05.339 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:05.340 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:10:05.341 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:10:05.342 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:06.342 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:06.342 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:06.342 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:06.342 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:06.342 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:10:06.343 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:10:06.344 [DEBUG] [ThreadPoolExecutor-2766_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:06.344 [INFO] [ThreadPoolExecutor-2766_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Status age = 9.249762535095215s
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:08.875 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:08.876 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:08.877 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 17;18.3183475;-24.256504;50.108375;89.992993;50.08601;90.12017;15.3381;2460996.92371385;12.16911139;1.3;_
2025-11-17T12:10:08.877 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response 17;18.3183475;-24.256504;50.108375;89.992993;50.08601;90.12017;15.3381;2460996.92371385;12.16911139;1.3;_
2025-11-17T12:10:08.877 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:08.877 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:08.877 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:08.878 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:08.878 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:08.878 [INFO] [Thread-67604 (handle)] [driver.py] [get_status()] Telra = 18.3183475, teldec = -24.256504
2025-11-17T12:10:08.878 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3183475 -24.256504
2025-11-17T12:10:08.878 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3183475 -24.256504
2025-11-17T12:10:08.878 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3183475 -24.256504
2025-11-17T12:10:08.879 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 17;18.3183475;-24.256504;50.108375;89.992993;50.08601;90.12017;15.3381;2460996.92371388;12.16911139;1.3;_18.2921421321134 -24.2652992881666
2025-11-17T12:10:08.879 [INFO] [Thread-67604 (handle)] [driver.py] [get_status()] ra_j2k = 18.2921421321134     dec_j2k = -24.2652992881666
2025-11-17T12:10:08.879 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:08.879 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:08.879 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 140;0.104584710827589;171.162362694745;_
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response 140;0.104584710827589;171.162362694745;_
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:08.880 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:08.881 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:08.881 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:08.881 [DEBUG] [Thread-67604 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:08.881 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:08.881 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:08.882 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:08.882 [DEBUG] [Thread-67604 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:08.882 [DEBUG] [Thread-67604 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:08.882 [DEBUG] [Thread-67604 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:08.885 [DEBUG] [Thread-67604 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39157)
2025-11-17T12:10:08.885 [DEBUG] [Thread-67604 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:08.885 [DEBUG] [Thread-67604 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:08.885 [DEBUG] [Thread-67604 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:08.885 [DEBUG] [Thread-67604 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:08.886 [DEBUG] [Thread-67604 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:08.892 [DEBUG] [Thread-67604 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:08.892 [DEBUG] [Thread-67604 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:08.893 [DEBUG] [Thread-67604 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:08.893 [INFO] [Thread-67604 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92371385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584710827589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992993, telescope_ra=18.3183475, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3381, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2921421321134, telescope_dec_j2k=-24.2652992881666, observability=1)
2025-11-17T12:10:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.022548198699951s
2025-11-17T12:10:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3200187;-24.256504;50.108375;89.992993;50.08601;90.12017;15.33977;2460996.92378377;12.17077806;1.3;_
2025-11-17T12:10:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3200187;-24.256504;50.108375;89.992993;50.08601;90.12017;15.33977;2460996.92378377;12.17077806;1.3;_
2025-11-17T12:10:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3200187, teldec = -24.256504
2025-11-17T12:10:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3200187 -24.256504
2025-11-17T12:10:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3200187 -24.256504
2025-11-17T12:10:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3200187 -24.256504
2025-11-17T12:10:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3200187;-24.256504;50.108375;89.992993;50.08601;90.12017;15.33977;2460996.9237838;12.17077806;1.3;_18.29381333673 -24.2653616606187
2025-11-17T12:10:14.920 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.29381333673     dec_j2k = -24.2653616606187
2025-11-17T12:10:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104584791051475;171.162351965909;_
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104584791051475;171.162351965909;_
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33199)
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:14.935 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92378377, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584791051475, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108375, telescope_az=89.992993, telescope_ra=18.3200187, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.33977, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.29381333673, telescope_dec_j2k=-24.2653616606187, observability=1)
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Status age = 2.776428461074829s
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:17.712 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:17.713 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:17.714 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 17;18.3207939;-24.256504;50.108374;89.992993;50.08601;90.12017;15.34055;2460996.92381613;12.17155111;1.3;_
2025-11-17T12:10:17.714 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response 17;18.3207939;-24.256504;50.108374;89.992993;50.08601;90.12017;15.34055;2460996.92381613;12.17155111;1.3;_
2025-11-17T12:10:17.714 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:17.714 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:17.714 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:17.715 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:17.715 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:17.715 [INFO] [Thread-67605 (handle)] [driver.py] [get_status()] Telra = 18.3207939, teldec = -24.256504
2025-11-17T12:10:17.715 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3207939 -24.256504
2025-11-17T12:10:17.715 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3207939 -24.256504
2025-11-17T12:10:17.715 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3207939 -24.256504
2025-11-17T12:10:17.716 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 17;18.3207939;-24.256504;50.108374;89.992993;50.08601;90.12017;15.34055;2460996.92381616;12.17155111;1.3;_18.2945885391323 -24.2653905921056
2025-11-17T12:10:17.716 [INFO] [Thread-67605 (handle)] [driver.py] [get_status()] ra_j2k = 18.2945885391323     dec_j2k = -24.2653905921056
2025-11-17T12:10:17.716 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:17.716 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:17.716 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:17.717 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 140;0.104584309708161;171.162362694745;_
2025-11-17T12:10:17.717 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response 140;0.104584309708161;171.162362694745;_
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:17.718 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:17.719 [DEBUG] [Thread-67605 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:17.719 [DEBUG] [Thread-67605 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:17.719 [DEBUG] [Thread-67605 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47093)
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:17.725 [DEBUG] [Thread-67605 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:17.732 [DEBUG] [Thread-67605 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:17.733 [DEBUG] [Thread-67605 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:17.733 [INFO] [Thread-67605 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92381613, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584309708161, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992993, telescope_ra=18.3207939, telescope_dec=-24.256504, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.34055, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2945885391323, telescope_dec_j2k=-24.2653905921056, observability=1)
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.201794147491455s
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:23.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:23.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:23.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3225306;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34228;2460996.92388816;12.17328306;1.3;_
2025-11-17T12:10:23.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.3225306;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34228;2460996.92388816;12.17328306;1.3;_
2025-11-17T12:10:23.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:23.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:23.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:23.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:23.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:23.938 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.3225306, teldec = -24.256503
2025-11-17T12:10:23.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.3225306 -24.256503
2025-11-17T12:10:23.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.3225306 -24.256503
2025-11-17T12:10:23.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3225306 -24.256503
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3225306;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34228;2460996.92388818;12.17328306;1.3;_18.2963252453143 -24.2654544069659
2025-11-17T12:10:23.939 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.2963252453143     dec_j2k = -24.2654544069659
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10458443004399;171.162357330327;_
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10458443004399;171.162357330327;_
2025-11-17T12:10:23.939 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:23.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:23.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:23.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:23.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:23.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:23.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:23.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:23.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:23.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:23.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:23.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:23.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43591)
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:23.946 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:23.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:23.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:10:23.954 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92388816, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10458443004399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992993, telescope_ra=18.3225306, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.34228, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2963252453143, telescope_dec_j2k=-24.2654544069659, observability=1)
2025-11-17T12:10:23.954 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09089970588684 seconds ago
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.392956256866455s
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:31.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:31.348 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:31.348 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:31.349 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:31.349 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:31.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:31.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:31.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:31.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3246118;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34437;2460996.92397396;12.17535861;1.3;_
2025-11-17T12:10:31.350 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.3246118;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34437;2460996.92397396;12.17535861;1.3;_
2025-11-17T12:10:31.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:31.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:31.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:31.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:31.351 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:31.351 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.3246118, teldec = -24.256503
2025-11-17T12:10:31.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3246118 -24.256503
2025-11-17T12:10:31.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3246118 -24.256503
2025-11-17T12:10:31.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3246118 -24.256503
2025-11-17T12:10:31.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3246118;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34437;2460996.92397398;12.17535861;1.3;_18.2984064535765 -24.265532076632
2025-11-17T12:10:31.352 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.2984064535765     dec_j2k = -24.265532076632
2025-11-17T12:10:31.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:31.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:31.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104584510267875;171.162346601491;_
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104584510267875;171.162346601491;_
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:31.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:31.354 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:31.355 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:31.355 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:31.355 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38407)
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:31.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:31.365 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:31.365 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:31.365 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:31.365 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:31.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:31.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:31.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:31.366 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:31.366 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:31.366 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92397396, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584510267875, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992993, telescope_ra=18.3246118, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.34437, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2984064535765, telescope_dec_j2k=-24.265532076632, observability=1)
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Status age = 4.41044545173645s
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:35.776 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:35.777 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:35.777 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:35.777 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:35.777 [DEBUG] [Thread-67606 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:35.777 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 17;18.3258446;-24.256503;50.108374;89.992993;50.08601;90.12017;15.3456;2460996.92402521;12.17658806;1.3;_
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response 17;18.3258446;-24.256503;50.108374;89.992993;50.08601;90.12017;15.3456;2460996.92402521;12.17658806;1.3;_
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:35.778 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:35.779 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:35.779 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:35.779 [INFO] [Thread-67606 (handle)] [driver.py] [get_status()] Telra = 18.3258446, teldec = -24.256503
2025-11-17T12:10:35.779 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3258446 -24.256503
2025-11-17T12:10:35.779 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3258446 -24.256503
2025-11-17T12:10:35.779 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3258446 -24.256503
2025-11-17T12:10:35.780 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 17;18.3258446;-24.256503;50.108374;89.992993;50.08601;90.12017;15.3456;2460996.92402523;12.17658806;1.3;_18.2996392590329 -24.2655780832165
2025-11-17T12:10:35.780 [INFO] [Thread-67606 (handle)] [driver.py] [get_status()] ra_j2k = 18.2996392590329     dec_j2k = -24.2655780832165
2025-11-17T12:10:35.780 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:35.780 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 140;0.104584710827589;171.162357330327;_
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response 140;0.104584710827589;171.162357330327;_
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:35.781 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:35.782 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:35.782 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:35.782 [DEBUG] [Thread-67606 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:35.782 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:35.782 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:35.783 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:35.783 [DEBUG] [Thread-67606 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:35.783 [DEBUG] [Thread-67606 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:35.783 [DEBUG] [Thread-67606 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42965)
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:35.789 [DEBUG] [Thread-67606 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:35.796 [DEBUG] [Thread-67606 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:35.797 [DEBUG] [Thread-67606 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:35.797 [DEBUG] [Thread-67606 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:35.797 [INFO] [Thread-67606 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92402521, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104584710827589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992993, telescope_ra=18.3258446, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3456, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.2996392590329, telescope_dec_j2k=-24.2655780832165, observability=1)
2025-11-17T12:10:38.940 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:10:38
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.1436829566955566s
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:38.940 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:38.941 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:38.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3267036;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34646;2460996.92406183;12.17744472;1.3;_
2025-11-17T12:10:38.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3267036;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34646;2460996.92406183;12.17744472;1.3;_
2025-11-17T12:10:38.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:38.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:38.942 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:38.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:38.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:38.943 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3267036, teldec = -24.256503
2025-11-17T12:10:38.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3267036 -24.256503
2025-11-17T12:10:38.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3267036 -24.256503
2025-11-17T12:10:38.943 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3267036 -24.256503
2025-11-17T12:10:38.944 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3267036;-24.256503;50.108374;89.992993;50.08601;90.12017;15.34646;2460996.92406185;12.17744472;1.3;_18.300498263082 -24.2656101395623
2025-11-17T12:10:38.944 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.300498263082     dec_j2k = -24.2656101395623
2025-11-17T12:10:38.944 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:38.944 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:38.944 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104585553178388;171.162357330327;_
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104585553178388;171.162357330327;_
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:38.945 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:38.946 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:38.947 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:38.947 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:38.947 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:38.951 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45489)
2025-11-17T12:10:38.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:38.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:38.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:38.952 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:38.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:38.959 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:38.959 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92406183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104585553178388, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992993, telescope_ra=18.3267036, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.34646, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:09:40.444705', telescope_ra_j2k=18.300498263082, telescope_dec_j2k=-24.2656101395623, observability=1)
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:40.588 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:40.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:40.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:40.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:40.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:40.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:40.589 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:40.590 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:10:40.591 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:10:41.592 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:41.593 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:41.594 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:41.594 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:41.594 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:41.595 [DEBUG] [ThreadPoolExecutor-2768_0] [payload.py] [to_registers()] [0]
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54585)
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:41.600 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:41.607 [DEBUG] [ThreadPoolExecutor-2768_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:53.846 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Status age = 14.88761281967163s
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:10:53.847 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:10:53.848 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 17;18.3308581;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35061;2460996.92423435;12.18158778;1.3;_
2025-11-17T12:10:53.848 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response 17;18.3308581;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35061;2460996.92423435;12.18158778;1.3;_
2025-11-17T12:10:53.848 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:10:53.848 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:10:53.848 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:10:53.849 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:53.849 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:10:53.849 [INFO] [Thread-67607 (handle)] [driver.py] [get_status()] Telra = 18.3308581, teldec = -24.256503
2025-11-17T12:10:53.849 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3308581 -24.256503
2025-11-17T12:10:53.850 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3308581 -24.256503
2025-11-17T12:10:53.850 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3308581 -24.256503
2025-11-17T12:10:53.850 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 17;18.3308581;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35061;2460996.92423438;12.18158778;1.3;_18.3046527855311 -24.2657651724518
2025-11-17T12:10:53.851 [INFO] [Thread-67607 (handle)] [driver.py] [get_status()] ra_j2k = 18.3046527855311     dec_j2k = -24.2657651724518
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 140;0.10458543284256;171.162357330327;_
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response 140;0.10458543284256;171.162357330327;_
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:53.851 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:10:53.852 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:10:53.854 [DEBUG] [Thread-67607 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:53.854 [DEBUG] [Thread-67607 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:10:53.854 [DEBUG] [Thread-67607 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52267)
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:10:53.855 [DEBUG] [Thread-67607 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:10:53.862 [DEBUG] [Thread-67607 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:10:53.863 [DEBUG] [Thread-67607 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:10:53.863 [INFO] [Thread-67607 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92423435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10458543284256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992992, telescope_ra=18.3308581, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.35061, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3046527855311, telescope_dec_j2k=-24.2657651724518, observability=1)
2025-11-17T12:11:06.608 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:06.608 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:06.608 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:06.608 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:06.608 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:06.609 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:11:06.610 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:11:06.611 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:08.926 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:08.926 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Status age = 15.06339430809021s
2025-11-17T12:11:08.926 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:08.927 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:08.928 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 17;18.3350609;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35482;2460996.92440889;12.18577917;1.3;_
2025-11-17T12:11:08.928 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response 17;18.3350609;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35482;2460996.92440889;12.18577917;1.3;_
2025-11-17T12:11:08.928 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:08.928 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:08.928 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:08.929 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:08.929 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:08.929 [INFO] [Thread-67608 (handle)] [driver.py] [get_status()] Telra = 18.3350609, teldec = -24.256503
2025-11-17T12:11:08.929 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3350609 -24.256503
2025-11-17T12:11:08.929 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3350609 -24.256503
2025-11-17T12:11:08.929 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3350609 -24.256503
2025-11-17T12:11:08.930 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 17;18.3350609;-24.256503;50.108374;89.992992;50.08601;90.12017;15.35482;2460996.92440891;12.18577917;1.3;_18.3088556130741 -24.2659219981124
2025-11-17T12:11:08.930 [INFO] [Thread-67608 (handle)] [driver.py] [get_status()] ra_j2k = 18.3088556130741     dec_j2k = -24.2659219981124
2025-11-17T12:11:08.930 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:08.930 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:08.931 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:08.931 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 140;0.104586114745587;171.162357330327;_
2025-11-17T12:11:08.931 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response 140;0.104586114745587;171.162357330327;_
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:08.932 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:08.933 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:08.933 [DEBUG] [Thread-67608 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:08.933 [DEBUG] [Thread-67608 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:08.934 [DEBUG] [Thread-67608 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40877)
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:08.938 [DEBUG] [Thread-67608 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:08.945 [DEBUG] [Thread-67608 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:08.945 [DEBUG] [Thread-67608 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:08.945 [DEBUG] [Thread-67608 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:08.945 [DEBUG] [Thread-67608 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:08.945 [DEBUG] [Thread-67608 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:08.946 [DEBUG] [Thread-67608 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:08.946 [DEBUG] [Thread-67608 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:08.946 [DEBUG] [Thread-67608 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:08.946 [DEBUG] [Thread-67608 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:08.946 [INFO] [Thread-67608 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92440889, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104586114745587, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108374, telescope_az=89.992992, telescope_ra=18.3350609, telescope_dec=-24.256503, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.35482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3088556130741, telescope_dec_j2k=-24.2659219981124, observability=1)
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Status age = 3.044905185699463s
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:11.991 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:11.992 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:11.993 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 17;18.3359294;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35568;2460996.92444436;12.18664528;1.3;_
2025-11-17T12:11:11.993 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response 17;18.3359294;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35568;2460996.92444436;12.18664528;1.3;_
2025-11-17T12:11:11.993 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:11.993 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:11.994 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:11.994 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:11.994 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:11.995 [INFO] [Thread-67609 (handle)] [driver.py] [get_status()] Telra = 18.3359294, teldec = -24.256502
2025-11-17T12:11:11.995 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3359294 -24.256502
2025-11-17T12:11:11.995 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3359294 -24.256502
2025-11-17T12:11:11.995 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3359294 -24.256502
2025-11-17T12:11:11.996 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 17;18.3359294;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35568;2460996.9244444;12.18664528;1.3;_18.3097241195714 -24.2659534046552
2025-11-17T12:11:11.996 [INFO] [Thread-67609 (handle)] [driver.py] [get_status()] ra_j2k = 18.3097241195714     dec_j2k = -24.2659534046552
2025-11-17T12:11:11.996 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:11.996 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:11.996 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 140;0.104585593290331;171.162346601491;_
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response 140;0.104585593290331;171.162346601491;_
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:11.997 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:11.998 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:11.999 [DEBUG] [Thread-67609 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:11.999 [DEBUG] [Thread-67609 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:11.999 [DEBUG] [Thread-67609 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59821)
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:12.005 [DEBUG] [Thread-67609 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:12.012 [DEBUG] [Thread-67609 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:12.012 [DEBUG] [Thread-67609 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:12.013 [DEBUG] [Thread-67609 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:12.013 [INFO] [Thread-67609 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92444436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104585593290331, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992992, telescope_ra=18.3359294, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.35568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3097241195714, telescope_dec_j2k=-24.2659534046552, observability=1)
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.861323356628418s
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:14.874 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:14.875 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:14.875 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3367316;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35649;2460996.92447773;12.18744528;1.3;_
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3367316;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35649;2460996.92447773;12.18744528;1.3;_
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:14.876 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:14.877 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:14.878 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3367316, teldec = -24.256502
2025-11-17T12:11:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3367316 -24.256502
2025-11-17T12:11:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3367316 -24.256502
2025-11-17T12:11:14.878 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3367316 -24.256502
2025-11-17T12:11:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3367316;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35649;2460996.92447777;12.18744528;1.3;_18.3105263255728 -24.2659833368927
2025-11-17T12:11:14.879 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3105263255728     dec_j2k = -24.2659833368927
2025-11-17T12:11:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:14.879 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104585753738102;171.162357330327;_
2025-11-17T12:11:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104585753738102;171.162357330327;_
2025-11-17T12:11:14.880 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:14.880 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:14.881 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:14.882 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55293)
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:14.887 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:14.894 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:14.894 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:14.894 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:14.895 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:14.895 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:14.895 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:14.895 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92447773, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104585753738102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992992, telescope_ra=18.3367316, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.35649, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3105263255728, telescope_dec_j2k=-24.2659833368927, observability=1)
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.118807792663574s
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:24.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:24.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3392722;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35903;2460996.9245835;12.18997889;1.3;_
2025-11-17T12:11:24.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.3392722;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35903;2460996.9245835;12.18997889;1.3;_
2025-11-17T12:11:24.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:24.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:24.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:24.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:24.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:24.016 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.3392722, teldec = -24.256502
2025-11-17T12:11:24.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.3392722 -24.256502
2025-11-17T12:11:24.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.3392722 -24.256502
2025-11-17T12:11:24.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3392722 -24.256502
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3392722;-24.256502;50.108373;89.992992;50.08601;90.12017;15.35903;2460996.92458353;12.18997889;1.3;_18.3130669457479 -24.2660781311058
2025-11-17T12:11:24.017 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3130669457479     dec_j2k = -24.2660781311058
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104586796648615;171.162351965909;_
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104586796648615;171.162351965909;_
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:24.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:24.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:24.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:24.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:24.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:24.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:24.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:24.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:24.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:24.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:24.020 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55715)
2025-11-17T12:11:24.020 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:24.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:24.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:24.021 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:24.021 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:24.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:11:24.028 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9245835, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104586796648615, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992992, telescope_ra=18.3392722, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.35903, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3130669457479, telescope_dec_j2k=-24.2660781311058, observability=1)
2025-11-17T12:11:24.028 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.087992906570435 seconds ago
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Status age = 6.025740385055542s
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:30.054 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 17;18.3409451;-24.256502;50.108373;89.992992;50.08601;90.12017;15.3607;2460996.92465341;12.19164722;1.3;_
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response 17;18.3409451;-24.256502;50.108373;89.992992;50.08601;90.12017;15.3607;2460996.92465341;12.19164722;1.3;_
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:30.055 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:30.056 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:30.056 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:30.056 [INFO] [Thread-67610 (handle)] [driver.py] [get_status()] Telra = 18.3409451, teldec = -24.256502
2025-11-17T12:11:30.057 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3409451 -24.256502
2025-11-17T12:11:30.057 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3409451 -24.256502
2025-11-17T12:11:30.057 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3409451 -24.256502
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 17;18.3409451;-24.256502;50.108373;89.992992;50.08601;90.12017;15.3607;2460996.92465344;12.19164722;1.3;_18.3147398600025 -24.2661405479137
2025-11-17T12:11:30.058 [INFO] [Thread-67610 (handle)] [driver.py] [get_status()] ra_j2k = 18.3147398600025     dec_j2k = -24.2661405479137
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 140;0.104586114745587;171.162362694745;_
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response 140;0.104586114745587;171.162362694745;_
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:30.058 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:30.059 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:30.061 [DEBUG] [Thread-67610 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:30.061 [DEBUG] [Thread-67610 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:30.061 [DEBUG] [Thread-67610 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33335)
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:30.065 [DEBUG] [Thread-67610 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:30.072 [DEBUG] [Thread-67610 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:30.073 [DEBUG] [Thread-67610 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:30.073 [INFO] [Thread-67610 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92465341, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104586114745587, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992992, telescope_ra=18.3409451, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3147398600025, telescope_dec_j2k=-24.2661405479137, observability=1)
2025-11-17T12:11:30.460 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:30.460 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.38744354248046875s
2025-11-17T12:11:30.460 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.38744354248046875
2025-11-17T12:11:39.020 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:11:39
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.947473287582397s
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:39.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:39.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3434508;-24.256502;50.108373;89.992991;50.08601;90.12017;15.3632;2460996.9247572;12.19414611;1.3;_
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3434508;-24.256502;50.108373;89.992991;50.08601;90.12017;15.3632;2460996.9247572;12.19414611;1.3;_
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:39.022 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:39.023 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3434508, teldec = -24.256502
2025-11-17T12:11:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3434508 -24.256502
2025-11-17T12:11:39.023 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3434508 -24.256502
2025-11-17T12:11:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3434508 -24.256502
2025-11-17T12:11:39.024 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3434508;-24.256502;50.108373;89.992991;50.08601;90.12017;15.3632;2460996.92475722;12.19414611;1.3;_18.3172455827938 -24.2662340339318
2025-11-17T12:11:39.024 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.3172455827938     dec_j2k = -24.2662340339318
2025-11-17T12:11:39.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:39.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:39.025 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104586475753073;171.162368059163;_
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104586475753073;171.162368059163;_
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:39.026 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:39.027 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34045)
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:39.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:39.038 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:39.038 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9247572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104586475753073, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992991, telescope_ra=18.3434508, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3632, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:10:40.587826', telescope_ra_j2k=18.3172455827938, telescope_dec_j2k=-24.2662340339318, observability=1)
2025-11-17T12:11:40.729 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:40.729 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:40.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:40.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:40.730 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:40.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:40.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:40.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:40.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:40.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:40.731 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:11:40.732 [INFO] [ThreadPoolExecutor-2769_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:11:40.732 [INFO] [ThreadPoolExecutor-2769_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:11:48.120 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:11:48.120 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Status age = 9.081952333450317s
2025-11-17T12:11:48.120 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:11:48.120 [DEBUG] [Thread-67611 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:11:48.120 [DEBUG] [Thread-67611 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:11:48.121 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:11:48.121 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:11:48.121 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:11:48.122 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:11:48.123 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 17;18.34599;-24.256502;50.108373;89.992991;50.08601;90.12017;15.36574;2460996.92486253;12.19667833;1.3;_
2025-11-17T12:11:48.123 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response 17;18.34599;-24.256502;50.108373;89.992991;50.08601;90.12017;15.36574;2460996.92486253;12.19667833;1.3;_
2025-11-17T12:11:48.123 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:11:48.123 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:11:48.123 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:11:48.124 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:48.124 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:11:48.124 [INFO] [Thread-67611 (handle)] [driver.py] [get_status()] Telra = 18.34599, teldec = -24.256502
2025-11-17T12:11:48.124 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] UnCookCoordinates 18.34599 -24.256502
2025-11-17T12:11:48.124 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.34599 -24.256502
2025-11-17T12:11:48.124 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.34599 -24.256502
2025-11-17T12:11:48.125 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 17;18.34599;-24.256502;50.108373;89.992991;50.08601;90.12017;15.36574;2460996.92486256;12.19667833;1.3;_18.3197848076525 -24.2663287660933
2025-11-17T12:11:48.125 [INFO] [Thread-67611 (handle)] [driver.py] [get_status()] ra_j2k = 18.3197848076525     dec_j2k = -24.2663287660933
2025-11-17T12:11:48.125 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:11:48.125 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:11:48.125 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 140;0.104586957096386;171.162357330327;_
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response 140;0.104586957096386;171.162357330327;_
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:48.126 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:11:48.127 [DEBUG] [Thread-67611 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54601)
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:11:48.133 [DEBUG] [Thread-67611 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:11:48.140 [DEBUG] [Thread-67611 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:11:48.140 [DEBUG] [Thread-67611 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:48.140 [DEBUG] [Thread-67611 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:11:48.141 [DEBUG] [Thread-67611 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:11:48.141 [INFO] [Thread-67611 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92486253, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104586957096386, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108373, telescope_az=89.992991, telescope_ra=18.34599, telescope_dec=-24.256502, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.36574, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3197848076525, telescope_dec_j2k=-24.2663287660933, observability=1)
2025-11-17T12:12:01.611 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.611 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.611 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:01.611 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:01.612 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:01.612 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.612 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:12:01.613 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.614 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.614 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.614 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:01.614 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:01.614 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:01.615 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:12:01.616 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:01.617 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Park
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:12:01.618 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:12:01.619 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 29;18.3497447;-24.256501;50.108373;89.992991;50.08601;90.12017;15.3695;2460996.92501874;12.20042278;1.3;_Park Command Successful
2025-11-17T12:12:02.619 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:12:02.619 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:12:02.619 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:12:02.620 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:12:02.620 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:12:03.620 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:12:03.620 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:12:03.620 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:12:03.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:12:03.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:12:04.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:12:04.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:12:04.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:12:04.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:12:04.621 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:12:05.622 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:12:05.622 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:12:05.622 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:12:05.622 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:12:05.622 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:05.623 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:12:05.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Status age = 18.12386965751648s
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:06.265 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:06.266 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 17;18.3510335;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37079;2460996.92507252;12.20170806;1.3;_
2025-11-17T12:12:06.266 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response 17;18.3510335;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37079;2460996.92507252;12.20170806;1.3;_
2025-11-17T12:12:06.266 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:06.266 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:06.266 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:06.267 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:06.267 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:06.267 [INFO] [Thread-67612 (handle)] [driver.py] [get_status()] Telra = 18.3510335, teldec = -24.256501
2025-11-17T12:12:06.267 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3510335 -24.256501
2025-11-17T12:12:06.267 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3510335 -24.256501
2025-11-17T12:12:06.267 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3510335 -24.256501
2025-11-17T12:12:06.268 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 17;18.3510335;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37079;2460996.92507255;12.20170806;1.3;_18.3248283624898 -24.26651591717
2025-11-17T12:12:06.268 [INFO] [Thread-67612 (handle)] [driver.py] [get_status()] ra_j2k = 18.3248283624898     dec_j2k = -24.26651591717
2025-11-17T12:12:06.268 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:06.268 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:06.269 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 140;0.104587277991929;171.162362694745;_
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response 140;0.104587277991929;171.162362694745;_
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:06.270 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:06.271 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:06.272 [DEBUG] [Thread-67612 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:06.272 [DEBUG] [Thread-67612 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:06.272 [DEBUG] [Thread-67612 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41791)
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:06.277 [DEBUG] [Thread-67612 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:06.284 [DEBUG] [Thread-67612 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:06.284 [INFO] [Thread-67612 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92507252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104587277991929, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.992991, telescope_ra=18.3510335, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37079, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3248283624898, telescope_dec_j2k=-24.26651591717, observability=1)
2025-11-17T12:12:06.624 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:06.624 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:06.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:06.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:06.624 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:12:06.625 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:12:06.626 [DEBUG] [ThreadPoolExecutor-2768_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:06.626 [INFO] [ThreadPoolExecutor-2768_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:12:08.977 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:08.977 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Status age = 2.6930503845214844s
2025-11-17T12:12:08.977 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:08.978 [DEBUG] [Thread-67613 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:08.978 [DEBUG] [Thread-67613 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:08.978 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:08.978 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:08.978 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:08.979 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:08.980 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 17;18.3518084;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37156;2460996.92510394;12.20248083;1.3;_
2025-11-17T12:12:08.980 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response 17;18.3518084;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37156;2460996.92510394;12.20248083;1.3;_
2025-11-17T12:12:08.980 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:08.980 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:08.980 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:08.981 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:08.981 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:08.981 [INFO] [Thread-67613 (handle)] [driver.py] [get_status()] Telra = 18.3518084, teldec = -24.256501
2025-11-17T12:12:08.981 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3518084 -24.256501
2025-11-17T12:12:08.981 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3518084 -24.256501
2025-11-17T12:12:08.981 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3518084 -24.256501
2025-11-17T12:12:08.982 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 17;18.3518084;-24.256501;50.108372;89.992991;50.08601;90.12017;15.37156;2460996.92510396;12.20248083;1.3;_18.3256032715049 -24.266544823968
2025-11-17T12:12:08.982 [INFO] [Thread-67613 (handle)] [driver.py] [get_status()] ra_j2k = 18.3256032715049     dec_j2k = -24.266544823968
2025-11-17T12:12:08.982 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:08.982 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 140;0.104587638999414;171.162351965909;_
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response 140;0.104587638999414;171.162351965909;_
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:08.983 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:08.984 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:08.984 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:08.984 [DEBUG] [Thread-67613 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:08.984 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:08.984 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:08.985 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:08.985 [DEBUG] [Thread-67613 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:08.985 [DEBUG] [Thread-67613 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:08.985 [DEBUG] [Thread-67613 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37681)
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:08.988 [DEBUG] [Thread-67613 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:08.996 [DEBUG] [Thread-67613 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:08.996 [DEBUG] [Thread-67613 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:08.996 [DEBUG] [Thread-67613 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:08.996 [DEBUG] [Thread-67613 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:08.996 [DEBUG] [Thread-67613 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:08.997 [DEBUG] [Thread-67613 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:08.997 [DEBUG] [Thread-67613 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:08.997 [DEBUG] [Thread-67613 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:08.997 [DEBUG] [Thread-67613 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:08.997 [INFO] [Thread-67613 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92510394, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104587638999414, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.992991, telescope_ra=18.3518084, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37156, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3256032715049, telescope_dec_j2k=-24.266544823968, observability=1)
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.944179058074951s
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3534515;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37321;2460996.92517295;12.20411944;1.3;_
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3534515;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37321;2460996.92517295;12.20411944;1.3;_
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:14.943 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3534515, teldec = -24.256501
2025-11-17T12:12:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3534515 -24.256501
2025-11-17T12:12:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3534515 -24.256501
2025-11-17T12:12:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3534515 -24.256501
2025-11-17T12:12:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3534515;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37321;2460996.92517296;12.20411944;1.3;_18.3272463911673 -24.2666061168212
2025-11-17T12:12:14.945 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3272463911673     dec_j2k = -24.2666061168212
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104588000006899;171.162362694745;_
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104588000006899;171.162362694745;_
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34067)
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:14.961 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92517295, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104588000006899, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.99299, telescope_ra=18.3534515, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37321, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3272463911673, telescope_dec_j2k=-24.2666061168212, observability=1)
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.127199649810791s
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:24.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:24.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:24.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:24.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:24.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:24.090 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:24.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:24.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:24.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:24.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3559929;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37575;2460996.92527882;12.20665389;1.3;_
2025-11-17T12:12:24.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.3559929;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37575;2460996.92527882;12.20665389;1.3;_
2025-11-17T12:12:24.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:24.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:24.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:24.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:24.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:24.092 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.3559929, teldec = -24.256501
2025-11-17T12:12:24.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.3559929 -24.256501
2025-11-17T12:12:24.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.3559929 -24.256501
2025-11-17T12:12:24.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3559929 -24.256501
2025-11-17T12:12:24.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3559929;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37575;2460996.92527885;12.20665389;1.3;_18.3297878230425 -24.2667009158921
2025-11-17T12:12:24.093 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3297878230425     dec_j2k = -24.2667009158921
2025-11-17T12:12:24.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:24.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:24.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104588561574099;171.162357330327;_
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104588561574099;171.162357330327;_
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:24.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:24.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:24.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:24.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:24.098 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57061)
2025-11-17T12:12:24.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:24.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:24.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:24.099 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:24.099 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:24.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:12:24.106 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92527882, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104588561574099, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.99299, telescope_ra=18.3559929, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37575, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3297878230425, telescope_dec_j2k=-24.2667009158921, observability=1)
2025-11-17T12:12:24.106 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08644509315491 seconds ago
2025-11-17T12:12:24.334 [DEBUG] [Thread-67614 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:24.334 [DEBUG] [Thread-67614 (handle)] [server.py] [get_status()] Status age = 0.22764992713928223s
2025-11-17T12:12:24.334 [DEBUG] [Thread-67614 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.22764992713928223
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.4416632652282715s
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:29.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:29.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:29.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3575246;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37728;2460996.92534201;12.20818139;1.3;_
2025-11-17T12:12:29.550 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.3575246;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37728;2460996.92534201;12.20818139;1.3;_
2025-11-17T12:12:29.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:29.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:29.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:29.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:29.551 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:29.551 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.3575246, teldec = -24.256501
2025-11-17T12:12:29.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3575246 -24.256501
2025-11-17T12:12:29.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3575246 -24.256501
2025-11-17T12:12:29.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3575246 -24.256501
2025-11-17T12:12:29.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3575246;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37728;2460996.92534204;12.20818139;1.3;_18.3313195431121 -24.266758049317
2025-11-17T12:12:29.552 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.3313195431121     dec_j2k = -24.266758049317
2025-11-17T12:12:29.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:29.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:29.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104588280790499;171.162351965909;_
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104588280790499;171.162351965909;_
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:29.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:29.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:29.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:29.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:29.555 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:29.561 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35769)
2025-11-17T12:12:29.561 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:29.561 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:29.561 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:29.562 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:29.562 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:29.569 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:29.569 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92534201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104588280790499, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.99299, telescope_ra=18.3575246, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37728, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3313195431121, telescope_dec_j2k=-24.266758049317, observability=1)
2025-11-17T12:12:39.099 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:12:39
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.529945611953735s
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:39.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:39.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:39.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3601941;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37995;2460996.92545255;12.21084361;1.3;_
2025-11-17T12:12:39.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3601941;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37995;2460996.92545255;12.21084361;1.3;_
2025-11-17T12:12:39.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:39.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:39.101 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:39.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:39.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:39.102 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3601941, teldec = -24.256501
2025-11-17T12:12:39.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3601941 -24.256501
2025-11-17T12:12:39.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3601941 -24.256501
2025-11-17T12:12:39.102 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3601941 -24.256501
2025-11-17T12:12:39.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3601941;-24.256501;50.108372;89.99299;50.08601;90.12017;15.37995;2460996.92545258;12.21084361;1.3;_18.3339890796332 -24.2668576199722
2025-11-17T12:12:39.103 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.3339890796332     dec_j2k = -24.2668576199722
2025-11-17T12:12:39.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:39.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:39.103 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104588681909927;171.162351965909;_
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104588681909927;171.162351965909;_
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:39.104 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:39.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:39.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:39.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:12:39.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51573)
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:39.110 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:39.117 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:39.117 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92545255, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104588681909927, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.99299, telescope_ra=18.3601941, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.37995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:11:40.728781', telescope_ra_j2k=18.3339890796332, telescope_dec_j2k=-24.2668576199722, observability=1)
2025-11-17T12:12:40.872 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:40.872 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:40.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:40.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:40.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:40.873 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:40.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:40.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:40.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:40.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:40.874 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:12:40.874 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:12:40.875 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:12:40.876 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:12:40.876 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:41.876 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:12:41.877 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:41.878 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:41.879 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:41.879 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:41.879 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:41.879 [DEBUG] [ThreadPoolExecutor-2770_0] [payload.py] [to_registers()] [0]
2025-11-17T12:12:41.881 [DEBUG] [ThreadPoolExecutor-2770_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58669)
2025-11-17T12:12:41.882 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:41.882 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:41.882 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:12:41.882 [DEBUG] [ThreadPoolExecutor-2770_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:41.882 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:41.889 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:41.889 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:12:41.890 [DEBUG] [ThreadPoolExecutor-2770_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:12:41.890 [DEBUG] [ThreadPoolExecutor-2770_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:12:41.890 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:41.890 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:41.890 [DEBUG] [ThreadPoolExecutor-2770_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Status age = 3.3297457695007324s
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:12:42.447 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 17;18.3611188;-24.256501;50.108372;89.99299;50.08601;90.12017;15.38087;2460996.9254913;12.21176583;1.3;_
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response 17;18.3611188;-24.256501;50.108372;89.99299;50.08601;90.12017;15.38087;2460996.9254913;12.21176583;1.3;_
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:12:42.448 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:12:42.449 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:42.449 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:12:42.449 [INFO] [Thread-67615 (handle)] [driver.py] [get_status()] Telra = 18.3611188, teldec = -24.256501
2025-11-17T12:12:42.449 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3611188 -24.256501
2025-11-17T12:12:42.449 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3611188 -24.256501
2025-11-17T12:12:42.449 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3611188 -24.256501
2025-11-17T12:12:42.450 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 17;18.3611188;-24.256501;50.108372;89.99299;50.08601;90.12017;15.38087;2460996.92549132;12.21176583;1.3;_18.3349137927413 -24.2668921096615
2025-11-17T12:12:42.450 [INFO] [Thread-67615 (handle)] [driver.py] [get_status()] ra_j2k = 18.3349137927413     dec_j2k = -24.2668921096615
2025-11-17T12:12:42.450 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:12:42.450 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 140;0.104588962693527;171.162357330327;_
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response 140;0.104588962693527;171.162357330327;_
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:42.451 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:12:42.452 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:12:42.453 [DEBUG] [Thread-67615 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:42.453 [DEBUG] [Thread-67615 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:12:42.453 [DEBUG] [Thread-67615 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40923)
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:12:42.458 [DEBUG] [Thread-67615 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:12:42.466 [DEBUG] [Thread-67615 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:12:42.466 [DEBUG] [Thread-67615 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:42.466 [DEBUG] [Thread-67615 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:12:42.466 [DEBUG] [Thread-67615 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:12:42.466 [DEBUG] [Thread-67615 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:12:42.467 [DEBUG] [Thread-67615 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:12:42.467 [DEBUG] [Thread-67615 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:12:42.467 [DEBUG] [Thread-67615 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:12:42.467 [DEBUG] [Thread-67615 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:12:42.467 [INFO] [Thread-67615 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9254913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104588962693527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108372, telescope_az=89.99299, telescope_ra=18.3611188, telescope_dec=-24.256501, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.38087, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3349137927413, telescope_dec_j2k=-24.2668921096615, observability=1)
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Status age = 18.04753875732422s
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:00.514 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:00.515 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:00.515 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:00.515 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:00.515 [DEBUG] [Thread-67616 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:00.516 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:00.516 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:00.516 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:00.516 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:00.517 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 17;18.3661601;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38591;2460996.92570043;12.21679333;1.3;_
2025-11-17T12:13:00.517 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response 17;18.3661601;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38591;2460996.92570043;12.21679333;1.3;_
2025-11-17T12:13:00.517 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:00.517 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:00.517 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:00.518 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:00.518 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:00.518 [INFO] [Thread-67616 (handle)] [driver.py] [get_status()] Telra = 18.3661601, teldec = -24.2565
2025-11-17T12:13:00.518 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3661601 -24.2565
2025-11-17T12:13:00.518 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3661601 -24.2565
2025-11-17T12:13:00.518 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3661601 -24.2565
2025-11-17T12:13:00.519 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 17;18.3661601;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38591;2460996.92570045;12.21679333;1.3;_18.3399551685418 -24.2670791319183
2025-11-17T12:13:00.519 [INFO] [Thread-67616 (handle)] [driver.py] [get_status()] ra_j2k = 18.3399551685418     dec_j2k = -24.2670791319183
2025-11-17T12:13:00.519 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:00.519 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:00.519 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 140;0.104589203365183;171.162362694745;_
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response 140;0.104589203365183;171.162362694745;_
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:00.520 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:00.521 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:00.522 [DEBUG] [Thread-67616 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:00.522 [DEBUG] [Thread-67616 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:00.522 [DEBUG] [Thread-67616 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43225)
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:00.528 [DEBUG] [Thread-67616 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:00.530 [DEBUG] [Thread-67616 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:00.530 [INFO] [Thread-67616 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92570043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104589203365183, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.3661601, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.38591, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3399551685418, telescope_dec_j2k=-24.2670791319183, observability=1)
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:06.890 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:06.891 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:13:06.892 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:13:06.893 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Status age = 8.4952232837677s
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:09.025 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:09.026 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:09.026 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 17;18.3685327;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38829;2460996.92579892;12.21915944;1.3;_
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response 17;18.3685327;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38829;2460996.92579892;12.21915944;1.3;_
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:09.027 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:09.028 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:09.028 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:09.028 [INFO] [Thread-67617 (handle)] [driver.py] [get_status()] Telra = 18.3685327, teldec = -24.2565
2025-11-17T12:13:09.028 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3685327 -24.2565
2025-11-17T12:13:09.028 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3685327 -24.2565
2025-11-17T12:13:09.028 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3685327 -24.2565
2025-11-17T12:13:09.029 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 17;18.3685327;-24.2565;50.108371;89.992989;50.08601;90.12017;15.38829;2460996.92579895;12.21915944;1.3;_18.3423278065424 -24.2671676156874
2025-11-17T12:13:09.029 [INFO] [Thread-67617 (handle)] [driver.py] [get_status()] ra_j2k = 18.3423278065424     dec_j2k = -24.2671676156874
2025-11-17T12:13:09.029 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 140;0.10458972482044;171.162351965909;_
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response 140;0.10458972482044;171.162351965909;_
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:09.030 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:09.031 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:09.032 [DEBUG] [Thread-67617 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:09.032 [DEBUG] [Thread-67617 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:09.032 [DEBUG] [Thread-67617 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41381)
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:09.036 [DEBUG] [Thread-67617 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:09.043 [DEBUG] [Thread-67617 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:09.044 [DEBUG] [Thread-67617 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:09.044 [INFO] [Thread-67617 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92579892, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10458972482044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.3685327, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.38829, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3423278065424, telescope_dec_j2k=-24.2671676156874, observability=1)
2025-11-17T12:13:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.853863000869751s
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3701477;-24.2565;50.108371;89.992989;50.08601;90.12017;15.3899;2460996.92586689;12.22077;1.3;_
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3701477;-24.2565;50.108371;89.992989;50.08601;90.12017;15.3899;2460996.92586689;12.22077;1.3;_
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:14.900 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3701477, teldec = -24.2565
2025-11-17T12:13:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3701477 -24.2565
2025-11-17T12:13:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3701477 -24.2565
2025-11-17T12:13:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3701477 -24.2565
2025-11-17T12:13:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3701477;-24.2565;50.108371;89.992989;50.08601;90.12017;15.3899;2460996.92586691;12.22077;1.3;_18.3439428332952 -24.26722784344
2025-11-17T12:13:14.902 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3439428332952     dec_j2k = -24.26722784344
2025-11-17T12:13:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104589885268211;171.162346601491;_
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104589885268211;171.162346601491;_
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:14.907 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42257)
2025-11-17T12:13:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:14.908 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:14.908 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:14.915 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92586689, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104589885268211, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.3701477, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.3899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3439428332952, telescope_dec_j2k=-24.26722784344, observability=1)
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Status age = 3.671609878540039s
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:18.587 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 17;18.3711752;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39093;2460996.92590958;12.22179472;1.3;_
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response 17;18.3711752;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39093;2460996.92590958;12.22179472;1.3;_
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:18.588 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:18.589 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:18.589 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:18.589 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:18.590 [INFO] [Thread-67618 (handle)] [driver.py] [get_status()] Telra = 18.3711752, teldec = -24.2565
2025-11-17T12:13:18.590 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3711752 -24.2565
2025-11-17T12:13:18.590 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3711752 -24.2565
2025-11-17T12:13:18.590 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3711752 -24.2565
2025-11-17T12:13:18.591 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 17;18.3711752;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39093;2460996.92590962;12.22179472;1.3;_18.3449703506894 -24.2672661608356
2025-11-17T12:13:18.591 [INFO] [Thread-67618 (handle)] [driver.py] [get_status()] ra_j2k = 18.3449703506894     dec_j2k = -24.2672661608356
2025-11-17T12:13:18.591 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:18.591 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:18.591 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 140;0.104589484148783;171.162351965909;_
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response 140;0.104589484148783;171.162351965909;_
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:18.592 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:18.593 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:18.594 [DEBUG] [Thread-67618 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:18.594 [DEBUG] [Thread-67618 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:18.594 [DEBUG] [Thread-67618 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34821)
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:18.596 [DEBUG] [Thread-67618 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:18.603 [DEBUG] [Thread-67618 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:18.604 [DEBUG] [Thread-67618 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:18.604 [INFO] [Thread-67618 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92590958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104589484148783, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.3711752, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.39093, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3449703506894, telescope_dec_j2k=-24.2672661608356, observability=1)
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.562114477157593s
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:24.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.372735;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39249;2460996.92597416;12.22335028;1.3;_
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.372735;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39249;2460996.92597416;12.22335028;1.3;_
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:24.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:24.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:24.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:24.168 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.372735, teldec = -24.2565
2025-11-17T12:13:24.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.372735 -24.2565
2025-11-17T12:13:24.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.372735 -24.2565
2025-11-17T12:13:24.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.372735 -24.2565
2025-11-17T12:13:24.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.372735;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39249;2460996.92597418;12.22335028;1.3;_18.3465301776502 -24.2673243273776
2025-11-17T12:13:24.170 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3465301776502     dec_j2k = -24.2673243273776
2025-11-17T12:13:24.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:24.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:24.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:24.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104590085827925;171.162357330327;_
2025-11-17T12:13:24.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104590085827925;171.162357330327;_
2025-11-17T12:13:24.171 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:24.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:24.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:24.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:24.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:24.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:24.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:24.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40743)
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:24.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:24.185 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:13:24.185 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92597416, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590085827925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.372735, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.39249, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3465301776502, telescope_dec_j2k=-24.2673243273776, observability=1)
2025-11-17T12:13:24.185 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08650517463684 seconds ago
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.474844694137573s
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:28.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:28.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:28.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3739873;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39374;2460996.92602618;12.22459917;1.3;_
2025-11-17T12:13:28.662 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.3739873;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39374;2460996.92602618;12.22459917;1.3;_
2025-11-17T12:13:28.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:28.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:28.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:28.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:28.663 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:28.663 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.3739873, teldec = -24.2565
2025-11-17T12:13:28.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3739873 -24.2565
2025-11-17T12:13:28.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3739873 -24.2565
2025-11-17T12:13:28.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3739873 -24.2565
2025-11-17T12:13:28.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3739873;-24.2565;50.108371;89.992989;50.08601;90.12017;15.39374;2460996.9260262;12.22459917;1.3;_18.3477824997804 -24.2673710257752
2025-11-17T12:13:28.664 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.3477824997804     dec_j2k = -24.2673710257752
2025-11-17T12:13:28.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:28.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:28.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104589965492097;171.162362694745;_
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104589965492097;171.162362694745;_
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:28.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:28.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:28.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:28.667 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:28.667 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43777)
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:28.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:28.676 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:28.677 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:28.677 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92602618, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104589965492097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992989, telescope_ra=18.3739873, telescope_dec=-24.2565, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.39374, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3477824997804, telescope_dec_j2k=-24.2673710257752, observability=1)
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Status age = 8.021169424057007s
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:36.698 [DEBUG] [Thread-67619 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:36.699 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:36.699 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:36.699 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:36.699 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:36.700 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 17;18.3762218;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39598;2460996.92611921;12.2268275;1.3;_
2025-11-17T12:13:36.700 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response 17;18.3762218;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39598;2460996.92611921;12.2268275;1.3;_
2025-11-17T12:13:36.700 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:36.700 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:36.700 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:36.701 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:36.701 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:36.701 [INFO] [Thread-67619 (handle)] [driver.py] [get_status()] Telra = 18.3762218, teldec = -24.256499
2025-11-17T12:13:36.701 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3762218 -24.256499
2025-11-17T12:13:36.701 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3762218 -24.256499
2025-11-17T12:13:36.701 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3762218 -24.256499
2025-11-17T12:13:36.702 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 17;18.3762218;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39598;2460996.92611924;12.2268275;1.3;_18.3500170405392 -24.2674533480114
2025-11-17T12:13:36.702 [INFO] [Thread-67619 (handle)] [driver.py] [get_status()] ra_j2k = 18.3500170405392     dec_j2k = -24.2674533480114
2025-11-17T12:13:36.702 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:36.702 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:36.702 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 140;0.104590567171239;171.162351965909;_
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response 140;0.104590567171239;171.162351965909;_
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:36.703 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:36.704 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:36.705 [DEBUG] [Thread-67619 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:36.705 [DEBUG] [Thread-67619 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:36.705 [DEBUG] [Thread-67619 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34637)
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:36.708 [DEBUG] [Thread-67619 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:36.715 [DEBUG] [Thread-67619 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:36.716 [DEBUG] [Thread-67619 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:36.716 [INFO] [Thread-67619 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92611921, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590567171239, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992988, telescope_ra=18.3762218, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.39598, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3500170405392, telescope_dec_j2k=-24.2674533480114, observability=1)
2025-11-17T12:13:39.178 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:13:39
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.4621102809906006s
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:39.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:39.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:39.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3769145;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39667;2460996.92614792;12.22751833;1.3;_
2025-11-17T12:13:39.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3769145;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39667;2460996.92614792;12.22751833;1.3;_
2025-11-17T12:13:39.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:39.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:39.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:39.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:39.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:39.181 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3769145, teldec = -24.256499
2025-11-17T12:13:39.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3769145 -24.256499
2025-11-17T12:13:39.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3769145 -24.256499
2025-11-17T12:13:39.181 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3769145 -24.256499
2025-11-17T12:13:39.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3769145;-24.256499;50.108371;89.992988;50.08601;90.12017;15.39667;2460996.92614794;12.22751833;1.3;_18.3507097533917 -24.2674791773978
2025-11-17T12:13:39.182 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.3507097533917     dec_j2k = -24.2674791773978
2025-11-17T12:13:39.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:39.182 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104590366611525;171.162351965909;_
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104590366611525;171.162351965909;_
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:39.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:39.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:39.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:13:39.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:13:39.185 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40487)
2025-11-17T12:13:39.185 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:39.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:39.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:39.186 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:39.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:39.193 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:39.193 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92614792, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590366611525, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992988, telescope_ra=18.3769145, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.39667, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:12:40.871793', telescope_ra_j2k=18.3507097533917, telescope_dec_j2k=-24.2674791773978, observability=1)
2025-11-17T12:13:41.015 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:41.015 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:41.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:41.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:41.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:41.016 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:41.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:41.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:41.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:41.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:41.017 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:13:41.017 [INFO] [ThreadPoolExecutor-2771_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:13:41.017 [INFO] [ThreadPoolExecutor-2771_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:13:54.767 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:13:54.767 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Status age = 15.574338436126709s
2025-11-17T12:13:54.767 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:13:54.767 [DEBUG] [Thread-67620 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:13:54.767 [DEBUG] [Thread-67620 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:13:54.768 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:13:54.769 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 17;18.381265;-24.256499;50.108371;89.992988;50.08601;90.12017;15.40102;2460996.92632834;12.23185694;1.3;_
2025-11-17T12:13:54.769 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response 17;18.381265;-24.256499;50.108371;89.992988;50.08601;90.12017;15.40102;2460996.92632834;12.23185694;1.3;_
2025-11-17T12:13:54.769 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:13:54.769 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:13:54.769 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:13:54.770 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:54.770 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:13:54.770 [INFO] [Thread-67620 (handle)] [driver.py] [get_status()] Telra = 18.381265, teldec = -24.256499
2025-11-17T12:13:54.770 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] UnCookCoordinates 18.381265 -24.256499
2025-11-17T12:13:54.770 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.381265 -24.256499
2025-11-17T12:13:54.770 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.381265 -24.256499
2025-11-17T12:13:54.771 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 17;18.381265;-24.256499;50.108371;89.992988;50.08601;90.12017;15.40102;2460996.92632837;12.23185694;1.3;_18.3550603371307 -24.2676413914278
2025-11-17T12:13:54.771 [INFO] [Thread-67620 (handle)] [driver.py] [get_status()] ra_j2k = 18.3550603371307     dec_j2k = -24.2676413914278
2025-11-17T12:13:54.771 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:13:54.771 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:13:54.771 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:13:54.772 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 140;0.104591168850381;171.162346601491;_
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response 140;0.104591168850381;171.162346601491;_
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:54.773 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:54.774 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:54.774 [DEBUG] [Thread-67620 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:54.774 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:13:54.774 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:13:54.774 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:13:54.775 [DEBUG] [Thread-67620 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:54.775 [DEBUG] [Thread-67620 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:13:54.775 [DEBUG] [Thread-67620 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:13:54.779 [DEBUG] [Thread-67620 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41533)
2025-11-17T12:13:54.779 [DEBUG] [Thread-67620 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:13:54.779 [DEBUG] [Thread-67620 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:13:54.779 [DEBUG] [Thread-67620 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:13:54.779 [DEBUG] [Thread-67620 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:13:54.780 [DEBUG] [Thread-67620 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:13:54.787 [DEBUG] [Thread-67620 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:13:54.788 [DEBUG] [Thread-67620 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:13:54.788 [INFO] [Thread-67620 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92632834, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104591168850381, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108371, telescope_az=89.992988, telescope_ra=18.381265, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.40102, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3550603371307, telescope_dec_j2k=-24.2676413914278, observability=1)
2025-11-17T12:14:01.893 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.893 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.893 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:01.893 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:01.893 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.894 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:01.895 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:01.896 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:01.896 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.896 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:01.896 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.897 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:14:01.898 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:01.899 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Park
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:14:01.900 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:14:01.901 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 29;18.3832398;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40299;2460996.92641089;12.23382639;1.3;_Park Command Successful
2025-11-17T12:14:02.901 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:14:02.901 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:14:02.901 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:14:02.902 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:14:02.902 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:14:03.902 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:14:03.902 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:14:03.902 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:14:03.903 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:14:03.903 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:14:04.903 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:14:04.904 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:14:04.904 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:14:04.904 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:14:04.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:05.905 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:05.906 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:14:05.907 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:14:05.907 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:14:05.907 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:06.908 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:14:06.909 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:14:06.909 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:14:06.909 [DEBUG] [ThreadPoolExecutor-2770_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:06.909 [INFO] [ThreadPoolExecutor-2770_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Status age = 14.288401365280151s
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:09.076 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:09.077 [DEBUG] [Thread-67621 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:09.077 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:09.077 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:09.077 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:09.077 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:09.078 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 17;18.3852473;-24.256499;50.10837;89.992988;50.08601;90.12017;15.405;2460996.92649396;12.23582833;1.3;_
2025-11-17T12:14:09.078 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response 17;18.3852473;-24.256499;50.10837;89.992988;50.08601;90.12017;15.405;2460996.92649396;12.23582833;1.3;_
2025-11-17T12:14:09.078 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:09.078 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:09.078 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:09.079 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:09.079 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:09.079 [INFO] [Thread-67621 (handle)] [driver.py] [get_status()] Telra = 18.3852473, teldec = -24.256499
2025-11-17T12:14:09.079 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3852473 -24.256499
2025-11-17T12:14:09.079 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3852473 -24.256499
2025-11-17T12:14:09.079 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3852473 -24.256499
2025-11-17T12:14:09.080 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 17;18.3852473;-24.256499;50.10837;89.992988;50.08601;90.12017;15.405;2460996.92649398;12.23582833;1.3;_18.3590427183483 -24.2677898654098
2025-11-17T12:14:09.080 [INFO] [Thread-67621 (handle)] [driver.py] [get_status()] ra_j2k = 18.3590427183483     dec_j2k = -24.2677898654098
2025-11-17T12:14:09.080 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:09.080 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:09.080 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 140;0.104591329298152;171.162357330327;_
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response 140;0.104591329298152;171.162357330327;_
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:09.081 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:09.082 [DEBUG] [Thread-67621 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:09.082 [DEBUG] [Thread-67621 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:09.082 [DEBUG] [Thread-67621 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57817)
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:09.083 [DEBUG] [Thread-67621 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:09.090 [DEBUG] [Thread-67621 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:09.091 [DEBUG] [Thread-67621 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:09.091 [DEBUG] [Thread-67621 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:09.091 [DEBUG] [Thread-67621 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:09.091 [INFO] [Thread-67621 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92649396, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104591329298152, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992988, telescope_ra=18.3852473, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.405, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3590427183483, telescope_dec_j2k=-24.2677898654098, observability=1)
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Status age = 3.755110263824463s
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:12.846 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:12.847 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:12.848 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 17;18.3863102;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40606;2460996.92653759;12.23688833;1.3;_
2025-11-17T12:14:12.848 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response 17;18.3863102;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40606;2460996.92653759;12.23688833;1.3;_
2025-11-17T12:14:12.848 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:12.848 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:12.848 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:12.849 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:12.849 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:12.849 [INFO] [Thread-67622 (handle)] [driver.py] [get_status()] Telra = 18.3863102, teldec = -24.256499
2025-11-17T12:14:12.849 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3863102 -24.256499
2025-11-17T12:14:12.849 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3863102 -24.256499
2025-11-17T12:14:12.849 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3863102 -24.256499
2025-11-17T12:14:12.850 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 17;18.3863102;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40606;2460996.92653762;12.23688833;1.3;_18.3601056407637 -24.2678294921784
2025-11-17T12:14:12.850 [INFO] [Thread-67622 (handle)] [driver.py] [get_status()] ra_j2k = 18.3601056407637     dec_j2k = -24.2678294921784
2025-11-17T12:14:12.850 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:12.850 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:12.850 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 140;0.104590767730953;171.162357330327;_
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response 140;0.104590767730953;171.162357330327;_
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:12.851 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:12.852 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:12.853 [DEBUG] [Thread-67622 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:12.853 [DEBUG] [Thread-67622 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:12.853 [DEBUG] [Thread-67622 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:12.859 [DEBUG] [Thread-67622 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41211)
2025-11-17T12:14:12.859 [DEBUG] [Thread-67622 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:12.859 [DEBUG] [Thread-67622 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:12.860 [DEBUG] [Thread-67622 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:12.860 [DEBUG] [Thread-67622 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:12.860 [DEBUG] [Thread-67622 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:12.867 [DEBUG] [Thread-67622 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:12.867 [INFO] [Thread-67622 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92653759, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590767730953, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992988, telescope_ra=18.3863102, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.40606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3601056407637, telescope_dec_j2k=-24.2678294921784, observability=1)
2025-11-17T12:14:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0505950450897217s
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3868617;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40662;2460996.92656156;12.23743833;1.3;_
2025-11-17T12:14:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.3868617;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40662;2460996.92656156;12.23743833;1.3;_
2025-11-17T12:14:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:14.921 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.3868617, teldec = -24.256499
2025-11-17T12:14:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3868617 -24.256499
2025-11-17T12:14:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3868617 -24.256499
2025-11-17T12:14:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3868617 -24.256499
2025-11-17T12:14:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.3868617;-24.256499;50.10837;89.992988;50.08601;90.12017;15.40662;2460996.9265616;12.23743833;1.3;_18.3606571525167 -24.2678500527546
2025-11-17T12:14:14.922 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3606571525167     dec_j2k = -24.2678500527546
2025-11-17T12:14:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104590968290667;171.162357330327;_
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104590968290667;171.162357330327;_
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40803)
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:14.939 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:14.939 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92656156, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590968290667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992988, telescope_ra=18.3868617, telescope_dec=-24.256499, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.40662, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3606571525167, telescope_dec_j2k=-24.2678500527546, observability=1)
2025-11-17T12:14:24.245 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:14:24.245 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.306759595870972s
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:24.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:24.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:24.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3894571;-24.256498;50.10837;89.992987;50.08601;90.12017;15.40921;2460996.92666954;12.24002667;1.3;_
2025-11-17T12:14:24.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.3894571;-24.256498;50.10837;89.992987;50.08601;90.12017;15.40921;2460996.92666954;12.24002667;1.3;_
2025-11-17T12:14:24.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:24.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:24.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:24.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:24.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:24.249 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.3894571, teldec = -24.256498
2025-11-17T12:14:24.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.3894571 -24.256498
2025-11-17T12:14:24.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.3894571 -24.256498
2025-11-17T12:14:24.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3894571 -24.256498
2025-11-17T12:14:24.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.3894571;-24.256498;50.10837;89.992987;50.08601;90.12017;15.40921;2460996.92666956;12.24002667;1.3;_18.3632526091503 -24.267945809591
2025-11-17T12:14:24.250 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3632526091503     dec_j2k = -24.267945809591
2025-11-17T12:14:24.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:24.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:24.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104591650193695;171.162362694745;_
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104591650193695;171.162362694745;_
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:24.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:24.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:24.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:24.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:24.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50273)
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:24.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:24.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:24.265 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:14:24.265 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92666954, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104591650193695, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992987, telescope_ra=18.3894571, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.40921, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3632526091503, telescope_dec_j2k=-24.267945809591, observability=1)
2025-11-17T12:14:24.265 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08721923828125 seconds ago
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.498767375946045s
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:27.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:27.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:27.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3904568;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41021;2460996.92671025;12.24102361;1.3;_
2025-11-17T12:14:27.766 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.3904568;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41021;2460996.92671025;12.24102361;1.3;_
2025-11-17T12:14:27.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:27.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:27.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:27.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:27.767 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:27.768 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.3904568, teldec = -24.256498
2025-11-17T12:14:27.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3904568 -24.256498
2025-11-17T12:14:27.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3904568 -24.256498
2025-11-17T12:14:27.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3904568 -24.256498
2025-11-17T12:14:27.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.3904568;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41021;2460996.92671029;12.24102361;1.3;_18.3642523313823 -24.2679830772533
2025-11-17T12:14:27.769 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.3642523313823     dec_j2k = -24.2679830772533
2025-11-17T12:14:27.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:27.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:27.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104591529857866;171.162357330327;_
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104591529857866;171.162357330327;_
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:27.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:27.771 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51635)
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:27.775 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:27.782 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:27.782 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92671025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104591529857866, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992987, telescope_ra=18.3904568, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.41021, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3642523313823, telescope_dec_j2k=-24.2679830772533, observability=1)
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Status age = 3.1748178005218506s
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:30.957 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 17;18.3913448;-24.256498;50.10837;89.992987;50.08601;90.12017;15.4111;2460996.9267472;12.24190917;1.3;_
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response 17;18.3913448;-24.256498;50.10837;89.992987;50.08601;90.12017;15.4111;2460996.9267472;12.24190917;1.3;_
2025-11-17T12:14:30.958 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:30.959 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:30.959 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:30.960 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:30.960 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:30.960 [INFO] [Thread-67623 (handle)] [driver.py] [get_status()] Telra = 18.3913448, teldec = -24.256498
2025-11-17T12:14:30.960 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3913448 -24.256498
2025-11-17T12:14:30.960 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3913448 -24.256498
2025-11-17T12:14:30.960 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3913448 -24.256498
2025-11-17T12:14:30.961 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 17;18.3913448;-24.256498;50.10837;89.992987;50.08601;90.12017;15.4111;2460996.92674723;12.24190917;1.3;_18.3651403513608 -24.2680161802812
2025-11-17T12:14:30.961 [INFO] [Thread-67623 (handle)] [driver.py] [get_status()] ra_j2k = 18.3651403513608     dec_j2k = -24.2680161802812
2025-11-17T12:14:30.961 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:30.961 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:30.961 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 140;0.104590687507067;171.162362694745;_
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response 140;0.104590687507067;171.162362694745;_
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:30.962 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:30.963 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:30.964 [DEBUG] [Thread-67623 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:30.964 [DEBUG] [Thread-67623 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:30.964 [DEBUG] [Thread-67623 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43457)
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:30.966 [DEBUG] [Thread-67623 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:30.973 [DEBUG] [Thread-67623 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:30.973 [INFO] [Thread-67623 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9267472, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104590687507067, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992987, telescope_ra=18.3913448, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4111, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3651403513608, telescope_dec_j2k=-24.2680161802812, observability=1)
2025-11-17T12:14:39.254 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:14:39
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.280678987503052s
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:39.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3936647;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41342;2460996.92684323;12.24422278;1.3;_
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.3936647;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41342;2460996.92684323;12.24422278;1.3;_
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:39.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:39.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:39.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:39.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:39.256 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.3936647, teldec = -24.256498
2025-11-17T12:14:39.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3936647 -24.256498
2025-11-17T12:14:39.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3936647 -24.256498
2025-11-17T12:14:39.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3936647 -24.256498
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.3936647;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41342;2460996.92684326;12.24422278;1.3;_18.3674603045787 -24.2681026593206
2025-11-17T12:14:39.258 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.3674603045787     dec_j2k = -24.2681026593206
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104592372208665;171.162357330327;_
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104592372208665;171.162357330327;_
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:39.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:39.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:39.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:39.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:39.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:39.263 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57627)
2025-11-17T12:14:39.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:39.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:39.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:39.263 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:39.264 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:39.271 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:39.272 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:39.272 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92684323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592372208665, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992987, telescope_ra=18.3936647, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.41342, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:13:41.014593', telescope_ra_j2k=18.3674603045787, telescope_dec_j2k=-24.2681026593206, observability=1)
2025-11-17T12:14:41.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:41.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:41.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:41.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:41.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:41.156 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:41.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:41.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:41.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:41.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:41.157 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:14:41.157 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:14:41.158 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:14:41.159 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:42.159 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:42.159 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:42.159 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:42.159 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:14:42.160 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:42.161 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:42.162 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:42.162 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:42.162 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:42.162 [DEBUG] [ThreadPoolExecutor-2772_0] [payload.py] [to_registers()] [0]
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44429)
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:42.169 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:42.176 [DEBUG] [ThreadPoolExecutor-2772_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Status age = 9.753176212310791s
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:14:49.025 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:14:49.026 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:14:49.027 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 17;18.3963677;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41612;2460996.92695633;12.24691833;1.3;_
2025-11-17T12:14:49.027 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response 17;18.3963677;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41612;2460996.92695633;12.24691833;1.3;_
2025-11-17T12:14:49.027 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:14:49.027 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:14:49.027 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:14:49.028 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:49.028 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:14:49.029 [INFO] [Thread-67624 (handle)] [driver.py] [get_status()] Telra = 18.3963677, teldec = -24.256498
2025-11-17T12:14:49.029 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] UnCookCoordinates 18.3963677 -24.256498
2025-11-17T12:14:49.029 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.3963677 -24.256498
2025-11-17T12:14:49.029 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.3963677 -24.256498
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 17;18.3963677;-24.256498;50.10837;89.992987;50.08601;90.12017;15.41612;2460996.92695635;12.24691833;1.3;_18.3701633684528 -24.2682034143839
2025-11-17T12:14:49.030 [INFO] [Thread-67624 (handle)] [driver.py] [get_status()] ra_j2k = 18.3701633684528     dec_j2k = -24.2682034143839
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 140;0.104591930977294;171.162368059163;_
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response 140;0.104591930977294;171.162368059163;_
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:49.030 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:49.031 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:49.031 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:14:49.031 [DEBUG] [Thread-67624 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:14:49.032 [DEBUG] [Thread-67624 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:14:49.035 [DEBUG] [Thread-67624 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51857)
2025-11-17T12:14:49.035 [DEBUG] [Thread-67624 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:14:49.035 [DEBUG] [Thread-67624 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:14:49.035 [DEBUG] [Thread-67624 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:14:49.036 [DEBUG] [Thread-67624 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:14:49.036 [DEBUG] [Thread-67624 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:14:49.043 [DEBUG] [Thread-67624 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:14:49.043 [INFO] [Thread-67624 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92695633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104591930977294, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10837, telescope_az=89.992987, telescope_ra=18.3963677, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.41612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3701633684528, telescope_dec_j2k=-24.2682034143839, observability=1)
2025-11-17T12:15:07.095 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:07.095 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Status age = 18.052441596984863s
2025-11-17T12:15:07.095 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:07.096 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:07.097 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 17;18.4014084;-24.256498;50.108369;89.992986;50.08601;90.12017;15.42116;2460996.92716547;12.25194528;1.3;_
2025-11-17T12:15:07.097 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response 17;18.4014084;-24.256498;50.108369;89.992986;50.08601;90.12017;15.42116;2460996.92716547;12.25194528;1.3;_
2025-11-17T12:15:07.097 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:07.097 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:07.097 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:07.098 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:07.098 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:07.098 [INFO] [Thread-67625 (handle)] [driver.py] [get_status()] Telra = 18.4014084, teldec = -24.256498
2025-11-17T12:15:07.098 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4014084 -24.256498
2025-11-17T12:15:07.098 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4014084 -24.256498
2025-11-17T12:15:07.098 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4014084 -24.256498
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 17;18.4014084;-24.256498;50.108369;89.992986;50.08601;90.12017;15.42116;2460996.9271655;12.25194528;1.3;_18.3752041929393 -24.2683912938405
2025-11-17T12:15:07.099 [INFO] [Thread-67625 (handle)] [driver.py] [get_status()] ra_j2k = 18.3752041929393     dec_j2k = -24.2683912938405
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 140;0.104592131537008;171.162351965909;_
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response 140;0.104592131537008;171.162351965909;_
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:07.099 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:07.100 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:07.100 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:07.100 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:07.101 [DEBUG] [Thread-67625 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49153)
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:07.103 [DEBUG] [Thread-67625 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:07.110 [DEBUG] [Thread-67625 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:07.110 [DEBUG] [Thread-67625 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:07.110 [DEBUG] [Thread-67625 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:07.111 [DEBUG] [Thread-67625 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:07.111 [INFO] [Thread-67625 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92716547, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592131537008, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4014084, telescope_dec=-24.256498, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.42116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3752041929393, telescope_dec_j2k=-24.2683912938405, observability=1)
2025-11-17T12:15:07.176 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:07.176 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:07.176 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:07.176 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:07.177 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:15:07.178 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:15:07.179 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Status age = 2.0113444328308105s
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:09.122 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:09.123 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:09.124 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 17;18.4019691;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42172;2460996.92718894;12.25250444;1.3;_
2025-11-17T12:15:09.124 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response 17;18.4019691;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42172;2460996.92718894;12.25250444;1.3;_
2025-11-17T12:15:09.124 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:09.124 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:09.124 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:09.125 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:09.125 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:09.125 [INFO] [Thread-67626 (handle)] [driver.py] [get_status()] Telra = 18.4019691, teldec = -24.256497
2025-11-17T12:15:09.126 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4019691 -24.256497
2025-11-17T12:15:09.126 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4019691 -24.256497
2025-11-17T12:15:09.126 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4019691 -24.256497
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 17;18.4019691;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42172;2460996.92718896;12.25250444;1.3;_18.3757649074179 -24.2684111914571
2025-11-17T12:15:09.127 [INFO] [Thread-67626 (handle)] [driver.py] [get_status()] ra_j2k = 18.3757649074179     dec_j2k = -24.2684111914571
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 140;0.104592171648951;171.162346601491;_
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response 140;0.104592171648951;171.162346601491;_
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:09.127 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:09.128 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:09.128 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:09.128 [DEBUG] [Thread-67626 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:09.128 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:09.128 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:09.129 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:09.129 [DEBUG] [Thread-67626 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:09.129 [DEBUG] [Thread-67626 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:09.129 [DEBUG] [Thread-67626 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58551)
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:09.136 [DEBUG] [Thread-67626 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:09.143 [DEBUG] [Thread-67626 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:09.143 [INFO] [Thread-67626 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92718894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592171648951, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4019691, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.42172, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3757649074179, telescope_dec_j2k=-24.2684111914571, observability=1)
2025-11-17T12:15:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.7450950145721436s
2025-11-17T12:15:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4035779;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42333;2460996.92725568;12.25410889;1.3;_
2025-11-17T12:15:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.4035779;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42333;2460996.92725568;12.25410889;1.3;_
2025-11-17T12:15:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:14.892 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.4035779, teldec = -24.256497
2025-11-17T12:15:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4035779 -24.256497
2025-11-17T12:15:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4035779 -24.256497
2025-11-17T12:15:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4035779 -24.256497
2025-11-17T12:15:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4035779;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42333;2460996.92725571;12.25410889;1.3;_18.3773737488693 -24.2684711509013
2025-11-17T12:15:14.893 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3773737488693     dec_j2k = -24.2684711509013
2025-11-17T12:15:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104592652992265;171.162362694745;_
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104592652992265;171.162362694745;_
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40979)
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:14.902 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:14.909 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:14.909 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92725568, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592652992265, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4035779, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.42333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3773737488693, telescope_dec_j2k=-24.2684711509013, observability=1)
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.415580034255981s
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:24.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:24.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:24.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4061965;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42595;2460996.9273649;12.25672028;1.3;_
2025-11-17T12:15:24.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.4061965;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42595;2460996.9273649;12.25672028;1.3;_
2025-11-17T12:15:24.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:24.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:24.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:24.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:24.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:24.328 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.4061965, teldec = -24.256497
2025-11-17T12:15:24.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.4061965 -24.256497
2025-11-17T12:15:24.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.4061965 -24.256497
2025-11-17T12:15:24.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4061965 -24.256497
2025-11-17T12:15:24.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4061965;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42595;2460996.92736492;12.25672028;1.3;_18.3799924178618 -24.268568741188
2025-11-17T12:15:24.329 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3799924178618     dec_j2k = -24.268568741188
2025-11-17T12:15:24.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:24.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:24.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104592572768379;171.162357330327;_
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104592572768379;171.162357330327;_
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:24.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:24.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:24.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:24.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:24.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39205)
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:24.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:24.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:15:24.344 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9273649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592572768379, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4061965, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.42595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3799924178618, telescope_dec_j2k=-24.268568741188, observability=1)
2025-11-17T12:15:24.344 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09057426452637 seconds ago
2025-11-17T12:15:25.198 [DEBUG] [Thread-67627 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:25.198 [DEBUG] [Thread-67627 (handle)] [server.py] [get_status()] Status age = 0.8541312217712402s
2025-11-17T12:15:25.198 [DEBUG] [Thread-67627 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8541312217712402
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5294597148895264s
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:26.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:26.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:26.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:26.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:26.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4069265;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42668;2460996.92739439;12.25744833;1.3;_
2025-11-17T12:15:26.875 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.4069265;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42668;2460996.92739439;12.25744833;1.3;_
2025-11-17T12:15:26.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:26.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:26.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:26.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:26.877 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:26.877 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.4069265, teldec = -24.256497
2025-11-17T12:15:26.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4069265 -24.256497
2025-11-17T12:15:26.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4069265 -24.256497
2025-11-17T12:15:26.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4069265 -24.256497
2025-11-17T12:15:26.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4069265;-24.256497;50.108369;89.992986;50.08601;90.12017;15.42668;2460996.92739442;12.25744833;1.3;_18.3807224374315 -24.2685959460084
2025-11-17T12:15:26.878 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.3807224374315     dec_j2k = -24.2685959460084
2025-11-17T12:15:26.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:26.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:26.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104592933775864;171.162362694745;_
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104592933775864;171.162362694745;_
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:26.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:26.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:26.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:26.881 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:26.881 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:26.884 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33937)
2025-11-17T12:15:26.884 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:26.884 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:26.885 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:26.885 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:26.885 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:26.892 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:26.892 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92739439, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592933775864, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4069265, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.42668, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3807224374315, telescope_dec_j2k=-24.2685959460084, observability=1)
2025-11-17T12:15:39.333 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:15:39
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.441225290298462s
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:39.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:39.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:39.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4103829;-24.256497;50.108369;89.992986;50.08601;90.12017;15.43014;2460996.9275386;12.26089528;1.3;_
2025-11-17T12:15:39.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.4103829;-24.256497;50.108369;89.992986;50.08601;90.12017;15.43014;2460996.9275386;12.26089528;1.3;_
2025-11-17T12:15:39.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:39.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:39.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:39.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:39.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:39.336 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.4103829, teldec = -24.256497
2025-11-17T12:15:39.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4103829 -24.256497
2025-11-17T12:15:39.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4103829 -24.256497
2025-11-17T12:15:39.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4103829 -24.256497
2025-11-17T12:15:39.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4103829;-24.256497;50.108369;89.992986;50.08601;90.12017;15.43014;2460996.92753862;12.26089528;1.3;_18.3841789320808 -24.2687247498505
2025-11-17T12:15:39.337 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.3841789320808     dec_j2k = -24.2687247498505
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104592933775864;171.162362694745;_
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104592933775864;171.162362694745;_
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:39.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:39.339 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:39.340 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:39.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:39.341 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41379)
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:39.346 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:39.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:39.353 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:39.353 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:39.353 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:39.354 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:39.354 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:39.354 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:39.354 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:39.354 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:39.354 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9275386, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104592933775864, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992986, telescope_ra=18.4103829, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.43014, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:14:41.155065', telescope_ra_j2k=18.3841789320808, telescope_dec_j2k=-24.2687247498505, observability=1)
2025-11-17T12:15:41.297 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:41.297 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:41.298 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:41.299 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:15:41.300 [INFO] [ThreadPoolExecutor-2773_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:15:41.300 [INFO] [ThreadPoolExecutor-2773_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Status age = 3.92409086227417s
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:15:43.278 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:15:43.279 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 17;18.4114943;-24.256497;50.108369;89.992985;50.08601;90.12017;15.43125;2460996.92758426;12.26200361;1.3;_
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response 17;18.4114943;-24.256497;50.108369;89.992985;50.08601;90.12017;15.43125;2460996.92758426;12.26200361;1.3;_
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:15:43.280 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:15:43.281 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:43.281 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:15:43.281 [INFO] [Thread-67628 (handle)] [driver.py] [get_status()] Telra = 18.4114943, teldec = -24.256497
2025-11-17T12:15:43.281 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4114943 -24.256497
2025-11-17T12:15:43.281 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4114943 -24.256497
2025-11-17T12:15:43.281 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4114943 -24.256497
2025-11-17T12:15:43.282 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 17;18.4114943;-24.256497;50.108369;89.992985;50.08601;90.12017;15.43125;2460996.92758428;12.26200361;1.3;_18.3852903632136 -24.2687661646207
2025-11-17T12:15:43.282 [INFO] [Thread-67628 (handle)] [driver.py] [get_status()] ra_j2k = 18.3852903632136     dec_j2k = -24.2687661646207
2025-11-17T12:15:43.282 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:15:43.282 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:15:43.282 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 140;0.104593054111693;171.162362694745;_
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response 140;0.104593054111693;171.162362694745;_
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:43.283 [DEBUG] [Thread-67628 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:15:43.284 [DEBUG] [Thread-67628 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37099)
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:15:43.289 [DEBUG] [Thread-67628 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:15:43.297 [DEBUG] [Thread-67628 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:15:43.297 [INFO] [Thread-67628 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92758426, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593054111693, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108369, telescope_az=89.992985, telescope_ra=18.4114943, telescope_dec=-24.256497, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.43125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3852903632136, telescope_dec_j2k=-24.2687661646207, observability=1)
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Status age = 18.037169694900513s
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:01.334 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:01.335 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 17;18.4165072;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43626;2460996.92779324;12.26700278;1.3;_
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response 17;18.4165072;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43626;2460996.92779324;12.26700278;1.3;_
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:01.336 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:01.337 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:01.337 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:01.337 [INFO] [Thread-67629 (handle)] [driver.py] [get_status()] Telra = 18.4165072, teldec = -24.256496
2025-11-17T12:16:01.337 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4165072 -24.256496
2025-11-17T12:16:01.337 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4165072 -24.256496
2025-11-17T12:16:01.337 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4165072 -24.256496
2025-11-17T12:16:01.338 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 17;18.4165072;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43626;2460996.92779326;12.26700278;1.3;_18.3903034080592 -24.2689519517781
2025-11-17T12:16:01.338 [INFO] [Thread-67629 (handle)] [driver.py] [get_status()] ra_j2k = 18.3903034080592     dec_j2k = -24.2689519517781
2025-11-17T12:16:01.338 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:01.338 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:01.338 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 140;0.104593254671407;171.162351965909;_
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response 140;0.104593254671407;171.162351965909;_
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:01.339 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:01.340 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:01.341 [DEBUG] [Thread-67629 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:01.341 [DEBUG] [Thread-67629 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:01.341 [DEBUG] [Thread-67629 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53929)
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:01.345 [DEBUG] [Thread-67629 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:01.352 [DEBUG] [Thread-67629 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:01.352 [INFO] [Thread-67629 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92779324, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593254671407, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992985, telescope_ra=18.4165072, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.43626, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3903034080592, telescope_dec_j2k=-24.2689519517781, observability=1)
2025-11-17T12:16:02.179 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.179 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.179 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:02.179 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:02.180 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:16:02.181 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:02.182 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:02.183 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:16:02.184 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:02.185 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Park
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:16:02.186 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:16:02.187 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 29;18.4167595;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43651;2460996.92780309;12.26725444;1.3;_Park Command Successful
2025-11-17T12:16:03.187 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:16:03.187 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:16:03.187 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:16:03.188 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:16:03.188 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:16:04.189 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:16:04.189 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:16:04.189 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:16:04.189 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:16:04.190 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:16:05.190 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:16:05.190 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:16:05.190 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:16:05.190 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:16:05.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:16:06.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:16:06.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:16:06.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:16:06.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:16:06.191 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:06.192 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:16:06.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:07.193 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:07.193 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:07.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:07.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:07.193 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:07.194 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:07.194 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:16:07.195 [DEBUG] [ThreadPoolExecutor-2772_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:07.196 [INFO] [ThreadPoolExecutor-2772_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Status age = 7.838953495025635s
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:09.191 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:09.192 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 17;18.4187107;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43846;2460996.92788417;12.26920028;1.3;_
2025-11-17T12:16:09.193 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response 17;18.4187107;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43846;2460996.92788417;12.26920028;1.3;_
2025-11-17T12:16:09.193 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:09.193 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:09.193 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:09.194 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:09.194 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:09.194 [INFO] [Thread-67630 (handle)] [driver.py] [get_status()] Telra = 18.4187107, teldec = -24.256496
2025-11-17T12:16:09.194 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4187107 -24.256496
2025-11-17T12:16:09.194 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4187107 -24.256496
2025-11-17T12:16:09.194 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4187107 -24.256496
2025-11-17T12:16:09.195 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 17;18.4187107;-24.256496;50.108368;89.992985;50.08601;90.12017;15.43846;2460996.9278842;12.26920028;1.3;_18.3925069738285 -24.269034050934
2025-11-17T12:16:09.195 [INFO] [Thread-67630 (handle)] [driver.py] [get_status()] ra_j2k = 18.3925069738285     dec_j2k = -24.269034050934
2025-11-17T12:16:09.195 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:09.195 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:09.195 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 140;0.104593575566949;171.162357330327;_
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response 140;0.104593575566949;171.162357330327;_
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:09.196 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:09.197 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:09.197 [DEBUG] [Thread-67630 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:09.197 [DEBUG] [Thread-67630 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:09.197 [DEBUG] [Thread-67630 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:09.198 [DEBUG] [Thread-67630 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42473)
2025-11-17T12:16:09.198 [DEBUG] [Thread-67630 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:09.198 [DEBUG] [Thread-67630 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:09.198 [DEBUG] [Thread-67630 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:09.199 [DEBUG] [Thread-67630 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:09.199 [DEBUG] [Thread-67630 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:09.205 [DEBUG] [Thread-67630 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:09.206 [DEBUG] [Thread-67630 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:09.206 [INFO] [Thread-67630 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92788417, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593575566949, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992985, telescope_ra=18.4187107, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.43846, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3925069738285, telescope_dec_j2k=-24.269034050934, observability=1)
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.686168909072876s
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4202981;-24.256496;50.108368;89.992985;50.08601;90.12017;15.44005;2460996.92795016;12.27078333;1.3;_
2025-11-17T12:16:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.4202981;-24.256496;50.108368;89.992985;50.08601;90.12017;15.44005;2460996.92795016;12.27078333;1.3;_
2025-11-17T12:16:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.4202981, teldec = -24.256496
2025-11-17T12:16:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4202981 -24.256496
2025-11-17T12:16:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4202981 -24.256496
2025-11-17T12:16:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4202981 -24.256496
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4202981;-24.256496;50.108368;89.992985;50.08601;90.12017;15.44005;2460996.92795019;12.27078333;1.3;_18.3940944220366 -24.2690931927893
2025-11-17T12:16:14.896 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.3940944220366     dec_j2k = -24.2690931927893
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104593214559464;171.162351965909;_
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104593214559464;171.162351965909;_
2025-11-17T12:16:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55743)
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:14.903 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:14.911 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:14.911 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92795016, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593214559464, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992985, telescope_ra=18.4202981, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.44005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3940944220366, telescope_dec_j2k=-24.2690931927893, observability=1)
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Status age = 4.5261335372924805s
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:19.437 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:19.439 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 17;18.4215507;-24.256496;50.108368;89.992985;50.08601;90.12017;15.4413;2460996.92800278;12.2720325;1.3;_
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response 17;18.4215507;-24.256496;50.108368;89.992985;50.08601;90.12017;15.4413;2460996.92800278;12.2720325;1.3;_
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:19.440 [INFO] [Thread-67631 (handle)] [driver.py] [get_status()] Telra = 18.4215507, teldec = -24.256496
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4215507 -24.256496
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4215507 -24.256496
2025-11-17T12:16:19.440 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4215507 -24.256496
2025-11-17T12:16:19.441 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 17;18.4215507;-24.256496;50.108368;89.992985;50.08601;90.12017;15.4413;2460996.92800279;12.2720325;1.3;_18.3953470605664 -24.2691398595995
2025-11-17T12:16:19.441 [INFO] [Thread-67631 (handle)] [driver.py] [get_status()] ra_j2k = 18.3953470605664     dec_j2k = -24.2691398595995
2025-11-17T12:16:19.441 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:19.441 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:19.441 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 140;0.104593455231121;171.162346601491;_
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response 140;0.104593455231121;171.162346601491;_
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:19.442 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:19.443 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:19.444 [DEBUG] [Thread-67631 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:19.444 [DEBUG] [Thread-67631 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:19.444 [DEBUG] [Thread-67631 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46765)
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:19.451 [DEBUG] [Thread-67631 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:19.459 [DEBUG] [Thread-67631 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:19.459 [INFO] [Thread-67631 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92800278, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593455231121, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992985, telescope_ra=18.4215507, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4413, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3953470605664, telescope_dec_j2k=-24.2691398595995, observability=1)
2025-11-17T12:16:24.404 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.9452691078186035s
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:24.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:24.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4229445;-24.256496;50.108368;89.992984;50.08601;90.12017;15.4427;2460996.92806025;12.2734225;1.3;_
2025-11-17T12:16:24.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.4229445;-24.256496;50.108368;89.992984;50.08601;90.12017;15.4427;2460996.92806025;12.2734225;1.3;_
2025-11-17T12:16:24.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:24.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:24.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:24.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:24.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:24.408 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.4229445, teldec = -24.256496
2025-11-17T12:16:24.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.4229445 -24.256496
2025-11-17T12:16:24.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.4229445 -24.256496
2025-11-17T12:16:24.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4229445 -24.256496
2025-11-17T12:16:24.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4229445;-24.256496;50.108368;89.992984;50.08601;90.12017;15.4427;2460996.92806029;12.2734225;1.3;_18.3967409039471 -24.2691917855113
2025-11-17T12:16:24.409 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.3967409039471     dec_j2k = -24.2691917855113
2025-11-17T12:16:24.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:24.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:24.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104593896462492;171.162368059163;_
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104593896462492;171.162368059163;_
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:24.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:24.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:24.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:24.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:24.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45355)
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:24.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:24.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:24.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:24.424 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:24.424 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:24.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:24.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:24.425 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:24.425 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:24.425 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:16:24.425 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92806025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104593896462492, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992984, telescope_ra=18.4229445, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4427, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.3967409039471, telescope_dec_j2k=-24.2691917855113, observability=1)
2025-11-17T12:16:24.425 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.09180450439453 seconds ago
2025-11-17T12:16:25.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:25.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.5496423244476318s
2025-11-17T12:16:25.974 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:25.975 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:25.975 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:25.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:25.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:25.975 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:25.976 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:25.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4233938;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44315;2460996.92807844;12.27387056;1.3;_
2025-11-17T12:16:25.977 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.4233938;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44315;2460996.92807844;12.27387056;1.3;_
2025-11-17T12:16:25.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:25.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:25.977 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:25.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:25.978 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:25.978 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.4233938, teldec = -24.256496
2025-11-17T12:16:25.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4233938 -24.256496
2025-11-17T12:16:25.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4233938 -24.256496
2025-11-17T12:16:25.978 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4233938 -24.256496
2025-11-17T12:16:25.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4233938;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44315;2460996.92807846;12.27387056;1.3;_18.397190218045 -24.269208523824
2025-11-17T12:16:25.979 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.397190218045     dec_j2k = -24.269208523824
2025-11-17T12:16:25.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:25.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:25.979 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:25.980 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104594177246091;171.162357330327;_
2025-11-17T12:16:25.980 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104594177246091;171.162357330327;_
2025-11-17T12:16:25.980 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:25.980 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:25.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:25.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:25.982 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:25.983 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58623)
2025-11-17T12:16:25.983 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:25.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:25.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:25.984 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:25.984 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:25.991 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:25.991 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92807844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594177246091, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992984, telescope_ra=18.4233938, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.44315, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.397190218045, telescope_dec_j2k=-24.269208523824, observability=1)
2025-11-17T12:16:37.509 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Status age = 11.51845121383667s
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:37.510 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:37.511 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 17;18.4265967;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44635;2460996.92821193;12.27706472;1.3;_
2025-11-17T12:16:37.511 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response 17;18.4265967;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44635;2460996.92821193;12.27706472;1.3;_
2025-11-17T12:16:37.511 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:37.511 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:37.511 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:37.512 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:37.512 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:37.512 [INFO] [Thread-67632 (handle)] [driver.py] [get_status()] Telra = 18.4265967, teldec = -24.256496
2025-11-17T12:16:37.512 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4265967 -24.256496
2025-11-17T12:16:37.512 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4265967 -24.256496
2025-11-17T12:16:37.512 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4265967 -24.256496
2025-11-17T12:16:37.513 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 17;18.4265967;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44635;2460996.92821196;12.27706472;1.3;_18.4003932201535 -24.2693278407006
2025-11-17T12:16:37.513 [INFO] [Thread-67632 (handle)] [driver.py] [get_status()] ra_j2k = 18.4003932201535     dec_j2k = -24.2693278407006
2025-11-17T12:16:37.513 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:37.514 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:37.514 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:37.514 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 140;0.104594257469977;171.162351965909;_
2025-11-17T12:16:37.514 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response 140;0.104594257469977;171.162351965909;_
2025-11-17T12:16:37.514 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:16:37.515 [DEBUG] [Thread-67632 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41455)
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:37.520 [DEBUG] [Thread-67632 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:37.527 [DEBUG] [Thread-67632 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:37.528 [INFO] [Thread-67632 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92821193, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594257469977, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992984, telescope_ra=18.4265967, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.44635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.4003932201535, telescope_dec_j2k=-24.2693278407006, observability=1)
2025-11-17T12:16:39.415 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:16:39
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.887483835220337s
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:39.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:39.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:39.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4271295;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44688;2460996.92823399;12.27759611;1.3;_
2025-11-17T12:16:39.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.4271295;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44688;2460996.92823399;12.27759611;1.3;_
2025-11-17T12:16:39.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:39.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:39.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:39.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:39.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:39.422 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.4271295, teldec = -24.256496
2025-11-17T12:16:39.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4271295 -24.256496
2025-11-17T12:16:39.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4271295 -24.256496
2025-11-17T12:16:39.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4271295 -24.256496
2025-11-17T12:16:39.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4271295;-24.256496;50.108368;89.992984;50.08601;90.12017;15.44688;2460996.92823405;12.27759611;1.3;_18.400926037413 -24.2693476881859
2025-11-17T12:16:39.422 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.400926037413     dec_j2k = -24.2693476881859
2025-11-17T12:16:39.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104594458029691;171.162357330327;_
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104594458029691;171.162357330327;_
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:39.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:39.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51575)
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:39.425 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:39.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:39.426 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:39.426 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:39.433 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:39.433 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92823399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594458029691, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108368, telescope_az=89.992984, telescope_ra=18.4271295, telescope_dec=-24.256496, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.44688, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:15:41.296812', telescope_ra_j2k=18.400926037413, telescope_dec_j2k=-24.2693476881859, observability=1)
2025-11-17T12:16:41.439 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:41.439 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:41.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:41.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:41.440 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:41.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:41.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:41.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:41.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:41.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:41.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:41.442 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:41.442 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:16:41.443 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:16:41.444 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:42.444 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:42.444 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:42.444 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:42.444 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:42.444 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:16:42.445 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:42.446 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:42.447 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:42.447 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:42.447 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:42.447 [DEBUG] [ThreadPoolExecutor-2774_0] [payload.py] [to_registers()] [0]
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35485)
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:42.451 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:42.458 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:42.459 [DEBUG] [ThreadPoolExecutor-2774_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:55.580 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:16:55.580 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Status age = 16.147210121154785s
2025-11-17T12:16:55.580 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:16:55.581 [DEBUG] [Thread-67633 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:16:55.581 [DEBUG] [Thread-67633 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:16:55.581 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:16:55.581 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:16:55.581 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 17;18.4316168;-24.256495;50.108367;89.992984;50.08601;90.12017;15.45137;2460996.92842109;12.28207111;1.3;_
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response 17;18.4316168;-24.256495;50.108367;89.992984;50.08601;90.12017;15.45137;2460996.92842109;12.28207111;1.3;_
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:16:55.582 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:16:55.583 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:55.583 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:16:55.583 [INFO] [Thread-67633 (handle)] [driver.py] [get_status()] Telra = 18.4316168, teldec = -24.256495
2025-11-17T12:16:55.583 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4316168 -24.256495
2025-11-17T12:16:55.583 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4316168 -24.256495
2025-11-17T12:16:55.583 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4316168 -24.256495
2025-11-17T12:16:55.584 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 17;18.4316168;-24.256495;50.108367;89.992984;50.08601;90.12017;15.45137;2460996.92842111;12.28207111;1.3;_18.4054134860727 -24.2695138369639
2025-11-17T12:16:55.584 [INFO] [Thread-67633 (handle)] [driver.py] [get_status()] ra_j2k = 18.4054134860727     dec_j2k = -24.2695138369639
2025-11-17T12:16:55.584 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:16:55.584 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:16:55.584 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 140;0.104594538253577;171.162362694745;_
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response 140;0.104594538253577;171.162362694745;_
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:55.585 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:16:55.586 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:16:55.587 [DEBUG] [Thread-67633 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:55.587 [DEBUG] [Thread-67633 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:16:55.587 [DEBUG] [Thread-67633 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42591)
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:16:55.594 [DEBUG] [Thread-67633 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:16:55.601 [DEBUG] [Thread-67633 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:16:55.602 [DEBUG] [Thread-67633 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:16:55.602 [INFO] [Thread-67633 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92842109, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594538253577, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992984, telescope_ra=18.4316168, telescope_dec=-24.256495, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.45137, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4054134860727, telescope_dec_j2k=-24.2695138369639, observability=1)
2025-11-17T12:17:07.459 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:07.459 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:07.459 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:07.459 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:07.459 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:07.460 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:17:07.461 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:17:07.462 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Status age = 13.636803388595581s
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:09.239 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:09.240 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:09.241 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 17;18.43543;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45518;2460996.92857918;12.28587389;1.3;_
2025-11-17T12:17:09.241 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response 17;18.43543;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45518;2460996.92857918;12.28587389;1.3;_
2025-11-17T12:17:09.241 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:09.241 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:09.241 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:09.242 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:09.242 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:09.242 [INFO] [Thread-67634 (handle)] [driver.py] [get_status()] Telra = 18.43543, teldec = -24.256495
2025-11-17T12:17:09.242 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] UnCookCoordinates 18.43543 -24.256495
2025-11-17T12:17:09.242 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.43543 -24.256495
2025-11-17T12:17:09.242 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.43543 -24.256495
2025-11-17T12:17:09.243 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 17;18.43543;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45518;2460996.9285792;12.28587389;1.3;_18.4092268165851 -24.2696558631842
2025-11-17T12:17:09.243 [INFO] [Thread-67634 (handle)] [driver.py] [get_status()] ra_j2k = 18.4092268165851     dec_j2k = -24.2696558631842
2025-11-17T12:17:09.243 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:09.243 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:09.243 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 140;0.104595500940204;171.162351965909;_
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response 140;0.104595500940204;171.162351965909;_
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:09.244 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:09.245 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:09.246 [DEBUG] [Thread-67634 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:09.246 [DEBUG] [Thread-67634 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:09.246 [DEBUG] [Thread-67634 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53687)
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:09.251 [DEBUG] [Thread-67634 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:09.259 [DEBUG] [Thread-67634 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:09.259 [INFO] [Thread-67634 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92857918, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595500940204, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992983, telescope_ra=18.43543, telescope_dec=-24.256495, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.45518, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4092268165851, telescope_dec_j2k=-24.2696558631842, observability=1)
2025-11-17T12:17:13.703 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Status age = 4.4445061683654785s
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:13.704 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:13.705 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 17;18.4366804;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45643;2460996.92863084;12.28712083;1.3;_
2025-11-17T12:17:13.706 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response 17;18.4366804;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45643;2460996.92863084;12.28712083;1.3;_
2025-11-17T12:17:13.706 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:13.706 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:13.706 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:13.707 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:13.707 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:13.707 [INFO] [Thread-67635 (handle)] [driver.py] [get_status()] Telra = 18.4366804, teldec = -24.256495
2025-11-17T12:17:13.707 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4366804 -24.256495
2025-11-17T12:17:13.707 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4366804 -24.256495
2025-11-17T12:17:13.707 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4366804 -24.256495
2025-11-17T12:17:13.708 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 17;18.4366804;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45643;2460996.92863088;12.28712083;1.3;_18.4104772602529 -24.2697024329326
2025-11-17T12:17:13.708 [INFO] [Thread-67635 (handle)] [driver.py] [get_status()] ra_j2k = 18.4104772602529     dec_j2k = -24.2697024329326
2025-11-17T12:17:13.708 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:13.708 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:13.708 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 140;0.104594859149119;171.162362694745;_
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response 140;0.104594859149119;171.162362694745;_
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:13.709 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:13.710 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:13.711 [DEBUG] [Thread-67635 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:13.711 [DEBUG] [Thread-67635 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:13.711 [DEBUG] [Thread-67635 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33381)
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:13.713 [DEBUG] [Thread-67635 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:13.721 [DEBUG] [Thread-67635 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:13.721 [INFO] [Thread-67635 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92863084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594859149119, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992983, telescope_ra=18.4366804, telescope_dec=-24.256495, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.45643, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4104772602529, telescope_dec_j2k=-24.2697024329326, observability=1)
2025-11-17T12:17:14.911 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1904046535491943s
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4370168;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45677;2460996.92864483;12.28745639;1.3;_
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.4370168;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45677;2460996.92864483;12.28745639;1.3;_
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:14.914 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.4370168, teldec = -24.256495
2025-11-17T12:17:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4370168 -24.256495
2025-11-17T12:17:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4370168 -24.256495
2025-11-17T12:17:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4370168 -24.256495
2025-11-17T12:17:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4370168;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45677;2460996.92864485;12.28745639;1.3;_18.4108136720744 -24.2697149615556
2025-11-17T12:17:14.915 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.4108136720744     dec_j2k = -24.2697149615556
2025-11-17T12:17:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104595661387975;171.162368059163;_
2025-11-17T12:17:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104595661387975;171.162368059163;_
2025-11-17T12:17:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39357)
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:14.930 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:14.930 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92864483, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595661387975, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992983, telescope_ra=18.4370168, telescope_dec=-24.256495, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.45677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4108136720744, telescope_dec_j2k=-24.2697149615556, observability=1)
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.555004358291626s
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:24.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:24.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:24.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4396652;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45942;2460996.92875564;12.2900975;1.3;_
2025-11-17T12:17:24.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.4396652;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45942;2460996.92875564;12.2900975;1.3;_
2025-11-17T12:17:24.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:24.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:24.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:24.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:24.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:24.488 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.4396652, teldec = -24.256495
2025-11-17T12:17:24.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.4396652 -24.256495
2025-11-17T12:17:24.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.4396652 -24.256495
2025-11-17T12:17:24.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4396652 -24.256495
2025-11-17T12:17:24.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4396652;-24.256495;50.108367;89.992983;50.08601;90.12017;15.45942;2460996.92875566;12.2900975;1.3;_18.4134621662302 -24.2698135932818
2025-11-17T12:17:24.490 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.4134621662302     dec_j2k = -24.2698135932818
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104595099820776;171.162351965909;_
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104595099820776;171.162351965909;_
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:24.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:24.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:24.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:24.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:24.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:24.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:24.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:24.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:24.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:24.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:24.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:24.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51243)
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:24.494 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:24.502 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:17:24.502 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92875564, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595099820776, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992983, telescope_ra=18.4396652, telescope_dec=-24.256495, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.45942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4134621662302, telescope_dec_j2k=-24.2698135932818, observability=1)
2025-11-17T12:17:24.502 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08765530586243 seconds ago
2025-11-17T12:17:25.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:25.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5793976783752441s
2025-11-17T12:17:25.082 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5793976783752441
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Status age = 7.268884658813477s
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:31.771 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:31.772 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:31.773 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:31.773 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 17;18.4417007;-24.256494;50.108367;89.992983;50.08601;90.12017;15.46145;2460996.92883997;12.2921275;1.3;_
2025-11-17T12:17:31.773 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response 17;18.4417007;-24.256494;50.108367;89.992983;50.08601;90.12017;15.46145;2460996.92883997;12.2921275;1.3;_
2025-11-17T12:17:31.773 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:31.774 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:31.774 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:31.774 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:31.775 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:31.775 [INFO] [Thread-67636 (handle)] [driver.py] [get_status()] Telra = 18.4417007, teldec = -24.256494
2025-11-17T12:17:31.775 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4417007 -24.256494
2025-11-17T12:17:31.775 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4417007 -24.256494
2025-11-17T12:17:31.775 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4417007 -24.256494
2025-11-17T12:17:31.776 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 17;18.4417007;-24.256494;50.108367;89.992983;50.08601;90.12017;15.46145;2460996.92884;12.2921275;1.3;_18.415497740107 -24.2698883955141
2025-11-17T12:17:31.776 [INFO] [Thread-67636 (handle)] [driver.py] [get_status()] ra_j2k = 18.415497740107     dec_j2k = -24.2698883955141
2025-11-17T12:17:31.776 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:31.776 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:31.776 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 140;0.104594578365519;171.162362694745;_
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response 140;0.104594578365519;171.162362694745;_
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:31.777 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:31.778 [DEBUG] [Thread-67636 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:31.778 [DEBUG] [Thread-67636 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:31.778 [DEBUG] [Thread-67636 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45269)
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:31.784 [DEBUG] [Thread-67636 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:31.791 [DEBUG] [Thread-67636 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:31.791 [INFO] [Thread-67636 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92883997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104594578365519, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108367, telescope_az=89.992983, telescope_ra=18.4417007, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.46145, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.415497740107, telescope_dec_j2k=-24.2698883955141, observability=1)
2025-11-17T12:17:39.494 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:17:39
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.7028703689575195s
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:39.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:39.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:39.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4438483;-24.256494;50.108366;89.992983;50.08601;90.12017;15.4636;2460996.92892935;12.29426917;1.3;_
2025-11-17T12:17:39.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.4438483;-24.256494;50.108366;89.992983;50.08601;90.12017;15.4636;2460996.92892935;12.29426917;1.3;_
2025-11-17T12:17:39.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:39.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:39.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:39.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:39.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:39.497 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.4438483, teldec = -24.256494
2025-11-17T12:17:39.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4438483 -24.256494
2025-11-17T12:17:39.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4438483 -24.256494
2025-11-17T12:17:39.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4438483 -24.256494
2025-11-17T12:17:39.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4438483;-24.256494;50.108366;89.992983;50.08601;90.12017;15.4636;2460996.92892938;12.29426917;1.3;_18.4176454190779 -24.2699683685527
2025-11-17T12:17:39.498 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.4176454190779     dec_j2k = -24.2699683685527
2025-11-17T12:17:39.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:39.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:39.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104595982283518;171.162357330327;_
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104595982283518;171.162357330327;_
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:39.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:39.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:39.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:39.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:39.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56385)
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:39.505 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:39.512 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:39.513 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92892935, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595982283518, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992983, telescope_ra=18.4438483, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4636, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:16:41.439127', telescope_ra_j2k=18.4176454190779, telescope_dec_j2k=-24.2699683685527, observability=1)
2025-11-17T12:17:41.581 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:41.581 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:41.581 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:41.581 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:41.581 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:41.582 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:41.582 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:41.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:41.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:41.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:41.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:41.583 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:17:41.584 [INFO] [ThreadPoolExecutor-2775_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:17:41.584 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T12:17:49.876 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:17:49.876 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Status age = 10.363935470581055s
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:17:49.877 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:17:49.878 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:17:49.879 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 17;18.4467426;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4665;2460996.92904953;12.29715556;1.3;_
2025-11-17T12:17:49.879 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response 17;18.4467426;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4665;2460996.92904953;12.29715556;1.3;_
2025-11-17T12:17:49.879 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:17:49.879 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:17:49.879 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:17:49.880 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:49.880 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:17:49.880 [INFO] [Thread-67637 (handle)] [driver.py] [get_status()] Telra = 18.4467426, teldec = -24.256494
2025-11-17T12:17:49.880 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4467426 -24.256494
2025-11-17T12:17:49.880 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4467426 -24.256494
2025-11-17T12:17:49.880 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4467426 -24.256494
2025-11-17T12:17:49.881 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 17;18.4467426;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4665;2460996.92904955;12.29715556;1.3;_18.4205398275138 -24.2700761413391
2025-11-17T12:17:49.881 [INFO] [Thread-67637 (handle)] [driver.py] [get_status()] ra_j2k = 18.4205398275138     dec_j2k = -24.2700761413391
2025-11-17T12:17:49.881 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:17:49.881 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 140;0.104595500940204;171.162362694745;_
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response 140;0.104595500940204;171.162362694745;_
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:49.882 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:17:49.883 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:17:49.884 [DEBUG] [Thread-67637 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:49.884 [DEBUG] [Thread-67637 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:17:49.884 [DEBUG] [Thread-67637 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:17:49.888 [DEBUG] [Thread-67637 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48643)
2025-11-17T12:17:49.888 [DEBUG] [Thread-67637 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:17:49.888 [DEBUG] [Thread-67637 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:17:49.888 [DEBUG] [Thread-67637 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:17:49.889 [DEBUG] [Thread-67637 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:17:49.889 [DEBUG] [Thread-67637 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:17:49.895 [DEBUG] [Thread-67637 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:17:49.896 [DEBUG] [Thread-67637 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:17:49.896 [INFO] [Thread-67637 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92904953, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595500940204, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992982, telescope_ra=18.4467426, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4665, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4205398275138, telescope_dec_j2k=-24.2700761413391, observability=1)
2025-11-17T12:18:02.462 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.462 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.462 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:02.462 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:02.462 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:18:02.463 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:02.464 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:02.465 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:18:02.466 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:02.467 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:02.468 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:02.468 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:02.468 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:02.468 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Park
2025-11-17T12:18:02.469 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:18:02.469 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:18:02.469 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 29;18.4502547;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47001;2460996.92919524;12.30065806;1.3;_Park Command Successful
2025-11-17T12:18:03.469 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:18:03.470 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:18:03.470 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:18:03.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:18:03.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:18:04.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:18:04.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:18:04.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:18:04.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:18:04.471 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:18:05.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:18:05.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:18:05.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:18:05.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:18:05.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:18:06.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:18:06.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:18:06.472 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:06.474 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:18:06.475 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:18:06.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:07.476 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:07.477 [DEBUG] [ThreadPoolExecutor-2774_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:07.477 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:18:07.477 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:18:07.477 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:18:07.477 [DEBUG] [ThreadPoolExecutor-2774_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:07.478 [INFO] [ThreadPoolExecutor-2774_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:18:07.951 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:07.951 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Status age = 18.05525493621826s
2025-11-17T12:18:07.951 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:07.951 [DEBUG] [Thread-67638 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:07.951 [DEBUG] [Thread-67638 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:07.952 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:07.952 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:07.952 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:07.953 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:07.954 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 17;18.4517869;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47154;2460996.92925873;12.30218611;1.3;_
2025-11-17T12:18:07.954 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response 17;18.4517869;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47154;2460996.92925873;12.30218611;1.3;_
2025-11-17T12:18:07.954 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:07.954 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:07.954 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:07.955 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:07.955 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:07.955 [INFO] [Thread-67638 (handle)] [driver.py] [get_status()] Telra = 18.4517869, teldec = -24.256494
2025-11-17T12:18:07.955 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4517869 -24.256494
2025-11-17T12:18:07.955 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4517869 -24.256494
2025-11-17T12:18:07.955 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4517869 -24.256494
2025-11-17T12:18:07.956 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 17;18.4517869;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47154;2460996.92925875;12.30218611;1.3;_18.4255843220084 -24.2702639550459
2025-11-17T12:18:07.956 [INFO] [Thread-67638 (handle)] [driver.py] [get_status()] ra_j2k = 18.4255843220084     dec_j2k = -24.2702639550459
2025-11-17T12:18:07.956 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:07.956 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:07.956 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 140;0.104596102619346;171.162357330327;_
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response 140;0.104596102619346;171.162357330327;_
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:07.957 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:07.958 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:07.959 [DEBUG] [Thread-67638 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:07.959 [DEBUG] [Thread-67638 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:07.959 [DEBUG] [Thread-67638 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37581)
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:07.966 [DEBUG] [Thread-67638 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:07.973 [DEBUG] [Thread-67638 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:07.973 [DEBUG] [Thread-67638 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:07.973 [DEBUG] [Thread-67638 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:07.974 [DEBUG] [Thread-67638 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:07.974 [INFO] [Thread-67638 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92925873, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104596102619346, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992982, telescope_ra=18.4517869, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.47154, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4255843220084, telescope_dec_j2k=-24.2702639550459, observability=1)
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Status age = 1.328251838684082s
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:09.302 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:09.303 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:09.304 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 17;18.452151;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4719;2460996.92927435;12.30254917;1.3;_
2025-11-17T12:18:09.304 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response 17;18.452151;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4719;2460996.92927435;12.30254917;1.3;_
2025-11-17T12:18:09.304 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:09.304 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:09.304 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:09.305 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:09.305 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:09.305 [INFO] [Thread-67639 (handle)] [driver.py] [get_status()] Telra = 18.452151, teldec = -24.256494
2025-11-17T12:18:09.305 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] UnCookCoordinates 18.452151 -24.256494
2025-11-17T12:18:09.305 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.452151 -24.256494
2025-11-17T12:18:09.305 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.452151 -24.256494
2025-11-17T12:18:09.306 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 17;18.452151;-24.256494;50.108366;89.992982;50.08601;90.12017;15.4719;2460996.92927438;12.30254917;1.3;_18.425948436318 -24.2702775106892
2025-11-17T12:18:09.306 [INFO] [Thread-67639 (handle)] [driver.py] [get_status()] ra_j2k = 18.425948436318     dec_j2k = -24.2702775106892
2025-11-17T12:18:09.306 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:09.306 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:09.306 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:09.306 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 140;0.104596062507403;171.162362694745;_
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response 140;0.104596062507403;171.162362694745;_
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:09.307 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:09.308 [DEBUG] [Thread-67639 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:09.308 [DEBUG] [Thread-67639 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:09.308 [DEBUG] [Thread-67639 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43075)
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:09.313 [DEBUG] [Thread-67639 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:09.320 [DEBUG] [Thread-67639 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:09.321 [DEBUG] [Thread-67639 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:09.321 [INFO] [Thread-67639 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92927435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104596062507403, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992982, telescope_ra=18.452151, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.4719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.425948436318, telescope_dec_j2k=-24.2702775106892, observability=1)
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.594460487365723s
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4537378;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47349;2460996.92933932;12.30413167;1.3;_
2025-11-17T12:18:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.4537378;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47349;2460996.92933932;12.30413167;1.3;_
2025-11-17T12:18:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.4537378, teldec = -24.256494
2025-11-17T12:18:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4537378 -24.256494
2025-11-17T12:18:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4537378 -24.256494
2025-11-17T12:18:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4537378 -24.256494
2025-11-17T12:18:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4537378;-24.256494;50.108366;89.992982;50.08601;90.12017;15.47349;2460996.92933935;12.30413167;1.3;_18.4275352991071 -24.2703365867956
2025-11-17T12:18:14.920 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.4275352991071     dec_j2k = -24.2703365867956
2025-11-17T12:18:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104595942171575;171.162351965909;_
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104595942171575;171.162351965909;_
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59235)
2025-11-17T12:18:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:14.937 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92933932, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104595942171575, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992982, telescope_ra=18.4537378, telescope_dec=-24.256494, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.47349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4275352991071, telescope_dec_j2k=-24.2703365867956, observability=1)
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.229206800460815s
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:24.166 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:24.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:24.167 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:24.167 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:24.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:24.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:24.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:24.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:24.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4563048;-24.256493;50.108366;89.992982;50.08601;90.12017;15.47606;2460996.92944639;12.30669167;1.3;_
2025-11-17T12:18:24.168 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.4563048;-24.256493;50.108366;89.992982;50.08601;90.12017;15.47606;2460996.92944639;12.30669167;1.3;_
2025-11-17T12:18:24.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:24.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:24.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:24.169 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:24.170 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:24.170 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.4563048, teldec = -24.256493
2025-11-17T12:18:24.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4563048 -24.256493
2025-11-17T12:18:24.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4563048 -24.256493
2025-11-17T12:18:24.170 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4563048 -24.256493
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4563048;-24.256493;50.108366;89.992982;50.08601;90.12017;15.47606;2460996.92944642;12.30669167;1.3;_18.4301024023481 -24.2704311509317
2025-11-17T12:18:24.171 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.4301024023481     dec_j2k = -24.2704311509317
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104596744410431;171.162362694745;_
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104596744410431;171.162362694745;_
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:24.171 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:24.172 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:24.173 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:24.173 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:24.173 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43245)
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:24.174 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:24.181 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:24.181 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:24.181 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:24.182 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:24.182 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92944639, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104596744410431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992982, telescope_ra=18.4563048, telescope_dec=-24.256493, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.47606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4301024023481, telescope_dec_j2k=-24.2704311509317, observability=1)
2025-11-17T12:18:24.562 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:18:24.562 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3798036575317383s
2025-11-17T12:18:24.562 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3798036575317383
2025-11-17T12:18:24.562 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06792497634888 seconds ago
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Status age = 1.8358988761901855s
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:26.018 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:26.019 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:26.020 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 17;18.4568001;-24.256493;50.108366;89.992981;50.08601;90.12017;15.47655;2460996.92946782;12.30718556;1.3;_
2025-11-17T12:18:26.020 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response 17;18.4568001;-24.256493;50.108366;89.992981;50.08601;90.12017;15.47655;2460996.92946782;12.30718556;1.3;_
2025-11-17T12:18:26.020 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:26.020 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:26.020 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:26.021 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:26.021 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:26.021 [INFO] [Thread-67640 (handle)] [driver.py] [get_status()] Telra = 18.4568001, teldec = -24.256493
2025-11-17T12:18:26.021 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4568001 -24.256493
2025-11-17T12:18:26.021 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4568001 -24.256493
2025-11-17T12:18:26.021 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4568001 -24.256493
2025-11-17T12:18:26.022 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 17;18.4568001;-24.256493;50.108366;89.992981;50.08601;90.12017;15.47658;2460996.92946785;12.30721333;1.3;_18.4305977224385 -24.2704495892621
2025-11-17T12:18:26.022 [INFO] [Thread-67640 (handle)] [driver.py] [get_status()] ra_j2k = 18.4305977224385     dec_j2k = -24.2704495892621
2025-11-17T12:18:26.022 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:26.022 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:26.022 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 140;0.104596664186545;171.162362694745;_
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response 140;0.104596664186545;171.162362694745;_
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:26.023 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:26.024 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:26.025 [DEBUG] [Thread-67640 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:26.025 [DEBUG] [Thread-67640 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:18:26.025 [DEBUG] [Thread-67640 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58085)
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:26.029 [DEBUG] [Thread-67640 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:26.036 [DEBUG] [Thread-67640 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:26.037 [DEBUG] [Thread-67640 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:26.037 [DEBUG] [Thread-67640 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:26.037 [INFO] [Thread-67640 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92946782, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104596664186545, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108366, telescope_az=89.992981, telescope_ra=18.4568001, telescope_dec=-24.256493, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.47655, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4305977224385, telescope_dec_j2k=-24.2704495892621, observability=1)
2025-11-17T12:18:39.573 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:18:39
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.536299705505371s
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:39.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:39.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:39.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4605907;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48034;2460996.92962471;12.31096583;1.3;_
2025-11-17T12:18:39.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.4605907;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48034;2460996.92962471;12.31096583;1.3;_
2025-11-17T12:18:39.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:39.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:39.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:39.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:39.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:39.576 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.4605907, teldec = -24.256493
2025-11-17T12:18:39.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4605907 -24.256493
2025-11-17T12:18:39.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4605907 -24.256493
2025-11-17T12:18:39.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4605907 -24.256493
2025-11-17T12:18:39.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4605907;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48034;2460996.92962473;12.31096583;1.3;_18.4343884784282 -24.2705906932838
2025-11-17T12:18:39.577 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.4343884784282     dec_j2k = -24.2705906932838
2025-11-17T12:18:39.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:39.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:39.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104597105417916;171.162362694745;_
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104597105417916;171.162362694745;_
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:39.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:39.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:39.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:39.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:39.580 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:39.582 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58919)
2025-11-17T12:18:39.582 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:39.583 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:39.583 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:39.583 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:39.583 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:39.590 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:39.590 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:39.590 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:39.590 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:39.591 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:39.591 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:39.591 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:39.591 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:39.591 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:39.591 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.92962471, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597105417916, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.992981, telescope_ra=18.4605907, telescope_dec=-24.256493, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.48034, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:17:41.581125', telescope_ra_j2k=18.4343884784282, telescope_dec_j2k=-24.2705906932838, observability=1)
2025-11-17T12:18:41.724 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:41.724 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:41.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:41.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:41.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:41.725 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:41.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:41.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:41.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:41.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:41.726 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:18:41.726 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:41.726 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:18:41.727 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:18:41.728 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:42.728 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:42.728 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:42.728 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:42.728 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:42.729 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:42.730 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:42.730 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:42.730 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:42.730 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:42.730 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:42.731 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:42.731 [DEBUG] [ThreadPoolExecutor-2776_0] [payload.py] [to_registers()] [0]
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46833)
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:42.738 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:42.745 [DEBUG] [ThreadPoolExecutor-2776_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:44.126 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:18:44.126 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Status age = 4.5356364250183105s
2025-11-17T12:18:44.126 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:18:44.126 [DEBUG] [Thread-67641 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:18:44.127 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:18:44.128 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 17;18.4618692;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48162;2460996.92967741;12.31224083;1.3;_
2025-11-17T12:18:44.128 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response 17;18.4618692;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48162;2460996.92967741;12.31224083;1.3;_
2025-11-17T12:18:44.128 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:18:44.128 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:18:44.128 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:18:44.129 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:44.129 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:18:44.129 [INFO] [Thread-67641 (handle)] [driver.py] [get_status()] Telra = 18.4618692, teldec = -24.256493
2025-11-17T12:18:44.129 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4618692 -24.256493
2025-11-17T12:18:44.129 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4618692 -24.256493
2025-11-17T12:18:44.129 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4618692 -24.256493
2025-11-17T12:18:44.130 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 17;18.4618692;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48162;2460996.92967743;12.31224083;1.3;_18.4356670319321 -24.270638282243
2025-11-17T12:18:44.130 [INFO] [Thread-67641 (handle)] [driver.py] [get_status()] ra_j2k = 18.4356670319321     dec_j2k = -24.270638282243
2025-11-17T12:18:44.130 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:18:44.130 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:18:44.131 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:18:44.131 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 140;0.104597546649287;171.162351965909;_
2025-11-17T12:18:44.131 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response 140;0.104597546649287;171.162351965909;_
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:18:44.132 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:18:44.133 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:18:44.133 [DEBUG] [Thread-67641 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:44.133 [DEBUG] [Thread-67641 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:18:44.133 [DEBUG] [Thread-67641 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:18:44.136 [DEBUG] [Thread-67641 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38981)
2025-11-17T12:18:44.136 [DEBUG] [Thread-67641 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:18:44.136 [DEBUG] [Thread-67641 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:18:44.137 [DEBUG] [Thread-67641 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:18:44.137 [DEBUG] [Thread-67641 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:18:44.137 [DEBUG] [Thread-67641 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:18:44.144 [DEBUG] [Thread-67641 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:18:44.144 [INFO] [Thread-67641 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92967741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597546649287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.992981, telescope_ra=18.4618692, telescope_dec=-24.256493, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.48162, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4356670319321, telescope_dec_j2k=-24.270638282243, observability=1)
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Status age = 18.047243118286133s
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:02.191 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:02.192 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:02.193 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 17;18.4668927;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48665;2460996.92988649;12.31725056;1.3;_
2025-11-17T12:19:02.193 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response 17;18.4668927;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48665;2460996.92988649;12.31725056;1.3;_
2025-11-17T12:19:02.193 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:02.193 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:02.193 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:02.194 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:02.194 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:02.194 [INFO] [Thread-67642 (handle)] [driver.py] [get_status()] Telra = 18.4668927, teldec = -24.256493
2025-11-17T12:19:02.194 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4668927 -24.256493
2025-11-17T12:19:02.194 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4668927 -24.256493
2025-11-17T12:19:02.194 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4668927 -24.256493
2025-11-17T12:19:02.195 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 17;18.4668927;-24.256493;50.108365;89.992981;50.08601;90.12017;15.48665;2460996.92988652;12.31725056;1.3;_18.4406907465147 -24.2708252554123
2025-11-17T12:19:02.195 [INFO] [Thread-67642 (handle)] [driver.py] [get_status()] ra_j2k = 18.4406907465147     dec_j2k = -24.2708252554123
2025-11-17T12:19:02.195 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:02.195 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 140;0.104597827432887;171.162362694745;_
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response 140;0.104597827432887;171.162362694745;_
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:02.196 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:02.197 [DEBUG] [Thread-67642 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58263)
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:02.204 [DEBUG] [Thread-67642 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:02.212 [DEBUG] [Thread-67642 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:02.212 [INFO] [Thread-67642 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.92988649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597827432887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.992981, telescope_ra=18.4668927, telescope_dec=-24.256493, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.48665, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4406907465147, telescope_dec_j2k=-24.2708252554123, observability=1)
2025-11-17T12:19:07.745 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:07.745 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:07.746 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:07.747 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:19:07.748 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:19:07.749 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Status age = 7.141642808914185s
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:09.354 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:09.355 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:09.356 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 17;18.4688945;-24.256492;50.108365;89.99298;50.08601;90.12017;15.48865;2460996.9299694;12.31924694;1.3;_
2025-11-17T12:19:09.356 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response 17;18.4688945;-24.256492;50.108365;89.99298;50.08601;90.12017;15.48865;2460996.9299694;12.31924694;1.3;_
2025-11-17T12:19:09.356 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:09.356 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:09.356 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:09.357 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:09.357 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:09.357 [INFO] [Thread-67643 (handle)] [driver.py] [get_status()] Telra = 18.4688945, teldec = -24.256492
2025-11-17T12:19:09.357 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4688945 -24.256492
2025-11-17T12:19:09.357 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4688945 -24.256492
2025-11-17T12:19:09.357 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4688945 -24.256492
2025-11-17T12:19:09.358 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 17;18.4688945;-24.256492;50.108365;89.99298;50.08601;90.12017;15.48865;2460996.92996942;12.31924694;1.3;_18.4426926341563 -24.2708987555968
2025-11-17T12:19:09.358 [INFO] [Thread-67643 (handle)] [driver.py] [get_status()] ra_j2k = 18.4426926341563     dec_j2k = -24.2708987555968
2025-11-17T12:19:09.358 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:09.358 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:09.358 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 140;0.104597426313459;171.162362694745;_
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response 140;0.104597426313459;171.162362694745;_
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:09.359 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:09.360 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:09.361 [DEBUG] [Thread-67643 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:09.361 [DEBUG] [Thread-67643 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:09.361 [DEBUG] [Thread-67643 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54463)
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:09.365 [DEBUG] [Thread-67643 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:09.372 [DEBUG] [Thread-67643 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:09.372 [DEBUG] [Thread-67643 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:09.372 [DEBUG] [Thread-67643 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:09.372 [DEBUG] [Thread-67643 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:09.372 [DEBUG] [Thread-67643 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:09.373 [DEBUG] [Thread-67643 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:09.373 [DEBUG] [Thread-67643 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:09.373 [DEBUG] [Thread-67643 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:09.373 [DEBUG] [Thread-67643 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:09.373 [INFO] [Thread-67643 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9299694, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597426313459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.99298, telescope_ra=18.4688945, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.48865, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4426926341563, telescope_dec_j2k=-24.2708987555968, observability=1)
2025-11-17T12:19:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:14.891 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.518749713897705s
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4704282;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49018;2460996.93003348;12.32077639;1.3;_
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.4704282;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49018;2460996.93003348;12.32077639;1.3;_
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:14.894 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.4704282, teldec = -24.256492
2025-11-17T12:19:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4704282 -24.256492
2025-11-17T12:19:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4704282 -24.256492
2025-11-17T12:19:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4704282 -24.256492
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.4704282;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49018;2460996.9300335;12.32077639;1.3;_18.4442264018972 -24.2709558321966
2025-11-17T12:19:14.895 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.4442264018972     dec_j2k = -24.2709558321966
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104597787320944;171.162362694745;_
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104597787320944;171.162362694745;_
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:14.895 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:14.896 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44399)
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:14.901 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:14.909 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:14.909 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93003348, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597787320944, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.99298, telescope_ra=18.4704282, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49018, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4442264018972, telescope_dec_j2k=-24.2709558321966, observability=1)
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Status age = 5.356170654296875s
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:20.265 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:20.266 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:20.267 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:20.268 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 17;18.4719342;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49169;2460996.93009569;12.32227833;1.3;_
2025-11-17T12:19:20.268 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response 17;18.4719342;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49169;2460996.93009569;12.32227833;1.3;_
2025-11-17T12:19:20.268 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:20.268 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:20.268 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:20.269 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:20.269 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:20.269 [INFO] [Thread-67644 (handle)] [driver.py] [get_status()] Telra = 18.4719342, teldec = -24.256492
2025-11-17T12:19:20.269 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4719342 -24.256492
2025-11-17T12:19:20.269 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4719342 -24.256492
2025-11-17T12:19:20.269 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4719342 -24.256492
2025-11-17T12:19:20.270 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 17;18.4719342;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49169;2460996.93009572;12.32227833;1.3;_18.4457324690442 -24.2710118758702
2025-11-17T12:19:20.270 [INFO] [Thread-67644 (handle)] [driver.py] [get_status()] ra_j2k = 18.4457324690442     dec_j2k = -24.2710118758702
2025-11-17T12:19:20.270 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:20.270 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:20.270 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 140;0.104598148328429;171.162351965909;_
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response 140;0.104598148328429;171.162351965909;_
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:20.271 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:20.272 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:20.273 [DEBUG] [Thread-67644 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:20.273 [DEBUG] [Thread-67644 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:20.273 [DEBUG] [Thread-67644 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36729)
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:20.279 [DEBUG] [Thread-67644 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:20.287 [DEBUG] [Thread-67644 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:20.287 [INFO] [Thread-67644 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93009569, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598148328429, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.99298, telescope_ra=18.4719342, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4457324690442, telescope_dec_j2k=-24.2710118758702, observability=1)
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.986708641052246s
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:23.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:23.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:23.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4727665;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49252;2460996.93013051;12.32310833;1.3;_
2025-11-17T12:19:23.276 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.4727665;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49252;2460996.93013051;12.32310833;1.3;_
2025-11-17T12:19:23.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:23.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:23.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:23.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:23.277 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:23.277 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.4727665, teldec = -24.256492
2025-11-17T12:19:23.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4727665 -24.256492
2025-11-17T12:19:23.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4727665 -24.256492
2025-11-17T12:19:23.278 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4727665 -24.256492
2025-11-17T12:19:23.278 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4727665;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49252;2460996.93013053;12.32310833;1.3;_18.4465648064211 -24.2710428478611
2025-11-17T12:19:23.278 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.4465648064211     dec_j2k = -24.2710428478611
2025-11-17T12:19:23.278 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104597707097058;171.162362694745;_
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104597707097058;171.162362694745;_
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:23.279 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:23.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:23.280 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:23.281 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:23.282 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:23.282 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60005)
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:23.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:23.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:23.291 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:23.291 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:23.291 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:23.291 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93013051, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104597707097058, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.99298, telescope_ra=18.4727665, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4465648064211, telescope_dec_j2k=-24.2710428478611, observability=1)
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.3309946060180664s
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:24.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:24.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:24.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4731314;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49289;2460996.93014611;12.32347222;1.3;_
2025-11-17T12:19:24.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.4731314;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49289;2460996.93014611;12.32347222;1.3;_
2025-11-17T12:19:24.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:24.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:24.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:24.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:24.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:24.625 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.4731314, teldec = -24.256492
2025-11-17T12:19:24.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.4731314 -24.256492
2025-11-17T12:19:24.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.4731314 -24.256492
2025-11-17T12:19:24.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4731314 -24.256492
2025-11-17T12:19:24.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4731314;-24.256492;50.108365;89.99298;50.08601;90.12017;15.49289;2460996.93014613;12.32347222;1.3;_18.4469297228681 -24.2710564265153
2025-11-17T12:19:24.626 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.4469297228681     dec_j2k = -24.2710564265153
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104598027992601;171.162357330327;_
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104598027992601;171.162357330327;_
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:24.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:24.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:24.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:24.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:24.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:24.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:24.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:24.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:24.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:24.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45217)
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:24.631 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:24.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:19:24.639 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93014611, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598027992601, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108365, telescope_az=89.99298, telescope_ra=18.4731314, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49289, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.4469297228681, telescope_dec_j2k=-24.2710564265153, observability=1)
2025-11-17T12:19:24.639 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.066365242004395 seconds ago
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Status age = 13.734829425811768s
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:38.374 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:38.375 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:38.376 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:38.376 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 17;18.4769752;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49673;2460996.93030528;12.32730556;1.3;_
2025-11-17T12:19:38.376 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response 17;18.4769752;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49673;2460996.93030528;12.32730556;1.3;_
2025-11-17T12:19:38.376 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:38.377 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:38.377 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:38.377 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:38.378 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:38.378 [INFO] [Thread-67645 (handle)] [driver.py] [get_status()] Telra = 18.4769752, teldec = -24.256492
2025-11-17T12:19:38.378 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4769752 -24.256492
2025-11-17T12:19:38.378 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4769752 -24.256492
2025-11-17T12:19:38.378 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4769752 -24.256492
2025-11-17T12:19:38.379 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 17;18.4769752;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49673;2460996.93030531;12.32730556;1.3;_18.450773698343 -24.2711994545519
2025-11-17T12:19:38.379 [INFO] [Thread-67645 (handle)] [driver.py] [get_status()] ra_j2k = 18.450773698343     dec_j2k = -24.2711994545519
2025-11-17T12:19:38.379 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:38.379 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:38.379 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 140;0.104598669783686;171.162362694745;_
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response 140;0.104598669783686;171.162362694745;_
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:38.380 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:38.381 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:38.382 [DEBUG] [Thread-67645 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:38.382 [DEBUG] [Thread-67645 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:38.382 [DEBUG] [Thread-67645 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:38.388 [DEBUG] [Thread-67645 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37675)
2025-11-17T12:19:38.389 [DEBUG] [Thread-67645 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:38.389 [DEBUG] [Thread-67645 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:38.389 [DEBUG] [Thread-67645 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:38.389 [DEBUG] [Thread-67645 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:38.389 [DEBUG] [Thread-67645 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:38.396 [DEBUG] [Thread-67645 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:38.396 [INFO] [Thread-67645 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93030528, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598669783686, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.99298, telescope_ra=18.4769752, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49673, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.450773698343, telescope_dec_j2k=-24.2711994545519, observability=1)
2025-11-17T12:19:39.651 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:19:39
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.2548861503601074s
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:39.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:39.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:39.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.477312;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49707;2460996.93032006;12.32764139;1.3;_
2025-11-17T12:19:39.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.477312;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49707;2460996.93032006;12.32764139;1.3;_
2025-11-17T12:19:39.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:39.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:39.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:39.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:39.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:39.654 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.477312, teldec = -24.256492
2025-11-17T12:19:39.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.477312 -24.256492
2025-11-17T12:19:39.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.477312 -24.256492
2025-11-17T12:19:39.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.477312 -24.256492
2025-11-17T12:19:39.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.477312;-24.256492;50.108364;89.99298;50.08601;90.12017;15.49707;2460996.93032008;12.32764139;1.3;_18.451110513912 -24.2712119862539
2025-11-17T12:19:39.655 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.451110513912     dec_j2k = -24.2712119862539
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104598549447857;171.162362694745;_
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104598549447857;171.162362694745;_
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:39.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:39.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:39.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:39.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:39.658 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38957)
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:39.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:39.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:39.668 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:39.668 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:39.668 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93032006, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598549447857, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.99298, telescope_ra=18.477312, telescope_dec=-24.256492, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.49707, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:18:41.723640', telescope_ra_j2k=18.451110513912, telescope_dec_j2k=-24.2712119862539, observability=1)
2025-11-17T12:19:41.865 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:41.865 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:41.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:41.865 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:41.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:41.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:41.867 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:41.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:41.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:41.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:41.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:41.868 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:19:41.868 [INFO] [ThreadPoolExecutor-2777_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:19:41.868 [INFO] [ThreadPoolExecutor-2777_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Status age = 16.77320170402527s
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:19:56.441 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:19:56.442 [DEBUG] [Thread-67646 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:19:56.442 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:19:56.442 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:19:56.442 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:19:56.442 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:19:56.443 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 17;18.4819881;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50174;2460996.93051439;12.33230472;1.3;_
2025-11-17T12:19:56.443 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response 17;18.4819881;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50174;2460996.93051439;12.33230472;1.3;_
2025-11-17T12:19:56.443 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:19:56.443 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:19:56.443 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:19:56.444 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:56.444 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:19:56.444 [INFO] [Thread-67646 (handle)] [driver.py] [get_status()] Telra = 18.4819881, teldec = -24.256491
2025-11-17T12:19:56.444 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4819881 -24.256491
2025-11-17T12:19:56.444 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4819881 -24.256491
2025-11-17T12:19:56.444 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4819881 -24.256491
2025-11-17T12:19:56.445 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 17;18.4820159;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50177;2460996.93051441;12.3323325;1.3;_18.4557868334938 -24.2713849644563
2025-11-17T12:19:56.445 [INFO] [Thread-67646 (handle)] [driver.py] [get_status()] ra_j2k = 18.4557868334938     dec_j2k = -24.2713849644563
2025-11-17T12:19:56.445 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:19:56.445 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:19:56.445 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 140;0.104598629671743;171.162362694745;_
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response 140;0.104598629671743;171.162362694745;_
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:56.446 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:19:56.447 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:19:56.448 [DEBUG] [Thread-67646 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:56.448 [DEBUG] [Thread-67646 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:19:56.448 [DEBUG] [Thread-67646 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52457)
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:19:56.452 [DEBUG] [Thread-67646 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:19:56.459 [DEBUG] [Thread-67646 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:19:56.459 [INFO] [Thread-67646 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93051439, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598629671743, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.992979, telescope_ra=18.4819881, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.50174, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4557868334938, telescope_dec_j2k=-24.2713849644563, observability=1)
2025-11-17T12:20:02.749 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.749 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.749 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:02.749 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:02.749 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:20:02.751 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:02.752 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:02.753 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:20:02.754 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:02.755 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Park
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:20:02.756 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:20:02.757 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 29;18.4837749;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50353;2460996.93058747;12.33408667;1.3;_Park Command Successful
2025-11-17T12:20:03.757 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:20:03.757 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:20:03.757 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:20:03.759 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:20:03.759 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:20:04.759 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:20:04.759 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:20:04.759 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:20:04.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:20:04.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:20:05.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:20:05.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:20:05.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:20:05.760 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:20:05.761 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:20:06.761 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:20:06.761 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:20:06.761 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:06.762 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:20:06.763 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:20:06.764 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:07.764 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:07.764 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:07.764 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:07.765 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:07.765 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:20:07.766 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:20:07.767 [DEBUG] [ThreadPoolExecutor-2776_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:07.767 [INFO] [ThreadPoolExecutor-2776_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Status age = 12.946903467178345s
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:09.406 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:09.407 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:09.408 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 17;18.4856172;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50537;2460996.93066444;12.33592389;1.3;_
2025-11-17T12:20:09.408 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response 17;18.4856172;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50537;2460996.93066444;12.33592389;1.3;_
2025-11-17T12:20:09.408 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:09.408 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:09.408 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:09.409 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:09.409 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:09.409 [INFO] [Thread-67647 (handle)] [driver.py] [get_status()] Telra = 18.4856172, teldec = -24.256491
2025-11-17T12:20:09.409 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4856172 -24.256491
2025-11-17T12:20:09.409 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4856172 -24.256491
2025-11-17T12:20:09.409 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4856172 -24.256491
2025-11-17T12:20:09.410 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 17;18.4856172;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50537;2460996.93066447;12.33592389;1.3;_18.4594161079008 -24.2715199740247
2025-11-17T12:20:09.410 [INFO] [Thread-67647 (handle)] [driver.py] [get_status()] ra_j2k = 18.4594161079008     dec_j2k = -24.2715199740247
2025-11-17T12:20:09.410 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:09.410 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:09.410 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 140;0.104598990679228;171.162357330327;_
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response 140;0.104598990679228;171.162357330327;_
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:09.411 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:09.412 [DEBUG] [Thread-67647 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42365)
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:09.414 [DEBUG] [Thread-67647 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:09.422 [DEBUG] [Thread-67647 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:09.422 [INFO] [Thread-67647 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93066444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104598990679228, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.992979, telescope_ra=18.4856172, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.50537, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4594161079008, telescope_dec_j2k=-24.2715199740247, observability=1)
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Status age = 5.087139129638672s
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:14.509 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:14.510 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:14.511 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 17;18.4870388;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50679;2460996.93072351;12.33734167;1.3;_
2025-11-17T12:20:14.511 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response 17;18.4870388;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50679;2460996.93072351;12.33734167;1.3;_
2025-11-17T12:20:14.511 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:14.511 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:14.511 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:14.512 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:14.512 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:14.513 [INFO] [Thread-67648 (handle)] [driver.py] [get_status()] Telra = 18.4870388, teldec = -24.256491
2025-11-17T12:20:14.513 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4870388 -24.256491
2025-11-17T12:20:14.513 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4870388 -24.256491
2025-11-17T12:20:14.513 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4870388 -24.256491
2025-11-17T12:20:14.514 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 17;18.4870388;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50679;2460996.93072354;12.33734167;1.3;_18.4608377772074 -24.271572856924
2025-11-17T12:20:14.514 [INFO] [Thread-67648 (handle)] [driver.py] [get_status()] ra_j2k = 18.4608377772074     dec_j2k = -24.271572856924
2025-11-17T12:20:14.514 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:14.514 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:14.514 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 140;0.1045985895598;171.162351965909;_
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response 140;0.1045985895598;171.162351965909;_
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:14.515 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:14.516 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:14.517 [DEBUG] [Thread-67648 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:14.517 [DEBUG] [Thread-67648 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:14.517 [DEBUG] [Thread-67648 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35467)
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:14.524 [DEBUG] [Thread-67648 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:14.531 [DEBUG] [Thread-67648 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:14.532 [DEBUG] [Thread-67648 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:14.532 [INFO] [Thread-67648 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93072351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1045985895598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.992979, telescope_ra=18.4870388, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.50679, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4608377772074, telescope_dec_j2k=-24.271572856924, observability=1)
2025-11-17T12:20:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.3637657165527344s
2025-11-17T12:20:14.896 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3637657165527344
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.852720022201538s
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:22.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:22.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:22.387 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4892329;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50899;2460996.93081466;12.33952972;1.3;_
2025-11-17T12:20:22.387 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.4892329;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50899;2460996.93081466;12.33952972;1.3;_
2025-11-17T12:20:22.387 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:22.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:22.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:22.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:22.389 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:22.389 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.4892329, teldec = -24.256491
2025-11-17T12:20:22.389 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4892329 -24.256491
2025-11-17T12:20:22.389 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4892329 -24.256491
2025-11-17T12:20:22.389 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4892329 -24.256491
2025-11-17T12:20:22.390 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.4892329;-24.256491;50.108364;89.992979;50.08601;90.12017;15.50899;2460996.9308147;12.33952972;1.3;_18.4630319852662 -24.271654472725
2025-11-17T12:20:22.390 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.4630319852662     dec_j2k = -24.271654472725
2025-11-17T12:20:22.390 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:22.390 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:22.390 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:22.390 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104599552246427;171.162357330327;_
2025-11-17T12:20:22.391 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104599552246427;171.162357330327;_
2025-11-17T12:20:22.391 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:22.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:22.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:22.391 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:22.392 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37215)
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:22.399 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:22.406 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:22.407 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:22.407 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:22.407 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93081466, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104599552246427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108364, telescope_az=89.992979, telescope_ra=18.4892329, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.50899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4630319852662, telescope_dec_j2k=-24.271654472725, observability=1)
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2921133041381836s
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:24.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:24.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:24.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4898774;-24.256491;50.108363;89.992979;50.08601;90.12017;15.50963;2460996.93084144;12.3401725;1.3;_
2025-11-17T12:20:24.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.4898774;-24.256491;50.108363;89.992979;50.08601;90.12017;15.50963;2460996.93084144;12.3401725;1.3;_
2025-11-17T12:20:24.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:24.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:24.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:24.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:24.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:24.702 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.4898774, teldec = -24.256491
2025-11-17T12:20:24.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.4898774 -24.256491
2025-11-17T12:20:24.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.4898774 -24.256491
2025-11-17T12:20:24.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4898774 -24.256491
2025-11-17T12:20:24.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.4898774;-24.256491;50.108363;89.992979;50.08601;90.12017;15.50963;2460996.93084147;12.3401725;1.3;_18.4636765172592 -24.2716784458682
2025-11-17T12:20:24.703 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.4636765172592     dec_j2k = -24.2716784458682
2025-11-17T12:20:24.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:24.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:24.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104599030791171;171.162357330327;_
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104599030791171;171.162357330327;_
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:24.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:24.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38337)
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:24.707 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:24.714 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:24.715 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:24.715 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:20:24.715 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93084144, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104599030791171, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992979, telescope_ra=18.4898774, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.50963, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4636765172592, telescope_dec_j2k=-24.2716784458682, observability=1)
2025-11-17T12:20:24.715 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06388807296753 seconds ago
2025-11-17T12:20:32.644 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Status age = 7.929873704910278s
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:32.645 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:32.646 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:32.647 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 17;18.4920804;-24.256491;50.108363;89.992978;50.08601;90.12017;15.51183;2460996.93093341;12.34236944;1.3;_
2025-11-17T12:20:32.647 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response 17;18.4920804;-24.256491;50.108363;89.992978;50.08601;90.12017;15.51183;2460996.93093341;12.34236944;1.3;_
2025-11-17T12:20:32.647 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:32.648 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:32.648 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:32.648 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:32.648 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:32.649 [INFO] [Thread-67649 (handle)] [driver.py] [get_status()] Telra = 18.4920804, teldec = -24.256491
2025-11-17T12:20:32.649 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4920804 -24.256491
2025-11-17T12:20:32.649 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4920804 -24.256491
2025-11-17T12:20:32.649 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4920804 -24.256491
2025-11-17T12:20:32.650 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 17;18.4920804;-24.256491;50.108363;89.992978;50.08601;90.12017;15.51183;2460996.93093345;12.34236944;1.3;_18.4658796274788 -24.2717603867555
2025-11-17T12:20:32.650 [INFO] [Thread-67649 (handle)] [driver.py] [get_status()] ra_j2k = 18.4658796274788     dec_j2k = -24.2717603867555
2025-11-17T12:20:32.650 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:32.650 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:32.650 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 140;0.104599351686713;171.162357330327;_
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response 140;0.104599351686713;171.162357330327;_
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:32.651 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:32.652 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:32.653 [DEBUG] [Thread-67649 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:32.653 [DEBUG] [Thread-67649 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:20:32.653 [DEBUG] [Thread-67649 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48625)
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:32.661 [DEBUG] [Thread-67649 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:32.668 [DEBUG] [Thread-67649 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:32.668 [INFO] [Thread-67649 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93093341, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104599351686713, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992978, telescope_ra=18.4920804, telescope_dec=-24.256491, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.51183, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4658796274788, telescope_dec_j2k=-24.2717603867555, observability=1)
2025-11-17T12:20:39.728 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:20:39
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.059622049331665s
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:39.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:39.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:39.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4940597;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51381;2460996.93101539;12.34434333;1.3;_
2025-11-17T12:20:39.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.4940597;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51381;2460996.93101539;12.34434333;1.3;_
2025-11-17T12:20:39.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:39.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:39.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:39.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:39.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:39.731 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.4940597, teldec = -24.25649
2025-11-17T12:20:39.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4940597 -24.25649
2025-11-17T12:20:39.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4940597 -24.25649
2025-11-17T12:20:39.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4940597 -24.25649
2025-11-17T12:20:39.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.4940597;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51381;2460996.93101542;12.34434333;1.3;_18.4678590278436 -24.2718330031864
2025-11-17T12:20:39.732 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.4678590278436     dec_j2k = -24.2718330031864
2025-11-17T12:20:39.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:39.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:39.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:39.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104599552246427;171.162346601491;_
2025-11-17T12:20:39.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104599552246427;171.162346601491;_
2025-11-17T12:20:39.734 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:39.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:39.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:39.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:39.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:39.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34377)
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:39.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:39.749 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:39.749 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93101539, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104599552246427, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992978, telescope_ra=18.4940597, telescope_dec=-24.25649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.51381, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:19:41.865001', telescope_ra_j2k=18.4678590278436, telescope_dec_j2k=-24.2718330031864, observability=1)
2025-11-17T12:20:42.007 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:42.007 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:42.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:42.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:42.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:42.008 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:42.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:42.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:42.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:42.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:42.009 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:42.010 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:42.011 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:42.011 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:20:42.011 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:20:42.011 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:20:42.011 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:43.012 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:43.012 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:43.012 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:43.012 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:43.012 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:20:43.013 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:43.014 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:43.015 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:43.015 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:43.015 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:43.015 [DEBUG] [ThreadPoolExecutor-2778_0] [payload.py] [to_registers()] [0]
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35415)
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:43.017 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:43.024 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:43.024 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:20:43.024 [DEBUG] [ThreadPoolExecutor-2778_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:20:43.024 [DEBUG] [ThreadPoolExecutor-2778_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:20:43.024 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:43.025 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:43.025 [DEBUG] [ThreadPoolExecutor-2778_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Status age = 10.957468271255493s
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:20:50.707 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:20:50.708 [DEBUG] [Thread-67650 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:20:50.708 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:20:50.708 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:20:50.708 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:20:50.708 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:20:50.709 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 17;18.4971217;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51688;2460996.93114245;12.34739694;1.3;_
2025-11-17T12:20:50.709 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response 17;18.4971217;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51688;2460996.93114245;12.34739694;1.3;_
2025-11-17T12:20:50.709 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:20:50.709 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:20:50.709 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:20:50.710 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:50.710 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:20:50.710 [INFO] [Thread-67650 (handle)] [driver.py] [get_status()] Telra = 18.4971217, teldec = -24.25649
2025-11-17T12:20:50.710 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] UnCookCoordinates 18.4971217 -24.25649
2025-11-17T12:20:50.710 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.4971217 -24.25649
2025-11-17T12:20:50.710 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.4971217 -24.25649
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 17;18.4971217;-24.25649;50.108363;89.992978;50.08601;90.12017;15.51688;2460996.93114249;12.34739694;1.3;_18.470921184924 -24.2719468810903
2025-11-17T12:20:50.711 [INFO] [Thread-67650 (handle)] [driver.py] [get_status()] ra_j2k = 18.470921184924     dec_j2k = -24.2719468810903
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 140;0.10459959235837;171.162362694745;_
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response 140;0.10459959235837;171.162362694745;_
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:50.711 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:20:50.712 [DEBUG] [Thread-67650 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41189)
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:20:50.715 [DEBUG] [Thread-67650 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:20:50.722 [DEBUG] [Thread-67650 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:20:50.722 [DEBUG] [Thread-67650 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:50.722 [DEBUG] [Thread-67650 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:20:50.722 [DEBUG] [Thread-67650 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:20:50.723 [DEBUG] [Thread-67650 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:20:50.723 [DEBUG] [Thread-67650 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:20:50.723 [DEBUG] [Thread-67650 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:20:50.723 [DEBUG] [Thread-67650 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:20:50.723 [DEBUG] [Thread-67650 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:20:50.723 [INFO] [Thread-67650 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93114245, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10459959235837, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992978, telescope_ra=18.4971217, telescope_dec=-24.25649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.51688, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.470921184924, telescope_dec_j2k=-24.2719468810903, observability=1)
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:08.025 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:08.026 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:21:08.027 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:21:08.028 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Status age = 18.054396867752075s
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:08.777 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:08.778 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:08.779 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 17;18.5021368;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52189;2460996.93135161;12.35239833;1.3;_
2025-11-17T12:21:08.779 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response 17;18.5021368;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52189;2460996.93135161;12.35239833;1.3;_
2025-11-17T12:21:08.779 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:08.779 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:08.779 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:08.780 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:08.780 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:08.780 [INFO] [Thread-67651 (handle)] [driver.py] [get_status()] Telra = 18.5021368, teldec = -24.25649
2025-11-17T12:21:08.780 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5021368 -24.25649
2025-11-17T12:21:08.780 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5021368 -24.25649
2025-11-17T12:21:08.780 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5021368 -24.25649
2025-11-17T12:21:08.781 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 17;18.5021652;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52192;2460996.93135163;12.35242667;1.3;_18.4759365477682 -24.2721333763935
2025-11-17T12:21:08.781 [INFO] [Thread-67651 (handle)] [driver.py] [get_status()] ra_j2k = 18.4759365477682     dec_j2k = -24.2721333763935
2025-11-17T12:21:08.781 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:08.781 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:08.781 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 140;0.104600274261398;171.162362694745;_
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response 140;0.104600274261398;171.162362694745;_
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:08.782 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:08.783 [DEBUG] [Thread-67651 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39947)
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:08.786 [DEBUG] [Thread-67651 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:08.793 [DEBUG] [Thread-67651 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:08.793 [INFO] [Thread-67651 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93135161, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600274261398, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992977, telescope_ra=18.5021368, telescope_dec=-24.25649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.52189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.4759365477682, telescope_dec_j2k=-24.2721333763935, observability=1)
2025-11-17T12:21:09.462 [DEBUG] [Thread-67652 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:09.463 [DEBUG] [Thread-67652 (handle)] [server.py] [get_status()] Status age = 0.6692953109741211s
2025-11-17T12:21:09.463 [DEBUG] [Thread-67652 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6692953109741211
2025-11-17T12:21:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.120291233062744s
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5038643;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52362;2460996.93142263;12.35412111;1.3;_
2025-11-17T12:21:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5038643;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52362;2460996.93142263;12.35412111;1.3;_
2025-11-17T12:21:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:14.916 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5038643, teldec = -24.25649
2025-11-17T12:21:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5038643 -24.25649
2025-11-17T12:21:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5038643 -24.25649
2025-11-17T12:21:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5038643 -24.25649
2025-11-17T12:21:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5038643;-24.25649;50.108363;89.992977;50.08601;90.12017;15.52362;2460996.93142265;12.35412111;1.3;_18.477664139909 -24.2721976107895
2025-11-17T12:21:14.917 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.477664139909     dec_j2k = -24.2721976107895
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104600153925569;171.162346601491;_
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104600153925569;171.162346601491;_
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39893)
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:14.932 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:14.933 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:14.933 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93142263, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600153925569, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108363, telescope_az=89.992977, telescope_ra=18.5038643, telescope_dec=-24.25649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.52362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.477664139909, telescope_dec_j2k=-24.2721976107895, observability=1)
2025-11-17T12:21:21.497 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:21.497 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.564645051956177s
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:21.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:21.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5057068;-24.25649;50.108362;89.992977;50.08601;90.12017;15.52546;2460996.93149883;12.35595861;1.3;_
2025-11-17T12:21:21.499 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.5057068;-24.25649;50.108362;89.992977;50.08601;90.12017;15.52546;2460996.93149883;12.35595861;1.3;_
2025-11-17T12:21:21.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:21.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:21.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:21.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:21.501 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:21.501 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.5057068, teldec = -24.25649
2025-11-17T12:21:21.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5057068 -24.25649
2025-11-17T12:21:21.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5057068 -24.25649
2025-11-17T12:21:21.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5057068 -24.25649
2025-11-17T12:21:21.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5057068;-24.25649;50.108362;89.992977;50.08601;90.12017;15.52546;2460996.93149887;12.35595861;1.3;_18.479506739088 -24.2722661180237
2025-11-17T12:21:21.502 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.479506739088     dec_j2k = -24.2722661180237
2025-11-17T12:21:21.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:21.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:21.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104600715492769;171.162351965909;_
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104600715492769;171.162351965909;_
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:21.503 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:21.504 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:21.505 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:21.505 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:21.505 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55851)
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:21.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:21.518 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:21.519 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93149883, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600715492769, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992977, telescope_ra=18.5057068, telescope_dec=-24.25649, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.52546, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.479506739088, telescope_dec_j2k=-24.2722661180237, observability=1)
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.2561943531036377s
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:24.775 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:24.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:24.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5065959;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52635;2460996.93153676;12.35684528;1.3;_
2025-11-17T12:21:24.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.5065959;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52635;2460996.93153676;12.35684528;1.3;_
2025-11-17T12:21:24.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:24.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:24.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:24.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:24.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:24.778 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.5065959, teldec = -24.256489
2025-11-17T12:21:24.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.5065959 -24.256489
2025-11-17T12:21:24.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.5065959 -24.256489
2025-11-17T12:21:24.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5065959 -24.256489
2025-11-17T12:21:24.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5065959;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52635;2460996.93153679;12.35684528;1.3;_18.4803958874797 -24.2722981751127
2025-11-17T12:21:24.779 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.4803958874797     dec_j2k = -24.2722981751127
2025-11-17T12:21:24.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:24.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:24.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104600113813627;171.162362694745;_
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104600113813627;171.162362694745;_
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:24.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:24.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37095)
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:24.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:24.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:24.795 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:21:24.795 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93153676, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600113813627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992977, telescope_ra=18.5065959, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.52635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.4803958874797, telescope_dec_j2k=-24.2722981751127, observability=1)
2025-11-17T12:21:24.795 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06730270385742 seconds ago
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Status age = 2.1040003299713135s
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:26.899 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 17;18.5072123;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52697;2460996.93156134;12.35746;1.3;_
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response 17;18.5072123;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52697;2460996.93156134;12.35746;1.3;_
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:26.900 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:26.901 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:26.901 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:26.901 [INFO] [Thread-67653 (handle)] [driver.py] [get_status()] Telra = 18.5072123, teldec = -24.256489
2025-11-17T12:21:26.901 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5072123 -24.256489
2025-11-17T12:21:26.901 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5072123 -24.256489
2025-11-17T12:21:26.901 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5072123 -24.256489
2025-11-17T12:21:26.902 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 17;18.5072123;-24.256489;50.108362;89.992977;50.08601;90.12017;15.52697;2460996.93156137;12.35746;1.3;_18.4810123210186 -24.2723210925968
2025-11-17T12:21:26.902 [INFO] [Thread-67653 (handle)] [driver.py] [get_status()] ra_j2k = 18.4810123210186     dec_j2k = -24.2723210925968
2025-11-17T12:21:26.902 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:26.902 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:26.902 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 140;0.104599632470313;171.162357330327;_
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response 140;0.104599632470313;171.162357330327;_
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:26.903 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:26.904 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:26.905 [DEBUG] [Thread-67653 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:26.905 [DEBUG] [Thread-67653 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:26.905 [DEBUG] [Thread-67653 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45485)
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:26.909 [DEBUG] [Thread-67653 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:26.916 [DEBUG] [Thread-67653 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:26.916 [INFO] [Thread-67653 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93156134, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104599632470313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992977, telescope_ra=18.5072123, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.52697, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.4810123210186, telescope_dec_j2k=-24.2723210925968, observability=1)
2025-11-17T12:21:39.810 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:21:39
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.89395523071289s
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:39.810 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:39.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:39.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5108043;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53056;2460996.93171079;12.36104222;1.3;_
2025-11-17T12:21:39.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.5108043;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53056;2460996.93171079;12.36104222;1.3;_
2025-11-17T12:21:39.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:39.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:39.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:39.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:39.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:39.813 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.5108043, teldec = -24.256489
2025-11-17T12:21:39.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5108043 -24.256489
2025-11-17T12:21:39.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5108043 -24.256489
2025-11-17T12:21:39.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5108043 -24.256489
2025-11-17T12:21:39.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5108043;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53056;2460996.93171081;12.36104222;1.3;_18.4846045185415 -24.2724546340262
2025-11-17T12:21:39.814 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.4846045185415     dec_j2k = -24.2724546340262
2025-11-17T12:21:39.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104600835828597;171.162351965909;_
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104600835828597;171.162351965909;_
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:39.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:39.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:39.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:39.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:39.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:39.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:39.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:39.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:39.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:21:39.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:21:39.824 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42285)
2025-11-17T12:21:39.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:39.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:39.824 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:39.824 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:39.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:39.832 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:39.832 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93171079, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600835828597, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992977, telescope_ra=18.5108043, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.53056, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:20:42.006882', telescope_ra_j2k=18.4846045185415, telescope_dec_j2k=-24.2724546340262, observability=1)
2025-11-17T12:21:42.149 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:42.150 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:42.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:42.151 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:42.151 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:42.151 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:42.151 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:42.151 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:42.151 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:21:42.152 [INFO] [ThreadPoolExecutor-2779_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:21:42.152 [INFO] [ThreadPoolExecutor-2779_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Status age = 5.130568027496338s
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:21:44.963 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:21:44.964 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:21:44.965 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 17;18.5122257;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53198;2460996.93177043;12.36245972;1.3;_
2025-11-17T12:21:44.965 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response 17;18.5122257;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53198;2460996.93177043;12.36245972;1.3;_
2025-11-17T12:21:44.965 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:21:44.965 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:21:44.965 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:21:44.966 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:44.966 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:21:44.966 [INFO] [Thread-67654 (handle)] [driver.py] [get_status()] Telra = 18.5122257, teldec = -24.256489
2025-11-17T12:21:44.966 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5122257 -24.256489
2025-11-17T12:21:44.966 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5122257 -24.256489
2025-11-17T12:21:44.967 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5122257 -24.256489
2025-11-17T12:21:44.967 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 17;18.5122257;-24.256489;50.108362;89.992977;50.08601;90.12017;15.53198;2460996.93177045;12.36245972;1.3;_18.4860259976836 -24.2725074744799
2025-11-17T12:21:44.967 [INFO] [Thread-67654 (handle)] [driver.py] [get_status()] ra_j2k = 18.4860259976836     dec_j2k = -24.2725074744799
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 140;0.104600755604711;171.162351965909;_
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response 140;0.104600755604711;171.162351965909;_
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:21:44.968 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:44.969 [DEBUG] [Thread-67654 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:21:44.970 [DEBUG] [Thread-67654 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58009)
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:21:44.975 [DEBUG] [Thread-67654 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:21:44.982 [DEBUG] [Thread-67654 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:21:44.982 [INFO] [Thread-67654 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93177043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600755604711, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992977, telescope_ra=18.5122257, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.53198, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.4860259976836, telescope_dec_j2k=-24.2725074744799, observability=1)
2025-11-17T12:22:03.028 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.028 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.028 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:03.028 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:03.028 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:22:03.029 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:03.030 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Status age = 18.048502922058105s
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:03.031 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:03.031 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.032 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:03.032 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:03.032 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:03.033 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 17;18.5172651;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53702;2460996.93197955;12.36748528;1.3;_
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.033 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response 17;18.5172651;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53702;2460996.93197955;12.36748528;1.3;_
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.033 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:03.033 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:22:03.033 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:22:03.034 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:03.034 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:03.034 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:03.034 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:03.034 [INFO] [Thread-67655 (handle)] [driver.py] [get_status()] Telra = 18.5172651, teldec = -24.256489
2025-11-17T12:22:03.035 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5172651 -24.256489
2025-11-17T12:22:03.035 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5172651 -24.256489
2025-11-17T12:22:03.035 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5172651 -24.256489
2025-11-17T12:22:03.035 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:03.035 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:03.035 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:03.035 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Park
2025-11-17T12:22:03.035 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 17;18.5172651;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53702;2460996.93197957;12.36748528;1.3;_18.4910656827481 -24.2726947973311
2025-11-17T12:22:03.035 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:22:03.035 [INFO] [Thread-67655 (handle)] [driver.py] [get_status()] ra_j2k = 18.4910656827481     dec_j2k = -24.2726947973311
2025-11-17T12:22:03.036 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 140;0.104601317171911;171.162362694745;_
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response 140;0.104601317171911;171.162362694745;_
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:03.036 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:03.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 29;18.5172651;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53702;2460996.93197958;12.36748528;1.3;_Park Command Successful
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:03.037 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:03.038 [DEBUG] [Thread-67655 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:03.038 [DEBUG] [Thread-67655 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:03.038 [DEBUG] [Thread-67655 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36539)
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:03.042 [DEBUG] [Thread-67655 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:03.049 [DEBUG] [Thread-67655 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:03.050 [DEBUG] [Thread-67655 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:03.050 [INFO] [Thread-67655 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93197955, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601317171911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992976, telescope_ra=18.5172651, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.53702, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.4910656827481, telescope_dec_j2k=-24.2726947973311, observability=1)
2025-11-17T12:22:04.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:22:04.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:22:04.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:22:04.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:22:04.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:22:05.037 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:22:05.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:22:05.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:22:05.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:22:05.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:22:06.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:22:06.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:22:06.038 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:22:06.039 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:22:06.039 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:22:07.039 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:22:07.039 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:22:07.039 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:07.040 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:07.041 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:07.041 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:07.041 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:07.041 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:07.042 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:07.042 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:22:07.042 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:22:07.042 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:22:07.042 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:22:08.043 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:22:08.044 [DEBUG] [ThreadPoolExecutor-2778_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:08.044 [INFO] [ThreadPoolExecutor-2778_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:22:09.499 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Status age = 6.449937582015991s
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:09.500 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:09.501 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 17;18.5190761;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53883;2460996.93205441;12.36929139;1.3;_
2025-11-17T12:22:09.501 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response 17;18.5190761;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53883;2460996.93205441;12.36929139;1.3;_
2025-11-17T12:22:09.501 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:09.501 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:09.501 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:09.502 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:09.502 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:09.502 [INFO] [Thread-67656 (handle)] [driver.py] [get_status()] Telra = 18.5190761, teldec = -24.256489
2025-11-17T12:22:09.503 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5190761 -24.256489
2025-11-17T12:22:09.503 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5190761 -24.256489
2025-11-17T12:22:09.503 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5190761 -24.256489
2025-11-17T12:22:09.504 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 17;18.5190761;-24.256489;50.108362;89.992976;50.08601;90.12017;15.53883;2460996.93205443;12.36929139;1.3;_18.4928767868968 -24.2727621088647
2025-11-17T12:22:09.504 [INFO] [Thread-67656 (handle)] [driver.py] [get_status()] ra_j2k = 18.4928767868968     dec_j2k = -24.2727621088647
2025-11-17T12:22:09.504 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:09.504 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:09.504 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:09.504 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 140;0.104600835828597;171.162346601491;_
2025-11-17T12:22:09.505 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response 140;0.104600835828597;171.162346601491;_
2025-11-17T12:22:09.505 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:09.505 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:09.505 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:09.505 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:09.506 [DEBUG] [Thread-67656 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:09.509 [DEBUG] [Thread-67656 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56025)
2025-11-17T12:22:09.509 [DEBUG] [Thread-67656 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:09.510 [DEBUG] [Thread-67656 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:09.510 [DEBUG] [Thread-67656 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:09.510 [DEBUG] [Thread-67656 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:09.510 [DEBUG] [Thread-67656 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:09.517 [DEBUG] [Thread-67656 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:09.517 [INFO] [Thread-67656 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93205441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104600835828597, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108362, telescope_az=89.992976, telescope_ra=18.5190761, telescope_dec=-24.256489, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.53883, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.4928767868968, telescope_dec_j2k=-24.2727621088647, observability=1)
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.4000563621521s
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5205788;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54033;2460996.93211712;12.37079;1.3;_
2025-11-17T12:22:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5205788;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54033;2460996.93211712;12.37079;1.3;_
2025-11-17T12:22:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:14.921 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5205788, teldec = -24.256488
2025-11-17T12:22:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5205788 -24.256488
2025-11-17T12:22:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5205788 -24.256488
2025-11-17T12:22:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5205788 -24.256488
2025-11-17T12:22:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5205788;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54033;2460996.93211715;12.37079;1.3;_18.4943795741988 -24.2728169589638
2025-11-17T12:22:14.922 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.4943795741988     dec_j2k = -24.2728169589638
2025-11-17T12:22:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104601116612197;171.162357330327;_
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104601116612197;171.162357330327;_
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34031)
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:14.933 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:14.934 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93211712, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601116612197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992976, telescope_ra=18.5205788, telescope_dec=-24.256488, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.54033, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.4943795741988, telescope_dec_j2k=-24.2728169589638, observability=1)
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.67751145362854s
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:20.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:20.612 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:20.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.522169;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54192;2460996.93218302;12.37237583;1.3;_
2025-11-17T12:22:20.613 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.522169;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54192;2460996.93218302;12.37237583;1.3;_
2025-11-17T12:22:20.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:20.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:20.613 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:20.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:20.614 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:20.614 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.522169, teldec = -24.256488
2025-11-17T12:22:20.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.522169 -24.256488
2025-11-17T12:22:20.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.522169 -24.256488
2025-11-17T12:22:20.614 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.522169 -24.256488
2025-11-17T12:22:20.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.522169;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54192;2460996.93218304;12.37237583;1.3;_18.49596986705 -24.2728760585168
2025-11-17T12:22:20.615 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.49596986705     dec_j2k = -24.2728760585168
2025-11-17T12:22:20.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:20.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:20.615 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104601397395796;171.162357330327;_
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104601397395796;171.162357330327;_
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:20.616 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:20.617 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43995)
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:20.621 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:20.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:20.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:20.628 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:20.628 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:20.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:20.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:20.629 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:20.629 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:20.629 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:20.629 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93218302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601397395796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992976, telescope_ra=18.522169, telescope_dec=-24.256488, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.54192, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.49596986705, telescope_dec_j2k=-24.2728760585168, observability=1)
2025-11-17T12:22:21.157 [DEBUG] [Thread-67657 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:21.157 [DEBUG] [Thread-67657 (handle)] [server.py] [get_status()] Status age = 0.5279295444488525s
2025-11-17T12:22:21.157 [DEBUG] [Thread-67657 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5279295444488525
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.226559400558472s
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:24.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:24.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:24.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:24.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:24.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.523338;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54309;2460996.93223214;12.37354167;1.3;_
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.523338;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54309;2460996.93223214;12.37354167;1.3;_
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:24.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:24.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:24.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:24.858 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.523338, teldec = -24.256488
2025-11-17T12:22:24.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.523338 -24.256488
2025-11-17T12:22:24.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.523338 -24.256488
2025-11-17T12:22:24.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.523338 -24.256488
2025-11-17T12:22:24.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.523338;-24.256488;50.108361;89.992976;50.08601;90.12017;15.54309;2460996.93223216;12.37354167;1.3;_18.4971389357509 -24.2729195025607
2025-11-17T12:22:24.859 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.4971389357509     dec_j2k = -24.2729195025607
2025-11-17T12:22:24.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:24.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:24.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104601236948025;171.162346601491;_
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104601236948025;171.162346601491;_
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:24.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:24.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:24.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:22:24.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33487)
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:24.862 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:24.869 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:24.870 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:24.870 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:24.870 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:22:24.870 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93223214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601236948025, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992976, telescope_ra=18.523338, telescope_dec=-24.256488, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.54309, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.4971389357509, telescope_dec_j2k=-24.2729195025607, observability=1)
2025-11-17T12:22:24.870 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05963110923767 seconds ago
2025-11-17T12:22:39.215 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Status age = 14.34582781791687s
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:39.216 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:39.217 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 17;18.5273501;-24.256488;50.108361;89.992975;50.08601;90.12017;15.5471;2460996.93239834;12.37754278;1.3;_
2025-11-17T12:22:39.217 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response 17;18.5273501;-24.256488;50.108361;89.992975;50.08601;90.12017;15.5471;2460996.93239834;12.37754278;1.3;_
2025-11-17T12:22:39.217 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:39.217 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:39.217 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:39.218 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:39.218 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:39.218 [INFO] [Thread-67658 (handle)] [driver.py] [get_status()] Telra = 18.5273501, teldec = -24.256488
2025-11-17T12:22:39.218 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5273501 -24.256488
2025-11-17T12:22:39.218 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5273501 -24.256488
2025-11-17T12:22:39.218 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5273501 -24.256488
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 17;18.5273501;-24.256488;50.108361;89.992975;50.08601;90.12017;15.5471;2460996.93239837;12.37754278;1.3;_18.5011512743953 -24.2730685951039
2025-11-17T12:22:39.219 [INFO] [Thread-67658 (handle)] [driver.py] [get_status()] ra_j2k = 18.5011512743953     dec_j2k = -24.2730685951039
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 140;0.104602400194366;171.162357330327;_
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response 140;0.104602400194366;171.162357330327;_
2025-11-17T12:22:39.219 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:39.220 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:39.220 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:39.220 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:39.220 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:39.221 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:39.221 [DEBUG] [Thread-67658 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:22:39.221 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:39.221 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:39.221 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:39.222 [DEBUG] [Thread-67658 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:39.222 [DEBUG] [Thread-67658 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:39.222 [DEBUG] [Thread-67658 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33263)
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:39.228 [DEBUG] [Thread-67658 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:39.235 [DEBUG] [Thread-67658 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:39.235 [INFO] [Thread-67658 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93239834, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602400194366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992975, telescope_ra=18.5273501, telescope_dec=-24.256488, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.5471, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:21:42.149388', telescope_ra_j2k=18.5011512743953, telescope_dec_j2k=-24.2730685951039, observability=1)
2025-11-17T12:22:39.893 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:22:39
2025-11-17T12:22:39.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:39.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.6576461791992188s
2025-11-17T12:22:39.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6576461791992188
2025-11-17T12:22:42.292 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:42.292 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:42.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:42.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:42.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:42.293 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:42.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:42.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:42.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:42.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:42.294 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:42.295 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:22:42.296 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:22:42.296 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:22:42.296 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:22:43.297 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:43.298 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:43.299 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:43.299 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:43.299 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:43.299 [DEBUG] [ThreadPoolExecutor-2780_0] [payload.py] [to_registers()] [0]
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44415)
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:43.306 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:43.313 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:43.313 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:22:43.313 [DEBUG] [ThreadPoolExecutor-2780_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:22:43.314 [DEBUG] [ThreadPoolExecutor-2780_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:22:43.314 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:43.314 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:43.314 [DEBUG] [ThreadPoolExecutor-2780_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:57.326 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:22:57.326 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Status age = 18.09103798866272s
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:22:57.327 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:22:57.328 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 17;18.5323725;-24.256487;50.108361;89.992975;50.08601;90.12017;15.55213;2460996.93260796;12.38255139;1.3;_
2025-11-17T12:22:57.328 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response 17;18.5323725;-24.256487;50.108361;89.992975;50.08601;90.12017;15.55213;2460996.93260796;12.38255139;1.3;_
2025-11-17T12:22:57.328 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:22:57.328 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:22:57.328 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:22:57.329 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:57.329 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:22:57.329 [INFO] [Thread-67659 (handle)] [driver.py] [get_status()] Telra = 18.5323725, teldec = -24.256487
2025-11-17T12:22:57.330 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5323725 -24.256487
2025-11-17T12:22:57.330 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5323725 -24.256487
2025-11-17T12:22:57.330 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5323725 -24.256487
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 17;18.5323725;-24.256487;50.108361;89.992975;50.08601;90.12017;15.55213;2460996.932608;12.38255139;1.3;_18.5061739795693 -24.2732542073505
2025-11-17T12:22:57.331 [INFO] [Thread-67659 (handle)] [driver.py] [get_status()] ra_j2k = 18.5061739795693     dec_j2k = -24.2732542073505
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 140;0.104601758403282;171.162357330327;_
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response 140;0.104601758403282;171.162357330327;_
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:57.331 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:57.332 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:57.332 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:57.332 [DEBUG] [Thread-67659 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:22:57.332 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:22:57.333 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:22:57.333 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:22:57.333 [DEBUG] [Thread-67659 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:57.333 [DEBUG] [Thread-67659 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:22:57.333 [DEBUG] [Thread-67659 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43515)
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:22:57.339 [DEBUG] [Thread-67659 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:22:57.346 [DEBUG] [Thread-67659 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:22:57.346 [DEBUG] [Thread-67659 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:57.346 [DEBUG] [Thread-67659 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:22:57.346 [DEBUG] [Thread-67659 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:22:57.347 [DEBUG] [Thread-67659 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:22:57.347 [DEBUG] [Thread-67659 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:22:57.347 [DEBUG] [Thread-67659 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:22:57.347 [DEBUG] [Thread-67659 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:22:57.347 [DEBUG] [Thread-67659 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:22:57.347 [INFO] [Thread-67659 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93260796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601758403282, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992975, telescope_ra=18.5323725, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.55213, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5061739795693, telescope_dec_j2k=-24.2732542073505, observability=1)
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:08.314 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:08.315 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:23:08.316 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:23:08.317 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:09.553 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Status age = 12.206889390945435s
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:09.554 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:09.555 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:09.556 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 17;18.5357993;-24.256487;50.108361;89.992974;50.08601;90.12017;15.55555;2460996.93274949;12.38596889;1.3;_
2025-11-17T12:23:09.556 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response 17;18.5357993;-24.256487;50.108361;89.992974;50.08601;90.12017;15.55555;2460996.93274949;12.38596889;1.3;_
2025-11-17T12:23:09.556 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:09.556 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:09.556 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:09.557 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:09.557 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:09.557 [INFO] [Thread-67660 (handle)] [driver.py] [get_status()] Telra = 18.5357993, teldec = -24.256487
2025-11-17T12:23:09.557 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5357993 -24.256487
2025-11-17T12:23:09.557 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5357993 -24.256487
2025-11-17T12:23:09.557 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5357993 -24.256487
2025-11-17T12:23:09.558 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 17;18.5357993;-24.256487;50.108361;89.992974;50.08601;90.12017;15.55555;2460996.93274951;12.38596889;1.3;_18.5096009916347 -24.2733815180807
2025-11-17T12:23:09.558 [INFO] [Thread-67660 (handle)] [driver.py] [get_status()] ra_j2k = 18.5096009916347     dec_j2k = -24.2733815180807
2025-11-17T12:23:09.558 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:09.558 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:09.558 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 140;0.104601958962996;171.162357330327;_
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response 140;0.104601958962996;171.162357330327;_
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:09.559 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:09.560 [DEBUG] [Thread-67660 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:09.561 [DEBUG] [Thread-67660 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:09.563 [DEBUG] [Thread-67660 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60015)
2025-11-17T12:23:09.563 [DEBUG] [Thread-67660 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:09.563 [DEBUG] [Thread-67660 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:09.563 [DEBUG] [Thread-67660 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:09.563 [DEBUG] [Thread-67660 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:09.564 [DEBUG] [Thread-67660 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:09.571 [DEBUG] [Thread-67660 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:09.571 [DEBUG] [Thread-67660 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:09.571 [DEBUG] [Thread-67660 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:09.571 [DEBUG] [Thread-67660 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:09.571 [DEBUG] [Thread-67660 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:09.572 [DEBUG] [Thread-67660 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:09.572 [DEBUG] [Thread-67660 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:09.572 [DEBUG] [Thread-67660 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:09.572 [DEBUG] [Thread-67660 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:09.572 [INFO] [Thread-67660 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93274949, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104601958962996, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108361, telescope_az=89.992974, telescope_ra=18.5357993, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.55555, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5096009916347, telescope_dec_j2k=-24.2733815180807, observability=1)
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.3162195682525635s
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:14.888 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5372753;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55703;2460996.93281122;12.38744083;1.3;_
2025-11-17T12:23:14.889 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5372753;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55703;2460996.93281122;12.38744083;1.3;_
2025-11-17T12:23:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:14.890 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:14.891 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5372753, teldec = -24.256487
2025-11-17T12:23:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5372753 -24.256487
2025-11-17T12:23:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5372753 -24.256487
2025-11-17T12:23:14.891 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5372753 -24.256487
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5372753;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55703;2460996.93281125;12.38744083;1.3;_18.5110770839707 -24.2734363498097
2025-11-17T12:23:14.892 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5110770839707     dec_j2k = -24.2734363498097
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104602400194366;171.162368059163;_
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104602400194366;171.162368059163;_
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:14.892 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:14.893 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:14.894 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44297)
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:14.899 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:14.906 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:14.907 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93281122, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602400194366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992974, telescope_ra=18.5372753, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.55703, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5110770839707, telescope_dec_j2k=-24.2734363498097, observability=1)
2025-11-17T12:23:15.404 [DEBUG] [Thread-67661 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:15.404 [DEBUG] [Thread-67661 (handle)] [server.py] [get_status()] Status age = 0.49787306785583496s
2025-11-17T12:23:15.404 [DEBUG] [Thread-67661 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.49787306785583496
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.815219879150391s
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:19.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:19.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:19.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5386103;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55836;2460996.93286718;12.38877222;1.3;_
2025-11-17T12:23:19.724 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.5386103;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55836;2460996.93286718;12.38877222;1.3;_
2025-11-17T12:23:19.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:19.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:19.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:19.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:19.725 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:19.725 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.5386103, teldec = -24.256487
2025-11-17T12:23:19.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5386103 -24.256487
2025-11-17T12:23:19.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5386103 -24.256487
2025-11-17T12:23:19.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5386103 -24.256487
2025-11-17T12:23:19.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5386385;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55839;2460996.9328672;12.38880028;1.3;_18.5124121680017 -24.2734859415305
2025-11-17T12:23:19.726 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.5124121680017     dec_j2k = -24.2734859415305
2025-11-17T12:23:19.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:19.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:19.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104602239746595;171.162357330327;_
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104602239746595;171.162357330327;_
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:19.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:19.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:19.728 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:19.728 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56785)
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:19.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:19.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:19.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:19.740 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:19.740 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93286718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602239746595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992974, telescope_ra=18.5386103, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.55836, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5124121680017, telescope_dec_j2k=-24.2734859415305, observability=1)
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.190030813217163s
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:24.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:24.931 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5400604;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55981;2460996.93292745;12.39021833;1.3;_
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.5400604;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55981;2460996.93292745;12.39021833;1.3;_
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:24.932 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:24.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:24.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:24.933 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.5400604, teldec = -24.256487
2025-11-17T12:23:24.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.5400604 -24.256487
2025-11-17T12:23:24.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.5400604 -24.256487
2025-11-17T12:23:24.933 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5400604 -24.256487
2025-11-17T12:23:24.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5400885;-24.256487;50.10836;89.992974;50.08601;90.12017;15.55984;2460996.93292748;12.39024639;1.3;_18.5138623598327 -24.2735398067331
2025-11-17T12:23:24.934 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5138623598327     dec_j2k = -24.2735398067331
2025-11-17T12:23:24.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:24.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:24.934 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104602480418252;171.162346601491;_
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104602480418252;171.162346601491;_
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:24.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:24.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:24.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:24.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:24.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:24.940 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35057)
2025-11-17T12:23:24.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:24.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:24.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:24.941 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:24.941 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:24.948 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:23:24.948 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93292745, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602480418252, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992974, telescope_ra=18.5400604, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.55981, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5138623598327, telescope_dec_j2k=-24.2735398067331, observability=1)
2025-11-17T12:23:24.948 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05531573295593 seconds ago
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Status age = 8.529571533203125s
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:33.478 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:33.479 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 17;18.5424539;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56221;2460996.93302637;12.39260528;1.3;_
2025-11-17T12:23:33.479 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response 17;18.5424539;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56221;2460996.93302637;12.39260528;1.3;_
2025-11-17T12:23:33.479 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:33.479 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:33.479 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:33.480 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:33.480 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:33.480 [INFO] [Thread-67662 (handle)] [driver.py] [get_status()] Telra = 18.5424539, teldec = -24.256487
2025-11-17T12:23:33.480 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5424539 -24.256487
2025-11-17T12:23:33.480 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5424539 -24.256487
2025-11-17T12:23:33.480 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5424539 -24.256487
2025-11-17T12:23:33.481 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 17;18.5424539;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56221;2460996.9330264;12.39260528;1.3;_18.5162560126712 -24.2736287103506
2025-11-17T12:23:33.481 [INFO] [Thread-67662 (handle)] [driver.py] [get_status()] ra_j2k = 18.5162560126712     dec_j2k = -24.2736287103506
2025-11-17T12:23:33.481 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:33.481 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:33.481 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 140;0.104602560642138;171.162346601491;_
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response 140;0.104602560642138;171.162346601491;_
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:33.482 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:23:33.483 [DEBUG] [Thread-67662 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:23:33.487 [DEBUG] [Thread-67662 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38853)
2025-11-17T12:23:33.487 [DEBUG] [Thread-67662 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:33.487 [DEBUG] [Thread-67662 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:33.487 [DEBUG] [Thread-67662 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:33.487 [DEBUG] [Thread-67662 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:33.488 [DEBUG] [Thread-67662 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:33.495 [DEBUG] [Thread-67662 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:33.495 [INFO] [Thread-67662 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93302637, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602560642138, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992974, telescope_ra=18.5424539, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.56221, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.5162560126712, telescope_dec_j2k=-24.2736287103506, observability=1)
2025-11-17T12:23:39.954 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:23:39
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.459230661392212s
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:39.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:39.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:39.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:39.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5442689;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56402;2460996.93310135;12.39441528;1.3;_
2025-11-17T12:23:39.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.5442689;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56402;2460996.93310135;12.39441528;1.3;_
2025-11-17T12:23:39.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:39.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:39.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:39.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:39.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:39.958 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.5442689, teldec = -24.256487
2025-11-17T12:23:39.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5442689 -24.256487
2025-11-17T12:23:39.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5442689 -24.256487
2025-11-17T12:23:39.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5442689 -24.256487
2025-11-17T12:23:39.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5442689;-24.256487;50.10836;89.992974;50.08601;90.12017;15.56402;2460996.93310138;12.39441528;1.3;_18.518071129619 -24.2736961221399
2025-11-17T12:23:39.959 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.518071129619     dec_j2k = -24.2736961221399
2025-11-17T12:23:39.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:39.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:39.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104602801313794;171.162362694745;_
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104602801313794;171.162362694745;_
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:39.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:39.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:39.962 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:39.962 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:39.962 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:39.968 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32857)
2025-11-17T12:23:39.968 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:39.968 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:39.968 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:39.969 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:39.969 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:39.969 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:39.970 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:39.970 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93310135, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104602801313794, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992974, telescope_ra=18.5442689, telescope_dec=-24.256487, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.56402, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:22:42.291816', telescope_ra_j2k=18.518071129619, telescope_dec_j2k=-24.2736961221399, observability=1)
2025-11-17T12:23:42.434 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:42.434 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:42.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:42.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:42.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:42.435 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:42.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:42.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:42.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:42.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:42.436 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:23:42.436 [INFO] [ThreadPoolExecutor-2781_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:23:42.436 [INFO] [ThreadPoolExecutor-2781_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Status age = 11.611921548843384s
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:23:51.582 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:23:51.583 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:23:51.584 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 17;18.5474952;-24.256486;50.10836;89.992973;50.08601;90.12017;15.56725;2460996.93323593;12.39763278;1.3;_
2025-11-17T12:23:51.584 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response 17;18.5474952;-24.256486;50.10836;89.992973;50.08601;90.12017;15.56725;2460996.93323593;12.39763278;1.3;_
2025-11-17T12:23:51.584 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:23:51.584 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:23:51.585 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:23:51.585 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:51.585 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:23:51.586 [INFO] [Thread-67663 (handle)] [driver.py] [get_status()] Telra = 18.5474952, teldec = -24.256486
2025-11-17T12:23:51.586 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5474952 -24.256486
2025-11-17T12:23:51.586 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5474952 -24.256486
2025-11-17T12:23:51.586 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5474952 -24.256486
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 17;18.5474952;-24.256486;50.10836;89.992973;50.08601;90.12017;15.56725;2460996.93323596;12.39763278;1.3;_18.5212976399363 -24.2738149428719
2025-11-17T12:23:51.587 [INFO] [Thread-67663 (handle)] [driver.py] [get_status()] ra_j2k = 18.5212976399363     dec_j2k = -24.2738149428719
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 140;0.104603483216822;171.162357330327;_
2025-11-17T12:23:51.587 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response 140;0.104603483216822;171.162357330327;_
2025-11-17T12:23:51.588 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:23:51.588 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:51.588 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:51.588 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:23:51.589 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:23:51.590 [DEBUG] [Thread-67663 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:51.590 [DEBUG] [Thread-67663 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:23:51.590 [DEBUG] [Thread-67663 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59025)
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:23:51.594 [DEBUG] [Thread-67663 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:23:51.601 [DEBUG] [Thread-67663 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:23:51.601 [INFO] [Thread-67663 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93323593, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104603483216822, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10836, telescope_az=89.992973, telescope_ra=18.5474952, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.56725, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5212976399363, telescope_dec_j2k=-24.2738149428719, observability=1)
2025-11-17T12:24:03.317 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.317 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.317 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:03.317 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:03.317 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:24:03.318 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:03.319 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:03.320 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:24:03.321 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:24:03.322 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:24:03.322 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.322 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:03.322 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:03.323 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:03.323 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:03.323 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:03.323 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Park
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:24:03.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 29;18.5507608;-24.256486;50.10836;89.992973;50.08601;90.12017;15.57051;2460996.93337181;12.40088944;1.3;_Park Command Successful
2025-11-17T12:24:04.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:24:04.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:24:04.324 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:24:04.325 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:24:04.325 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:24:05.325 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:24:05.325 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:24:05.325 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:24:05.326 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:24:05.326 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:24:06.326 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:24:06.326 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:24:06.326 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:24:06.327 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:24:06.327 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:24:07.327 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:24:07.328 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:24:07.328 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:07.329 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:24:07.330 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:24:07.331 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:08.331 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:08.331 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:08.331 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:08.331 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:08.331 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:24:08.332 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:24:08.333 [DEBUG] [ThreadPoolExecutor-2780_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:08.333 [INFO] [ThreadPoolExecutor-2780_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Status age = 18.004634618759155s
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:09.606 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:09.607 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:09.608 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 17;18.5525178;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57227;2460996.93344454;12.40264167;1.3;_
2025-11-17T12:24:09.608 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response 17;18.5525178;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57227;2460996.93344454;12.40264167;1.3;_
2025-11-17T12:24:09.608 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:09.608 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:09.608 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:09.609 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:09.609 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:09.609 [INFO] [Thread-67664 (handle)] [driver.py] [get_status()] Telra = 18.5525178, teldec = -24.256486
2025-11-17T12:24:09.609 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5525178 -24.256486
2025-11-17T12:24:09.609 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5525178 -24.256486
2025-11-17T12:24:09.609 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5525178 -24.256486
2025-11-17T12:24:09.610 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 17;18.5525178;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57227;2460996.93344456;12.40264167;1.3;_18.5263205727359 -24.2740014529697
2025-11-17T12:24:09.610 [INFO] [Thread-67664 (handle)] [driver.py] [get_status()] ra_j2k = 18.5263205727359     dec_j2k = -24.2740014529697
2025-11-17T12:24:09.610 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:09.610 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:09.610 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 140;0.104603683776536;171.162368059163;_
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response 140;0.104603683776536;171.162368059163;_
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:09.611 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:09.612 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:09.613 [DEBUG] [Thread-67664 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:09.613 [DEBUG] [Thread-67664 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:09.613 [DEBUG] [Thread-67664 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41685)
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:09.615 [DEBUG] [Thread-67664 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:09.622 [DEBUG] [Thread-67664 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:09.622 [INFO] [Thread-67664 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93344454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104603683776536, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992973, telescope_ra=18.5525178, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.57227, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5263205727359, telescope_dec_j2k=-24.2740014529697, observability=1)
2025-11-17T12:24:09.655 [DEBUG] [Thread-67665 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:09.656 [DEBUG] [Thread-67665 (handle)] [server.py] [get_status()] Status age = 0.03316974639892578s
2025-11-17T12:24:09.656 [DEBUG] [Thread-67665 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.03316974639892578
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.274680852890015s
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:14.897 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:14.898 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5539929;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57375;2460996.93350578;12.40411278;1.3;_
2025-11-17T12:24:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5539929;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57375;2460996.93350578;12.40411278;1.3;_
2025-11-17T12:24:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:14.899 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:14.900 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5539929, teldec = -24.256486
2025-11-17T12:24:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5539929 -24.256486
2025-11-17T12:24:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5539929 -24.256486
2025-11-17T12:24:14.900 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5539929 -24.256486
2025-11-17T12:24:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5539929;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57375;2460996.9335058;12.40411278;1.3;_18.5277957717938 -24.2740562242624
2025-11-17T12:24:14.901 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5277957717938     dec_j2k = -24.2740562242624
2025-11-17T12:24:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104603322769051;171.162368059163;_
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104603322769051;171.162368059163;_
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35081)
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:14.907 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:14.914 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:14.915 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93350578, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104603322769051, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992973, telescope_ra=18.5539929, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.57375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5277957717938, telescope_dec_j2k=-24.2740562242624, observability=1)
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.916369915008545s
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:18.831 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:18.832 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:18.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.555077;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57483;2460996.93355132;12.40519389;1.3;_
2025-11-17T12:24:18.834 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.555077;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57483;2460996.93355132;12.40519389;1.3;_
2025-11-17T12:24:18.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:18.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:18.834 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:18.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:18.835 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:18.835 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.555077, teldec = -24.256486
2025-11-17T12:24:18.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.555077 -24.256486
2025-11-17T12:24:18.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.555077 -24.256486
2025-11-17T12:24:18.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.555077 -24.256486
2025-11-17T12:24:18.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.555077;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57483;2460996.93355134;12.40519389;1.3;_18.528879944976 -24.2740964759546
2025-11-17T12:24:18.836 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.528879944976     dec_j2k = -24.2740964759546
2025-11-17T12:24:18.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:18.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:18.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:18.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104603643664593;171.162362694745;_
2025-11-17T12:24:18.837 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104603643664593;171.162362694745;_
2025-11-17T12:24:18.837 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:18.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:18.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:18.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.932;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.932 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:18.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:18.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:18.839 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:18.839 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53855)
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:18.842 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:18.849 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:18.849 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93355132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.932, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.105), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104603643664593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992973, telescope_ra=18.555077, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.57483, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.528879944976, telescope_dec_j2k=-24.2740964759546, observability=1)
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.158785343170166s
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:25.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:25.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:25.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5568076;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57656;2460996.9336228;12.40691972;1.3;_
2025-11-17T12:24:25.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.5568076;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57656;2460996.9336228;12.40691972;1.3;_
2025-11-17T12:24:25.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:25.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:25.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:25.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:25.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:25.011 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.5568076, teldec = -24.256486
2025-11-17T12:24:25.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.5568076 -24.256486
2025-11-17T12:24:25.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.5568076 -24.256486
2025-11-17T12:24:25.011 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5568076 -24.256486
2025-11-17T12:24:25.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5568076;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57656;2460996.93362282;12.40691972;1.3;_18.5306106624694 -24.2741607288995
2025-11-17T12:24:25.012 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5306106624694     dec_j2k = -24.2741607288995
2025-11-17T12:24:25.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:25.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10460416511985;171.162357330327;_
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10460416511985;171.162357330327;_
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:25.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:25.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:25.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:25.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:25.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51901)
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:25.017 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:25.024 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:25.025 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:24:25.025 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9336228, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460416511985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992973, telescope_ra=18.5568076, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.57656, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5306106624694, telescope_dec_j2k=-24.2741607288995, observability=1)
2025-11-17T12:24:25.025 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07107758522034 seconds ago
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Status age = 2.6980772018432617s
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:27.723 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:27.724 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:27.725 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 17;18.5575541;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57731;2460996.93365422;12.40766417;1.3;_
2025-11-17T12:24:27.725 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response 17;18.5575541;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57731;2460996.93365422;12.40766417;1.3;_
2025-11-17T12:24:27.725 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:27.725 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:27.725 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:27.726 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:27.726 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:27.726 [INFO] [Thread-67666 (handle)] [driver.py] [get_status()] Telra = 18.5575541, teldec = -24.256486
2025-11-17T12:24:27.726 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5575541 -24.256486
2025-11-17T12:24:27.726 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5575541 -24.256486
2025-11-17T12:24:27.726 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5575541 -24.256486
2025-11-17T12:24:27.727 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 17;18.5575541;-24.256486;50.108359;89.992973;50.08601;90.12017;15.57731;2460996.93365425;12.40766417;1.3;_18.5313572134047 -24.2741884435789
2025-11-17T12:24:27.727 [INFO] [Thread-67666 (handle)] [driver.py] [get_status()] ra_j2k = 18.5313572134047     dec_j2k = -24.2741884435789
2025-11-17T12:24:27.727 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:27.727 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:27.727 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 140;0.10460416511985;171.162368059163;_
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response 140;0.10460416511985;171.162368059163;_
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:27.728 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:27.729 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:27.730 [DEBUG] [Thread-67666 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:27.730 [DEBUG] [Thread-67666 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:27.730 [DEBUG] [Thread-67666 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59281)
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:27.738 [DEBUG] [Thread-67666 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:27.745 [DEBUG] [Thread-67666 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:27.746 [DEBUG] [Thread-67666 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:27.746 [DEBUG] [Thread-67666 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:27.746 [INFO] [Thread-67666 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93365422, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460416511985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992973, telescope_ra=18.5575541, telescope_dec=-24.256486, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.57731, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5313572134047, telescope_dec_j2k=-24.2741884435789, observability=1)
2025-11-17T12:24:40.030 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:24:40
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.284361600875854s
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:40.030 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:40.031 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:40.032 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5609893;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58074;2460996.93379667;12.41109;1.3;_
2025-11-17T12:24:40.032 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.5609893;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58074;2460996.93379667;12.41109;1.3;_
2025-11-17T12:24:40.032 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:40.032 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:40.032 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:40.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:40.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:40.033 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.5609893, teldec = -24.256485
2025-11-17T12:24:40.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5609893 -24.256485
2025-11-17T12:24:40.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5609893 -24.256485
2025-11-17T12:24:40.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5609893 -24.256485
2025-11-17T12:24:40.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5609893;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58074;2460996.93379669;12.41109;1.3;_18.5347926499681 -24.2743149713267
2025-11-17T12:24:40.034 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.5347926499681     dec_j2k = -24.2743149713267
2025-11-17T12:24:40.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:40.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:40.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104604205231793;171.162351965909;_
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104604205231793;171.162351965909;_
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:40.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:40.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:40.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:40.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:24:40.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37013)
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:40.044 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:40.051 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:40.052 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:40.052 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93379667, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104604205231793, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992972, telescope_ra=18.5609893, telescope_dec=-24.256485, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.58074, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:23:42.434132', telescope_ra_j2k=18.5347926499681, telescope_dec_j2k=-24.2743149713267, observability=1)
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:42.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:42.577 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:42.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:42.578 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:42.579 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:24:42.580 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:24:42.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:24:43.581 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:43.582 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:43.589 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:43.589 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:43.589 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:43.589 [DEBUG] [ThreadPoolExecutor-2782_0] [payload.py] [to_registers()] [0]
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39787)
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:43.594 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:43.602 [DEBUG] [ThreadPoolExecutor-2782_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Status age = 5.784156560897827s
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:24:45.836 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:24:45.837 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:24:45.838 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 17;18.5626051;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58236;2460996.93386387;12.41270139;1.3;_
2025-11-17T12:24:45.838 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response 17;18.5626051;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58236;2460996.93386387;12.41270139;1.3;_
2025-11-17T12:24:45.838 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:24:45.838 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:24:45.838 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:24:45.839 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:45.839 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:24:45.839 [INFO] [Thread-67667 (handle)] [driver.py] [get_status()] Telra = 18.5626051, teldec = -24.256485
2025-11-17T12:24:45.840 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5626051 -24.256485
2025-11-17T12:24:45.840 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5626051 -24.256485
2025-11-17T12:24:45.840 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5626051 -24.256485
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 17;18.5626051;-24.256485;50.108359;89.992972;50.08601;90.12017;15.58236;2460996.93386389;12.41270139;1.3;_18.5364085622673 -24.2743749513333
2025-11-17T12:24:45.841 [INFO] [Thread-67667 (handle)] [driver.py] [get_status()] ra_j2k = 18.5364085622673     dec_j2k = -24.2743749513333
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 140;0.10460444590345;171.162351965909;_
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response 140;0.10460444590345;171.162351965909;_
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:45.841 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:45.842 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:45.842 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:45.842 [DEBUG] [Thread-67667 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:24:45.843 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:24:45.843 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:24:45.843 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:24:45.843 [DEBUG] [Thread-67667 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:45.843 [DEBUG] [Thread-67667 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:24:45.844 [DEBUG] [Thread-67667 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33077)
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:24:45.849 [DEBUG] [Thread-67667 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:24:45.856 [DEBUG] [Thread-67667 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:24:45.857 [DEBUG] [Thread-67667 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:24:45.857 [INFO] [Thread-67667 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93386387, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460444590345, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108359, telescope_az=89.992972, telescope_ra=18.5626051, telescope_dec=-24.256485, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.58236, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5364085622673, telescope_dec_j2k=-24.2743749513333, observability=1)
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Status age = 18.037317752838135s
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:03.894 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:03.895 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:03.895 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:03.895 [DEBUG] [Thread-67668 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:03.895 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:03.895 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 17;18.567648;-24.256485;50.108358;89.992972;50.08601;90.12017;15.5874;2460996.93407287;12.41773056;1.3;_
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response 17;18.567648;-24.256485;50.108358;89.992972;50.08601;90.12017;15.5874;2460996.93407287;12.41773056;1.3;_
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:03.896 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:03.897 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:03.897 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:03.898 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:03.898 [INFO] [Thread-67668 (handle)] [driver.py] [get_status()] Telra = 18.567648, teldec = -24.256485
2025-11-17T12:25:03.898 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] UnCookCoordinates 18.567648 -24.256485
2025-11-17T12:25:03.898 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.567648 -24.256485
2025-11-17T12:25:03.898 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.567648 -24.256485
2025-11-17T12:25:03.899 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 17;18.567648;-24.256485;50.108358;89.992972;50.08601;90.12017;15.5874;2460996.93407291;12.41773056;1.3;_18.5414518173661 -24.2745621293061
2025-11-17T12:25:03.899 [INFO] [Thread-67668 (handle)] [driver.py] [get_status()] ra_j2k = 18.5414518173661     dec_j2k = -24.2745621293061
2025-11-17T12:25:03.899 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:03.899 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:03.899 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 140;0.104604806910935;171.162357330327;_
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response 140;0.104604806910935;171.162357330327;_
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:03.900 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:03.901 [DEBUG] [Thread-67668 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:03.901 [DEBUG] [Thread-67668 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:03.901 [DEBUG] [Thread-67668 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54925)
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:03.903 [DEBUG] [Thread-67668 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:03.910 [DEBUG] [Thread-67668 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:03.911 [INFO] [Thread-67668 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93407287, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104604806910935, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992972, telescope_ra=18.567648, telescope_dec=-24.256485, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.5874, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5414518173661, telescope_dec_j2k=-24.2745621293061, observability=1)
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:08.602 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:08.603 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:25:08.604 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:25:08.605 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Status age = 5.754666566848755s
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:09.665 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:09.666 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:09.667 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 17;18.5692371;-24.256485;50.108358;89.992971;50.08601;90.12017;15.58899;2460996.93413966;12.41931528;1.3;_
2025-11-17T12:25:09.667 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response 17;18.5692371;-24.256485;50.108358;89.992971;50.08601;90.12017;15.58899;2460996.93413966;12.41931528;1.3;_
2025-11-17T12:25:09.667 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:09.667 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:09.667 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:09.668 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:09.668 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:09.668 [INFO] [Thread-67669 (handle)] [driver.py] [get_status()] Telra = 18.5692371, teldec = -24.256485
2025-11-17T12:25:09.668 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5692371 -24.256485
2025-11-17T12:25:09.668 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5692371 -24.256485
2025-11-17T12:25:09.668 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5692371 -24.256485
2025-11-17T12:25:09.669 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 17;18.5692371;-24.256485;50.108358;89.992971;50.08601;90.12017;15.58899;2460996.93413969;12.41931528;1.3;_18.5430410307114 -24.2746211060771
2025-11-17T12:25:09.669 [INFO] [Thread-67669 (handle)] [driver.py] [get_status()] ra_j2k = 18.5430410307114     dec_j2k = -24.2746211060771
2025-11-17T12:25:09.669 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:09.669 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 140;0.104605127806477;171.162346601491;_
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response 140;0.104605127806477;171.162346601491;_
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:09.670 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:09.671 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:09.672 [DEBUG] [Thread-67669 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:09.673 [DEBUG] [Thread-67669 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:09.673 [DEBUG] [Thread-67669 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52119)
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:09.678 [DEBUG] [Thread-67669 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:09.685 [DEBUG] [Thread-67669 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:09.685 [DEBUG] [Thread-67669 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:09.685 [DEBUG] [Thread-67669 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:09.686 [DEBUG] [Thread-67669 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:09.686 [INFO] [Thread-67669 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93413966, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605127806477, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5692371, telescope_dec=-24.256485, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.58899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5430410307114, telescope_dec_j2k=-24.2746211060771, observability=1)
2025-11-17T12:25:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.2306764125823975s
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5707056;-24.256485;50.108358;89.992971;50.08601;90.12017;15.59046;2460996.93420044;12.42077972;1.3;_
2025-11-17T12:25:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5707056;-24.256485;50.108358;89.992971;50.08601;90.12017;15.59046;2460996.93420044;12.42077972;1.3;_
2025-11-17T12:25:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5707056, teldec = -24.256485
2025-11-17T12:25:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5707056 -24.256485
2025-11-17T12:25:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5707056 -24.256485
2025-11-17T12:25:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5707056 -24.256485
2025-11-17T12:25:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5707056;-24.256485;50.108358;89.992971;50.08601;90.12017;15.59046;2460996.93420046;12.42077972;1.3;_18.5445096360716 -24.2746756043851
2025-11-17T12:25:14.920 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5445096360716     dec_j2k = -24.2746756043851
2025-11-17T12:25:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104604967358706;171.162346601491;_
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104604967358706;171.162346601491;_
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34893)
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:14.935 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:14.936 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93420044, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104604967358706, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5707056, telescope_dec=-24.256485, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.59046, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5445096360716, telescope_dec_j2k=-24.2746756043851, observability=1)
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.002209424972534s
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:17.938 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:17.939 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5715476;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5913;2460996.93423542;12.42161944;1.3;_
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.5715476;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5913;2460996.93423542;12.42161944;1.3;_
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:17.940 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:17.941 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:17.941 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:17.941 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.5715476, teldec = -24.256484
2025-11-17T12:25:17.941 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5715476 -24.256484
2025-11-17T12:25:17.941 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5715476 -24.256484
2025-11-17T12:25:17.941 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5715476 -24.256484
2025-11-17T12:25:17.942 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.5715476;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5913;2460996.93423544;12.42161944;1.3;_18.5453516969481 -24.2747058512511
2025-11-17T12:25:17.942 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.5453516969481     dec_j2k = -24.2747058512511
2025-11-17T12:25:17.942 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:17.942 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:17.942 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104604847022878;171.162357330327;_
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104604847022878;171.162357330327;_
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:17.943 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:17.944 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:17.945 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:17.945 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:17.945 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50427)
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:17.950 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:17.957 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:17.957 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:17.957 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:17.957 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:17.958 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:17.958 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:17.958 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:17.958 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:17.958 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:17.958 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93423542, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104604847022878, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5715476, telescope_dec=-24.256484, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.5913, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5453516969481, telescope_dec_j2k=-24.2747058512511, observability=1)
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Status age = 4.007919549942017s
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:21.966 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:21.967 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:21.968 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 17;18.5726606;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59241;2460996.93428204;12.42272944;1.3;_
2025-11-17T12:25:21.968 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response 17;18.5726606;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59241;2460996.93428204;12.42272944;1.3;_
2025-11-17T12:25:21.968 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:21.968 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:21.968 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:21.969 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:21.969 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:21.969 [INFO] [Thread-67670 (handle)] [driver.py] [get_status()] Telra = 18.5726606, teldec = -24.256484
2025-11-17T12:25:21.970 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5726606 -24.256484
2025-11-17T12:25:21.970 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5726606 -24.256484
2025-11-17T12:25:21.970 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5726606 -24.256484
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 17;18.5726606;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59241;2460996.93428206;12.42272944;1.3;_18.5464647774545 -24.2747471536468
2025-11-17T12:25:21.971 [INFO] [Thread-67670 (handle)] [driver.py] [get_status()] ra_j2k = 18.5464647774545     dec_j2k = -24.2747471536468
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 140;0.104605127806477;171.162362694745;_
2025-11-17T12:25:21.971 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response 140;0.104605127806477;171.162362694745;_
2025-11-17T12:25:21.972 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:21.972 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:21.972 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:21.972 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:21.973 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:21.974 [DEBUG] [Thread-67670 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:21.974 [DEBUG] [Thread-67670 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:21.974 [DEBUG] [Thread-67670 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:21.975 [DEBUG] [Thread-67670 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38723)
2025-11-17T12:25:21.975 [DEBUG] [Thread-67670 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:21.975 [DEBUG] [Thread-67670 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:21.975 [DEBUG] [Thread-67670 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:21.975 [DEBUG] [Thread-67670 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:21.976 [DEBUG] [Thread-67670 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:21.983 [DEBUG] [Thread-67670 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:21.983 [INFO] [Thread-67670 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93428204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605127806477, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5726606, telescope_dec=-24.256484, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.59241, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5464647774545, telescope_dec_j2k=-24.2747471536468, observability=1)
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.1018710136413574s
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:25.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:25.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5735489;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5933;2460996.93431814;12.42361528;1.3;_
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.5735489;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5933;2460996.93431814;12.42361528;1.3;_
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:25.087 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.5735489, teldec = -24.256484
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.5735489 -24.256484
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.5735489 -24.256484
2025-11-17T12:25:25.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5735489 -24.256484
2025-11-17T12:25:25.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5735489;-24.256484;50.108358;89.992971;50.08601;90.12017;15.5933;2460996.93431815;12.42361528;1.3;_18.5473531419519 -24.2747801165985
2025-11-17T12:25:25.088 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5473531419519     dec_j2k = -24.2747801165985
2025-11-17T12:25:25.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:25.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104605368478134;171.162362694745;_
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104605368478134;171.162362694745;_
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:25.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:25.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:25.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:25.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:25.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50117)
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:25.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:25.104 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:25:25.104 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93431814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605368478134, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5735489, telescope_dec=-24.256484, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.5933, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5473531419519, telescope_dec_j2k=-24.2747801165985, observability=1)
2025-11-17T12:25:25.104 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07458972930908 seconds ago
2025-11-17T12:25:40.089 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:40.089 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Status age = 14.985039472579956s
2025-11-17T12:25:40.089 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:40.089 [DEBUG] [Thread-67671 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:40.089 [DEBUG] [Thread-67671 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:40.090 [DEBUG] [Thread-67671 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 17;18.5777298;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59748;2460996.93449179;12.42778472;1.3;_
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response 17;18.5777298;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59748;2460996.93449179;12.42778472;1.3;_
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:40.091 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:40.092 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:40.092 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:40.092 [INFO] [Thread-67671 (handle)] [driver.py] [get_status()] Telra = 18.5777298, teldec = -24.256484
2025-11-17T12:25:40.092 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5777298 -24.256484
2025-11-17T12:25:40.092 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5777298 -24.256484
2025-11-17T12:25:40.092 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5777298 -24.256484
2025-11-17T12:25:40.093 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 17;18.5777298;-24.256484;50.108358;89.992971;50.08601;90.12017;15.59748;2460996.93449182;12.42778472;1.3;_18.5515343484289 -24.274935248631
2025-11-17T12:25:40.094 [INFO] [Thread-67671 (handle)] [driver.py] [get_status()] ra_j2k = 18.5515343484289     dec_j2k = -24.274935248631
2025-11-17T12:25:40.094 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:40.094 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:40.094 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 140;0.104604806910935;171.162357330327;_
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response 140;0.104604806910935;171.162357330327;_
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:40.095 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:40.096 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:40.097 [DEBUG] [Thread-67671 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:40.097 [DEBUG] [Thread-67671 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:40.097 [DEBUG] [Thread-67671 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43231)
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:40.102 [DEBUG] [Thread-67671 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:40.109 [DEBUG] [Thread-67671 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:40.109 [DEBUG] [Thread-67671 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:40.109 [DEBUG] [Thread-67671 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:40.109 [DEBUG] [Thread-67671 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:40.110 [DEBUG] [Thread-67671 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:40.110 [DEBUG] [Thread-67671 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:40.110 [DEBUG] [Thread-67671 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:40.110 [DEBUG] [Thread-67671 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:40.110 [DEBUG] [Thread-67671 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:40.110 [INFO] [Thread-67671 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93449179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104604806910935, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.992971, telescope_ra=18.5777298, telescope_dec=-24.256484, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.59748, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:24:42.576537', telescope_ra_j2k=18.5515343484289, telescope_dec_j2k=-24.274935248631, observability=1)
2025-11-17T12:25:40.113 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:25:40
2025-11-17T12:25:40.113 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:40.113 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.003064870834350586s
2025-11-17T12:25:40.113 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.003064870834350586
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:42.718 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:42.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:42.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:42.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:42.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:42.719 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:25:42.720 [INFO] [ThreadPoolExecutor-2783_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:25:42.720 [INFO] [ThreadPoolExecutor-2783_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:25:58.156 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:25:58.156 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Status age = 18.04667091369629s
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:25:58.157 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:25:58.158 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:25:58.159 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 17;18.5827515;-24.256484;50.108358;89.99297;50.08601;90.12017;15.60251;2460996.93470091;12.43279278;1.3;_
2025-11-17T12:25:58.159 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response 17;18.5827515;-24.256484;50.108358;89.99297;50.08601;90.12017;15.60251;2460996.93470091;12.43279278;1.3;_
2025-11-17T12:25:58.159 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:25:58.159 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:25:58.159 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:25:58.160 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:58.160 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:25:58.160 [INFO] [Thread-67672 (handle)] [driver.py] [get_status()] Telra = 18.5827515, teldec = -24.256484
2025-11-17T12:25:58.160 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5827515 -24.256484
2025-11-17T12:25:58.160 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5827515 -24.256484
2025-11-17T12:25:58.160 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5827515 -24.256484
2025-11-17T12:25:58.161 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 17;18.5827515;-24.256484;50.108358;89.99297;50.08601;90.12017;15.60251;2460996.93470094;12.43279278;1.3;_18.556556422888 -24.2751215512469
2025-11-17T12:25:58.161 [INFO] [Thread-67672 (handle)] [driver.py] [get_status()] ra_j2k = 18.556556422888     dec_j2k = -24.2751215512469
2025-11-17T12:25:58.161 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:25:58.161 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:25:58.162 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 140;0.104605408590077;171.162362694745;_
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response 140;0.104605408590077;171.162362694745;_
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:58.163 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:25:58.164 [DEBUG] [Thread-67672 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41899)
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:25:58.167 [DEBUG] [Thread-67672 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:25:58.174 [DEBUG] [Thread-67672 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:25:58.174 [DEBUG] [Thread-67672 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:25:58.175 [DEBUG] [Thread-67672 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:25:58.175 [INFO] [Thread-67672 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93470091, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605408590077, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108358, telescope_az=89.99297, telescope_ra=18.5827515, telescope_dec=-24.256484, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.60251, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.556556422888, telescope_dec_j2k=-24.2751215512469, observability=1)
2025-11-17T12:26:03.605 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.605 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.605 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:03.605 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:03.605 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:26:03.606 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:03.607 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:03.608 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.608 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:03.608 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:03.608 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.609 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.609 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:03.609 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:03.609 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:03.609 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:26:03.610 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:03.611 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Park
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:26:03.612 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:26:03.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 29;18.5842757;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60403;2460996.93476404;12.43431278;1.3;_Park Command Successful
2025-11-17T12:26:04.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:26:04.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:26:04.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:26:04.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:26:04.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:26:05.613 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:26:05.614 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:26:05.614 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:26:05.614 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:26:05.614 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:26:06.614 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:26:06.615 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:26:06.615 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:26:06.615 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:26:06.615 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:07.616 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:26:07.617 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:26:07.618 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:26:07.618 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:26:08.619 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:26:08.620 [DEBUG] [ThreadPoolExecutor-2782_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:08.620 [INFO] [ThreadPoolExecutor-2782_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Status age = 11.547334432601929s
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:09.722 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:09.723 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:09.724 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 17;18.5859751;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60573;2460996.93483477;12.4360075;1.3;_
2025-11-17T12:26:09.724 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response 17;18.5859751;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60573;2460996.93483477;12.4360075;1.3;_
2025-11-17T12:26:09.724 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:09.724 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:09.724 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:09.725 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:09.725 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:09.725 [INFO] [Thread-67673 (handle)] [driver.py] [get_status()] Telra = 18.5859751, teldec = -24.256483
2025-11-17T12:26:09.725 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5859751 -24.256483
2025-11-17T12:26:09.725 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5859751 -24.256483
2025-11-17T12:26:09.725 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5859751 -24.256483
2025-11-17T12:26:09.726 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 17;18.5859751;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60573;2460996.93483479;12.4360075;1.3;_18.5597802671153 -24.2752401294911
2025-11-17T12:26:09.726 [INFO] [Thread-67673 (handle)] [driver.py] [get_status()] ra_j2k = 18.5597802671153     dec_j2k = -24.2752401294911
2025-11-17T12:26:09.726 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:09.726 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:09.726 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 140;0.104605930045333;171.162362694745;_
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response 140;0.104605930045333;171.162362694745;_
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:09.727 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:09.728 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:09.729 [DEBUG] [Thread-67673 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:09.729 [DEBUG] [Thread-67673 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:09.729 [DEBUG] [Thread-67673 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:09.735 [DEBUG] [Thread-67673 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35467)
2025-11-17T12:26:09.736 [DEBUG] [Thread-67673 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:09.736 [DEBUG] [Thread-67673 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:09.736 [DEBUG] [Thread-67673 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:09.736 [DEBUG] [Thread-67673 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:09.736 [DEBUG] [Thread-67673 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:09.743 [DEBUG] [Thread-67673 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:09.743 [INFO] [Thread-67673 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93483477, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605930045333, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.99297, telescope_ra=18.5859751, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.60573, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.5597802671153, telescope_dec_j2k=-24.2752401294911, observability=1)
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.176792144775391s
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5874318;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60719;2460996.93489493;12.43746028;1.3;_
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.5874318;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60719;2460996.93489493;12.43746028;1.3;_
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:14.922 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.5874318, teldec = -24.256483
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5874318 -24.256483
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5874318 -24.256483
2025-11-17T12:26:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5874318 -24.256483
2025-11-17T12:26:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.5874318;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60719;2460996.93489494;12.43746028;1.3;_18.5612370783249 -24.2752941611201
2025-11-17T12:26:14.923 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5612370783249     dec_j2k = -24.2752941611201
2025-11-17T12:26:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104605528925905;171.162362694745;_
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104605528925905;171.162362694745;_
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33787)
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:14.926 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:14.934 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:14.934 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93489493, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605528925905, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.99297, telescope_ra=18.5874318, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.60719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.5612370783249, telescope_dec_j2k=-24.2752941611201, observability=1)
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Status age = 1.2958736419677734s
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:16.230 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:16.231 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 17;18.5877878;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60754;2460996.93491009;12.43781528;1.3;_
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response 17;18.5877878;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60754;2460996.93491009;12.43781528;1.3;_
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:16.232 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:16.233 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:16.233 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:16.233 [INFO] [Thread-67674 (handle)] [driver.py] [get_status()] Telra = 18.5877878, teldec = -24.256483
2025-11-17T12:26:16.234 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5877878 -24.256483
2025-11-17T12:26:16.234 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5877878 -24.256483
2025-11-17T12:26:16.234 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5877878 -24.256483
2025-11-17T12:26:16.235 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 17;18.5877878;-24.256483;50.108357;89.99297;50.08601;90.12017;15.60754;2460996.93491013;12.43781528;1.3;_18.5615931055919 -24.275307365414
2025-11-17T12:26:16.235 [INFO] [Thread-67674 (handle)] [driver.py] [get_status()] ra_j2k = 18.5615931055919     dec_j2k = -24.275307365414
2025-11-17T12:26:16.235 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:16.235 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:16.235 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 140;0.104605769597562;171.162368059163;_
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response 140;0.104605769597562;171.162368059163;_
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:16.236 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:16.237 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:16.238 [DEBUG] [Thread-67674 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:16.238 [DEBUG] [Thread-67674 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:16.238 [DEBUG] [Thread-67674 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57049)
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:16.239 [DEBUG] [Thread-67674 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:16.246 [DEBUG] [Thread-67674 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:16.246 [DEBUG] [Thread-67674 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:16.247 [DEBUG] [Thread-67674 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:16.247 [INFO] [Thread-67674 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93491009, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605769597562, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.99297, telescope_ra=18.5877878, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.60754, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.5615931055919, telescope_dec_j2k=-24.275307365414, observability=1)
2025-11-17T12:26:17.042 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:17.042 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.794978141784668s
2025-11-17T12:26:17.042 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.794978141784668
2025-11-17T12:26:25.164 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:26:25.164 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.917480945587158s
2025-11-17T12:26:25.164 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:25.164 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:25.164 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:25.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:25.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:25.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5902735;-24.256483;50.108357;89.99297;50.08601;90.12017;15.61003;2460996.9350135;12.44029417;1.3;_
2025-11-17T12:26:25.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.5902735;-24.256483;50.108357;89.99297;50.08601;90.12017;15.61003;2460996.9350135;12.44029417;1.3;_
2025-11-17T12:26:25.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:25.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:25.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:25.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:25.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:25.168 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.5902735, teldec = -24.256483
2025-11-17T12:26:25.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.5902735 -24.256483
2025-11-17T12:26:25.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.5902735 -24.256483
2025-11-17T12:26:25.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5902735 -24.256483
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.5902735;-24.256483;50.108357;89.99297;50.08601;90.12017;15.61003;2460996.93501353;12.44029417;1.3;_18.5640789969481 -24.2753995575404
2025-11-17T12:26:25.169 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5640789969481     dec_j2k = -24.2753995575404
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104605649261734;171.162362694745;_
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104605649261734;171.162362694745;_
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:25.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:25.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:25.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:25.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:25.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:25.175 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49467)
2025-11-17T12:26:25.176 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:25.176 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:25.176 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:25.176 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:25.176 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:25.183 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:26:25.183 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9350135, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605649261734, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.99297, telescope_ra=18.5902735, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.61003, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.5640789969481, telescope_dec_j2k=-24.2753995575404, observability=1)
2025-11-17T12:26:25.183 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.070486068725586 seconds ago
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Status age = 9.153841495513916s
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:34.337 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 17;18.5928319;-24.256483;50.108357;89.992969;50.08601;90.12017;15.61259;2460996.93511965;12.44284556;1.3;_
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response 17;18.5928319;-24.256483;50.108357;89.992969;50.08601;90.12017;15.61259;2460996.93511965;12.44284556;1.3;_
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:34.338 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:34.339 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:34.339 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:34.339 [INFO] [Thread-67675 (handle)] [driver.py] [get_status()] Telra = 18.5928319, teldec = -24.256483
2025-11-17T12:26:34.339 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5928319 -24.256483
2025-11-17T12:26:34.340 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5928319 -24.256483
2025-11-17T12:26:34.340 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5928319 -24.256483
2025-11-17T12:26:34.340 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 17;18.5928319;-24.256483;50.108357;89.992969;50.08601;90.12017;15.61259;2460996.93511968;12.44284556;1.3;_18.5666375956732 -24.2754944382265
2025-11-17T12:26:34.341 [INFO] [Thread-67675 (handle)] [driver.py] [get_status()] ra_j2k = 18.5666375956732     dec_j2k = -24.2754944382265
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 140;0.104605889933391;171.162368059163;_
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response 140;0.104605889933391;171.162368059163;_
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:34.341 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:34.342 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:34.343 [DEBUG] [Thread-67675 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:34.343 [DEBUG] [Thread-67675 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:34.343 [DEBUG] [Thread-67675 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51653)
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:34.347 [DEBUG] [Thread-67675 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:34.354 [DEBUG] [Thread-67675 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:34.354 [DEBUG] [Thread-67675 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:34.354 [DEBUG] [Thread-67675 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:34.354 [DEBUG] [Thread-67675 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:34.354 [DEBUG] [Thread-67675 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:34.355 [DEBUG] [Thread-67675 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:34.355 [DEBUG] [Thread-67675 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:34.355 [DEBUG] [Thread-67675 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:34.355 [DEBUG] [Thread-67675 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:34.355 [INFO] [Thread-67675 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93511965, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605889933391, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.992969, telescope_ra=18.5928319, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.61259, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.5666375956732, telescope_dec_j2k=-24.2754944382265, observability=1)
2025-11-17T12:26:40.173 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:26:40
2025-11-17T12:26:40.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:40.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.81865668296814s
2025-11-17T12:26:40.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:40.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:40.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:40.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5944468;-24.256483;50.108357;89.992969;50.08601;90.12017;15.6142;2460996.93518721;12.44445611;1.3;_
2025-11-17T12:26:40.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.5944468;-24.256483;50.108357;89.992969;50.08601;90.12017;15.6142;2460996.93518721;12.44445611;1.3;_
2025-11-17T12:26:40.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:40.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:40.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:40.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:40.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:40.176 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.5944468, teldec = -24.256483
2025-11-17T12:26:40.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5944468 -24.256483
2025-11-17T12:26:40.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5944468 -24.256483
2025-11-17T12:26:40.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5944468 -24.256483
2025-11-17T12:26:40.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.5944468;-24.256483;50.108357;89.992969;50.08601;90.12017;15.6142;2460996.93518723;12.44445611;1.3;_18.568252622037 -24.2755543242237
2025-11-17T12:26:40.178 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.568252622037     dec_j2k = -24.2755543242237
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104606090493105;171.162362694745;_
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104606090493105;171.162362694745;_
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:40.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:40.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:40.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:40.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:40.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:40.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:26:40.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43615)
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:40.183 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:40.191 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:40.192 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93518721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606090493105, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.992969, telescope_ra=18.5944468, telescope_dec=-24.256483, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.6142, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:25:42.717570', telescope_ra_j2k=18.568252622037, telescope_dec_j2k=-24.2755543242237, observability=1)
2025-11-17T12:26:42.860 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:42.860 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:42.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:42.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:42.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:42.861 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:42.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:42.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:42.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:42.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:42.862 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:26:42.862 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:26:42.863 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:26:42.864 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:43.864 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:26:43.865 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:43.866 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:43.867 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:43.867 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:43.867 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:43.867 [DEBUG] [ThreadPoolExecutor-2784_0] [payload.py] [to_registers()] [0]
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56181)
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:43.874 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:43.881 [DEBUG] [ThreadPoolExecutor-2784_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:52.397 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:26:52.397 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Status age = 12.205836296081543s
2025-11-17T12:26:52.397 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 17;18.5978726;-24.256482;50.108357;89.992969;50.08601;90.12017;15.61763;2460996.93532868;12.4478725;1.3;_
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response 17;18.5978726;-24.256482;50.108357;89.992969;50.08601;90.12017;15.61763;2460996.93532868;12.4478725;1.3;_
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:26:52.398 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:26:52.399 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:26:52.400 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:52.400 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:26:52.400 [INFO] [Thread-67676 (handle)] [driver.py] [get_status()] Telra = 18.5978726, teldec = -24.256482
2025-11-17T12:26:52.400 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] UnCookCoordinates 18.5978726 -24.256482
2025-11-17T12:26:52.400 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.5978726 -24.256482
2025-11-17T12:26:52.400 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.5978726 -24.256482
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 17;18.5978726;-24.256482;50.108357;89.992969;50.08601;90.12017;15.61763;2460996.93532872;12.4478725;1.3;_18.5716786926711 -24.275680354082
2025-11-17T12:26:52.401 [INFO] [Thread-67676 (handle)] [driver.py] [get_status()] ra_j2k = 18.5716786926711     dec_j2k = -24.275680354082
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 140;0.104606050381162;171.162357330327;_
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response 140;0.104606050381162;171.162357330327;_
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:52.401 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:26:52.402 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:26:52.403 [DEBUG] [Thread-67676 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:52.403 [DEBUG] [Thread-67676 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:26:52.403 [DEBUG] [Thread-67676 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:26:52.406 [DEBUG] [Thread-67676 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54641)
2025-11-17T12:26:52.406 [DEBUG] [Thread-67676 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:26:52.406 [DEBUG] [Thread-67676 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:26:52.406 [DEBUG] [Thread-67676 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:26:52.406 [DEBUG] [Thread-67676 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:26:52.407 [DEBUG] [Thread-67676 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:26:52.414 [DEBUG] [Thread-67676 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:26:52.415 [DEBUG] [Thread-67676 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:26:52.415 [INFO] [Thread-67676 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93532868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606050381162, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108357, telescope_az=89.992969, telescope_ra=18.5978726, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.61763, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5716786926711, telescope_dec_j2k=-24.275680354082, observability=1)
2025-11-17T12:27:08.881 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:08.881 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:08.882 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:08.882 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:08.882 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:08.883 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:27:08.884 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:27:08.885 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:09.777 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Status age = 17.362913846969604s
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:09.778 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 17;18.6027002;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62245;2460996.93552985;12.45268694;1.3;_
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response 17;18.6027002;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62245;2460996.93552985;12.45268694;1.3;_
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:09.779 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:09.780 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:09.780 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:09.780 [INFO] [Thread-67677 (handle)] [driver.py] [get_status()] Telra = 18.6027002, teldec = -24.256482
2025-11-17T12:27:09.781 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6027002 -24.256482
2025-11-17T12:27:09.781 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6027002 -24.256482
2025-11-17T12:27:09.781 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6027002 -24.256482
2025-11-17T12:27:09.781 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 17;18.6027002;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62245;2460996.93552987;12.45268694;1.3;_18.5765066792377 -24.2758593385491
2025-11-17T12:27:09.782 [INFO] [Thread-67677 (handle)] [driver.py] [get_status()] ra_j2k = 18.5765066792377     dec_j2k = -24.2758593385491
2025-11-17T12:27:09.782 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:09.782 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:09.782 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:09.782 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 140;0.104605488813962;171.162357330327;_
2025-11-17T12:27:09.782 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response 140;0.104605488813962;171.162357330327;_
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:09.783 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:09.784 [DEBUG] [Thread-67677 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:27:09.784 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:09.784 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:09.784 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:09.784 [DEBUG] [Thread-67677 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:09.785 [DEBUG] [Thread-67677 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:09.785 [DEBUG] [Thread-67677 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:27:09.788 [DEBUG] [Thread-67677 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55871)
2025-11-17T12:27:09.788 [DEBUG] [Thread-67677 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:09.788 [DEBUG] [Thread-67677 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:09.788 [DEBUG] [Thread-67677 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:09.789 [DEBUG] [Thread-67677 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:09.789 [DEBUG] [Thread-67677 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:09.796 [DEBUG] [Thread-67677 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:09.796 [INFO] [Thread-67677 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93552985, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605488813962, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6027002, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.62245, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5765066792377, telescope_dec_j2k=-24.2758593385491, observability=1)
2025-11-17T12:27:10.472 [DEBUG] [Thread-67678 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:10.472 [DEBUG] [Thread-67678 (handle)] [server.py] [get_status()] Status age = 0.6756548881530762s
2025-11-17T12:27:10.472 [DEBUG] [Thread-67678 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6756548881530762
2025-11-17T12:27:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.143120050430298s
2025-11-17T12:27:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6041475;-24.256482;50.108356;89.992968;50.08601;90.12017;15.6239;2460996.93558961;12.45413028;1.3;_
2025-11-17T12:27:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.6041475;-24.256482;50.108356;89.992968;50.08601;90.12017;15.6239;2460996.93558961;12.45413028;1.3;_
2025-11-17T12:27:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:14.943 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.6041475, teldec = -24.256482
2025-11-17T12:27:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6041475 -24.256482
2025-11-17T12:27:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6041475 -24.256482
2025-11-17T12:27:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6041475 -24.256482
2025-11-17T12:27:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6041475;-24.256482;50.108356;89.992968;50.08601;90.12017;15.6239;2460996.93558963;12.45413028;1.3;_18.5779540963762 -24.2759129919286
2025-11-17T12:27:14.944 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5779540963762     dec_j2k = -24.2759129919286
2025-11-17T12:27:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104606210828933;171.162357330327;_
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104606210828933;171.162357330327;_
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46911)
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:14.955 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:14.956 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:14.956 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93558961, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606210828933, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6041475, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.6239, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5779540963762, telescope_dec_j2k=-24.2759129919286, observability=1)
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.175544023513794s
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:16.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:16.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:16.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6044768;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62423;2460996.93560339;12.45445861;1.3;_
2025-11-17T12:27:16.133 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.6044768;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62423;2460996.93560339;12.45445861;1.3;_
2025-11-17T12:27:16.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:16.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:16.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:16.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:16.134 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:16.134 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.6044768, teldec = -24.256482
2025-11-17T12:27:16.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6044768 -24.256482
2025-11-17T12:27:16.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6044768 -24.256482
2025-11-17T12:27:16.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6044768 -24.256482
2025-11-17T12:27:16.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6044768;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62423;2460996.93560341;12.45445861;1.3;_18.5782834231087 -24.2759251991634
2025-11-17T12:27:16.135 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.5782834231087     dec_j2k = -24.2759251991634
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104605849821448;171.162362694745;_
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104605849821448;171.162362694745;_
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:16.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:16.137 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48795)
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:16.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:16.146 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:16.146 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93560339, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605849821448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6044768, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.62423, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5782834231087, telescope_dec_j2k=-24.2759251991634, observability=1)
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.096981763839722s
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:25.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:25.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:25.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6070179;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62677;2460996.93570885;12.45699278;1.3;_
2025-11-17T12:27:25.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6070179;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62677;2460996.93570885;12.45699278;1.3;_
2025-11-17T12:27:25.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:25.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:25.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:25.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:25.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:25.246 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6070179, teldec = -24.256482
2025-11-17T12:27:25.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6070179 -24.256482
2025-11-17T12:27:25.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6070179 -24.256482
2025-11-17T12:27:25.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6070179 -24.256482
2025-11-17T12:27:25.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6070179;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62677;2460996.93570888;12.45699278;1.3;_18.5808247303963 -24.2760193938339
2025-11-17T12:27:25.247 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5808247303963     dec_j2k = -24.2760193938339
2025-11-17T12:27:25.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:25.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:25.247 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10460617071699;171.162351965909;_
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10460617071699;171.162351965909;_
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:25.248 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:25.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:27:25.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44577)
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:25.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:25.261 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:27:25.262 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93570885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460617071699, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6070179, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.62677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5808247303963, telescope_dec_j2k=-24.2760193938339, observability=1)
2025-11-17T12:27:25.262 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08837890625 seconds ago
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Status age = 3.3488495349884033s
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:28.610 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:28.611 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:28.612 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 17;18.6079602;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62771;2460996.93574782;12.4579325;1.3;_
2025-11-17T12:27:28.612 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response 17;18.6079602;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62771;2460996.93574782;12.4579325;1.3;_
2025-11-17T12:27:28.612 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:28.612 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:28.613 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:28.613 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:28.613 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:28.613 [INFO] [Thread-67679 (handle)] [driver.py] [get_status()] Telra = 18.6079602, teldec = -24.256482
2025-11-17T12:27:28.614 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6079602 -24.256482
2025-11-17T12:27:28.614 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6079602 -24.256482
2025-11-17T12:27:28.614 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6079602 -24.256482
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 17;18.6079602;-24.256482;50.108356;89.992968;50.08601;90.12017;15.62771;2460996.93574786;12.4579325;1.3;_18.5817671077141 -24.2760543213921
2025-11-17T12:27:28.615 [INFO] [Thread-67679 (handle)] [driver.py] [get_status()] ra_j2k = 18.5817671077141     dec_j2k = -24.2760543213921
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 140;0.104605849821448;171.162362694745;_
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response 140;0.104605849821448;171.162362694745;_
2025-11-17T12:27:28.615 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:28.616 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:28.616 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:28.616 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:28.617 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:28.618 [DEBUG] [Thread-67679 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:28.618 [DEBUG] [Thread-67679 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:28.618 [DEBUG] [Thread-67679 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:28.623 [DEBUG] [Thread-67679 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49483)
2025-11-17T12:27:28.623 [DEBUG] [Thread-67679 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:28.623 [DEBUG] [Thread-67679 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:28.624 [DEBUG] [Thread-67679 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:28.624 [DEBUG] [Thread-67679 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:28.624 [DEBUG] [Thread-67679 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:28.631 [DEBUG] [Thread-67679 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:28.631 [INFO] [Thread-67679 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93574782, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104605849821448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6079602, telescope_dec=-24.256482, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.62771, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5817671077141, telescope_dec_j2k=-24.2760543213921, observability=1)
2025-11-17T12:27:40.252 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:27:40
2025-11-17T12:27:40.252 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.621508359909058s
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:40.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6111999;-24.256481;50.108356;89.992968;50.08601;90.12017;15.63095;2460996.93588257;12.46116333;1.3;_
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.6111999;-24.256481;50.108356;89.992968;50.08601;90.12017;15.63095;2460996.93588257;12.46116333;1.3;_
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:40.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:40.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:40.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:40.255 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.6111999, teldec = -24.256481
2025-11-17T12:27:40.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6111999 -24.256481
2025-11-17T12:27:40.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6111999 -24.256481
2025-11-17T12:27:40.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6111999 -24.256481
2025-11-17T12:27:40.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6111999;-24.256481;50.108356;89.992968;50.08601;90.12017;15.63095;2460996.93588259;12.46116333;1.3;_18.5850070755971 -24.2761733965823
2025-11-17T12:27:40.257 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.5850070755971     dec_j2k = -24.2761733965823
2025-11-17T12:27:40.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:40.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:40.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104606331164761;171.162357330327;_
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104606331164761;171.162357330327;_
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:40.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:40.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:40.261 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39829)
2025-11-17T12:27:40.261 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:40.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:40.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:40.262 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:40.262 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:40.269 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:40.270 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93588257, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606331164761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992968, telescope_ra=18.6111999, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.63095, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:26:42.860192', telescope_ra_j2k=18.5850070755971, telescope_dec_j2k=-24.2761733965823, observability=1)
2025-11-17T12:27:43.002 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:43.002 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:43.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:43.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:43.004 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:43.005 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:27:43.005 [INFO] [ThreadPoolExecutor-2785_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:27:43.005 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T12:27:46.676 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Status age = 6.407019138336182s
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:27:46.677 [DEBUG] [Thread-67680 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 17;18.6129833;-24.256481;50.108356;89.992967;50.08601;90.12017;15.63274;2460996.93595692;12.46294194;1.3;_
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response 17;18.6129833;-24.256481;50.108356;89.992967;50.08601;90.12017;15.63274;2460996.93595692;12.46294194;1.3;_
2025-11-17T12:27:46.678 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:27:46.679 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:27:46.679 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:27:46.680 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:46.680 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:27:46.680 [INFO] [Thread-67680 (handle)] [driver.py] [get_status()] Telra = 18.6129833, teldec = -24.256481
2025-11-17T12:27:46.680 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6129833 -24.256481
2025-11-17T12:27:46.680 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6129833 -24.256481
2025-11-17T12:27:46.680 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6129833 -24.256481
2025-11-17T12:27:46.681 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 17;18.6129833;-24.256481;50.108356;89.992967;50.08601;90.12017;15.63274;2460996.93595696;12.46294194;1.3;_18.5867906241828 -24.2762394902477
2025-11-17T12:27:46.681 [INFO] [Thread-67680 (handle)] [driver.py] [get_status()] ra_j2k = 18.5867906241828     dec_j2k = -24.2762394902477
2025-11-17T12:27:46.681 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:27:46.681 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:27:46.681 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 140;0.104606571836418;171.162357330327;_
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response 140;0.104606571836418;171.162357330327;_
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:46.682 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:27:46.683 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:27:46.684 [DEBUG] [Thread-67680 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:46.684 [DEBUG] [Thread-67680 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:27:46.684 [DEBUG] [Thread-67680 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49059)
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:27:46.690 [DEBUG] [Thread-67680 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:27:46.697 [DEBUG] [Thread-67680 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:27:46.697 [INFO] [Thread-67680 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93595692, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606571836418, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108356, telescope_az=89.992967, telescope_ra=18.6129833, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.63274, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5867906241828, telescope_dec_j2k=-24.2762394902477, observability=1)
2025-11-17T12:28:03.885 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.885 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.885 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:03.885 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:28:03.886 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:03.887 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:03.888 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.889 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:03.890 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:03.891 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:03.891 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:03.891 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Park
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:28:03.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 29;18.6177742;-24.256481;50.108355;89.992967;50.08601;90.12017;15.63753;2460996.93615616;12.46771972;1.3;_Park Command Successful
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Status age = 18.09929585456848s
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:04.797 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:04.798 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:04.799 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 17;18.618026;-24.256481;50.108355;89.992967;50.08601;90.12017;15.63778;2460996.93616666;12.46797083;1.3;_
2025-11-17T12:28:04.799 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response 17;18.618026;-24.256481;50.108355;89.992967;50.08601;90.12017;15.63778;2460996.93616666;12.46797083;1.3;_
2025-11-17T12:28:04.799 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:04.799 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:04.799 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:04.800 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:04.800 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:04.800 [INFO] [Thread-67681 (handle)] [driver.py] [get_status()] Telra = 18.618026, teldec = -24.256481
2025-11-17T12:28:04.800 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] UnCookCoordinates 18.618026 -24.256481
2025-11-17T12:28:04.800 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.618026 -24.256481
2025-11-17T12:28:04.800 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.618026 -24.256481
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 17;18.618026;-24.256481;50.108355;89.992967;50.08601;90.12017;15.63778;2460996.93616668;12.46797083;1.3;_18.5918337490461 -24.2764263532711
2025-11-17T12:28:04.801 [INFO] [Thread-67681 (handle)] [driver.py] [get_status()] ra_j2k = 18.5918337490461     dec_j2k = -24.2764263532711
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 140;0.104606852620018;171.162357330327;_
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response 140;0.104606852620018;171.162357330327;_
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:04.801 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:04.802 [DEBUG] [Thread-67681 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:04.804 [DEBUG] [Thread-67681 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52439)
2025-11-17T12:28:04.805 [DEBUG] [Thread-67681 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:04.805 [DEBUG] [Thread-67681 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:04.805 [DEBUG] [Thread-67681 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:04.805 [DEBUG] [Thread-67681 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:04.805 [DEBUG] [Thread-67681 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:04.812 [DEBUG] [Thread-67681 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:04.813 [INFO] [Thread-67681 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93616666, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606852620018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992967, telescope_ra=18.618026, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.63778, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5918337490461, telescope_dec_j2k=-24.2764263532711, observability=1)
2025-11-17T12:28:04.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:28:04.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:28:04.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:28:04.892 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:28:04.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:28:05.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:28:05.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:28:05.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:28:05.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:28:05.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:28:06.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:28:06.893 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:28:06.894 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:28:06.894 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:28:06.895 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:28:07.895 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:28:07.895 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:28:07.895 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:07.896 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:28:07.897 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:28:07.898 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:08.898 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:08.898 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:08.898 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:08.898 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:08.898 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:28:08.899 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:28:08.900 [DEBUG] [ThreadPoolExecutor-2784_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:08.900 [INFO] [ThreadPoolExecutor-2784_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Status age = 5.017558574676514s
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:09.830 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:09.831 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:09.832 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:09.833 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 17;18.6194452;-24.256481;50.108355;89.992967;50.08601;90.12017;15.6392;2460996.93622492;12.46938611;1.3;_
2025-11-17T12:28:09.833 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response 17;18.6194452;-24.256481;50.108355;89.992967;50.08601;90.12017;15.6392;2460996.93622492;12.46938611;1.3;_
2025-11-17T12:28:09.833 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:09.833 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:09.833 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:09.834 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:09.834 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:09.834 [INFO] [Thread-67682 (handle)] [driver.py] [get_status()] Telra = 18.6194452, teldec = -24.256481
2025-11-17T12:28:09.834 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6194452 -24.256481
2025-11-17T12:28:09.834 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6194452 -24.256481
2025-11-17T12:28:09.834 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6194452 -24.256481
2025-11-17T12:28:09.835 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 17;18.6194452;-24.256481;50.108355;89.992967;50.08601;90.12017;15.6392;2460996.93622494;12.46938611;1.3;_18.5932530698771 -24.2764789374927
2025-11-17T12:28:09.835 [INFO] [Thread-67682 (handle)] [driver.py] [get_status()] ra_j2k = 18.5932530698771     dec_j2k = -24.2764789374927
2025-11-17T12:28:09.835 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:09.835 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:09.835 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 140;0.104606411388647;171.162346601491;_
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response 140;0.104606411388647;171.162346601491;_
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:09.836 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:09.837 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:09.838 [DEBUG] [Thread-67682 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:09.838 [DEBUG] [Thread-67682 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:09.838 [DEBUG] [Thread-67682 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34129)
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:09.843 [DEBUG] [Thread-67682 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:09.850 [DEBUG] [Thread-67682 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:09.850 [DEBUG] [Thread-67682 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:09.850 [DEBUG] [Thread-67682 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:09.851 [DEBUG] [Thread-67682 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:09.851 [INFO] [Thread-67682 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93622492, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606411388647, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992967, telescope_ra=18.6194452, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.6392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5932530698771, telescope_dec_j2k=-24.2764789374927, observability=1)
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.059282302856445s
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:14.910 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:14.911 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:14.912 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6208356;-24.256481;50.108355;89.992967;50.08601;90.12017;15.64059;2460996.93628372;12.47077278;1.3;_
2025-11-17T12:28:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.6208356;-24.256481;50.108355;89.992967;50.08601;90.12017;15.64059;2460996.93628372;12.47077278;1.3;_
2025-11-17T12:28:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:14.918 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.6208356, teldec = -24.256481
2025-11-17T12:28:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6208356 -24.256481
2025-11-17T12:28:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6208356 -24.256481
2025-11-17T12:28:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6208356 -24.256481
2025-11-17T12:28:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6208356;-24.256481;50.108355;89.992967;50.08601;90.12017;15.64059;2460996.93628378;12.47077278;1.3;_18.5946435887922 -24.2765304521071
2025-11-17T12:28:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.5946435887922     dec_j2k = -24.2765304521071
2025-11-17T12:28:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104606652060304;171.162357330327;_
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104606652060304;171.162357330327;_
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58379)
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:14.936 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93628372, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606652060304, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992967, telescope_ra=18.6208356, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.64059, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5946435887922, telescope_dec_j2k=-24.2765304521071, observability=1)
2025-11-17T12:28:15.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:15.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.29360508918762207s
2025-11-17T12:28:15.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.29360508918762207
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Status age = 7.934969663619995s
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:22.871 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:22.872 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:22.873 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:22.874 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 17;18.6230681;-24.25648;50.108355;89.992967;50.08601;90.12017;15.64282;2460996.93637586;12.47299917;1.3;_
2025-11-17T12:28:22.874 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response 17;18.6230681;-24.25648;50.108355;89.992967;50.08601;90.12017;15.64282;2460996.93637586;12.47299917;1.3;_
2025-11-17T12:28:22.874 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:22.874 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:22.874 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:22.875 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:22.875 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:22.875 [INFO] [Thread-67683 (handle)] [driver.py] [get_status()] Telra = 18.6230681, teldec = -24.25648
2025-11-17T12:28:22.875 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6230681 -24.25648
2025-11-17T12:28:22.875 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6230681 -24.25648
2025-11-17T12:28:22.875 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6230681 -24.25648
2025-11-17T12:28:22.876 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 17;18.6230681;-24.25648;50.108355;89.992967;50.08601;90.12017;15.64282;2460996.93637588;12.47299917;1.3;_18.5968762810371 -24.2766121615649
2025-11-17T12:28:22.876 [INFO] [Thread-67683 (handle)] [driver.py] [get_status()] ra_j2k = 18.5968762810371     dec_j2k = -24.2766121615649
2025-11-17T12:28:22.876 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:22.876 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:22.876 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 140;0.104606852620018;171.162362694745;_
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response 140;0.104606852620018;171.162362694745;_
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:22.877 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:22.878 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:22.879 [DEBUG] [Thread-67683 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:22.879 [DEBUG] [Thread-67683 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:22.879 [DEBUG] [Thread-67683 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37825)
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:22.881 [DEBUG] [Thread-67683 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:22.889 [DEBUG] [Thread-67683 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:22.889 [INFO] [Thread-67683 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93637586, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606852620018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992967, telescope_ra=18.6230681, telescope_dec=-24.25648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.64282, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5968762810371, telescope_dec_j2k=-24.2766121615649, observability=1)
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.4325406551361084s
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:25.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:25.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:25.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6237397;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64349;2460996.93640421;12.47366889;1.3;_
2025-11-17T12:28:25.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6237397;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64349;2460996.93640421;12.47366889;1.3;_
2025-11-17T12:28:25.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:25.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:25.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:25.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:25.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:25.325 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6237397, teldec = -24.25648
2025-11-17T12:28:25.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6237397 -24.25648
2025-11-17T12:28:25.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6237397 -24.25648
2025-11-17T12:28:25.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6237397 -24.25648
2025-11-17T12:28:25.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6237397;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64349;2460996.93640424;12.47366889;1.3;_18.5975479390779 -24.2766370416587
2025-11-17T12:28:25.326 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.5975479390779     dec_j2k = -24.2766370416587
2025-11-17T12:28:25.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:25.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:25.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104607013067789;171.162357330327;_
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104607013067789;171.162357330327;_
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:25.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:25.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:25.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:25.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:25.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:25.330 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38761)
2025-11-17T12:28:25.330 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:25.331 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:25.331 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:25.331 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:25.331 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:25.338 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:25.338 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:25.338 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:25.338 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:25.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:25.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:25.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:25.339 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:25.339 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:28:25.339 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93640421, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607013067789, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992966, telescope_ra=18.6237397, telescope_dec=-24.25648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.64349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.5975479390779, telescope_dec_j2k=-24.2766370416587, observability=1)
2025-11-17T12:28:25.339 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.086620569229126 seconds ago
2025-11-17T12:28:40.330 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:28:40
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.991122245788574s
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:40.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:40.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:40.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:40.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:40.332 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:40.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:40.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:40.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:40.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6279136;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64767;2460996.93657793;12.47783139;1.3;_
2025-11-17T12:28:40.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.6279136;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64767;2460996.93657793;12.47783139;1.3;_
2025-11-17T12:28:40.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:40.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:40.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:40.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:40.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:40.334 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.6279136, teldec = -24.25648
2025-11-17T12:28:40.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6279136 -24.25648
2025-11-17T12:28:40.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6279136 -24.25648
2025-11-17T12:28:40.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6279136 -24.25648
2025-11-17T12:28:40.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6279136;-24.25648;50.108355;89.992966;50.08601;90.12017;15.64767;2460996.93657795;12.47783139;1.3;_18.6017222025697 -24.2767916548292
2025-11-17T12:28:40.335 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.6017222025697     dec_j2k = -24.2767916548292
2025-11-17T12:28:40.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:40.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:40.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104606331164761;171.162351965909;_
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104606331164761;171.162351965909;_
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:40.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:40.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:40.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:40.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:40.338 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39253)
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:40.343 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:40.350 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:40.350 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93657793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104606331164761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108355, telescope_az=89.992966, telescope_ra=18.6279136, telescope_dec=-24.25648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.64767, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:27:43.002292', telescope_ra_j2k=18.6017222025697, telescope_dec_j2k=-24.2767916548292, observability=1)
2025-11-17T12:28:40.930 [DEBUG] [Thread-67684 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:40.930 [DEBUG] [Thread-67684 (handle)] [server.py] [get_status()] Status age = 0.5797641277313232s
2025-11-17T12:28:40.930 [DEBUG] [Thread-67684 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5797641277313232
2025-11-17T12:28:43.145 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:43.145 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:43.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:43.147 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:43.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:43.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:43.148 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:28:43.148 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:43.148 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:43.148 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:43.148 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:43.148 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:28:43.149 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:28:43.150 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:44.150 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:44.150 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:44.150 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:44.150 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:44.150 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:28:44.151 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:44.152 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:44.153 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:44.153 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:44.153 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:44.153 [DEBUG] [ThreadPoolExecutor-2786_0] [payload.py] [to_registers()] [0]
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54213)
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:44.158 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:44.165 [DEBUG] [ThreadPoolExecutor-2786_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Status age = 18.71045160293579s
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:28:59.061 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 17;18.6331529;-24.25648;50.108354;89.992966;50.08601;90.12017;15.65291;2460996.9367947;12.48305639;1.3;_
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response 17;18.6331529;-24.25648;50.108354;89.992966;50.08601;90.12017;15.65291;2460996.9367947;12.48305639;1.3;_
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:28:59.062 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:28:59.063 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:59.063 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:28:59.063 [INFO] [Thread-67685 (handle)] [driver.py] [get_status()] Telra = 18.6331529, teldec = -24.25648
2025-11-17T12:28:59.063 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6331529 -24.25648
2025-11-17T12:28:59.063 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6331529 -24.25648
2025-11-17T12:28:59.064 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6331529 -24.25648
2025-11-17T12:28:59.064 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 17;18.6331529;-24.25648;50.108354;89.992966;50.08601;90.12017;15.65291;2460996.93679472;12.48305639;1.3;_18.6069619656127 -24.276985701227
2025-11-17T12:28:59.064 [INFO] [Thread-67685 (handle)] [driver.py] [get_status()] ra_j2k = 18.6069619656127     dec_j2k = -24.276985701227
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 140;0.104607574634988;171.162351965909;_
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response 140;0.104607574634988;171.162351965909;_
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:59.065 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:28:59.066 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:28:59.067 [DEBUG] [Thread-67685 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:59.067 [DEBUG] [Thread-67685 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:28:59.067 [DEBUG] [Thread-67685 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53913)
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:28:59.072 [DEBUG] [Thread-67685 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:28:59.080 [DEBUG] [Thread-67685 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:28:59.080 [INFO] [Thread-67685 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9367947, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607574634988, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992966, telescope_ra=18.6331529, telescope_dec=-24.25648, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.65291, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.6069619656127, telescope_dec_j2k=-24.276985701227, observability=1)
2025-11-17T12:29:09.165 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:09.165 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:09.166 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:09.166 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:09.166 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:09.167 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:29:09.168 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:29:09.169 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Status age = 10.804303884506226s
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:09.885 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:09.886 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:09.887 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 17;18.6361639;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65592;2460996.93691999;12.48605917;1.3;_
2025-11-17T12:29:09.887 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response 17;18.6361639;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65592;2460996.93691999;12.48605917;1.3;_
2025-11-17T12:29:09.887 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:09.887 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:09.887 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:09.888 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:09.888 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:09.888 [INFO] [Thread-67686 (handle)] [driver.py] [get_status()] Telra = 18.6361639, teldec = -24.256479
2025-11-17T12:29:09.888 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6361639 -24.256479
2025-11-17T12:29:09.888 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6361639 -24.256479
2025-11-17T12:29:09.888 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6361639 -24.256479
2025-11-17T12:29:09.889 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 17;18.6361639;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65592;2460996.93692001;12.48605917;1.3;_18.6099732353285 -24.2770962024472
2025-11-17T12:29:09.889 [INFO] [Thread-67686 (handle)] [driver.py] [get_status()] ra_j2k = 18.6099732353285     dec_j2k = -24.2770962024472
2025-11-17T12:29:09.889 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:09.889 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:09.889 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 140;0.104607775194702;171.162368059163;_
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response 140;0.104607775194702;171.162368059163;_
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:09.890 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:09.891 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:09.892 [DEBUG] [Thread-67686 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:09.892 [DEBUG] [Thread-67686 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:09.892 [DEBUG] [Thread-67686 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60951)
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:09.897 [DEBUG] [Thread-67686 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:09.904 [DEBUG] [Thread-67686 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:09.904 [DEBUG] [Thread-67686 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:09.905 [DEBUG] [Thread-67686 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:09.905 [INFO] [Thread-67686 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93691999, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607775194702, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6361639, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.65592, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.6099732353285, telescope_dec_j2k=-24.2770962024472, observability=1)
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.40498423576355s
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:14.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:14.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6373873;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65714;2460996.93697119;12.48727917;1.3;_
2025-11-17T12:29:14.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.6373873;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65714;2460996.93697119;12.48727917;1.3;_
2025-11-17T12:29:14.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:14.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:14.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:14.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:14.313 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:14.313 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.6373873, teldec = -24.256479
2025-11-17T12:29:14.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6373873 -24.256479
2025-11-17T12:29:14.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6373873 -24.256479
2025-11-17T12:29:14.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6373873 -24.256479
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6373873;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65714;2460996.93697123;12.48727917;1.3;_18.6111967455472 -24.2771415030671
2025-11-17T12:29:14.314 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.6111967455472     dec_j2k = -24.2771415030671
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104607213627503;171.162362694745;_
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104607213627503;171.162362694745;_
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:14.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:14.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:14.316 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:14.316 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:14.316 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60849)
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:14.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:14.331 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:14.331 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93697119, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607213627503, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6373873, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.65714, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.6111967455472, telescope_dec_j2k=-24.2771415030671, observability=1)
2025-11-17T12:29:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5831453800201416s
2025-11-17T12:29:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5831453800201416
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Status age = 2.7866790294647217s
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:17.118 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:17.119 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:17.120 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 17;18.6381727;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65793;2460996.9370037;12.4880625;1.3;_
2025-11-17T12:29:17.120 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response 17;18.6381727;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65793;2460996.9370037;12.4880625;1.3;_
2025-11-17T12:29:17.120 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:17.120 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:17.120 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:17.121 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:17.121 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:17.121 [INFO] [Thread-67687 (handle)] [driver.py] [get_status()] Telra = 18.6381727, teldec = -24.256479
2025-11-17T12:29:17.122 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6381727 -24.256479
2025-11-17T12:29:17.122 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6381727 -24.256479
2025-11-17T12:29:17.122 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6381727 -24.256479
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 17;18.6381727;-24.256479;50.108354;89.992965;50.08601;90.12017;15.65793;2460996.93700373;12.4880625;1.3;_18.611982216522 -24.2771705841718
2025-11-17T12:29:17.123 [INFO] [Thread-67687 (handle)] [driver.py] [get_status()] ra_j2k = 18.611982216522     dec_j2k = -24.2771705841718
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 140;0.104607333963332;171.162368059163;_
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response 140;0.104607333963332;171.162368059163;_
2025-11-17T12:29:17.123 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:17.124 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:17.124 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:17.124 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:17.124 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:17.125 [DEBUG] [Thread-67687 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:17.126 [DEBUG] [Thread-67687 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:17.126 [DEBUG] [Thread-67687 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52689)
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:17.129 [DEBUG] [Thread-67687 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:17.136 [DEBUG] [Thread-67687 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:17.136 [DEBUG] [Thread-67687 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:17.136 [DEBUG] [Thread-67687 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:17.137 [DEBUG] [Thread-67687 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:17.137 [INFO] [Thread-67687 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9370037, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607333963332, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6381727, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.65793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.611982216522, telescope_dec_j2k=-24.2771705841718, observability=1)
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.261949062347412s
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:25.399 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:25.400 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:25.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6404838;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66024;2460996.93709955;12.49036722;1.3;_
2025-11-17T12:29:25.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6404838;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66024;2460996.93709955;12.49036722;1.3;_
2025-11-17T12:29:25.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:25.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:25.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:25.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:25.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:25.402 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6404838, teldec = -24.256479
2025-11-17T12:29:25.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6404838 -24.256479
2025-11-17T12:29:25.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6404838 -24.256479
2025-11-17T12:29:25.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6404838 -24.256479
2025-11-17T12:29:25.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6404838;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66024;2460996.93709957;12.49036722;1.3;_18.6142935263529 -24.2772561527912
2025-11-17T12:29:25.403 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6142935263529     dec_j2k = -24.2772561527912
2025-11-17T12:29:25.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:25.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:25.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104608055978302;171.162357330327;_
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104608055978302;171.162357330327;_
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:25.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:25.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:25.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:25.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:25.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:25.410 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54717)
2025-11-17T12:29:25.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:25.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:25.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:25.411 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:25.411 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:25.418 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:25.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:25.419 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:25.419 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:29:25.419 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93709955, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608055978302, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6404838, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.66024, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.6142935263529, telescope_dec_j2k=-24.2772561527912, observability=1)
2025-11-17T12:29:25.419 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08893942832947 seconds ago
2025-11-17T12:29:35.192 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:35.192 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Status age = 9.773737668991089s
2025-11-17T12:29:35.192 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:35.192 [DEBUG] [Thread-67688 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:35.193 [DEBUG] [Thread-67688 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 17;18.6432096;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66296;2460996.93721289;12.49308556;1.3;_
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response 17;18.6432096;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66296;2460996.93721289;12.49308556;1.3;_
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:35.194 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:35.195 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:35.195 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:35.195 [INFO] [Thread-67688 (handle)] [driver.py] [get_status()] Telra = 18.6432096, teldec = -24.256479
2025-11-17T12:29:35.195 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6432096 -24.256479
2025-11-17T12:29:35.195 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6432096 -24.256479
2025-11-17T12:29:35.196 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6432096 -24.256479
2025-11-17T12:29:35.196 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 17;18.6432096;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66296;2460996.93721292;12.49308556;1.3;_18.6170195757195 -24.2773570665158
2025-11-17T12:29:35.197 [INFO] [Thread-67688 (handle)] [driver.py] [get_status()] ra_j2k = 18.6170195757195     dec_j2k = -24.2773570665158
2025-11-17T12:29:35.197 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:35.197 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:35.197 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:35.197 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 140;0.104608136202188;171.162351965909;_
2025-11-17T12:29:35.197 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response 140;0.104608136202188;171.162351965909;_
2025-11-17T12:29:35.198 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:35.198 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:35.198 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:35.198 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:35.199 [DEBUG] [Thread-67688 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:35.200 [DEBUG] [Thread-67688 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:35.200 [DEBUG] [Thread-67688 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57083)
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:35.203 [DEBUG] [Thread-67688 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:35.210 [DEBUG] [Thread-67688 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:35.210 [DEBUG] [Thread-67688 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:35.210 [DEBUG] [Thread-67688 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:35.211 [DEBUG] [Thread-67688 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:35.211 [INFO] [Thread-67688 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93721289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608136202188, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6432096, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.66296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.6170195757195, telescope_dec_j2k=-24.2773570665158, observability=1)
2025-11-17T12:29:40.411 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:29:40
2025-11-17T12:29:40.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:40.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.200531959533691s
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:40.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:40.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:40.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6446566;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66441;2460996.93727331;12.49452861;1.3;_
2025-11-17T12:29:40.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.6446566;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66441;2460996.93727331;12.49452861;1.3;_
2025-11-17T12:29:40.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:40.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:40.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:40.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:40.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:40.415 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.6446566, teldec = -24.256479
2025-11-17T12:29:40.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6446566 -24.256479
2025-11-17T12:29:40.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6446566 -24.256479
2025-11-17T12:29:40.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6446566 -24.256479
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6446566;-24.256479;50.108354;89.992965;50.08601;90.12017;15.66441;2460996.93727333;12.49452861;1.3;_18.618466708925 -24.2774106328452
2025-11-17T12:29:40.417 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.618466708925     dec_j2k = -24.2774106328452
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104607975754416;171.162357330327;_
2025-11-17T12:29:40.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104607975754416;171.162357330327;_
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:40.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:40.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:40.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:40.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:40.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:40.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:29:40.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40761)
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:40.424 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:40.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:40.433 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:40.433 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:40.433 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93727331, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607975754416, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108354, telescope_az=89.992965, telescope_ra=18.6446566, telescope_dec=-24.256479, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.66441, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:28:43.145371', telescope_ra_j2k=18.618466708925, telescope_dec_j2k=-24.2774106328452, observability=1)
2025-11-17T12:29:43.287 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:43.287 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:43.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:43.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:43.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:43.288 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:43.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:43.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:43.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:43.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:43.289 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:29:43.289 [INFO] [ThreadPoolExecutor-2787_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:29:43.289 [INFO] [ThreadPoolExecutor-2787_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Status age = 12.913442134857178s
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:29:53.346 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:29:53.347 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:29:53.348 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 17;18.648252;-24.256478;50.108353;89.992964;50.08601;90.12017;15.66801;2460996.93742301;12.49811417;1.3;_
2025-11-17T12:29:53.348 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response 17;18.648252;-24.256478;50.108353;89.992964;50.08601;90.12017;15.66801;2460996.93742301;12.49811417;1.3;_
2025-11-17T12:29:53.348 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:29:53.348 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:29:53.348 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:29:53.349 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:53.349 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:29:53.349 [INFO] [Thread-67689 (handle)] [driver.py] [get_status()] Telra = 18.648252, teldec = -24.256478
2025-11-17T12:29:53.349 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] UnCookCoordinates 18.648252 -24.256478
2025-11-17T12:29:53.349 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.648252 -24.256478
2025-11-17T12:29:53.349 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.648252 -24.256478
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 17;18.648252;-24.256478;50.108353;89.992964;50.08601;90.12017;15.66801;2460996.93742303;12.49811417;1.3;_18.6220624425897 -24.2775427183824
2025-11-17T12:29:53.350 [INFO] [Thread-67689 (handle)] [driver.py] [get_status()] ra_j2k = 18.6220624425897     dec_j2k = -24.2775427183824
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 140;0.104607815306645;171.162362694745;_
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response 140;0.104607815306645;171.162362694745;_
2025-11-17T12:29:53.350 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:29:53.351 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:53.351 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:53.351 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:29:53.352 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:29:53.353 [DEBUG] [Thread-67689 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:53.353 [DEBUG] [Thread-67689 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:29:53.353 [DEBUG] [Thread-67689 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48897)
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:29:53.358 [DEBUG] [Thread-67689 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:29:53.365 [DEBUG] [Thread-67689 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:29:53.365 [DEBUG] [Thread-67689 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:53.365 [DEBUG] [Thread-67689 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:29:53.366 [DEBUG] [Thread-67689 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:29:53.366 [INFO] [Thread-67689 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93742301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607815306645, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992964, telescope_ra=18.648252, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.66801, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6220624425897, telescope_dec_j2k=-24.2775427183824, observability=1)
2025-11-17T12:30:04.169 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.169 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.169 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:04.169 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:04.169 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:30:04.170 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:04.171 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:04.172 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.173 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:04.174 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:04.175 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:04.175 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:04.175 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:04.175 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:04.176 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:04.176 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Park
2025-11-17T12:30:04.176 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:30:04.176 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:30:04.176 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 29;18.6512897;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67104;2460996.93754833;12.50114361;1.3;_Park Command Successful
2025-11-17T12:30:05.177 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:30:05.177 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:30:05.177 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:30:05.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:30:05.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:30:06.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:30:06.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:30:06.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:30:06.178 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:30:06.179 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:30:07.179 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:30:07.179 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:30:07.179 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:30:07.180 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:30:07.180 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:30:08.180 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:30:08.180 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:30:08.181 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:08.182 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:30:08.183 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:30:08.184 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:09.184 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:09.184 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:09.184 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:09.184 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:09.184 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:30:09.185 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:30:09.186 [DEBUG] [ThreadPoolExecutor-2786_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:09.186 [INFO] [ThreadPoolExecutor-2786_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Status age = 16.574095487594604s
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:09.940 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:09.941 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:09.941 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:09.941 [DEBUG] [Thread-67690 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:09.941 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:09.941 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:09.942 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:09.942 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:09.942 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 17;18.6528799;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67263;2460996.93761507;12.50272944;1.3;_
2025-11-17T12:30:09.942 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response 17;18.6528799;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67263;2460996.93761507;12.50272944;1.3;_
2025-11-17T12:30:09.943 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:09.943 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:09.943 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:09.944 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:09.944 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:09.944 [INFO] [Thread-67690 (handle)] [driver.py] [get_status()] Telra = 18.6528799, teldec = -24.256478
2025-11-17T12:30:09.944 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6528799 -24.256478
2025-11-17T12:30:09.944 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6528799 -24.256478
2025-11-17T12:30:09.944 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6528799 -24.256478
2025-11-17T12:30:09.945 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 17;18.6528799;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67263;2460996.9376151;12.50272944;1.3;_18.6266907770401 -24.2777139964802
2025-11-17T12:30:09.945 [INFO] [Thread-67690 (handle)] [driver.py] [get_status()] ra_j2k = 18.6266907770401     dec_j2k = -24.2777139964802
2025-11-17T12:30:09.945 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:09.945 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:09.945 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 140;0.10460817631413;171.162357330327;_
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response 140;0.10460817631413;171.162357330327;_
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:09.946 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:09.947 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:09.948 [DEBUG] [Thread-67690 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:09.948 [DEBUG] [Thread-67690 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:09.948 [DEBUG] [Thread-67690 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:09.951 [DEBUG] [Thread-67690 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49943)
2025-11-17T12:30:09.951 [DEBUG] [Thread-67690 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:09.951 [DEBUG] [Thread-67690 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:09.952 [DEBUG] [Thread-67690 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:09.952 [DEBUG] [Thread-67690 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:09.952 [DEBUG] [Thread-67690 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:09.959 [DEBUG] [Thread-67690 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:09.959 [INFO] [Thread-67690 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93761507, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460817631413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992964, telescope_ra=18.6528799, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67263, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6266907770401, telescope_dec_j2k=-24.2777139964802, observability=1)
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Status age = 1.4458293914794922s
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:11.405 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 17;18.6533005;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67305;2460996.93763201;12.50314889;1.3;_
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response 17;18.6533005;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67305;2460996.93763201;12.50314889;1.3;_
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:11.406 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:11.407 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:11.407 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:11.407 [INFO] [Thread-67691 (handle)] [driver.py] [get_status()] Telra = 18.6533005, teldec = -24.256478
2025-11-17T12:30:11.407 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6533005 -24.256478
2025-11-17T12:30:11.407 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6533005 -24.256478
2025-11-17T12:30:11.407 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6533005 -24.256478
2025-11-17T12:30:11.408 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 17;18.6533005;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67305;2460996.93763204;12.50314889;1.3;_18.6271114168158 -24.2777295613923
2025-11-17T12:30:11.408 [INFO] [Thread-67691 (handle)] [driver.py] [get_status()] ra_j2k = 18.6271114168158     dec_j2k = -24.2777295613923
2025-11-17T12:30:11.408 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:11.409 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:11.409 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 140;0.104607694970817;171.162368059163;_
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response 140;0.104607694970817;171.162368059163;_
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:11.410 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:11.411 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:11.412 [DEBUG] [Thread-67691 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:11.412 [DEBUG] [Thread-67691 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:11.412 [DEBUG] [Thread-67691 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50559)
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:11.414 [DEBUG] [Thread-67691 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:11.421 [DEBUG] [Thread-67691 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:11.422 [DEBUG] [Thread-67691 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:11.422 [DEBUG] [Thread-67691 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:11.422 [INFO] [Thread-67691 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93763201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607694970817, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992964, telescope_ra=18.6533005, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67305, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6271114168158, telescope_dec_j2k=-24.2777295613923, observability=1)
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9995574951171875s
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:13.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:13.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:13.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.653852;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67361;2460996.93765536;12.50369889;1.3;_
2025-11-17T12:30:13.424 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.653852;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67361;2460996.93765536;12.50369889;1.3;_
2025-11-17T12:30:13.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:13.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:13.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:13.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:13.425 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:13.425 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.653852, teldec = -24.256478
2025-11-17T12:30:13.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.653852 -24.256478
2025-11-17T12:30:13.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.653852 -24.256478
2025-11-17T12:30:13.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.653852 -24.256478
2025-11-17T12:30:13.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.653852;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67361;2460996.93765539;12.50369889;1.3;_18.6276629690441 -24.277749970081
2025-11-17T12:30:13.426 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.6276629690441     dec_j2k = -24.277749970081
2025-11-17T12:30:13.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:13.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:13.426 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104607975754416;171.162346601491;_
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104607975754416;171.162346601491;_
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:13.427 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:13.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:13.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:13.429 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:13.429 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:13.430 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48549)
2025-11-17T12:30:13.430 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:13.430 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:13.430 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:13.431 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:13.431 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:13.437 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:13.438 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:13.438 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93765536, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104607975754416, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992964, telescope_ra=18.653852, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67361, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6276629690441, telescope_dec_j2k=-24.277749970081, observability=1)
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.4790260791778564s
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6542731;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67403;2460996.93767266;12.50411889;1.3;_
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.6542731;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67403;2460996.93767266;12.50411889;1.3;_
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.6542731, teldec = -24.256478
2025-11-17T12:30:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6542731 -24.256478
2025-11-17T12:30:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6542731 -24.256478
2025-11-17T12:30:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6542731 -24.256478
2025-11-17T12:30:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6542731;-24.256478;50.108353;89.992964;50.08601;90.12017;15.67403;2460996.93767269;12.50411889;1.3;_18.6280841089794 -24.2777655529348
2025-11-17T12:30:14.920 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.6280841089794     dec_j2k = -24.2777655529348
2025-11-17T12:30:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104608336761902;171.162351965909;_
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104608336761902;171.162351965909;_
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52655)
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:14.928 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:14.935 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:14.936 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93767266, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608336761902, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992964, telescope_ra=18.6542731, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6280841089794, telescope_dec_j2k=-24.2777655529348, observability=1)
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.543117761611938s
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:25.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:25.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:25.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:25.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:25.480 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:25.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6571997;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67695;2460996.93779492;12.5070375;1.3;_
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6571997;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67695;2460996.93779492;12.5070375;1.3;_
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:25.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:25.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:25.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:25.482 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6571997, teldec = -24.256478
2025-11-17T12:30:25.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6571997 -24.256478
2025-11-17T12:30:25.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6571997 -24.256478
2025-11-17T12:30:25.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6571997 -24.256478
2025-11-17T12:30:25.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6571997;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67695;2460996.93779494;12.5070375;1.3;_18.6310109878695 -24.2778738453672
2025-11-17T12:30:25.483 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6310109878695     dec_j2k = -24.2778738453672
2025-11-17T12:30:25.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:25.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:25.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104608416985787;171.162357330327;_
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104608416985787;171.162357330327;_
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:25.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:25.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:25.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:25.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:25.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40001)
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:25.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:25.497 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:30:25.497 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93779492, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608416985787, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992963, telescope_ra=18.6571997, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.6310109878695, telescope_dec_j2k=-24.2778738453672, observability=1)
2025-11-17T12:30:25.497 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.085805892944336 seconds ago
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Status age = 3.9862020015716553s
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:29.483 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:29.484 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:29.485 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 17;18.6583406;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67809;2460996.93784126;12.50817528;1.3;_
2025-11-17T12:30:29.485 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response 17;18.6583406;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67809;2460996.93784126;12.50817528;1.3;_
2025-11-17T12:30:29.485 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:29.485 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:29.485 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:29.486 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:29.486 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:29.486 [INFO] [Thread-67692 (handle)] [driver.py] [get_status()] Telra = 18.6583406, teldec = -24.256478
2025-11-17T12:30:29.486 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6583406 -24.256478
2025-11-17T12:30:29.486 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6583406 -24.256478
2025-11-17T12:30:29.486 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6583406 -24.256478
2025-11-17T12:30:29.487 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 17;18.6583406;-24.256478;50.108353;89.992963;50.08601;90.12017;15.67809;2460996.93784128;12.50817528;1.3;_18.632151997228 -24.2779160586769
2025-11-17T12:30:29.487 [INFO] [Thread-67692 (handle)] [driver.py] [get_status()] ra_j2k = 18.632151997228     dec_j2k = -24.2779160586769
2025-11-17T12:30:29.487 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:29.487 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:29.487 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 140;0.104609179112701;171.162362694745;_
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response 140;0.104609179112701;171.162362694745;_
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:29.488 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:29.489 [DEBUG] [Thread-67692 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:29.489 [DEBUG] [Thread-67692 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:29.489 [DEBUG] [Thread-67692 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:29.489 [DEBUG] [Thread-67692 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44905)
2025-11-17T12:30:29.490 [DEBUG] [Thread-67692 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:29.490 [DEBUG] [Thread-67692 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:29.490 [DEBUG] [Thread-67692 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:29.490 [DEBUG] [Thread-67692 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:29.490 [DEBUG] [Thread-67692 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:29.497 [DEBUG] [Thread-67692 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:29.497 [INFO] [Thread-67692 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93784126, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609179112701, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992963, telescope_ra=18.6583406, telescope_dec=-24.256478, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.67809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.632151997228, telescope_dec_j2k=-24.2779160586769, observability=1)
2025-11-17T12:30:40.493 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:30:40
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.995862483978271s
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:40.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:40.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6614085;-24.256477;50.108353;89.992963;50.08601;90.12017;15.68116;2460996.93796868;12.51123472;1.3;_
2025-11-17T12:30:40.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.6614085;-24.256477;50.108353;89.992963;50.08601;90.12017;15.68116;2460996.93796868;12.51123472;1.3;_
2025-11-17T12:30:40.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:40.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:40.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:40.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:40.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:40.496 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.6614085, teldec = -24.256477
2025-11-17T12:30:40.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6614085 -24.256477
2025-11-17T12:30:40.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6614085 -24.256477
2025-11-17T12:30:40.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6614085 -24.256477
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6614085;-24.256477;50.108353;89.992963;50.08601;90.12017;15.68116;2460996.93796872;12.51123472;1.3;_18.635220193264 -24.2780285621342
2025-11-17T12:30:40.497 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.635220193264     dec_j2k = -24.2780285621342
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104608978552987;171.162351965909;_
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104608978552987;171.162351965909;_
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:40.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:40.498 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:40.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:40.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:30:40.499 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39847)
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:40.503 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:40.510 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:40.510 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:40.510 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:40.510 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:40.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:40.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:40.511 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:40.511 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:40.511 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:40.511 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93796868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608978552987, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108353, telescope_az=89.992963, telescope_ra=18.6614085, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.68116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:29:43.286796', telescope_ra_j2k=18.635220193264, telescope_dec_j2k=-24.2780285621342, observability=1)
2025-11-17T12:30:43.429 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:43.430 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:43.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:43.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:43.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:43.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:43.431 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:30:43.431 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:43.432 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:43.433 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:30:43.433 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:30:43.433 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:30:43.433 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:44.434 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:30:44.435 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:44.436 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:44.436 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:44.436 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:44.436 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:44.436 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:44.437 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:44.437 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:44.437 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:44.437 [DEBUG] [ThreadPoolExecutor-2788_0] [payload.py] [to_registers()] [0]
2025-11-17T12:30:44.443 [DEBUG] [ThreadPoolExecutor-2788_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59479)
2025-11-17T12:30:44.443 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:44.443 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:44.443 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:30:44.443 [DEBUG] [ThreadPoolExecutor-2788_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:44.444 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:44.450 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:44.451 [DEBUG] [ThreadPoolExecutor-2788_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:47.603 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Status age = 7.09281063079834s
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:30:47.604 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:30:47.605 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:30:47.606 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 17;18.6633894;-24.256477;50.108352;89.992963;50.08601;90.12017;15.68314;2460996.938051;12.51321028;1.3;_
2025-11-17T12:30:47.606 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response 17;18.6633894;-24.256477;50.108352;89.992963;50.08601;90.12017;15.68314;2460996.938051;12.51321028;1.3;_
2025-11-17T12:30:47.606 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:30:47.606 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:30:47.606 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:30:47.607 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:47.607 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:30:47.607 [INFO] [Thread-67693 (handle)] [driver.py] [get_status()] Telra = 18.6633894, teldec = -24.256477
2025-11-17T12:30:47.607 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6633894 -24.256477
2025-11-17T12:30:47.607 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6633894 -24.256477
2025-11-17T12:30:47.607 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6633894 -24.256477
2025-11-17T12:30:47.608 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 17;18.6633894;-24.256477;50.108352;89.992963;50.08601;90.12017;15.68314;2460996.93805102;12.51321028;1.3;_18.6372012856542 -24.2781018427258
2025-11-17T12:30:47.608 [INFO] [Thread-67693 (handle)] [driver.py] [get_status()] ra_j2k = 18.6372012856542     dec_j2k = -24.2781018427258
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 140;0.10460845709773;171.162357330327;_
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response 140;0.10460845709773;171.162357330327;_
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:47.609 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:30:47.610 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:30:47.611 [DEBUG] [Thread-67693 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:47.611 [DEBUG] [Thread-67693 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:30:47.612 [DEBUG] [Thread-67693 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38123)
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:30:47.615 [DEBUG] [Thread-67693 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:30:47.623 [DEBUG] [Thread-67693 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:30:47.623 [INFO] [Thread-67693 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.938051, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460845709773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992963, telescope_ra=18.6633894, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.68314, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6372012856542, telescope_dec_j2k=-24.2781018427258, observability=1)
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Status age = 18.038819551467896s
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:05.662 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:05.663 [DEBUG] [Thread-67694 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:05.663 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:05.663 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:05.663 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:05.663 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:05.664 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 17;18.6684023;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68816;2460996.93825999;12.51820944;1.3;_
2025-11-17T12:31:05.664 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response 17;18.6684023;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68816;2460996.93825999;12.51820944;1.3;_
2025-11-17T12:31:05.664 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:05.664 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:05.664 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:05.665 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:05.665 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:05.665 [INFO] [Thread-67694 (handle)] [driver.py] [get_status()] Telra = 18.6684023, teldec = -24.256477
2025-11-17T12:31:05.665 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6684023 -24.256477
2025-11-17T12:31:05.665 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6684023 -24.256477
2025-11-17T12:31:05.665 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6684023 -24.256477
2025-11-17T12:31:05.666 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 17;18.6684023;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68816;2460996.93826002;12.51820944;1.3;_18.6422146773285 -24.2782872633465
2025-11-17T12:31:05.666 [INFO] [Thread-67694 (handle)] [driver.py] [get_status()] ra_j2k = 18.6422146773285     dec_j2k = -24.2782872633465
2025-11-17T12:31:05.666 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:05.666 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:05.666 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 140;0.10460873788133;171.162362694745;_
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response 140;0.10460873788133;171.162362694745;_
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:05.667 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:05.668 [DEBUG] [Thread-67694 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:05.671 [DEBUG] [Thread-67694 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39591)
2025-11-17T12:31:05.671 [DEBUG] [Thread-67694 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:05.671 [DEBUG] [Thread-67694 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:05.671 [DEBUG] [Thread-67694 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:05.672 [DEBUG] [Thread-67694 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:05.672 [DEBUG] [Thread-67694 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:05.679 [DEBUG] [Thread-67694 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:05.679 [DEBUG] [Thread-67694 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:05.679 [DEBUG] [Thread-67694 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:05.680 [DEBUG] [Thread-67694 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:05.680 [INFO] [Thread-67694 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93825999, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460873788133, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6684023, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.68816, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6422146773285, telescope_dec_j2k=-24.2782872633465, observability=1)
2025-11-17T12:31:09.451 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:09.451 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:09.451 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:09.451 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:09.451 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:09.452 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:09.452 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:09.452 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:09.452 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:09.452 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:09.453 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:31:09.454 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:09.990 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Status age = 4.310749053955078s
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:09.991 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:09.992 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:09.993 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 17;18.6695992;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68935;2460996.9383101;12.51940306;1.3;_
2025-11-17T12:31:09.993 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response 17;18.6695992;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68935;2460996.9383101;12.51940306;1.3;_
2025-11-17T12:31:09.993 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:09.993 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:09.993 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:09.994 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:09.994 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:09.994 [INFO] [Thread-67695 (handle)] [driver.py] [get_status()] Telra = 18.6695992, teldec = -24.256477
2025-11-17T12:31:09.994 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6695992 -24.256477
2025-11-17T12:31:09.994 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6695992 -24.256477
2025-11-17T12:31:09.994 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6695992 -24.256477
2025-11-17T12:31:09.995 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 17;18.6695992;-24.256477;50.108352;89.992962;50.08601;90.12017;15.68935;2460996.93831013;12.51940306;1.3;_18.6434116957419 -24.2783315298898
2025-11-17T12:31:09.995 [INFO] [Thread-67695 (handle)] [driver.py] [get_status()] ra_j2k = 18.6434116957419     dec_j2k = -24.2783315298898
2025-11-17T12:31:09.995 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:09.995 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:09.995 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 140;0.104608777993273;171.162362694745;_
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response 140;0.104608777993273;171.162362694745;_
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:09.996 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:09.997 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:09.998 [DEBUG] [Thread-67695 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:09.998 [DEBUG] [Thread-67695 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:09.998 [DEBUG] [Thread-67695 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34223)
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:10.002 [DEBUG] [Thread-67695 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:10.009 [DEBUG] [Thread-67695 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:10.009 [INFO] [Thread-67695 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9383101, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608777993273, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6695992, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.68935, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6434116957419, telescope_dec_j2k=-24.2783315298898, observability=1)
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5125315189361572s
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:12.522 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6703284;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69008;2460996.93833939;12.52013028;1.3;_
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.6703284;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69008;2460996.93833939;12.52013028;1.3;_
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:12.523 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:12.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:12.524 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:12.524 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:12.525 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.6703284, teldec = -24.256477
2025-11-17T12:31:12.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6703284 -24.256477
2025-11-17T12:31:12.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6703284 -24.256477
2025-11-17T12:31:12.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6703284 -24.256477
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6703284;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69008;2460996.93833941;12.52013028;1.3;_18.6441409680768 -24.2783584978712
2025-11-17T12:31:12.526 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.6441409680768     dec_j2k = -24.2783584978712
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104608497209673;171.162346601491;_
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104608497209673;171.162346601491;_
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:12.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:12.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:12.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:12.528 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:12.528 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35627)
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:12.534 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:12.541 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:12.542 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:12.542 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93833939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608497209673, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6703284, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.69008, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6441409680768, telescope_dec_j2k=-24.2783584978712, observability=1)
2025-11-17T12:31:14.930 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.3889458179473877s
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6709927;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69075;2460996.93836728;12.52079278;1.3;_
2025-11-17T12:31:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.6709927;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69075;2460996.93836728;12.52079278;1.3;_
2025-11-17T12:31:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:14.934 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.6709927, teldec = -24.256477
2025-11-17T12:31:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6709927 -24.256477
2025-11-17T12:31:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6709927 -24.256477
2025-11-17T12:31:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6709927 -24.256477
2025-11-17T12:31:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6709927;-24.256477;50.108352;89.992962;50.08601;90.12017;15.69075;2460996.9383673;12.52079278;1.3;_18.6448053341007 -24.2783830650036
2025-11-17T12:31:14.935 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.6448053341007     dec_j2k = -24.2783830650036
2025-11-17T12:31:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104608818105215;171.162368059163;_
2025-11-17T12:31:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104608818105215;171.162368059163;_
2025-11-17T12:31:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48729)
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:14.952 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:14.952 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:14.953 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:14.953 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93836728, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608818105215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6709927, telescope_dec=-24.256477, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.69075, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6448053341007, telescope_dec_j2k=-24.2783830650036, observability=1)
2025-11-17T12:31:23.738 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Status age = 8.785840511322021s
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:23.739 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:23.740 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:23.741 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 17;18.6734491;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6932;2460996.93846921;12.5232425;1.3;_
2025-11-17T12:31:23.741 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response 17;18.6734491;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6932;2460996.93846921;12.5232425;1.3;_
2025-11-17T12:31:23.741 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:23.741 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:23.741 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:23.743 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:23.744 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:23.747 [INFO] [Thread-67696 (handle)] [driver.py] [get_status()] Telra = 18.6734491, teldec = -24.256476
2025-11-17T12:31:23.747 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6734491 -24.256476
2025-11-17T12:31:23.747 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6734491 -24.256476
2025-11-17T12:31:23.747 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6734491 -24.256476
2025-11-17T12:31:23.748 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 17;18.6734491;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6932;2460996.93846931;12.5232425;1.3;_18.6472619794879 -24.2784729021925
2025-11-17T12:31:23.748 [INFO] [Thread-67696 (handle)] [driver.py] [get_status()] ra_j2k = 18.6472619794879     dec_j2k = -24.2784729021925
2025-11-17T12:31:23.748 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:23.748 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:23.748 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 140;0.10460873788133;171.162351965909;_
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response 140;0.10460873788133;171.162351965909;_
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:23.749 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:23.750 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:23.751 [DEBUG] [Thread-67696 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:23.751 [DEBUG] [Thread-67696 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:23.751 [DEBUG] [Thread-67696 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42575)
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:23.757 [DEBUG] [Thread-67696 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:23.764 [DEBUG] [Thread-67696 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:23.765 [INFO] [Thread-67696 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93846921, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460873788133, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6734491, telescope_dec=-24.256476, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.6932, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6472619794879, telescope_dec_j2k=-24.2784729021925, observability=1)
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.792288064956665s
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:25.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6739438;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6937;2460996.93849025;12.52373583;1.3;_
2025-11-17T12:31:25.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6739438;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6937;2460996.93849025;12.52373583;1.3;_
2025-11-17T12:31:25.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:25.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:25.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:25.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:25.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:25.560 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6739438, teldec = -24.256476
2025-11-17T12:31:25.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6739438 -24.256476
2025-11-17T12:31:25.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6739438 -24.256476
2025-11-17T12:31:25.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6739438 -24.256476
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6739438;-24.256476;50.108352;89.992962;50.08601;90.12017;15.6937;2460996.93849029;12.52373583;1.3;_18.6477567290673 -24.27849119505
2025-11-17T12:31:25.561 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6477567290673     dec_j2k = -24.27849119505
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104608497209673;171.162362694745;_
2025-11-17T12:31:25.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104608497209673;171.162362694745;_
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:25.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:25.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:25.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:31:25.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40911)
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:25.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:25.575 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:31:25.575 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93849025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608497209673, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108352, telescope_az=89.992962, telescope_ra=18.6739438, telescope_dec=-24.256476, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.6937, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6477567290673, telescope_dec_j2k=-24.27849119505, observability=1)
2025-11-17T12:31:25.575 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.082465410232544 seconds ago
2025-11-17T12:31:40.571 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:31:40
2025-11-17T12:31:40.571 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:40.571 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.996254920959473s
2025-11-17T12:31:40.571 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:40.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:40.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.678128;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69788;2460996.93866404;12.52790861;1.3;_
2025-11-17T12:31:40.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.678128;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69788;2460996.93866404;12.52790861;1.3;_
2025-11-17T12:31:40.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:40.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:40.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:40.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:40.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:40.574 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.678128, teldec = -24.256476
2025-11-17T12:31:40.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.678128 -24.256476
2025-11-17T12:31:40.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.678128 -24.256476
2025-11-17T12:31:40.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.678128 -24.256476
2025-11-17T12:31:40.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.678128;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69788;2460996.93866406;12.52790861;1.3;_18.6519413510975 -24.2786459030924
2025-11-17T12:31:40.576 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.6519413510975     dec_j2k = -24.2786459030924
2025-11-17T12:31:40.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:40.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:40.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:40.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104608978552987;171.162357330327;_
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104608978552987;171.162357330327;_
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:40.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:40.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:40.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:40.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:40.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:40.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:40.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:40.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46365)
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:40.580 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:40.587 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:40.588 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93866404, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104608978552987, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.678128, telescope_dec=-24.256476, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.69788, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6519413510975, telescope_dec_j2k=-24.2786459030924, observability=1)
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Status age = 1.259810447692871s
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:41.847 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:41.848 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:41.849 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 17;18.6784924;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69825;2460996.93867881;12.52827194;1.3;_
2025-11-17T12:31:41.849 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response 17;18.6784924;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69825;2460996.93867881;12.52827194;1.3;_
2025-11-17T12:31:41.849 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:41.849 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:41.849 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:41.850 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:41.850 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:41.850 [INFO] [Thread-67697 (handle)] [driver.py] [get_status()] Telra = 18.6784924, teldec = -24.256476
2025-11-17T12:31:41.850 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6784924 -24.256476
2025-11-17T12:31:41.850 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6784924 -24.256476
2025-11-17T12:31:41.850 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6784924 -24.256476
2025-11-17T12:31:41.851 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 17;18.6784924;-24.256476;50.108351;89.992961;50.08601;90.12017;15.69825;2460996.93867883;12.52827194;1.3;_18.6523057880791 -24.2786593753573
2025-11-17T12:31:41.851 [INFO] [Thread-67697 (handle)] [driver.py] [get_status()] ra_j2k = 18.6523057880791     dec_j2k = -24.2786593753573
2025-11-17T12:31:41.851 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 140;0.10460873788133;171.162362694745;_
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response 140;0.10460873788133;171.162362694745;_
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:41.852 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:41.853 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:41.853 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:41.854 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:41.854 [DEBUG] [Thread-67697 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:41.854 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:41.854 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:41.854 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:41.855 [DEBUG] [Thread-67697 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:41.855 [DEBUG] [Thread-67697 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:41.855 [DEBUG] [Thread-67697 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47887)
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:41.861 [DEBUG] [Thread-67697 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:41.868 [DEBUG] [Thread-67697 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:41.868 [DEBUG] [Thread-67697 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:41.868 [DEBUG] [Thread-67697 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:41.868 [DEBUG] [Thread-67697 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:41.869 [DEBUG] [Thread-67697 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:41.869 [DEBUG] [Thread-67697 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:41.869 [DEBUG] [Thread-67697 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:41.869 [DEBUG] [Thread-67697 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:41.869 [DEBUG] [Thread-67697 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:41.869 [INFO] [Thread-67697 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93867881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10460873788133, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.6784924, telescope_dec=-24.256476, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.69825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:30:43.429361', telescope_ra_j2k=18.6523057880791, telescope_dec_j2k=-24.2786593753573, observability=1)
2025-11-17T12:31:43.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:43.572 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:43.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:43.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:43.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:43.573 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:43.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:43.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:43.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:43.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:43.574 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:31:43.574 [INFO] [ThreadPoolExecutor-2789_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:31:43.574 [INFO] [ThreadPoolExecutor-2789_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Status age = 18.04489517211914s
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:31:59.914 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:31:59.915 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:31:59.916 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 17;18.6835027;-24.256476;50.108351;89.992961;50.08601;90.12017;15.70326;2460996.93888792;12.53326861;1.3;_
2025-11-17T12:31:59.916 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response 17;18.6835027;-24.256476;50.108351;89.992961;50.08601;90.12017;15.70326;2460996.93888792;12.53326861;1.3;_
2025-11-17T12:31:59.916 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:31:59.916 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:31:59.916 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:31:59.917 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:59.917 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:31:59.917 [INFO] [Thread-67698 (handle)] [driver.py] [get_status()] Telra = 18.6835027, teldec = -24.256476
2025-11-17T12:31:59.917 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6835027 -24.256476
2025-11-17T12:31:59.917 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6835027 -24.256476
2025-11-17T12:31:59.918 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6835027 -24.256476
2025-11-17T12:31:59.918 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 17;18.6835027;-24.256476;50.108351;89.992961;50.08601;90.12017;15.70326;2460996.93888794;12.53326861;1.3;_18.6573166002487 -24.2788445922385
2025-11-17T12:31:59.919 [INFO] [Thread-67698 (handle)] [driver.py] [get_status()] ra_j2k = 18.6573166002487     dec_j2k = -24.2788445922385
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 140;0.104609018664929;171.162351965909;_
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response 140;0.104609018664929;171.162351965909;_
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:59.919 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:31:59.920 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:31:59.920 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:31:59.920 [DEBUG] [Thread-67698 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:59.920 [DEBUG] [Thread-67698 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:31:59.920 [DEBUG] [Thread-67698 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57045)
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:31:59.926 [DEBUG] [Thread-67698 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:31:59.933 [DEBUG] [Thread-67698 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:31:59.933 [DEBUG] [Thread-67698 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:31:59.934 [DEBUG] [Thread-67698 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:31:59.934 [INFO] [Thread-67698 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93888792, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609018664929, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.6835027, telescope_dec=-24.256476, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.70326, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6573166002487, telescope_dec_j2k=-24.2788445922385, observability=1)
2025-11-17T12:32:04.455 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.455 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.455 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:04.455 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:04.455 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:32:04.456 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:04.457 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:04.458 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:32:04.459 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:04.460 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:04.461 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:04.461 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:04.461 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:04.462 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:04.462 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Park
2025-11-17T12:32:04.462 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:32:04.462 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:32:04.462 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 29;18.6847832;-24.256476;50.108351;89.992961;50.08601;90.12017;15.70454;2460996.93894053;12.53454556;1.3;_Park Command Successful
2025-11-17T12:32:05.463 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:32:05.463 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:32:05.463 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:32:05.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:32:05.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:32:06.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:32:06.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:32:06.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:32:06.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:32:06.464 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:32:07.465 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:32:07.465 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:32:07.465 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:32:07.466 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:32:07.466 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:32:08.466 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:32:08.466 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:32:08.466 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:08.467 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:32:08.468 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:32:08.469 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:09.469 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:09.469 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:09.469 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:09.469 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:09.469 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:32:09.470 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:32:09.471 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:32:09.471 [DEBUG] [ThreadPoolExecutor-2788_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:09.471 [INFO] [ThreadPoolExecutor-2788_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Status age = 10.103886842727661s
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:10.038 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 17;18.6863424;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7061;2460996.93900508;12.53610056;1.3;_
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response 17;18.6863424;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7061;2460996.93900508;12.53610056;1.3;_
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:10.039 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:10.040 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:10.040 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:10.040 [INFO] [Thread-67699 (handle)] [driver.py] [get_status()] Telra = 18.6863424, teldec = -24.256475
2025-11-17T12:32:10.040 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6863424 -24.256475
2025-11-17T12:32:10.040 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6863424 -24.256475
2025-11-17T12:32:10.040 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6863424 -24.256475
2025-11-17T12:32:10.041 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 17;18.6863424;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7061;2460996.9390051;12.53610056;1.3;_18.6601565937861 -24.2789485520276
2025-11-17T12:32:10.041 [INFO] [Thread-67699 (handle)] [driver.py] [get_status()] ra_j2k = 18.6601565937861     dec_j2k = -24.2789485520276
2025-11-17T12:32:10.041 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 140;0.104609620344071;171.162351965909;_
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response 140;0.104609620344071;171.162351965909;_
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:10.042 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:10.043 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:10.044 [DEBUG] [Thread-67699 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:10.044 [DEBUG] [Thread-67699 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:10.044 [DEBUG] [Thread-67699 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48501)
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:10.050 [DEBUG] [Thread-67699 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:10.057 [DEBUG] [Thread-67699 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:10.057 [INFO] [Thread-67699 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93900508, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609620344071, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.6863424, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.7061, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6601565937861, telescope_dec_j2k=-24.2789485520276, observability=1)
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.5690202713012695s
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:11.626 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6867906;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70654;2460996.93902346;12.5365475;1.3;_
2025-11-17T12:32:11.627 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.6867906;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70654;2460996.93902346;12.5365475;1.3;_
2025-11-17T12:32:11.628 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:11.628 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:11.628 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:11.629 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:11.629 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:11.629 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.6867906, teldec = -24.256475
2025-11-17T12:32:11.629 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6867906 -24.256475
2025-11-17T12:32:11.629 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6867906 -24.256475
2025-11-17T12:32:11.629 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6867906 -24.256475
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.6867906;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70654;2460996.9390235;12.5365475;1.3;_18.6606048402869 -24.2789651171246
2025-11-17T12:32:11.630 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.6606048402869     dec_j2k = -24.2789651171246
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104609259336586;171.162357330327;_
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104609259336586;171.162357330327;_
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:11.630 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:11.631 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:11.631 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:11.631 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:11.632 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59985)
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:11.636 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:11.643 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:11.643 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93902346, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609259336586, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.6867906, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.70654, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6606048402869, telescope_dec_j2k=-24.2789651171246, observability=1)
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.257922887802124s
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:14.901 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:14.902 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6876872;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70744;2460996.93906138;12.53744167;1.3;_
2025-11-17T12:32:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.6876872;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70744;2460996.93906138;12.53744167;1.3;_
2025-11-17T12:32:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:14.903 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:14.904 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.6876872, teldec = -24.256475
2025-11-17T12:32:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6876872 -24.256475
2025-11-17T12:32:14.904 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6876872 -24.256475
2025-11-17T12:32:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6876872 -24.256475
2025-11-17T12:32:14.905 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.6876872;-24.256475;50.108351;89.992961;50.08601;90.12017;15.70744;2460996.9390614;12.53744167;1.3;_18.6615015334746 -24.2789982538327
2025-11-17T12:32:14.905 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.6615015334746     dec_j2k = -24.2789982538327
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104609780791843;171.162346601491;_
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104609780791843;171.162346601491;_
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:14.906 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:14.907 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:14.908 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:14.909 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:14.913 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54087)
2025-11-17T12:32:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:14.913 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:14.913 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:14.914 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:14.922 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93906138, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609780791843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.6876872, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.70744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6615015334746, telescope_dec_j2k=-24.2789982538327, observability=1)
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Status age = 3.0681941509246826s
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:17.990 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:17.991 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:17.991 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:17.992 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:17.993 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 17;18.688546;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7083;2460996.93909713;12.53829806;1.3;_
2025-11-17T12:32:17.993 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response 17;18.688546;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7083;2460996.93909713;12.53829806;1.3;_
2025-11-17T12:32:17.993 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:17.993 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:17.993 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:17.994 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:17.994 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:17.994 [INFO] [Thread-67700 (handle)] [driver.py] [get_status()] Telra = 18.688546, teldec = -24.256475
2025-11-17T12:32:17.994 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] UnCookCoordinates 18.688546 -24.256475
2025-11-17T12:32:17.994 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.688546 -24.256475
2025-11-17T12:32:17.994 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.688546 -24.256475
2025-11-17T12:32:17.995 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 17;18.688546;-24.256475;50.108351;89.992961;50.08601;90.12017;15.7083;2460996.93909716;12.53829806;1.3;_18.6623604229403 -24.2790299924226
2025-11-17T12:32:17.995 [INFO] [Thread-67700 (handle)] [driver.py] [get_status()] ra_j2k = 18.6623604229403     dec_j2k = -24.2790299924226
2025-11-17T12:32:17.995 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:17.995 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:17.995 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 140;0.104609139000758;171.162351965909;_
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response 140;0.104609139000758;171.162351965909;_
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:17.996 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:17.997 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:17.998 [DEBUG] [Thread-67700 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:17.998 [DEBUG] [Thread-67700 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:17.998 [DEBUG] [Thread-67700 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32965)
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:18.000 [DEBUG] [Thread-67700 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:18.007 [DEBUG] [Thread-67700 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:18.007 [INFO] [Thread-67700 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93909713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609139000758, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.992961, telescope_ra=18.688546, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.7083, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6623604229403, telescope_dec_j2k=-24.2790299924226, observability=1)
2025-11-17T12:32:25.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.628072023391724s
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6906941;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71045;2460996.9391856;12.54044028;1.3;_
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.6906941;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71045;2460996.9391856;12.54044028;1.3;_
2025-11-17T12:32:25.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:25.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:25.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:25.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:25.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:25.638 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.6906941, teldec = -24.256475
2025-11-17T12:32:25.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.6906941 -24.256475
2025-11-17T12:32:25.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.6906941 -24.256475
2025-11-17T12:32:25.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6906941 -24.256475
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.6906941;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71045;2460996.93918564;12.54044028;1.3;_18.6645087476044 -24.2791093748315
2025-11-17T12:32:25.639 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6645087476044     dec_j2k = -24.2791093748315
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104609861015728;171.162351965909;_
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104609861015728;171.162351965909;_
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:25.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:25.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:25.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:25.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:25.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45309)
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:25.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:25.651 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:32:25.651 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9391856, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609861015728, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.99296, telescope_ra=18.6906941, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.71045, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6645087476044, telescope_dec_j2k=-24.2791093748315, observability=1)
2025-11-17T12:32:25.651 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08010220527649 seconds ago
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Status age = 10.446525812149048s
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:36.098 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:36.099 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:36.100 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 17;18.6935906;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71334;2460996.93930671;12.54332889;1.3;_
2025-11-17T12:32:36.100 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response 17;18.6935906;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71334;2460996.93930671;12.54332889;1.3;_
2025-11-17T12:32:36.100 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:36.100 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:36.100 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:36.101 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:36.101 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:36.101 [INFO] [Thread-67701 (handle)] [driver.py] [get_status()] Telra = 18.6935906, teldec = -24.256475
2025-11-17T12:32:36.101 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6935906 -24.256475
2025-11-17T12:32:36.101 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6935906 -24.256475
2025-11-17T12:32:36.101 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6935906 -24.256475
2025-11-17T12:32:36.102 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 17;18.6935906;-24.256475;50.108351;89.99296;50.08601;90.12017;15.71334;2460996.93930674;12.54332889;1.3;_18.6674055525446 -24.2792164034336
2025-11-17T12:32:36.102 [INFO] [Thread-67701 (handle)] [driver.py] [get_status()] ra_j2k = 18.6674055525446     dec_j2k = -24.2792164034336
2025-11-17T12:32:36.102 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:36.102 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:36.102 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 140;0.104609419784357;171.162357330327;_
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response 140;0.104609419784357;171.162357330327;_
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:36.103 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:36.104 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:36.105 [DEBUG] [Thread-67701 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:36.105 [DEBUG] [Thread-67701 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:36.105 [DEBUG] [Thread-67701 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:36.110 [DEBUG] [Thread-67701 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41863)
2025-11-17T12:32:36.110 [DEBUG] [Thread-67701 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:36.110 [DEBUG] [Thread-67701 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:36.110 [DEBUG] [Thread-67701 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:36.110 [DEBUG] [Thread-67701 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:36.111 [DEBUG] [Thread-67701 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:36.117 [DEBUG] [Thread-67701 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:36.118 [DEBUG] [Thread-67701 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:36.118 [INFO] [Thread-67701 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93930671, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609419784357, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108351, telescope_az=89.99296, telescope_ra=18.6935906, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.71334, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6674055525446, telescope_dec_j2k=-24.2792164034336, observability=1)
2025-11-17T12:32:40.649 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:32:40
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.5313401222229s
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:40.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:40.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:40.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6948708;-24.256475;50.10835;89.99296;50.08601;90.12017;15.71462;2460996.93935939;12.54460556;1.3;_
2025-11-17T12:32:40.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.6948708;-24.256475;50.10835;89.99296;50.08601;90.12017;15.71462;2460996.93935939;12.54460556;1.3;_
2025-11-17T12:32:40.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:40.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:40.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:40.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:40.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:40.652 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.6948708, teldec = -24.256475
2025-11-17T12:32:40.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6948708 -24.256475
2025-11-17T12:32:40.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6948708 -24.256475
2025-11-17T12:32:40.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6948708 -24.256475
2025-11-17T12:32:40.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.6948708;-24.256475;50.10835;89.99296;50.08601;90.12017;15.71462;2460996.93935941;12.54460556;1.3;_18.6686858880554 -24.2792637041835
2025-11-17T12:32:40.653 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.6686858880554     dec_j2k = -24.2792637041835
2025-11-17T12:32:40.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104610101687385;171.162351965909;_
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104610101687385;171.162351965909;_
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:40.654 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:40.655 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:40.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:40.656 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:32:40.657 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55365)
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:40.663 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:40.670 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:40.671 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.93935939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104610101687385, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.99296, telescope_ra=18.6948708, telescope_dec=-24.256475, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.71462, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:31:43.572043', telescope_ra_j2k=18.6686858880554, telescope_dec_j2k=-24.2792637041835, observability=1)
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:43.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:43.715 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:43.715 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:43.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:43.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:43.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:43.716 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:32:43.716 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:43.716 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:43.716 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:43.716 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:43.716 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:32:43.717 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:32:43.718 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:44.718 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:44.718 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:44.718 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:44.718 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:44.718 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:32:44.719 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:44.720 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:44.721 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:44.721 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:44.721 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:44.721 [DEBUG] [ThreadPoolExecutor-2790_0] [payload.py] [to_registers()] [0]
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43823)
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:44.726 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:44.733 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:44.733 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:32:44.734 [DEBUG] [ThreadPoolExecutor-2790_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:32:44.734 [DEBUG] [ThreadPoolExecutor-2790_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:32:44.734 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:44.734 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:44.734 [DEBUG] [ThreadPoolExecutor-2790_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Status age = 13.502690553665161s
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:32:54.173 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:32:54.174 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:32:54.175 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 17;18.6986369;-24.256474;50.10835;89.99296;50.08601;90.12017;15.71839;2460996.93951591;12.54836139;1.3;_
2025-11-17T12:32:54.175 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response 17;18.6986369;-24.256474;50.10835;89.99296;50.08601;90.12017;15.71839;2460996.93951591;12.54836139;1.3;_
2025-11-17T12:32:54.175 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:32:54.175 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:32:54.175 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:32:54.176 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:54.176 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:32:54.176 [INFO] [Thread-67702 (handle)] [driver.py] [get_status()] Telra = 18.6986369, teldec = -24.256474
2025-11-17T12:32:54.176 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] UnCookCoordinates 18.6986369 -24.256474
2025-11-17T12:32:54.176 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.6986369 -24.256474
2025-11-17T12:32:54.176 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.6986369 -24.256474
2025-11-17T12:32:54.177 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 17;18.6986369;-24.256474;50.10835;89.99296;50.08601;90.12017;15.71839;2460996.93951594;12.54836139;1.3;_18.6724523895041 -24.2794018398402
2025-11-17T12:32:54.177 [INFO] [Thread-67702 (handle)] [driver.py] [get_status()] ra_j2k = 18.6724523895041     dec_j2k = -24.2794018398402
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 140;0.104609660456014;171.162368059163;_
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response 140;0.104609660456014;171.162368059163;_
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:54.178 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:32:54.179 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:32:54.180 [DEBUG] [Thread-67702 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:54.180 [DEBUG] [Thread-67702 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:32:54.180 [DEBUG] [Thread-67702 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46007)
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:32:54.182 [DEBUG] [Thread-67702 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:32:54.189 [DEBUG] [Thread-67702 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:32:54.189 [DEBUG] [Thread-67702 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:54.189 [DEBUG] [Thread-67702 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:32:54.190 [DEBUG] [Thread-67702 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:32:54.190 [INFO] [Thread-67702 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93951591, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609660456014, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.99296, telescope_ra=18.6986369, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.71839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6724523895041, telescope_dec_j2k=-24.2794018398402, observability=1)
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:09.734 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:09.735 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:33:09.736 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:33:09.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Status age = 15.900810480117798s
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:10.091 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:10.092 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:10.093 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 17;18.7030675;-24.256481;50.10835;89.99297;50.08601;90.12018;15.72282;2460996.93970015;12.55277972;1.3;_
2025-11-17T12:33:10.093 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response 17;18.7030675;-24.256481;50.10835;89.99297;50.08601;90.12018;15.72282;2460996.93970015;12.55277972;1.3;_
2025-11-17T12:33:10.093 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:10.093 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:10.093 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:10.094 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:10.094 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:10.094 [INFO] [Thread-67703 (handle)] [driver.py] [get_status()] Telra = 18.7030675, teldec = -24.256481
2025-11-17T12:33:10.094 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7030675 -24.256481
2025-11-17T12:33:10.094 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7030675 -24.256481
2025-11-17T12:33:10.095 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7030675 -24.256481
2025-11-17T12:33:10.095 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 17;18.7030675;-24.256481;50.10835;89.99297;50.08601;90.12018;15.72282;2460996.93970017;12.55277972;1.3;_18.6768834651472 -24.2795724973514
2025-11-17T12:33:10.096 [INFO] [Thread-67703 (handle)] [driver.py] [get_status()] ra_j2k = 18.6768834651472     dec_j2k = -24.2795724973514
2025-11-17T12:33:10.096 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:10.096 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:10.096 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 140;0.104609780791843;171.162351965909;_
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response 140;0.104609780791843;171.162351965909;_
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:10.097 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57989)
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:10.098 [DEBUG] [Thread-67703 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:10.105 [DEBUG] [Thread-67703 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:10.105 [DEBUG] [Thread-67703 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:10.105 [DEBUG] [Thread-67703 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:10.106 [DEBUG] [Thread-67703 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:10.106 [INFO] [Thread-67703 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93970015, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104609780791843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.99297, telescope_ra=18.7030675, telescope_dec=-24.256481, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.72282, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6768834651472, telescope_dec_j2k=-24.2795724973514, observability=1)
2025-11-17T12:33:10.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:10.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.6221151351928711s
2025-11-17T12:33:10.728 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6221151351928711
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Status age = 2.214503765106201s
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:12.320 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:12.321 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:12.322 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 17;18.7036743;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72343;2460996.93972596;12.553385;1.3;_
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response 17;18.7036743;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72343;2460996.93972596;12.553385;1.3;_
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:12.323 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:12.324 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:12.324 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:12.324 [INFO] [Thread-67704 (handle)] [driver.py] [get_status()] Telra = 18.7036743, teldec = -24.256474
2025-11-17T12:33:12.324 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7036743 -24.256474
2025-11-17T12:33:12.324 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7036743 -24.256474
2025-11-17T12:33:12.324 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7036743 -24.256474
2025-11-17T12:33:12.325 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 17;18.7036743;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72343;2460996.93972598;12.553385;1.3;_18.6774903322806 -24.279587909633
2025-11-17T12:33:12.325 [INFO] [Thread-67704 (handle)] [driver.py] [get_status()] ra_j2k = 18.6774903322806     dec_j2k = -24.279587909633
2025-11-17T12:33:12.325 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:12.325 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:12.325 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:12.326 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 140;0.104610382470985;171.162357330327;_
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response 140;0.104610382470985;171.162357330327;_
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:12.327 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:12.328 [DEBUG] [Thread-67704 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:12.328 [DEBUG] [Thread-67704 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:12.328 [DEBUG] [Thread-67704 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43147)
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:12.335 [DEBUG] [Thread-67704 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:12.342 [DEBUG] [Thread-67704 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:12.343 [DEBUG] [Thread-67704 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:12.343 [INFO] [Thread-67704 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93972596, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104610382470985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.992959, telescope_ra=18.7036743, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.72343, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6774903322806, telescope_dec_j2k=-24.279587909633, observability=1)
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.5784871578216553s
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7044032;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72416;2460996.93975606;12.55411194;1.3;_
2025-11-17T12:33:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.7044032;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72416;2460996.93975606;12.55411194;1.3;_
2025-11-17T12:33:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:14.925 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.7044032, teldec = -24.256474
2025-11-17T12:33:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7044032 -24.256474
2025-11-17T12:33:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7044032 -24.256474
2025-11-17T12:33:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7044032 -24.256474
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7044032;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72416;2460996.93975609;12.55411194;1.3;_18.678219311395 -24.2796148303559
2025-11-17T12:33:14.926 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.678219311395     dec_j2k = -24.2796148303559
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10461046269487;171.162357330327;_
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10461046269487;171.162357330327;_
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38667)
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:14.940 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:14.941 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93975606, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461046269487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.992959, telescope_ra=18.7044032, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.72416, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.678219311395, telescope_dec_j2k=-24.2796148303559, observability=1)
2025-11-17T12:33:25.711 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.770607948303223s
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:25.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:25.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:25.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.707417;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72717;2460996.93988095;12.5571175;1.3;_
2025-11-17T12:33:25.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.707417;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72717;2460996.93988095;12.5571175;1.3;_
2025-11-17T12:33:25.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:25.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:25.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:25.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:25.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:25.715 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.707417, teldec = -24.256474
2025-11-17T12:33:25.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.707417 -24.256474
2025-11-17T12:33:25.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.707417 -24.256474
2025-11-17T12:33:25.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.707417 -24.256474
2025-11-17T12:33:25.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.707417;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72717;2460996.93988097;12.5571175;1.3;_18.6812334400569 -24.2797261316315
2025-11-17T12:33:25.716 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6812334400569     dec_j2k = -24.2797261316315
2025-11-17T12:33:25.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:25.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:25.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104610703366527;171.162351965909;_
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104610703366527;171.162351965909;_
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:25.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:25.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:25.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:25.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:25.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:33:25.720 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45645)
2025-11-17T12:33:25.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:25.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:25.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:25.721 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:25.721 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:25.728 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:33:25.728 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93988095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104610703366527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.992959, telescope_ra=18.707417, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.72717, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6812334400569, telescope_dec_j2k=-24.2797261316315, observability=1)
2025-11-17T12:33:25.728 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.079139709472656 seconds ago
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Status age = 4.659959077835083s
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:30.388 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:30.389 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:30.390 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 17;18.7087247;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72848;2460996.93993507;12.55842167;1.3;_
2025-11-17T12:33:30.390 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response 17;18.7087247;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72848;2460996.93993507;12.55842167;1.3;_
2025-11-17T12:33:30.390 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:30.390 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:30.390 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:30.391 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:30.391 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:30.391 [INFO] [Thread-67705 (handle)] [driver.py] [get_status()] Telra = 18.7087247, teldec = -24.256474
2025-11-17T12:33:30.391 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7087247 -24.256474
2025-11-17T12:33:30.391 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7087247 -24.256474
2025-11-17T12:33:30.391 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7087247 -24.256474
2025-11-17T12:33:30.392 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 17;18.7087247;-24.256474;50.10835;89.992959;50.08601;90.12017;15.72848;2460996.93993509;12.55842167;1.3;_18.6825412834389 -24.2797744214485
2025-11-17T12:33:30.392 [INFO] [Thread-67705 (handle)] [driver.py] [get_status()] ra_j2k = 18.6825412834389     dec_j2k = -24.2797744214485
2025-11-17T12:33:30.392 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:30.392 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:30.392 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 140;0.104610342359042;171.162357330327;_
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response 140;0.104610342359042;171.162357330327;_
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:30.393 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:30.394 [DEBUG] [Thread-67705 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58849)
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:30.397 [DEBUG] [Thread-67705 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:30.398 [DEBUG] [Thread-67705 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:30.399 [INFO] [Thread-67705 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.93993507, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104610342359042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10835, telescope_az=89.992959, telescope_ra=18.7087247, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.72848, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6825412834389, telescope_dec_j2k=-24.2797744214485, observability=1)
2025-11-17T12:33:40.731 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:33:40
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.333124160766602s
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:40.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7115903;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73134;2460996.94005478;12.56127944;1.3;_
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.7115903;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73134;2460996.94005478;12.56127944;1.3;_
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:40.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:40.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:40.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:40.734 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.7115903, teldec = -24.256473
2025-11-17T12:33:40.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7115903 -24.256473
2025-11-17T12:33:40.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7115903 -24.256473
2025-11-17T12:33:40.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7115903 -24.256473
2025-11-17T12:33:40.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7115903;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73134;2460996.9400548;12.56127944;1.3;_18.6854071994719 -24.2798792313208
2025-11-17T12:33:40.735 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.6854071994719     dec_j2k = -24.2798792313208
2025-11-17T12:33:40.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:40.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:40.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10461102426207;171.162368059163;_
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10461102426207;171.162368059163;_
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:40.736 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:40.737 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:40.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:40.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:33:40.738 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43605)
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:40.743 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:40.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:40.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:40.750 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:40.751 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:40.751 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94005478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461102426207, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992958, telescope_ra=18.7115903, telescope_dec=-24.256473, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.73134, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:32:43.714112', telescope_ra_j2k=18.6854071994719, telescope_dec_j2k=-24.2798792313208, observability=1)
2025-11-17T12:33:43.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:43.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:43.855 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:43.856 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:33:43.856 [INFO] [ThreadPoolExecutor-2791_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:33:43.856 [INFO] [ThreadPoolExecutor-2791_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Status age = 7.710847854614258s
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:33:48.462 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:33:48.463 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:33:48.464 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 17;18.7137663;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73352;2460996.94014426;12.56344944;1.3;_
2025-11-17T12:33:48.464 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response 17;18.7137663;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73352;2460996.94014426;12.56344944;1.3;_
2025-11-17T12:33:48.464 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:33:48.464 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:33:48.464 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:33:48.465 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:48.465 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:33:48.465 [INFO] [Thread-67706 (handle)] [driver.py] [get_status()] Telra = 18.7137663, teldec = -24.256473
2025-11-17T12:33:48.465 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7137663 -24.256473
2025-11-17T12:33:48.466 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7137663 -24.256473
2025-11-17T12:33:48.466 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7137663 -24.256473
2025-11-17T12:33:48.466 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 17;18.7137663;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73352;2460996.94014428;12.56344944;1.3;_18.6875834408053 -24.2799595699114
2025-11-17T12:33:48.467 [INFO] [Thread-67706 (handle)] [driver.py] [get_status()] ra_j2k = 18.6875834408053     dec_j2k = -24.2799595699114
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 140;0.104611305045669;171.162362694745;_
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response 140;0.104611305045669;171.162362694745;_
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:33:48.467 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:48.468 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:48.468 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:48.468 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:48.468 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:48.468 [DEBUG] [Thread-67706 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:33:48.469 [DEBUG] [Thread-67706 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:33:48.475 [DEBUG] [Thread-67706 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38685)
2025-11-17T12:33:48.476 [DEBUG] [Thread-67706 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:33:48.476 [DEBUG] [Thread-67706 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:33:48.476 [DEBUG] [Thread-67706 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:33:48.476 [DEBUG] [Thread-67706 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:33:48.476 [DEBUG] [Thread-67706 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:33:48.483 [DEBUG] [Thread-67706 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:33:48.483 [INFO] [Thread-67706 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94014426, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104611305045669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992958, telescope_ra=18.7137663, telescope_dec=-24.256473, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.73352, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6875834408053, telescope_dec_j2k=-24.2799595699114, observability=1)
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:34:04.737 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:04.738 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:04.739 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.739 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.740 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:34:04.741 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:04.742 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Park
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:34:04.743 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:34:04.744 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 29;18.7182772;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73803;2460996.94033268;12.56794806;1.3;_Park Command Successful
2025-11-17T12:34:05.744 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:34:05.744 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:34:05.744 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:34:05.745 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:34:05.745 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Status age = 18.133840322494507s
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:06.617 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:06.618 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:06.620 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 17;18.7188101;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73856;2460996.9403544;12.56847944;1.3;_
2025-11-17T12:34:06.620 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response 17;18.7188101;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73856;2460996.9403544;12.56847944;1.3;_
2025-11-17T12:34:06.620 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:06.620 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:06.620 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:06.621 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:06.621 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:06.621 [INFO] [Thread-67707 (handle)] [driver.py] [get_status()] Telra = 18.7188101, teldec = -24.256473
2025-11-17T12:34:06.621 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7188101 -24.256473
2025-11-17T12:34:06.621 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7188101 -24.256473
2025-11-17T12:34:06.621 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7188101 -24.256473
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 17;18.7188101;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73856;2460996.94035442;12.56847944;1.3;_18.6926278051861 -24.2801457607724
2025-11-17T12:34:06.622 [INFO] [Thread-67707 (handle)] [driver.py] [get_status()] ra_j2k = 18.6926278051861     dec_j2k = -24.2801457607724
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 140;0.104611946836754;171.162346601491;_
2025-11-17T12:34:06.622 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response 140;0.104611946836754;171.162346601491;_
2025-11-17T12:34:06.623 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:06.623 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:06.623 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:06.623 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:06.624 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:06.625 [DEBUG] [Thread-67707 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:06.625 [DEBUG] [Thread-67707 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:06.625 [DEBUG] [Thread-67707 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37053)
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:06.628 [DEBUG] [Thread-67707 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:06.635 [DEBUG] [Thread-67707 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:06.636 [DEBUG] [Thread-67707 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:06.636 [INFO] [Thread-67707 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9403544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104611946836754, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992958, telescope_ra=18.7188101, telescope_dec=-24.256473, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.73856, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6926278051861, telescope_dec_j2k=-24.2801457607724, observability=1)
2025-11-17T12:34:06.745 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:34:06.745 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:34:06.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:34:06.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:34:06.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:34:07.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:34:07.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:34:07.746 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:34:07.747 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:34:07.747 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:34:08.747 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:34:08.747 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:34:08.747 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:34:08.748 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:34:08.749 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:09.749 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:09.749 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:09.750 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:09.750 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:09.750 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:34:09.751 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:34:09.752 [DEBUG] [ThreadPoolExecutor-2790_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:09.752 [INFO] [ThreadPoolExecutor-2790_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.179255723953247s
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:09.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:09.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:09.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7196967;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73945;2460996.9403914;12.56936361;1.3;_
2025-11-17T12:34:09.817 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.7196967;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73945;2460996.9403914;12.56936361;1.3;_
2025-11-17T12:34:09.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:09.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:09.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:09.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:09.818 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:09.818 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.7196967, teldec = -24.256473
2025-11-17T12:34:09.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7196967 -24.256473
2025-11-17T12:34:09.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7196967 -24.256473
2025-11-17T12:34:09.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7196967 -24.256473
2025-11-17T12:34:09.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7196967;-24.256473;50.108349;89.992958;50.08601;90.12017;15.73945;2460996.94039142;12.56936361;1.3;_18.6935145051133 -24.2801784854024
2025-11-17T12:34:09.819 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.6935145051133     dec_j2k = -24.2801784854024
2025-11-17T12:34:09.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:09.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:09.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104611706165097;171.162351965909;_
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104611706165097;171.162351965909;_
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:09.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:09.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:09.822 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:09.822 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:09.822 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58215)
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:09.829 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:09.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:09.837 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:09.837 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:09.837 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9403914, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104611706165097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992958, telescope_ra=18.7196967, telescope_dec=-24.256473, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.73945, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6935145051133, telescope_dec_j2k=-24.2801784854024, observability=1)
2025-11-17T12:34:10.141 [DEBUG] [Thread-67708 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:10.141 [DEBUG] [Thread-67708 (handle)] [server.py] [get_status()] Status age = 0.3045814037322998s
2025-11-17T12:34:10.141 [DEBUG] [Thread-67708 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3045814037322998
2025-11-17T12:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.135660648345947s
2025-11-17T12:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7211253;-24.256473;50.108349;89.992957;50.08601;90.12017;15.74088;2460996.94045109;12.57078833;1.3;_
2025-11-17T12:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.7211253;-24.256473;50.108349;89.992957;50.08601;90.12017;15.74088;2460996.94045109;12.57078833;1.3;_
2025-11-17T12:34:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:14.976 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.7211253, teldec = -24.256473
2025-11-17T12:34:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7211253 -24.256473
2025-11-17T12:34:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7211253 -24.256473
2025-11-17T12:34:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7211253 -24.256473
2025-11-17T12:34:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7211253;-24.256473;50.108349;89.992957;50.08601;90.12017;15.74088;2460996.94045112;12.57078833;1.3;_18.6949432665814 -24.2802312128436
2025-11-17T12:34:14.977 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.6949432665814     dec_j2k = -24.2802312128436
2025-11-17T12:34:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104611986948697;171.162362694745;_
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104611986948697;171.162362694745;_
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41207)
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:14.988 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:14.988 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94045109, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104611986948697, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992957, telescope_ra=18.7211253, telescope_dec=-24.256473, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.74088, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6949432665814, telescope_dec_j2k=-24.2802312128436, observability=1)
2025-11-17T12:34:24.693 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:24.693 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Status age = 9.704990863800049s
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:24.694 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 17;18.7238539;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74361;2460996.9405636;12.57350944;1.3;_
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response 17;18.7238539;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74361;2460996.9405636;12.57350944;1.3;_
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:24.695 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:24.696 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:24.696 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:24.696 [INFO] [Thread-67709 (handle)] [driver.py] [get_status()] Telra = 18.7238539, teldec = -24.256472
2025-11-17T12:34:24.697 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7238539 -24.256472
2025-11-17T12:34:24.697 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7238539 -24.256472
2025-11-17T12:34:24.697 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7238539 -24.256472
2025-11-17T12:34:24.697 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 17;18.7238539;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74361;2460996.94056362;12.57350944;1.3;_18.6976721767335 -24.2803309126161
2025-11-17T12:34:24.698 [INFO] [Thread-67709 (handle)] [driver.py] [get_status()] ra_j2k = 18.6976721767335     dec_j2k = -24.2803309126161
2025-11-17T12:34:24.698 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:24.698 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:24.698 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:24.698 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 140;0.104611505605383;171.162357330327;_
2025-11-17T12:34:24.698 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response 140;0.104611505605383;171.162357330327;_
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:24.699 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:24.700 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:24.700 [DEBUG] [Thread-67709 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:24.700 [DEBUG] [Thread-67709 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:24.700 [DEBUG] [Thread-67709 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:24.703 [DEBUG] [Thread-67709 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46309)
2025-11-17T12:34:24.703 [DEBUG] [Thread-67709 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:24.704 [DEBUG] [Thread-67709 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:24.704 [DEBUG] [Thread-67709 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:24.704 [DEBUG] [Thread-67709 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:24.704 [DEBUG] [Thread-67709 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:24.711 [DEBUG] [Thread-67709 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:24.711 [INFO] [Thread-67709 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9405636, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104611505605383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992957, telescope_ra=18.7238539, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.74361, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6976721767335, telescope_dec_j2k=-24.2803309126161, observability=1)
2025-11-17T12:34:25.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:34:25.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.0772910118103027s
2025-11-17T12:34:25.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:25.788 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:25.788 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:25.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:25.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:25.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:25.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:25.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7241625;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74392;2460996.94057627;12.57381722;1.3;_
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.7241625;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74392;2460996.94057627;12.57381722;1.3;_
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:25.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:25.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:25.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:25.791 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.7241625, teldec = -24.256472
2025-11-17T12:34:25.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.7241625 -24.256472
2025-11-17T12:34:25.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.7241625 -24.256472
2025-11-17T12:34:25.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7241625 -24.256472
2025-11-17T12:34:25.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7241625;-24.256472;50.108349;89.992957;50.08601;90.12017;15.74392;2460996.9405763;12.57381722;1.3;_18.6979808119172 -24.2803423008549
2025-11-17T12:34:25.792 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.6979808119172     dec_j2k = -24.2803423008549
2025-11-17T12:34:25.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104612147396468;171.162357330327;_
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104612147396468;171.162357330327;_
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:25.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:25.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:25.796 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58003)
2025-11-17T12:34:25.797 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:25.797 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:25.797 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:25.797 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:25.797 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:25.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:34:25.804 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94057627, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612147396468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108349, telescope_az=89.992957, telescope_ra=18.7241625, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.74392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.6979808119172, telescope_dec_j2k=-24.2803423008549, observability=1)
2025-11-17T12:34:25.804 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07266902923584 seconds ago
2025-11-17T12:34:40.811 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:34:40
2025-11-17T12:34:40.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:40.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.00737452507019s
2025-11-17T12:34:40.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:40.811 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:40.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:40.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7283344;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74809;2460996.94075015;12.57797778;1.3;_
2025-11-17T12:34:40.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.7283344;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74809;2460996.94075015;12.57797778;1.3;_
2025-11-17T12:34:40.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:40.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:40.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:40.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:40.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:40.814 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.7283344, teldec = -24.256472
2025-11-17T12:34:40.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7283344 -24.256472
2025-11-17T12:34:40.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7283344 -24.256472
2025-11-17T12:34:40.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7283344 -24.256472
2025-11-17T12:34:40.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7283344;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74809;2460996.94075017;12.57797778;1.3;_18.7021531901187 -24.2804962415973
2025-11-17T12:34:40.815 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7021531901187     dec_j2k = -24.2804962415973
2025-11-17T12:34:40.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:40.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:40.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10461274907561;171.162351965909;_
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10461274907561;171.162351965909;_
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:40.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:40.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:40.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:40.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:40.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:40.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:40.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:40.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:40.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:34:40.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57597)
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:40.821 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:40.829 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:40.830 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94075015, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461274907561, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992957, telescope_ra=18.7283344, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.74809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.7021531901187, telescope_dec_j2k=-24.2804962415973, observability=1)
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Status age = 1.9215648174285889s
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:42.751 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 17;18.7288678;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74862;2460996.94077259;12.57850972;1.3;_
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response 17;18.7288678;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74862;2460996.94077259;12.57850972;1.3;_
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:34:42.752 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:34:42.753 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:42.753 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:34:42.753 [INFO] [Thread-67710 (handle)] [driver.py] [get_status()] Telra = 18.7288678, teldec = -24.256472
2025-11-17T12:34:42.753 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7288678 -24.256472
2025-11-17T12:34:42.754 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7288678 -24.256472
2025-11-17T12:34:42.754 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7288678 -24.256472
2025-11-17T12:34:42.754 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 17;18.7288678;-24.256472;50.108348;89.992957;50.08601;90.12017;15.74862;2460996.94077262;12.57850972;1.3;_18.702686651603 -24.2805159217999
2025-11-17T12:34:42.755 [INFO] [Thread-67710 (handle)] [driver.py] [get_status()] ra_j2k = 18.702686651603     dec_j2k = -24.2805159217999
2025-11-17T12:34:42.755 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:34:42.755 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:34:42.755 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:34:42.755 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 140;0.104612548515896;171.162362694745;_
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response 140;0.104612548515896;171.162362694745;_
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:42.756 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:42.757 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:42.757 [DEBUG] [Thread-67710 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:42.757 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:34:42.757 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:34:42.757 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:34:42.758 [DEBUG] [Thread-67710 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:42.758 [DEBUG] [Thread-67710 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:34:42.758 [DEBUG] [Thread-67710 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50827)
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:42.760 [DEBUG] [Thread-67710 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:34:42.768 [DEBUG] [Thread-67710 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:34:42.768 [INFO] [Thread-67710 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94077259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612548515896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992957, telescope_ra=18.7288678, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.74862, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:33:43.854012', telescope_ra_j2k=18.702686651603, telescope_dec_j2k=-24.2805159217999, observability=1)
2025-11-17T12:34:43.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:43.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:43.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:43.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:43.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:43.998 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:43.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:43.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:43.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:43.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:43.999 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:34:43.999 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:43.999 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:43.999 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:43.999 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:34:44.000 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:34:44.001 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:45.001 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:45.001 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:45.001 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:45.001 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:34:45.002 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:34:45.003 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:34:45.004 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:34:45.004 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:34:45.004 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:34:45.004 [DEBUG] [ThreadPoolExecutor-2792_0] [payload.py] [to_registers()] [0]
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55181)
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:34:45.008 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:34:45.015 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:34:45.015 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:34:45.015 [DEBUG] [ThreadPoolExecutor-2792_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:34:45.015 [DEBUG] [ThreadPoolExecutor-2792_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:34:45.016 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:34:45.016 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:34:45.016 [DEBUG] [ThreadPoolExecutor-2792_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Status age = 18.15166735649109s
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:00.920 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:00.921 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:00.922 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 17;18.7339417;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75369;2460996.94098289;12.58356972;1.3;_
2025-11-17T12:35:00.922 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response 17;18.7339417;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75369;2460996.94098289;12.58356972;1.3;_
2025-11-17T12:35:00.922 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:00.922 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:00.922 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:00.923 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:00.923 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:00.923 [INFO] [Thread-67711 (handle)] [driver.py] [get_status()] Telra = 18.7339417, teldec = -24.256472
2025-11-17T12:35:00.923 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7339417 -24.256472
2025-11-17T12:35:00.923 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7339417 -24.256472
2025-11-17T12:35:00.923 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7339417 -24.256472
2025-11-17T12:35:00.924 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 17;18.7339417;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75369;2460996.94098292;12.58356972;1.3;_18.7077611403611 -24.2807031049612
2025-11-17T12:35:00.924 [INFO] [Thread-67711 (handle)] [driver.py] [get_status()] ra_j2k = 18.7077611403611     dec_j2k = -24.2807031049612
2025-11-17T12:35:00.925 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:00.925 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:00.925 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 140;0.104613150195038;171.162357330327;_
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response 140;0.104613150195038;171.162357330327;_
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:00.926 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:00.927 [DEBUG] [Thread-67711 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:00.927 [DEBUG] [Thread-67711 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:00.928 [DEBUG] [Thread-67711 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53067)
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:00.930 [DEBUG] [Thread-67711 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:00.937 [DEBUG] [Thread-67711 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:00.938 [INFO] [Thread-67711 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94098289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613150195038, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.7339417, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.75369, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7077611403611, telescope_dec_j2k=-24.2807031049612, observability=1)
2025-11-17T12:35:08.929 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.992080926895142s
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:08.930 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:08.931 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:08.931 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:08.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:08.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:08.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:08.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7361728;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75593;2460996.9410756;12.58579472;1.3;_
2025-11-17T12:35:08.932 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.7361728;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75593;2460996.9410756;12.58579472;1.3;_
2025-11-17T12:35:08.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:08.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:08.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:08.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:08.933 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:08.933 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.7361728, teldec = -24.256472
2025-11-17T12:35:08.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7361728 -24.256472
2025-11-17T12:35:08.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7361728 -24.256472
2025-11-17T12:35:08.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7361728 -24.256472
2025-11-17T12:35:08.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7361728;-24.256472;50.108348;89.992956;50.08601;90.12017;15.75593;2460996.94107562;12.58579472;1.3;_18.709992501482 -24.2807854004996
2025-11-17T12:35:08.934 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.709992501482     dec_j2k = -24.2807854004996
2025-11-17T12:35:08.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:08.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:08.934 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104612708963667;171.162362694745;_
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104612708963667;171.162362694745;_
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:08.935 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:08.936 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:08.937 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:08.937 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:08.937 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:08.940 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38371)
2025-11-17T12:35:08.940 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:08.940 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:08.940 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:08.940 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:08.941 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:08.948 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:08.948 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9410756, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612708963667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.7361728, telescope_dec=-24.256472, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.75593, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.709992501482, telescope_dec_j2k=-24.2807854004996, observability=1)
2025-11-17T12:35:10.016 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:10.016 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:10.016 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:10.016 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:10.016 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:10.017 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:35:10.018 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:35:10.019 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Status age = 1.236910343170166s
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:10.185 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 17;18.7365279;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75628;2460996.94109012;12.58614889;1.3;_
2025-11-17T12:35:10.186 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response 17;18.7365279;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75628;2460996.94109012;12.58614889;1.3;_
2025-11-17T12:35:10.187 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:10.187 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:10.187 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:10.188 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:10.188 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:10.188 [INFO] [Thread-67712 (handle)] [driver.py] [get_status()] Telra = 18.7365279, teldec = -24.256471
2025-11-17T12:35:10.188 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7365279 -24.256471
2025-11-17T12:35:10.188 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7365279 -24.256471
2025-11-17T12:35:10.188 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7365279 -24.256471
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 17;18.7365279;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75628;2460996.94109015;12.58614889;1.3;_18.7103476433648 -24.2807974979373
2025-11-17T12:35:10.189 [INFO] [Thread-67712 (handle)] [driver.py] [get_status()] ra_j2k = 18.7103476433648     dec_j2k = -24.2807974979373
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 140;0.104612949635324;171.162351965909;_
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response 140;0.104612949635324;171.162351965909;_
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:10.189 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:10.190 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:10.190 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:10.191 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:10.192 [DEBUG] [Thread-67712 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:10.192 [DEBUG] [Thread-67712 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:10.192 [DEBUG] [Thread-67712 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:10.198 [DEBUG] [Thread-67712 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34283)
2025-11-17T12:35:10.199 [DEBUG] [Thread-67712 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:10.199 [DEBUG] [Thread-67712 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:10.199 [DEBUG] [Thread-67712 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:10.199 [DEBUG] [Thread-67712 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:10.199 [DEBUG] [Thread-67712 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:10.206 [DEBUG] [Thread-67712 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:10.206 [INFO] [Thread-67712 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94109012, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612949635324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.7365279, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.75628, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7103476433648, telescope_dec_j2k=-24.2807974979373, observability=1)
2025-11-17T12:35:14.943 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.737184762954712s
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.737844;-24.256471;50.108348;89.992956;50.08601;90.12017;15.7576;2460996.94114519;12.58746139;1.3;_
2025-11-17T12:35:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.737844;-24.256471;50.108348;89.992956;50.08601;90.12017;15.7576;2460996.94114519;12.58746139;1.3;_
2025-11-17T12:35:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:14.946 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.737844, teldec = -24.256471
2025-11-17T12:35:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.737844 -24.256471
2025-11-17T12:35:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.737844 -24.256471
2025-11-17T12:35:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.737844 -24.256471
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.737844;-24.256471;50.108348;89.992956;50.08601;90.12017;15.7576;2460996.94114522;12.58746139;1.3;_18.7116638981641 -24.2808460386932
2025-11-17T12:35:14.947 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.7116638981641     dec_j2k = -24.2808460386932
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104612789187553;171.162373423581;_
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104612789187553;171.162373423581;_
2025-11-17T12:35:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:14.954 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39627)
2025-11-17T12:35:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:14.955 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:14.962 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:14.963 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94114519, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612789187553, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.737844, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.7576, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7116638981641, telescope_dec_j2k=-24.2808460386932, observability=1)
2025-11-17T12:35:18.986 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Status age = 4.023983716964722s
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:18.987 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:18.988 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:18.989 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 17;18.738956;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75871;2460996.94119199;12.58857028;1.3;_
2025-11-17T12:35:18.989 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response 17;18.738956;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75871;2460996.94119199;12.58857028;1.3;_
2025-11-17T12:35:18.989 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:18.989 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:18.989 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:18.990 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:18.990 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:18.990 [INFO] [Thread-67713 (handle)] [driver.py] [get_status()] Telra = 18.738956, teldec = -24.256471
2025-11-17T12:35:18.990 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] UnCookCoordinates 18.738956 -24.256471
2025-11-17T12:35:18.990 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.738956 -24.256471
2025-11-17T12:35:18.990 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.738956 -24.256471
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 17;18.738956;-24.256471;50.108348;89.992956;50.08601;90.12017;15.75871;2460996.94119203;12.58857028;1.3;_18.7127760293269 -24.2808870496385
2025-11-17T12:35:18.991 [INFO] [Thread-67713 (handle)] [driver.py] [get_status()] ra_j2k = 18.7127760293269     dec_j2k = -24.2808870496385
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 140;0.104612829299496;171.162351965909;_
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response 140;0.104612829299496;171.162351965909;_
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:18.991 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:18.992 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:18.992 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:18.992 [DEBUG] [Thread-67713 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:18.992 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:18.992 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:18.993 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:18.993 [DEBUG] [Thread-67713 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:18.993 [DEBUG] [Thread-67713 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:18.994 [DEBUG] [Thread-67713 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53735)
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:18.997 [DEBUG] [Thread-67713 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:19.004 [DEBUG] [Thread-67713 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:19.004 [DEBUG] [Thread-67713 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:19.004 [DEBUG] [Thread-67713 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:19.005 [DEBUG] [Thread-67713 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:19.005 [INFO] [Thread-67713 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94119199, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612829299496, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.738956, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.75871, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7127760293269, telescope_dec_j2k=-24.2808870496385, observability=1)
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.859483957290649s
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:25.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:25.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:25.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7408804;-24.256471;50.108348;89.992956;50.08601;90.12017;15.76063;2460996.9412716;12.59048944;1.3;_
2025-11-17T12:35:25.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.7408804;-24.256471;50.108348;89.992956;50.08601;90.12017;15.76063;2460996.9412716;12.59048944;1.3;_
2025-11-17T12:35:25.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:25.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:25.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:25.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:25.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:25.867 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.7408804, teldec = -24.256471
2025-11-17T12:35:25.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.7408804 -24.256471
2025-11-17T12:35:25.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.7408804 -24.256471
2025-11-17T12:35:25.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7408804 -24.256471
2025-11-17T12:35:25.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7408804;-24.256471;50.108348;89.992956;50.08601;90.12017;15.76063;2460996.94127162;12.59048944;1.3;_18.714700657114 -24.280958017537
2025-11-17T12:35:25.869 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.714700657114     dec_j2k = -24.280958017537
2025-11-17T12:35:25.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:25.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:25.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104612588627839;171.162362694745;_
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104612588627839;171.162362694745;_
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:25.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:25.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:25.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:25.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:25.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58419)
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:25.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:25.885 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:35:25.885 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9412716, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612588627839, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108348, telescope_az=89.992956, telescope_ra=18.7408804, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.76063, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.714700657114, telescope_dec_j2k=-24.280958017537, observability=1)
2025-11-17T12:35:25.885 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07419681549072 seconds ago
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Status age = 11.17077374458313s
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:37.056 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:37.057 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:37.058 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 17;18.7439939;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76375;2460996.94140113;12.59359444;1.3;_
2025-11-17T12:35:37.058 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response 17;18.7439939;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76375;2460996.94140113;12.59359444;1.3;_
2025-11-17T12:35:37.058 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:37.058 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:37.058 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:37.059 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:37.059 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:37.059 [INFO] [Thread-67714 (handle)] [driver.py] [get_status()] Telra = 18.7439939, teldec = -24.256471
2025-11-17T12:35:37.059 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7439939 -24.256471
2025-11-17T12:35:37.059 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7439939 -24.256471
2025-11-17T12:35:37.059 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7439939 -24.256471
2025-11-17T12:35:37.060 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 17;18.7439939;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76375;2460996.94140116;12.59359444;1.3;_18.7178145277996 -24.2810728244913
2025-11-17T12:35:37.060 [INFO] [Thread-67714 (handle)] [driver.py] [get_status()] ra_j2k = 18.7178145277996     dec_j2k = -24.2810728244913
2025-11-17T12:35:37.060 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:37.060 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:37.060 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 140;0.104612708963667;171.162351965909;_
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response 140;0.104612708963667;171.162351965909;_
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:37.061 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:37.062 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:37.063 [DEBUG] [Thread-67714 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:37.063 [DEBUG] [Thread-67714 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:35:37.063 [DEBUG] [Thread-67714 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53835)
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:37.068 [DEBUG] [Thread-67714 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:37.075 [DEBUG] [Thread-67714 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:37.075 [DEBUG] [Thread-67714 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:37.076 [DEBUG] [Thread-67714 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:37.077 [DEBUG] [Thread-67714 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:37.077 [INFO] [Thread-67714 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94140113, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104612708963667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992955, telescope_ra=18.7439939, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.76375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7178145277996, telescope_dec_j2k=-24.2810728244913, observability=1)
2025-11-17T12:35:40.890 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:35:40
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.8134658336639404s
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:40.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:40.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:40.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7450604;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76481;2460996.94144551;12.59465806;1.3;_
2025-11-17T12:35:40.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.7450604;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76481;2460996.94144551;12.59465806;1.3;_
2025-11-17T12:35:40.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:40.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:40.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:40.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:40.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:40.894 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.7450604, teldec = -24.256471
2025-11-17T12:35:40.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7450604 -24.256471
2025-11-17T12:35:40.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7450604 -24.256471
2025-11-17T12:35:40.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7450604 -24.256471
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7450604;-24.256471;50.108347;89.992955;50.08601;90.12017;15.76481;2460996.94144554;12.59465806;1.3;_18.7188811553847 -24.2811121469652
2025-11-17T12:35:40.895 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7188811553847     dec_j2k = -24.2811121469652
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104613711762238;171.162351965909;_
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104613711762238;171.162351965909;_
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:40.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:40.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:40.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:40.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:40.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53039)
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:40.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:40.912 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:40.913 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:40.913 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94144551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613711762238, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992955, telescope_ra=18.7450604, telescope_dec=-24.256471, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.76481, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:34:43.996455', telescope_ra_j2k=18.7188811553847, telescope_dec_j2k=-24.2811121469652, observability=1)
2025-11-17T12:35:44.138 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:44.138 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:44.139 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:44.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:44.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:44.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:44.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:44.140 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:35:44.141 [INFO] [ThreadPoolExecutor-2793_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:35:44.141 [INFO] [ThreadPoolExecutor-2793_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Status age = 14.306941270828247s
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:35:55.220 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:35:55.221 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:35:55.222 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 17;18.7490449;-24.25647;50.108347;89.992955;50.08601;90.12017;15.7688;2460996.94161137;12.59863167;1.3;_
2025-11-17T12:35:55.222 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response 17;18.7490449;-24.25647;50.108347;89.992955;50.08601;90.12017;15.7688;2460996.94161137;12.59863167;1.3;_
2025-11-17T12:35:55.222 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:35:55.222 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:35:55.222 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:35:55.223 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:55.223 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:35:55.223 [INFO] [Thread-67715 (handle)] [driver.py] [get_status()] Telra = 18.7490449, teldec = -24.25647
2025-11-17T12:35:55.223 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7490449 -24.25647
2025-11-17T12:35:55.223 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7490449 -24.25647
2025-11-17T12:35:55.223 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7490449 -24.25647
2025-11-17T12:35:55.224 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 17;18.7490728;-24.25647;50.108347;89.992955;50.08601;90.12017;15.76883;2460996.94161139;12.59865944;1.3;_18.7228661350013 -24.281258041711
2025-11-17T12:35:55.224 [INFO] [Thread-67715 (handle)] [driver.py] [get_status()] ra_j2k = 18.7228661350013     dec_j2k = -24.281258041711
2025-11-17T12:35:55.224 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:35:55.224 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:35:55.224 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 140;0.104613551314466;171.162362694745;_
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response 140;0.104613551314466;171.162362694745;_
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:55.225 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:35:55.226 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:35:55.227 [DEBUG] [Thread-67715 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:55.227 [DEBUG] [Thread-67715 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:35:55.227 [DEBUG] [Thread-67715 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58409)
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:35:55.228 [DEBUG] [Thread-67715 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:35:55.235 [DEBUG] [Thread-67715 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:35:55.236 [DEBUG] [Thread-67715 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:35:55.236 [INFO] [Thread-67715 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94161137, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613551314466, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992955, telescope_ra=18.7490449, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.7688, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7228661350013, telescope_dec_j2k=-24.281258041711, observability=1)
2025-11-17T12:36:05.019 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:36:05.020 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:05.021 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:05.022 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:36:05.023 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:36:05.024 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:36:05.024 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.024 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:05.025 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:05.025 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:05.025 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:05.025 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Park
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:36:05.026 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:36:05.027 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 29;18.7518013;-24.25647;50.108347;89.992955;50.08601;90.12017;15.77155;2460996.94172485;12.60138056;1.3;_Park Command Successful
2025-11-17T12:36:06.027 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:36:06.027 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:36:06.027 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:36:06.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:36:06.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:36:07.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:36:07.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:36:07.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:36:07.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:36:07.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:36:08.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:36:08.028 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:36:08.029 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:36:08.029 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:36:08.029 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.801309585571289s
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:08.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:08.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:08.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7526319;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77238;2460996.94175971;12.60220889;1.3;_
2025-11-17T12:36:08.039 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.7526319;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77238;2460996.94175971;12.60220889;1.3;_
2025-11-17T12:36:08.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:08.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:08.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:08.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:08.040 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:08.040 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.7526319, teldec = -24.25647
2025-11-17T12:36:08.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7526319 -24.25647
2025-11-17T12:36:08.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7526319 -24.25647
2025-11-17T12:36:08.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7526319 -24.25647
2025-11-17T12:36:08.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7526319;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77238;2460996.94175973;12.60220889;1.3;_18.7264535703102 -24.2813902600383
2025-11-17T12:36:08.041 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.7264535703102     dec_j2k = -24.2813902600383
2025-11-17T12:36:08.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:08.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:08.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104614674448865;171.162368059163;_
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104614674448865;171.162368059163;_
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:08.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:08.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:08.044 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:08.044 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:08.044 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47331)
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:08.049 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:08.056 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:08.057 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94175971, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614674448865, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992954, telescope_ra=18.7526319, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.77238, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7264535703102, telescope_dec_j2k=-24.2813902600383, observability=1)
2025-11-17T12:36:09.029 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:36:09.030 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:36:09.030 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:09.031 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:36:09.032 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:36:09.033 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:10.033 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:10.033 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:10.033 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:10.033 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:36:10.034 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:36:10.035 [DEBUG] [ThreadPoolExecutor-2792_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:10.035 [INFO] [ThreadPoolExecutor-2792_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Status age = 2.1836791038513184s
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:10.240 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:10.241 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:10.241 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:10.241 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:10.242 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 17;18.75325;-24.25647;50.108347;89.992954;50.08601;90.12017;15.773;2460996.94178521;12.60282528;1.3;_
2025-11-17T12:36:10.243 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response 17;18.75325;-24.25647;50.108347;89.992954;50.08601;90.12017;15.773;2460996.94178521;12.60282528;1.3;_
2025-11-17T12:36:10.243 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:10.243 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:10.243 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:10.244 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:10.244 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:10.244 [INFO] [Thread-67716 (handle)] [driver.py] [get_status()] Telra = 18.75325, teldec = -24.25647
2025-11-17T12:36:10.244 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] UnCookCoordinates 18.75325 -24.25647
2025-11-17T12:36:10.244 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.75325 -24.25647
2025-11-17T12:36:10.244 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.75325 -24.25647
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 17;18.75325;-24.25647;50.108347;89.992954;50.08601;90.12017;15.773;2460996.94178524;12.60282528;1.3;_18.7270717456769 -24.2814130413591
2025-11-17T12:36:10.245 [INFO] [Thread-67716 (handle)] [driver.py] [get_status()] ra_j2k = 18.7270717456769     dec_j2k = -24.2814130413591
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 140;0.104613631538352;171.162362694745;_
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response 140;0.104613631538352;171.162362694745;_
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:10.245 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:10.246 [DEBUG] [Thread-67716 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:10.248 [DEBUG] [Thread-67716 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55823)
2025-11-17T12:36:10.248 [DEBUG] [Thread-67716 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:10.248 [DEBUG] [Thread-67716 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:10.249 [DEBUG] [Thread-67716 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:10.249 [DEBUG] [Thread-67716 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:10.249 [DEBUG] [Thread-67716 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:10.256 [DEBUG] [Thread-67716 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:10.256 [INFO] [Thread-67716 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94178521, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613631538352, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992954, telescope_ra=18.75325, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.773, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7270717456769, telescope_dec_j2k=-24.2814130413591, observability=1)
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Status age = 3.032660961151123s
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:13.289 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:13.290 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:13.291 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 17;18.754082;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77384;2460996.9418205;12.603655;1.3;_
2025-11-17T12:36:13.291 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response 17;18.754082;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77384;2460996.9418205;12.603655;1.3;_
2025-11-17T12:36:13.291 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:13.291 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:13.291 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:13.292 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:13.292 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:13.292 [INFO] [Thread-67717 (handle)] [driver.py] [get_status()] Telra = 18.754082, teldec = -24.25647
2025-11-17T12:36:13.292 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] UnCookCoordinates 18.754082 -24.25647
2025-11-17T12:36:13.292 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.754082 -24.25647
2025-11-17T12:36:13.292 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.754082 -24.25647
2025-11-17T12:36:13.293 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 17;18.754082;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77384;2460996.94182052;12.603655;1.3;_18.7279038472902 -24.2814437054158
2025-11-17T12:36:13.293 [INFO] [Thread-67717 (handle)] [driver.py] [get_status()] ra_j2k = 18.7279038472902     dec_j2k = -24.2814437054158
2025-11-17T12:36:13.293 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:13.293 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 140;0.104613872210009;171.162351965909;_
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response 140;0.104613872210009;171.162351965909;_
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:13.294 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:13.295 [DEBUG] [Thread-67717 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:13.295 [DEBUG] [Thread-67717 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:13.295 [DEBUG] [Thread-67717 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58559)
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:13.298 [DEBUG] [Thread-67717 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:13.305 [DEBUG] [Thread-67717 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:13.305 [INFO] [Thread-67717 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9418205, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613872210009, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992954, telescope_ra=18.754082, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.77384, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7279038472902, telescope_dec_j2k=-24.2814437054158, observability=1)
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6089015007019043s
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7545313;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77428;2460996.94183931;12.60410306;1.3;_
2025-11-17T12:36:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.7545313;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77428;2460996.94183931;12.60410306;1.3;_
2025-11-17T12:36:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:14.918 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.7545313, teldec = -24.25647
2025-11-17T12:36:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7545313 -24.25647
2025-11-17T12:36:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7545313 -24.25647
2025-11-17T12:36:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7545313 -24.25647
2025-11-17T12:36:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7545313;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77428;2460996.94183934;12.60410306;1.3;_18.7283532022426 -24.2814602642757
2025-11-17T12:36:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.7283532022426     dec_j2k = -24.2814602642757
2025-11-17T12:36:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104614473889151;171.162368059163;_
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104614473889151;171.162368059163;_
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37037)
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:14.933 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:14.934 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94183931, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614473889151, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992954, telescope_ra=18.7545313, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.77428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7283532022426, telescope_dec_j2k=-24.2814602642757, observability=1)
2025-11-17T12:36:25.945 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.01204228401184s
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:25.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7576211;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77737;2460996.94196698;12.60718444;1.3;_
2025-11-17T12:36:25.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.7576211;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77737;2460996.94196698;12.60718444;1.3;_
2025-11-17T12:36:25.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:25.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:25.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:25.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:25.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:25.949 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.7576211, teldec = -24.25647
2025-11-17T12:36:25.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.7576211 -24.25647
2025-11-17T12:36:25.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.7576211 -24.25647
2025-11-17T12:36:25.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7576211 -24.25647
2025-11-17T12:36:25.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7576211;-24.25647;50.108347;89.992954;50.08601;90.12017;15.77737;2460996.94196701;12.60718444;1.3;_18.7314433816421 -24.2815741293167
2025-11-17T12:36:25.950 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.7314433816421     dec_j2k = -24.2815741293167
2025-11-17T12:36:25.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:25.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:25.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10461403265778;171.162357330327;_
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10461403265778;171.162357330327;_
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:25.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:25.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:25.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:25.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:25.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:25.959 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58915)
2025-11-17T12:36:25.959 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:25.959 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:25.959 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:25.960 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:25.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:25.967 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:36:25.967 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94196698, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461403265778, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108347, telescope_az=89.992954, telescope_ra=18.7576211, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.77737, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7314433816421, telescope_dec_j2k=-24.2815741293167, observability=1)
2025-11-17T12:36:25.967 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07732582092285 seconds ago
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Status age = 5.386691570281982s
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:31.354 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:31.355 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:31.356 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 17;18.7591269;-24.25647;50.108346;89.992954;50.08601;90.12017;15.77888;2460996.94202958;12.60868611;1.3;_
2025-11-17T12:36:31.356 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response 17;18.7591269;-24.25647;50.108346;89.992954;50.08601;90.12017;15.77888;2460996.94202958;12.60868611;1.3;_
2025-11-17T12:36:31.356 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:31.356 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:31.356 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:31.357 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:31.357 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:31.357 [INFO] [Thread-67718 (handle)] [driver.py] [get_status()] Telra = 18.7591269, teldec = -24.25647
2025-11-17T12:36:31.357 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7591269 -24.25647
2025-11-17T12:36:31.357 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7591269 -24.25647
2025-11-17T12:36:31.357 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7591269 -24.25647
2025-11-17T12:36:31.358 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 17;18.7591269;-24.25647;50.108346;89.992954;50.08601;90.12017;15.77888;2460996.94202961;12.60868611;1.3;_18.7329493674877 -24.2816296152756
2025-11-17T12:36:31.358 [INFO] [Thread-67718 (handle)] [driver.py] [get_status()] ra_j2k = 18.7329493674877     dec_j2k = -24.2816296152756
2025-11-17T12:36:31.358 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:31.358 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:31.358 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 140;0.104614072769723;171.162346601491;_
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response 140;0.104614072769723;171.162346601491;_
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:31.360 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:31.361 [DEBUG] [Thread-67718 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:31.361 [DEBUG] [Thread-67718 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:31.361 [DEBUG] [Thread-67718 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57055)
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:31.363 [DEBUG] [Thread-67718 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:31.370 [DEBUG] [Thread-67718 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:31.370 [DEBUG] [Thread-67718 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:31.370 [DEBUG] [Thread-67718 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:31.370 [DEBUG] [Thread-67718 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:31.370 [DEBUG] [Thread-67718 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:31.371 [DEBUG] [Thread-67718 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:31.371 [DEBUG] [Thread-67718 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:31.371 [DEBUG] [Thread-67718 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:31.371 [DEBUG] [Thread-67718 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:31.371 [INFO] [Thread-67718 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94202958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614072769723, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992954, telescope_ra=18.7591269, telescope_dec=-24.25647, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.77888, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7329493674877, telescope_dec_j2k=-24.2816296152756, observability=1)
2025-11-17T12:36:40.974 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:36:40
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.602973222732544s
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:40.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:40.975 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:40.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:40.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:40.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:40.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.761802;-24.256469;50.108346;89.992954;50.08601;90.12017;15.78156;2460996.94214091;12.61135389;1.3;_
2025-11-17T12:36:40.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.761802;-24.256469;50.108346;89.992954;50.08601;90.12017;15.78156;2460996.94214091;12.61135389;1.3;_
2025-11-17T12:36:40.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:40.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:40.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:40.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:40.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:40.977 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.761802, teldec = -24.256469
2025-11-17T12:36:40.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.761802 -24.256469
2025-11-17T12:36:40.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.761802 -24.256469
2025-11-17T12:36:40.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.761802 -24.256469
2025-11-17T12:36:40.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.761802;-24.256469;50.108346;89.992954;50.08601;90.12017;15.78156;2460996.94214095;12.61135389;1.3;_18.7356247993754 -24.2817271786936
2025-11-17T12:36:40.978 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7356247993754     dec_j2k = -24.2817271786936
2025-11-17T12:36:40.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:40.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:40.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104614152993608;171.162351965909;_
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104614152993608;171.162351965909;_
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:40.979 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:40.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:40.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:40.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:36:40.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49001)
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:40.984 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:40.991 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:40.991 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94214091, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614152993608, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992954, telescope_ra=18.761802, telescope_dec=-24.256469, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.78156, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:35:44.138296', telescope_ra_j2k=18.7356247993754, telescope_dec_j2k=-24.2817271786936, observability=1)
2025-11-17T12:36:44.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:44.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:44.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:44.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:44.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:44.281 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:44.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:44.281 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:36:44.282 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:36:44.283 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:36:44.283 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:45.284 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:45.285 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:45.285 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:36:45.285 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:36:45.285 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:36:45.285 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:45.286 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:45.286 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:45.286 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:45.286 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:45.286 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:45.287 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:45.287 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:45.287 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:45.287 [DEBUG] [ThreadPoolExecutor-2794_0] [payload.py] [to_registers()] [0]
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56375)
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:45.292 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:45.300 [DEBUG] [ThreadPoolExecutor-2794_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Status age = 8.522614479064941s
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:36:49.514 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:36:49.515 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:36:49.516 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 17;18.7641715;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78392;2460996.94223977;12.61371694;1.3;_
2025-11-17T12:36:49.516 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response 17;18.7641715;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78392;2460996.94223977;12.61371694;1.3;_
2025-11-17T12:36:49.516 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:36:49.516 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:36:49.516 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:36:49.517 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:49.517 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:36:49.517 [INFO] [Thread-67719 (handle)] [driver.py] [get_status()] Telra = 18.7641715, teldec = -24.256469
2025-11-17T12:36:49.517 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7641715 -24.256469
2025-11-17T12:36:49.517 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7641715 -24.256469
2025-11-17T12:36:49.517 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7641715 -24.256469
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 17;18.7641715;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78392;2460996.94223979;12.61371694;1.3;_18.7379945948096 -24.281814472455
2025-11-17T12:36:49.518 [INFO] [Thread-67719 (handle)] [driver.py] [get_status()] ra_j2k = 18.7379945948096     dec_j2k = -24.281814472455
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 140;0.104613671650295;171.162357330327;_
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response 140;0.104613671650295;171.162357330327;_
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:49.518 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:36:49.519 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:36:49.520 [DEBUG] [Thread-67719 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:49.520 [DEBUG] [Thread-67719 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:36:49.520 [DEBUG] [Thread-67719 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:36:49.525 [DEBUG] [Thread-67719 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45223)
2025-11-17T12:36:49.525 [DEBUG] [Thread-67719 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:36:49.525 [DEBUG] [Thread-67719 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:36:49.525 [DEBUG] [Thread-67719 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:36:49.526 [DEBUG] [Thread-67719 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:36:49.526 [DEBUG] [Thread-67719 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:36:49.533 [DEBUG] [Thread-67719 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:36:49.533 [INFO] [Thread-67719 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94223977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104613671650295, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992953, telescope_ra=18.7641715, telescope_dec=-24.256469, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.78392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7379945948096, telescope_dec_j2k=-24.281814472455, observability=1)
2025-11-17T12:37:07.145 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 17.612594604492188s
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:07.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:07.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:07.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7691056;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78886;2460996.94244384;12.6186375;1.3;_
2025-11-17T12:37:07.148 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.7691056;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78886;2460996.94244384;12.6186375;1.3;_
2025-11-17T12:37:07.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:07.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:07.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:07.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:07.149 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:07.149 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.7691056, teldec = -24.256469
2025-11-17T12:37:07.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7691056 -24.256469
2025-11-17T12:37:07.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7691056 -24.256469
2025-11-17T12:37:07.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7691056 -24.256469
2025-11-17T12:37:07.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7691056;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78886;2460996.94244387;12.6186375;1.3;_18.7429293149335 -24.2819962177824
2025-11-17T12:37:07.150 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.7429293149335     dec_j2k = -24.2819962177824
2025-11-17T12:37:07.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:07.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:07.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104614875008579;171.162362694745;_
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104614875008579;171.162362694745;_
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:07.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:07.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:07.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:07.153 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:07.153 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:07.156 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42897)
2025-11-17T12:37:07.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:07.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:07.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:07.157 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:07.157 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:07.164 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:07.164 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94244384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614875008579, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992953, telescope_ra=18.7691056, telescope_dec=-24.256469, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.78886, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7429293149335, telescope_dec_j2k=-24.2819962177824, observability=1)
2025-11-17T12:37:07.580 [DEBUG] [Thread-67720 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:07.580 [DEBUG] [Thread-67720 (handle)] [server.py] [get_status()] Status age = 0.4156067371368408s
2025-11-17T12:37:07.580 [DEBUG] [Thread-67720 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4156067371368408
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Status age = 3.1317272186279297s
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:10.296 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:10.297 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:10.298 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 17;18.769964;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78972;2460996.9424803;12.61949361;1.3;_
2025-11-17T12:37:10.298 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response 17;18.769964;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78972;2460996.9424803;12.61949361;1.3;_
2025-11-17T12:37:10.298 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:10.298 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:10.298 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:10.299 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:10.299 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:10.299 [INFO] [Thread-67721 (handle)] [driver.py] [get_status()] Telra = 18.769964, teldec = -24.256469
2025-11-17T12:37:10.299 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] UnCookCoordinates 18.769964 -24.256469
2025-11-17T12:37:10.299 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.769964 -24.256469
2025-11-17T12:37:10.299 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.769964 -24.256469
2025-11-17T12:37:10.300 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:10.300 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 17;18.769964;-24.256469;50.108346;89.992953;50.08601;90.12017;15.78972;2460996.94248032;12.61949361;1.3;_18.7437878234985 -24.2820278324278
2025-11-17T12:37:10.300 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:10.300 [INFO] [Thread-67721 (handle)] [driver.py] [get_status()] ra_j2k = 18.7437878234985     dec_j2k = -24.2820278324278
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:10.301 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:10.301 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:10.301 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:10.301 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 140;0.104614674448865;171.162357330327;_
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response 140;0.104614674448865;171.162357330327;_
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:10.302 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:10.302 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:10.302 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:10.302 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:10.302 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:10.303 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:10.303 [DEBUG] [Thread-67721 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:37:10.304 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35435)
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:10.306 [DEBUG] [Thread-67721 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:10.313 [DEBUG] [Thread-67721 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:10.313 [DEBUG] [Thread-67721 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:10.314 [DEBUG] [Thread-67721 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:10.314 [INFO] [Thread-67721 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9424803, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614674448865, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992953, telescope_ra=18.769964, telescope_dec=-24.256469, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.78972, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7437878234985, telescope_dec_j2k=-24.2820278324278, observability=1)
2025-11-17T12:37:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.60352897644043s
2025-11-17T12:37:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7712528;-24.256469;50.108346;89.992953;50.08601;90.12017;15.79101;2460996.94253378;12.62077889;1.3;_
2025-11-17T12:37:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.7712528;-24.256469;50.108346;89.992953;50.08601;90.12017;15.79101;2460996.94253378;12.62077889;1.3;_
2025-11-17T12:37:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:14.921 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.7712528, teldec = -24.256469
2025-11-17T12:37:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7712528 -24.256469
2025-11-17T12:37:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7712528 -24.256469
2025-11-17T12:37:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7712528 -24.256469
2025-11-17T12:37:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7712528;-24.256469;50.108346;89.992953;50.08601;90.12017;15.79101;2460996.94253382;12.62077889;1.3;_18.7450767868763 -24.2820752962859
2025-11-17T12:37:14.922 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.7450767868763     dec_j2k = -24.2820752962859
2025-11-17T12:37:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104614915120522;171.162357330327;_
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104614915120522;171.162357330327;_
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52475)
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:14.927 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:14.935 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94253378, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614915120522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992953, telescope_ra=18.7712528, telescope_dec=-24.256469, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.79101, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7450767868763, telescope_dec_j2k=-24.2820752962859, observability=1)
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Status age = 10.711647510528564s
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:25.647 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:25.648 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 17;18.7742599;-24.256468;50.108346;89.992952;50.08601;90.12017;15.79401;2460996.94265796;12.62377778;1.3;_
2025-11-17T12:37:25.649 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response 17;18.7742599;-24.256468;50.108346;89.992952;50.08601;90.12017;15.79401;2460996.94265796;12.62377778;1.3;_
2025-11-17T12:37:25.649 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:25.649 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:25.649 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:25.650 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:25.650 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:25.650 [INFO] [Thread-67722 (handle)] [driver.py] [get_status()] Telra = 18.7742599, teldec = -24.256468
2025-11-17T12:37:25.650 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7742599 -24.256468
2025-11-17T12:37:25.650 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7742599 -24.256468
2025-11-17T12:37:25.650 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7742599 -24.256468
2025-11-17T12:37:25.651 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 17;18.7742599;-24.256468;50.108346;89.992952;50.08601;90.12017;15.79401;2460996.942658;12.62377778;1.3;_18.7480842700423 -24.2821850308891
2025-11-17T12:37:25.651 [INFO] [Thread-67722 (handle)] [driver.py] [get_status()] ra_j2k = 18.7480842700423     dec_j2k = -24.2821850308891
2025-11-17T12:37:25.651 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:25.651 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:25.651 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 140;0.104615075568293;171.162351965909;_
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response 140;0.104615075568293;171.162351965909;_
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:25.652 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:25.653 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:25.654 [DEBUG] [Thread-67722 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:25.654 [DEBUG] [Thread-67722 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:25.654 [DEBUG] [Thread-67722 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:25.658 [DEBUG] [Thread-67722 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33823)
2025-11-17T12:37:25.659 [DEBUG] [Thread-67722 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:25.659 [DEBUG] [Thread-67722 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:25.659 [DEBUG] [Thread-67722 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:25.659 [DEBUG] [Thread-67722 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:25.659 [DEBUG] [Thread-67722 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:25.666 [DEBUG] [Thread-67722 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:25.666 [INFO] [Thread-67722 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94265796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615075568293, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108346, telescope_az=89.992952, telescope_ra=18.7742599, telescope_dec=-24.256468, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.79401, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7480842700423, telescope_dec_j2k=-24.2821850308891, observability=1)
2025-11-17T12:37:26.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:37:26.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3614966869354248s
2025-11-17T12:37:26.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3614966869354248
2025-11-17T12:37:26.028 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05419921875 seconds ago
2025-11-17T12:37:41.052 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:37:41
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.38590693473816s
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:41.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:41.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:41.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7785255;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79828;2460996.94283627;12.62803167;1.3;_
2025-11-17T12:37:41.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.7785255;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79828;2460996.94283627;12.62803167;1.3;_
2025-11-17T12:37:41.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:41.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:41.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:41.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:41.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:41.055 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.7785255, teldec = -24.256468
2025-11-17T12:37:41.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7785255 -24.256468
2025-11-17T12:37:41.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7785255 -24.256468
2025-11-17T12:37:41.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7785255 -24.256468
2025-11-17T12:37:41.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7785255;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79828;2460996.9428363;12.62803167;1.3;_18.7523504175305 -24.2823420828472
2025-11-17T12:37:41.056 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7523504175305     dec_j2k = -24.2823420828472
2025-11-17T12:37:41.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:41.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:41.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:41.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104614554113036;171.162362694745;_
2025-11-17T12:37:41.057 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104614554113036;171.162362694745;_
2025-11-17T12:37:41.057 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:41.058 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:41.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:41.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:37:41.059 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39053)
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:41.066 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:41.074 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:41.074 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94283627, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614554113036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992952, telescope_ra=18.7785255, telescope_dec=-24.256468, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.79828, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7523504175305, telescope_dec_j2k=-24.2823420828472, observability=1)
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Status age = 2.7439379692077637s
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:43.818 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:37:43.819 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:37:43.820 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 17;18.7793007;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79905;2460996.94286828;12.62880472;1.3;_
2025-11-17T12:37:43.820 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response 17;18.7793007;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79905;2460996.94286828;12.62880472;1.3;_
2025-11-17T12:37:43.820 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:37:43.820 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:37:43.820 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:37:43.821 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:43.821 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:37:43.821 [INFO] [Thread-67723 (handle)] [driver.py] [get_status()] Telra = 18.7793007, teldec = -24.256468
2025-11-17T12:37:43.821 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7793007 -24.256468
2025-11-17T12:37:43.821 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7793007 -24.256468
2025-11-17T12:37:43.821 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7793007 -24.256468
2025-11-17T12:37:43.822 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 17;18.7793007;-24.256468;50.108345;89.992952;50.08601;90.12017;15.79905;2460996.94286831;12.62880472;1.3;_18.7531257175615 -24.2823706210687
2025-11-17T12:37:43.822 [INFO] [Thread-67723 (handle)] [driver.py] [get_status()] ra_j2k = 18.7531257175615     dec_j2k = -24.2823706210687
2025-11-17T12:37:43.822 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:37:43.822 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:37:43.822 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 140;0.104614875008579;171.162357330327;_
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response 140;0.104614875008579;171.162357330327;_
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:37:43.823 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:37:43.824 [DEBUG] [Thread-67723 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:43.824 [DEBUG] [Thread-67723 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:37:43.824 [DEBUG] [Thread-67723 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35679)
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:37:43.829 [DEBUG] [Thread-67723 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:37:43.836 [DEBUG] [Thread-67723 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:37:43.837 [INFO] [Thread-67723 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94286828, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614875008579, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992952, telescope_ra=18.7793007, telescope_dec=-24.256468, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.79905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:36:44.279761', telescope_ra_j2k=18.7531257175615, telescope_dec_j2k=-24.2823706210687, observability=1)
2025-11-17T12:37:44.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:44.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:44.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:44.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:44.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:44.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:44.423 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:37:44.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:37:44.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:37:44.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:37:44.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:37:44.424 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:37:44.424 [INFO] [ThreadPoolExecutor-2795_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:37:44.424 [INFO] [ThreadPoolExecutor-2795_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:38:01.899 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Status age = 18.06348204612732s
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:01.900 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:01.904 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:01.905 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 17;18.7843458;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8041;2460996.94307759;12.63383611;1.3;_
2025-11-17T12:38:01.905 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response 17;18.7843458;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8041;2460996.94307759;12.63383611;1.3;_
2025-11-17T12:38:01.905 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:01.905 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:01.905 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:01.906 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:01.906 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:01.906 [INFO] [Thread-67724 (handle)] [driver.py] [get_status()] Telra = 18.7843458, teldec = -24.256468
2025-11-17T12:38:01.906 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7843458 -24.256468
2025-11-17T12:38:01.906 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7843458 -24.256468
2025-11-17T12:38:01.906 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7843458 -24.256468
2025-11-17T12:38:01.907 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 17;18.7843458;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8041;2460996.94307763;12.63383611;1.3;_18.7581714725916 -24.2825563265785
2025-11-17T12:38:01.907 [INFO] [Thread-67724 (handle)] [driver.py] [get_status()] ra_j2k = 18.7581714725916     dec_j2k = -24.2825563265785
2025-11-17T12:38:01.908 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:01.908 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:01.908 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:01.908 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 140;0.104615476687721;171.162351965909;_
2025-11-17T12:38:01.909 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response 140;0.104615476687721;171.162351965909;_
2025-11-17T12:38:01.909 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:01.909 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:01.909 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:01.909 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:01.911 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:01.915 [DEBUG] [Thread-67724 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:01.916 [DEBUG] [Thread-67724 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:01.916 [DEBUG] [Thread-67724 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35673)
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:01.919 [DEBUG] [Thread-67724 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:01.926 [DEBUG] [Thread-67724 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:01.927 [DEBUG] [Thread-67724 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:01.927 [INFO] [Thread-67724 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94307759, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615476687721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992951, telescope_ra=18.7843458, telescope_dec=-24.256468, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.8041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7581714725916, telescope_dec_j2k=-24.2825563265785, observability=1)
2025-11-17T12:38:05.304 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.304 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.304 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:05.304 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:05.304 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:38:05.305 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:05.306 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:05.307 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:38:05.308 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:38:05.309 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.309 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:05.309 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:05.309 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:05.310 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:05.310 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:05.310 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:05.310 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:05.310 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:05.311 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Park
2025-11-17T12:38:05.311 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:38:05.311 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:38:05.312 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 29;18.7852884;-24.256468;50.108345;89.992951;50.08601;90.12017;15.80504;2460996.94311704;12.63477611;1.3;_Park Command Successful
2025-11-17T12:38:06.253 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:06.253 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.3262550830841064s
2025-11-17T12:38:06.253 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:06.254 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:06.254 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:06.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:06.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:06.254 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:06.255 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:06.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7855427;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8053;2460996.94312796;12.63502972;1.3;_
2025-11-17T12:38:06.256 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.7855427;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8053;2460996.94312796;12.63502972;1.3;_
2025-11-17T12:38:06.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:06.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:06.256 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:06.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:06.257 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:06.257 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.7855427, teldec = -24.256468
2025-11-17T12:38:06.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7855427 -24.256468
2025-11-17T12:38:06.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7855427 -24.256468
2025-11-17T12:38:06.257 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7855427 -24.256468
2025-11-17T12:38:06.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.7855427;-24.256468;50.108345;89.992951;50.08601;90.12017;15.8053;2460996.94312799;12.63502972;1.3;_18.7593685290125 -24.2826003770244
2025-11-17T12:38:06.258 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.7593685290125     dec_j2k = -24.2826003770244
2025-11-17T12:38:06.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:06.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:06.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104615236016064;171.162357330327;_
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104615236016064;171.162357330327;_
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:06.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:06.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:06.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:06.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:06.261 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:06.265 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38765)
2025-11-17T12:38:06.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:06.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:06.265 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:06.265 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:06.266 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:06.273 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:06.273 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94312796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615236016064, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992951, telescope_ra=18.7855427, telescope_dec=-24.256468, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.8053, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7593685290125, telescope_dec_j2k=-24.2826003770244, observability=1)
2025-11-17T12:38:06.312 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:38:06.312 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:38:06.312 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:38:06.313 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:38:06.313 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:38:07.313 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:38:07.313 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:38:07.313 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:38:07.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:38:07.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:38:08.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:38:08.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:38:08.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:38:08.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:38:08.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:38:09.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:38:09.314 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:09.315 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:38:09.316 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:38:09.317 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:10.317 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:10.317 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:10.317 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:10.317 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:10.317 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:38:10.318 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:38:10.319 [DEBUG] [ThreadPoolExecutor-2794_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:10.319 [INFO] [ThreadPoolExecutor-2794_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:38:10.346 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:10.346 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Status age = 4.073319673538208s
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:10.347 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:10.348 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 17;18.7866858;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80644;2460996.94317532;12.63616972;1.3;_
2025-11-17T12:38:10.348 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response 17;18.7866858;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80644;2460996.94317532;12.63616972;1.3;_
2025-11-17T12:38:10.348 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:10.348 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:10.348 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:10.349 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:10.349 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:10.349 [INFO] [Thread-67725 (handle)] [driver.py] [get_status()] Telra = 18.7866858, teldec = -24.256467
2025-11-17T12:38:10.349 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7866858 -24.256467
2025-11-17T12:38:10.349 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7866858 -24.256467
2025-11-17T12:38:10.349 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7866858 -24.256467
2025-11-17T12:38:10.350 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 17;18.7866858;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80644;2460996.94317535;12.63616972;1.3;_18.760511778965 -24.282641445221
2025-11-17T12:38:10.350 [INFO] [Thread-67725 (handle)] [driver.py] [get_status()] ra_j2k = 18.760511778965     dec_j2k = -24.282641445221
2025-11-17T12:38:10.350 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:10.350 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:10.350 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 140;0.104615356351893;171.162362694745;_
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response 140;0.104615356351893;171.162362694745;_
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:10.351 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:10.352 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:10.353 [DEBUG] [Thread-67725 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:10.353 [DEBUG] [Thread-67725 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:10.353 [DEBUG] [Thread-67725 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:10.359 [DEBUG] [Thread-67725 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33985)
2025-11-17T12:38:10.359 [DEBUG] [Thread-67725 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:10.360 [DEBUG] [Thread-67725 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:10.360 [DEBUG] [Thread-67725 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:10.360 [DEBUG] [Thread-67725 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:10.360 [DEBUG] [Thread-67725 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:10.367 [DEBUG] [Thread-67725 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:10.367 [INFO] [Thread-67725 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94317532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615356351893, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992951, telescope_ra=18.7866858, telescope_dec=-24.256467, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.80644, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.760511778965, telescope_dec_j2k=-24.282641445221, observability=1)
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.569901466369629s
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7879646;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80772;2460996.94322846;12.637445;1.3;_
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.7879646;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80772;2460996.94322846;12.637445;1.3;_
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:14.940 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.7879646, teldec = -24.256467
2025-11-17T12:38:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7879646 -24.256467
2025-11-17T12:38:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7879646 -24.256467
2025-11-17T12:38:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7879646 -24.256467
2025-11-17T12:38:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.7879646;-24.256467;50.108345;89.992951;50.08601;90.12017;15.80772;2460996.94322848;12.637445;1.3;_18.7617907469219 -24.2826885046998
2025-11-17T12:38:14.941 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.7617907469219     dec_j2k = -24.2826885046998
2025-11-17T12:38:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104614794784693;171.162357330327;_
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104614794784693;171.162357330327;_
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:38:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33697)
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:14.954 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:14.955 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94322846, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614794784693, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992951, telescope_ra=18.7879646, telescope_dec=-24.256467, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.80772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7617907469219, telescope_dec_j2k=-24.2826885046998, observability=1)
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Status age = 5.065068483352661s
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:20.020 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:20.021 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:20.022 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 17;18.7893848;-24.256474;50.108345;89.992962;50.08601;90.12018;15.80914;2460996.94328729;12.63886111;1.3;_
2025-11-17T12:38:20.022 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response 17;18.7893848;-24.256474;50.108345;89.992962;50.08601;90.12018;15.80914;2460996.94328729;12.63886111;1.3;_
2025-11-17T12:38:20.022 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:20.022 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:20.022 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:20.023 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:20.023 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:20.023 [INFO] [Thread-67726 (handle)] [driver.py] [get_status()] Telra = 18.7893848, teldec = -24.256474
2025-11-17T12:38:20.023 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7893848 -24.256474
2025-11-17T12:38:20.023 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7893848 -24.256474
2025-11-17T12:38:20.023 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7893848 -24.256474
2025-11-17T12:38:20.024 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 17;18.7893848;-24.256474;50.108345;89.992962;50.08601;90.12018;15.80914;2460996.94328732;12.63886111;1.3;_18.7632111325967 -24.2827477638541
2025-11-17T12:38:20.024 [INFO] [Thread-67726 (handle)] [driver.py] [get_status()] ra_j2k = 18.7632111325967     dec_j2k = -24.2827477638541
2025-11-17T12:38:20.024 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:20.024 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:20.024 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 140;0.104614554113036;171.162357330327;_
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response 140;0.104614554113036;171.162357330327;_
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:20.025 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:20.026 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:20.027 [DEBUG] [Thread-67726 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:20.027 [DEBUG] [Thread-67726 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:20.027 [DEBUG] [Thread-67726 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41761)
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:20.031 [DEBUG] [Thread-67726 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:20.039 [DEBUG] [Thread-67726 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:20.039 [INFO] [Thread-67726 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94328729, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614554113036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108345, telescope_az=89.992962, telescope_ra=18.7893848, telescope_dec=-24.256474, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.80914, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7632111325967, telescope_dec_j2k=-24.2827477638541, observability=1)
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.048832178115845s
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:26.088 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:26.089 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:26.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7910843;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81084;2460996.94335752;12.64055611;1.3;_
2025-11-17T12:38:26.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.7910843;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81084;2460996.94335752;12.64055611;1.3;_
2025-11-17T12:38:26.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:26.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:26.090 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:26.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:26.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:26.091 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.7910843, teldec = -24.256467
2025-11-17T12:38:26.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.7910843 -24.256467
2025-11-17T12:38:26.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.7910843 -24.256467
2025-11-17T12:38:26.091 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7910843 -24.256467
2025-11-17T12:38:26.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.7910843;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81084;2460996.94335755;12.64055611;1.3;_18.7649108585375 -24.2828032970261
2025-11-17T12:38:26.092 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.7649108585375     dec_j2k = -24.2828032970261
2025-11-17T12:38:26.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:26.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:26.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104614634336922;171.162357330327;_
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104614634336922;171.162357330327;_
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:26.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:26.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:26.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:26.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:38:26.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:38:26.096 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48167)
2025-11-17T12:38:26.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:26.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:26.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:26.097 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:26.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:26.104 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:38:26.105 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94335752, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614634336922, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.992951, telescope_ra=18.7910843, telescope_dec=-24.256467, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.81084, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7649108585375, telescope_dec_j2k=-24.2828032970261, observability=1)
2025-11-17T12:38:26.105 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05275082588196 seconds ago
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Status age = 11.988206624984741s
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:38.093 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:38.094 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:38.095 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 17;18.7944354;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81419;2460996.94349647;12.64389806;1.3;_
2025-11-17T12:38:38.095 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response 17;18.7944354;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81419;2460996.94349647;12.64389806;1.3;_
2025-11-17T12:38:38.095 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:38.095 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:38.095 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:38.096 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:38.096 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:38.096 [INFO] [Thread-67727 (handle)] [driver.py] [get_status()] Telra = 18.7944354, teldec = -24.256467
2025-11-17T12:38:38.096 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7944354 -24.256467
2025-11-17T12:38:38.096 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7944354 -24.256467
2025-11-17T12:38:38.096 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7944354 -24.256467
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 17;18.7944354;-24.256467;50.108344;89.992951;50.08601;90.12017;15.81419;2460996.94349649;12.64389806;1.3;_18.7682624036486 -24.2829265852925
2025-11-17T12:38:38.097 [INFO] [Thread-67727 (handle)] [driver.py] [get_status()] ra_j2k = 18.7682624036486     dec_j2k = -24.2829265852925
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 140;0.104615356351893;171.162357330327;_
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response 140;0.104615356351893;171.162357330327;_
2025-11-17T12:38:38.097 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:38.098 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:38.099 [DEBUG] [Thread-67727 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:38.099 [DEBUG] [Thread-67727 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:38.099 [DEBUG] [Thread-67727 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41625)
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:38.100 [DEBUG] [Thread-67727 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:38.107 [DEBUG] [Thread-67727 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:38.107 [INFO] [Thread-67727 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94349647, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615356351893, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.992951, telescope_ra=18.7944354, telescope_dec=-24.256467, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.81419, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7682624036486, telescope_dec_j2k=-24.2829265852925, observability=1)
2025-11-17T12:38:41.135 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:38:41
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.0280442237854004s
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:41.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7952662;-24.256467;50.108344;89.99295;50.08601;90.12017;15.81502;2460996.94353167;12.64472667;1.3;_
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.7952662;-24.256467;50.108344;89.99295;50.08601;90.12017;15.81502;2460996.94353167;12.64472667;1.3;_
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:41.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:41.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:41.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:41.137 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.7952662, teldec = -24.256467
2025-11-17T12:38:41.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7952662 -24.256467
2025-11-17T12:38:41.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7952662 -24.256467
2025-11-17T12:38:41.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7952662 -24.256467
2025-11-17T12:38:41.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.7952662;-24.256467;50.108344;89.99295;50.08601;90.12017;15.81502;2460996.94353169;12.64472667;1.3;_18.7690933144748 -24.2829571477485
2025-11-17T12:38:41.138 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7690933144748     dec_j2k = -24.2829571477485
2025-11-17T12:38:41.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:41.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:41.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104614915120522;171.162357330327;_
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104614915120522;171.162357330327;_
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:41.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:41.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:41.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:41.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:41.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49705)
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:41.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:41.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:41.154 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:41.154 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:41.154 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94353167, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104614915120522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.99295, telescope_ra=18.7952662, telescope_dec=-24.256467, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.81502, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:37:44.421310', telescope_ra_j2k=18.7690933144748, telescope_dec_j2k=-24.2829571477485, observability=1)
2025-11-17T12:38:44.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:44.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:44.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:44.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:44.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:44.565 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:44.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:44.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:44.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:44.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:44.566 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:38:44.566 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:44.566 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:44.566 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:44.566 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:44.566 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:38:44.567 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:38:44.568 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:45.568 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:45.568 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:45.568 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:45.568 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:45.568 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:38:45.569 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:45.570 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:45.571 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:45.571 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:45.571 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:45.571 [DEBUG] [ThreadPoolExecutor-2796_0] [payload.py] [to_registers()] [0]
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36175)
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:45.575 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:45.582 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:45.582 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:38:45.582 [DEBUG] [ThreadPoolExecutor-2796_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:38:45.582 [DEBUG] [ThreadPoolExecutor-2796_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:38:45.583 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:45.583 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:45.583 [DEBUG] [ThreadPoolExecutor-2796_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Status age = 14.997348308563232s
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:38:56.151 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:38:56.152 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:38:56.152 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:38:56.153 [DEBUG] [Thread-67728 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:38:56.153 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:38:56.153 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:38:56.153 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:38:56.153 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:38:56.154 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 17;18.7994491;-24.256466;50.108344;89.99295;50.08601;90.12017;15.8192;2460996.94370547;12.64889806;1.3;_
2025-11-17T12:38:56.154 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response 17;18.7994491;-24.256466;50.108344;89.99295;50.08601;90.12017;15.8192;2460996.94370547;12.64889806;1.3;_
2025-11-17T12:38:56.154 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:38:56.154 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:38:56.154 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:38:56.155 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:56.155 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:38:56.155 [INFO] [Thread-67728 (handle)] [driver.py] [get_status()] Telra = 18.7994491, teldec = -24.256466
2025-11-17T12:38:56.155 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] UnCookCoordinates 18.7994491 -24.256466
2025-11-17T12:38:56.155 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.7994491 -24.256466
2025-11-17T12:38:56.155 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.7994491 -24.256466
2025-11-17T12:38:56.156 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 17;18.7994491;-24.256466;50.108344;89.99295;50.08601;90.12017;15.8192;2460996.94370551;12.64889806;1.3;_18.7732767755242 -24.2831100050729
2025-11-17T12:38:56.156 [INFO] [Thread-67728 (handle)] [driver.py] [get_status()] ra_j2k = 18.7732767755242     dec_j2k = -24.2831100050729
2025-11-17T12:38:56.156 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:38:56.156 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:38:56.156 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 140;0.104615516799664;171.162357330327;_
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response 140;0.104615516799664;171.162357330327;_
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:56.157 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:38:56.158 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:38:56.159 [DEBUG] [Thread-67728 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:56.159 [DEBUG] [Thread-67728 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:38:56.159 [DEBUG] [Thread-67728 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35837)
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:38:56.160 [DEBUG] [Thread-67728 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:38:56.168 [DEBUG] [Thread-67728 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:38:56.168 [INFO] [Thread-67728 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94370547, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615516799664, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.99295, telescope_ra=18.7994491, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.8192, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7732767755242, telescope_dec_j2k=-24.2831100050729, observability=1)
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.199812173843384s
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:05.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:05.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:05.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8020347;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82179;2460996.94381215;12.65147667;1.3;_
2025-11-17T12:39:05.370 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.8020347;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82179;2460996.94381215;12.65147667;1.3;_
2025-11-17T12:39:05.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:05.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:05.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:05.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:05.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:05.371 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.8020347, teldec = -24.256466
2025-11-17T12:39:05.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8020347 -24.256466
2025-11-17T12:39:05.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8020347 -24.256466
2025-11-17T12:39:05.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8020347 -24.256466
2025-11-17T12:39:05.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8020347;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82179;2460996.94381218;12.65147667;1.3;_18.7758627245991 -24.283205094521
2025-11-17T12:39:05.372 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.7758627245991     dec_j2k = -24.283205094521
2025-11-17T12:39:05.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104615396463835;171.162357330327;_
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104615396463835;171.162357330327;_
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:05.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:05.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:05.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:05.375 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:05.375 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57103)
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:05.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:05.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:05.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:05.384 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:05.384 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:05.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:05.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:05.385 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:05.385 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:05.385 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:05.385 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94381215, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615396463835, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.99295, telescope_ra=18.8020347, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.82179, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7758627245991, telescope_dec_j2k=-24.283205094521, observability=1)
2025-11-17T12:39:10.395 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:10.395 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Status age = 5.010536193847656s
2025-11-17T12:39:10.395 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:10.395 [DEBUG] [Thread-67729 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:10.395 [DEBUG] [Thread-67729 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:10.396 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:10.396 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:10.396 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:10.397 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:10.398 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 17;18.8034074;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82316;2460996.94387035;12.65284556;1.3;_
2025-11-17T12:39:10.398 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response 17;18.8034074;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82316;2460996.94387035;12.65284556;1.3;_
2025-11-17T12:39:10.398 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:10.398 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:10.398 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:10.399 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:10.399 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:10.399 [INFO] [Thread-67729 (handle)] [driver.py] [get_status()] Telra = 18.8034074, teldec = -24.256466
2025-11-17T12:39:10.399 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8034074 -24.256466
2025-11-17T12:39:10.399 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8034074 -24.256466
2025-11-17T12:39:10.399 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8034074 -24.256466
2025-11-17T12:39:10.400 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 17;18.8034074;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82319;2460996.94387037;12.65287361;1.3;_18.7772356106662 -24.2832555729483
2025-11-17T12:39:10.400 [INFO] [Thread-67729 (handle)] [driver.py] [get_status()] ra_j2k = 18.7772356106662     dec_j2k = -24.2832555729483
2025-11-17T12:39:10.400 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:10.400 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:10.400 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 140;0.10461531623995;171.162357330327;_
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response 140;0.10461531623995;171.162357330327;_
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:10.401 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:10.402 [DEBUG] [Thread-67729 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46533)
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:10.407 [DEBUG] [Thread-67729 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:10.415 [DEBUG] [Thread-67729 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:10.415 [INFO] [Thread-67729 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94387035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461531623995, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.99295, telescope_ra=18.8034074, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.82316, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7772356106662, telescope_dec_j2k=-24.2832555729483, observability=1)
2025-11-17T12:39:10.583 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:10.583 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:10.583 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:10.583 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:10.583 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:10.584 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:39:10.585 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:39:10.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Status age = 3.8346352577209473s
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:14.250 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 17;18.8044903;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82424;2460996.94391494;12.65392556;1.3;_
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response 17;18.8044903;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82424;2460996.94391494;12.65392556;1.3;_
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:14.251 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:14.252 [INFO] [Thread-67730 (handle)] [driver.py] [get_status()] Telra = 18.8044903, teldec = -24.256466
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8044903 -24.256466
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8044903 -24.256466
2025-11-17T12:39:14.252 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8044903 -24.256466
2025-11-17T12:39:14.253 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 17;18.8044903;-24.256466;50.108344;89.99295;50.08601;90.12017;15.82424;2460996.94391497;12.65392556;1.3;_18.7783186578148 -24.2832953922057
2025-11-17T12:39:14.253 [INFO] [Thread-67730 (handle)] [driver.py] [get_status()] ra_j2k = 18.7783186578148     dec_j2k = -24.2832953922057
2025-11-17T12:39:14.253 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:14.253 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:14.253 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 140;0.104615155792179;171.162362694745;_
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response 140;0.104615155792179;171.162362694745;_
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:14.254 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:14.255 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:14.256 [DEBUG] [Thread-67730 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:14.256 [DEBUG] [Thread-67730 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:14.256 [DEBUG] [Thread-67730 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35187)
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:14.260 [DEBUG] [Thread-67730 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:14.267 [DEBUG] [Thread-67730 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:14.268 [DEBUG] [Thread-67730 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:14.268 [DEBUG] [Thread-67730 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:14.268 [DEBUG] [Thread-67730 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:14.268 [INFO] [Thread-67730 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94391494, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615155792179, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108344, telescope_az=89.99295, telescope_ra=18.8044903, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.82424, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7783186578148, telescope_dec_j2k=-24.2832953922057, observability=1)
2025-11-17T12:39:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:14.946 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6777591705322266s
2025-11-17T12:39:14.946 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6777591705322266
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.89702320098877s
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:26.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:26.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:26.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8078083;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82756;2460996.94405289;12.65723444;1.3;_
2025-11-17T12:39:26.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8078083;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82756;2460996.94405289;12.65723444;1.3;_
2025-11-17T12:39:26.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:26.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:26.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:26.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:26.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:26.171 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8078083, teldec = -24.256466
2025-11-17T12:39:26.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8078083 -24.256466
2025-11-17T12:39:26.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8078083 -24.256466
2025-11-17T12:39:26.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8078083 -24.256466
2025-11-17T12:39:26.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8078083;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82756;2460996.94405292;12.65723444;1.3;_18.7816371106726 -24.2834173853912
2025-11-17T12:39:26.172 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.7816371106726     dec_j2k = -24.2834173853912
2025-11-17T12:39:26.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:26.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:26.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104615476687721;171.162357330327;_
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104615476687721;171.162357330327;_
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:26.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:26.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:26.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:26.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49063)
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:26.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:26.188 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:39:26.188 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94405289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615476687721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992949, telescope_ra=18.8078083, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.82756, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7816371106726, telescope_dec_j2k=-24.2834173853912, observability=1)
2025-11-17T12:39:26.188 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.053282737731934 seconds ago
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Status age = 6.126843214035034s
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:32.315 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:32.316 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 17;18.8095383;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82929;2460996.94412403;12.65895972;1.3;_
2025-11-17T12:39:32.317 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response 17;18.8095383;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82929;2460996.94412403;12.65895972;1.3;_
2025-11-17T12:39:32.317 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:32.317 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:32.317 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:32.318 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:32.318 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:32.318 [INFO] [Thread-67731 (handle)] [driver.py] [get_status()] Telra = 18.8095383, teldec = -24.256466
2025-11-17T12:39:32.318 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8095383 -24.256466
2025-11-17T12:39:32.318 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8095383 -24.256466
2025-11-17T12:39:32.318 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8095383 -24.256466
2025-11-17T12:39:32.319 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 17;18.8095383;-24.256466;50.108343;89.992949;50.08601;90.12017;15.82929;2460996.94412406;12.65895972;1.3;_18.7833673479852 -24.2834809847613
2025-11-17T12:39:32.319 [INFO] [Thread-67731 (handle)] [driver.py] [get_status()] ra_j2k = 18.7833673479852     dec_j2k = -24.2834809847613
2025-11-17T12:39:32.319 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:32.319 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:32.319 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 140;0.104616118478806;171.162357330327;_
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response 140;0.104616118478806;171.162357330327;_
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:32.320 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:32.321 [DEBUG] [Thread-67731 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:32.328 [DEBUG] [Thread-67731 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51027)
2025-11-17T12:39:32.328 [DEBUG] [Thread-67731 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:32.328 [DEBUG] [Thread-67731 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:32.329 [DEBUG] [Thread-67731 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:32.329 [DEBUG] [Thread-67731 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:32.329 [DEBUG] [Thread-67731 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:32.335 [DEBUG] [Thread-67731 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:32.335 [DEBUG] [Thread-67731 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:32.335 [DEBUG] [Thread-67731 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:32.335 [DEBUG] [Thread-67731 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:32.336 [DEBUG] [Thread-67731 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:32.336 [DEBUG] [Thread-67731 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:32.336 [DEBUG] [Thread-67731 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:32.336 [DEBUG] [Thread-67731 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:32.336 [DEBUG] [Thread-67731 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:32.336 [INFO] [Thread-67731 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94412403, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616118478806, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992949, telescope_ra=18.8095383, telescope_dec=-24.256466, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.82929, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7833673479852, telescope_dec_j2k=-24.2834809847613, observability=1)
2025-11-17T12:39:41.214 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:39:41
2025-11-17T12:39:41.214 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.878721237182617s
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:41.215 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8120165;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83177;2460996.94422704;12.66143111;1.3;_
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8120165;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83177;2460996.94422704;12.66143111;1.3;_
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:41.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:41.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:41.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:41.218 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8120165, teldec = -24.256465
2025-11-17T12:39:41.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8120165 -24.256465
2025-11-17T12:39:41.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8120165 -24.256465
2025-11-17T12:39:41.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8120165 -24.256465
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8120165;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83177;2460996.94422707;12.66143111;1.3;_18.7858458895534 -24.2835710808042
2025-11-17T12:39:41.219 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.7858458895534     dec_j2k = -24.2835710808042
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104615396463835;171.162346601491;_
2025-11-17T12:39:41.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104615396463835;171.162346601491;_
2025-11-17T12:39:41.220 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:41.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:41.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:41.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:41.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:41.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:41.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:41.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:41.225 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51039)
2025-11-17T12:39:41.226 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:41.226 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:41.226 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:41.226 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:41.226 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:41.234 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:41.234 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94422704, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615396463835, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992949, telescope_ra=18.8120165, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.83177, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:38:44.563559', telescope_ra_j2k=18.7858458895534, telescope_dec_j2k=-24.2835710808042, observability=1)
2025-11-17T12:39:44.706 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:44.706 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:44.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:44.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:44.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:44.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:44.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:44.708 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:44.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:44.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:44.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:44.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:44.709 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:39:44.709 [INFO] [ThreadPoolExecutor-2797_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:39:44.709 [INFO] [ThreadPoolExecutor-2797_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Status age = 9.146839618682861s
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:39:50.381 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:39:50.382 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:39:50.383 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:39:50.383 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 17;18.8145551;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83431;2460996.94433314;12.66396278;1.3;_
2025-11-17T12:39:50.383 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response 17;18.8145551;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83431;2460996.94433314;12.66396278;1.3;_
2025-11-17T12:39:50.383 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:39:50.383 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:39:50.384 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:39:50.384 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:50.384 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:39:50.385 [INFO] [Thread-67732 (handle)] [driver.py] [get_status()] Telra = 18.8145551, teldec = -24.256465
2025-11-17T12:39:50.385 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8145551 -24.256465
2025-11-17T12:39:50.385 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8145551 -24.256465
2025-11-17T12:39:50.385 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8145551 -24.256465
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 17;18.8145551;-24.256465;50.108343;89.992949;50.08601;90.12017;15.83431;2460996.94433317;12.66396278;1.3;_18.788384840985 -24.2836643857264
2025-11-17T12:39:50.386 [INFO] [Thread-67732 (handle)] [driver.py] [get_status()] ra_j2k = 18.788384840985     dec_j2k = -24.2836643857264
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 140;0.104615717359378;171.162362694745;_
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response 140;0.104615717359378;171.162362694745;_
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:50.386 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:50.387 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:39:50.388 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:39:50.389 [DEBUG] [Thread-67732 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:50.389 [DEBUG] [Thread-67732 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:39:50.389 [DEBUG] [Thread-67732 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45865)
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:39:50.394 [DEBUG] [Thread-67732 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:39:50.401 [DEBUG] [Thread-67732 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:39:50.402 [INFO] [Thread-67732 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94433314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615717359378, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992949, telescope_ra=18.8145551, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.83431, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.788384840985, telescope_dec_j2k=-24.2836643857264, observability=1)
2025-11-17T12:40:04.477 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:04.477 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.075955629348755s
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:04.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8184827;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83824;2460996.94449627;12.66787972;1.3;_
2025-11-17T12:40:04.479 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.8184827;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83824;2460996.94449627;12.66787972;1.3;_
2025-11-17T12:40:04.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:04.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:04.479 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:04.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:04.480 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:04.480 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.8184827, teldec = -24.256465
2025-11-17T12:40:04.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8184827 -24.256465
2025-11-17T12:40:04.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8184827 -24.256465
2025-11-17T12:40:04.480 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8184827 -24.256465
2025-11-17T12:40:04.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8184827;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83824;2460996.94449631;12.66787972;1.3;_18.7923129881723 -24.2838087200224
2025-11-17T12:40:04.481 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.7923129881723     dec_j2k = -24.2838087200224
2025-11-17T12:40:04.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:04.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:04.481 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104616198702692;171.162362694745;_
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104616198702692;171.162362694745;_
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:04.482 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:04.483 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:04.483 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:04.483 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:04.483 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:04.483 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49143)
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:04.487 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:04.495 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:04.495 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94449627, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616198702692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992948, telescope_ra=18.8184827, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.83824, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.7923129881723, telescope_dec_j2k=-24.2838087200224, observability=1)
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.586 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:40:05.587 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:05.588 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:05.589 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:40:05.590 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:05.591 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Park
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:40:05.592 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:40:05.593 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 29;18.8188097;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83856;2460996.94450918;12.66820583;1.3;_Park Command Successful
2025-11-17T12:40:06.593 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:40:06.593 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:40:06.593 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:40:06.594 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:40:06.594 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:40:07.594 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:40:07.594 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:40:07.595 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:40:07.595 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:40:07.595 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:40:08.542 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:08.542 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Status age = 4.046993017196655s
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:08.543 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:08.544 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 17;18.8196239;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83938;2460996.94454333;12.66901778;1.3;_
2025-11-17T12:40:08.544 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response 17;18.8196239;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83938;2460996.94454333;12.66901778;1.3;_
2025-11-17T12:40:08.544 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:08.544 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:08.544 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:08.545 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:08.545 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:08.545 [INFO] [Thread-67733 (handle)] [driver.py] [get_status()] Telra = 18.8196239, teldec = -24.256465
2025-11-17T12:40:08.545 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8196239 -24.256465
2025-11-17T12:40:08.545 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8196239 -24.256465
2025-11-17T12:40:08.545 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8196239 -24.256465
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 17;18.8196239;-24.256465;50.108343;89.992948;50.08601;90.12017;15.83938;2460996.94454336;12.66901778;1.3;_18.7934543479527 -24.2838506525027
2025-11-17T12:40:08.546 [INFO] [Thread-67733 (handle)] [driver.py] [get_status()] ra_j2k = 18.7934543479527     dec_j2k = -24.2838506525027
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 140;0.104615998142977;171.162357330327;_
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response 140;0.104615998142977;171.162357330327;_
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:08.546 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:08.547 [DEBUG] [Thread-67733 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:08.548 [DEBUG] [Thread-67733 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56217)
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:08.553 [DEBUG] [Thread-67733 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:08.560 [DEBUG] [Thread-67733 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:08.561 [DEBUG] [Thread-67733 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:08.561 [INFO] [Thread-67733 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94454333, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615998142977, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992948, telescope_ra=18.8196239, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.83938, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.7934543479527, telescope_dec_j2k=-24.2838506525027, observability=1)
2025-11-17T12:40:08.595 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:40:08.596 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:40:08.596 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:40:08.596 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:40:08.596 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:40:09.597 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:40:09.597 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:40:09.597 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:09.598 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:40:09.599 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:40:09.600 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Status age = 1.883497953414917s
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:10.444 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:10.445 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:10.446 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 17;18.8201476;-24.256465;50.108343;89.992948;50.08601;90.12017;15.8399;2460996.94456535;12.66954;1.3;_
2025-11-17T12:40:10.446 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response 17;18.8201476;-24.256465;50.108343;89.992948;50.08601;90.12017;15.8399;2460996.94456535;12.66954;1.3;_
2025-11-17T12:40:10.446 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:10.446 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:10.446 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:10.447 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:10.447 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:10.447 [INFO] [Thread-67734 (handle)] [driver.py] [get_status()] Telra = 18.8201476, teldec = -24.256465
2025-11-17T12:40:10.447 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8201476 -24.256465
2025-11-17T12:40:10.447 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8201476 -24.256465
2025-11-17T12:40:10.447 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8201476 -24.256465
2025-11-17T12:40:10.448 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 17;18.8201476;-24.256465;50.108343;89.992948;50.08601;90.12017;15.8399;2460996.94456537;12.66954;1.3;_18.7939781213954 -24.2838698946593
2025-11-17T12:40:10.448 [INFO] [Thread-67734 (handle)] [driver.py] [get_status()] ra_j2k = 18.7939781213954     dec_j2k = -24.2838698946593
2025-11-17T12:40:10.448 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:10.448 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:10.448 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 140;0.104615757471321;171.162362694745;_
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response 140;0.104615757471321;171.162362694745;_
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:10.449 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:10.450 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:10.450 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:10.450 [DEBUG] [Thread-67734 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:40:10.450 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:10.450 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:10.451 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:10.451 [DEBUG] [Thread-67734 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:10.451 [DEBUG] [Thread-67734 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:10.451 [DEBUG] [Thread-67734 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:40:10.452 [DEBUG] [Thread-67734 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33231)
2025-11-17T12:40:10.452 [DEBUG] [Thread-67734 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:10.452 [DEBUG] [Thread-67734 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:10.452 [DEBUG] [Thread-67734 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:10.452 [DEBUG] [Thread-67734 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:10.453 [DEBUG] [Thread-67734 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:10.459 [DEBUG] [Thread-67734 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:10.460 [DEBUG] [Thread-67734 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:10.460 [INFO] [Thread-67734 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94456535, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615757471321, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992948, telescope_ra=18.8201476, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.8399, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.7939781213954, telescope_dec_j2k=-24.2838698946593, observability=1)
2025-11-17T12:40:10.600 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:10.600 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:10.600 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:10.600 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:10.600 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:40:10.601 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:40:10.602 [DEBUG] [ThreadPoolExecutor-2796_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:10.602 [INFO] [ThreadPoolExecutor-2796_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:40:14.916 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.4566004276275635s
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8213821;-24.256465;50.108343;89.992948;50.08601;90.12017;15.84113;2460996.94461711;12.67077111;1.3;_
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.8213821;-24.256465;50.108343;89.992948;50.08601;90.12017;15.84113;2460996.94461711;12.67077111;1.3;_
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:14.919 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.8213821, teldec = -24.256465
2025-11-17T12:40:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8213821 -24.256465
2025-11-17T12:40:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8213821 -24.256465
2025-11-17T12:40:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8213821 -24.256465
2025-11-17T12:40:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8213821;-24.256465;50.108343;89.992948;50.08601;90.12017;15.84113;2460996.94461713;12.67077111;1.3;_18.795212794816 -24.2839152515872
2025-11-17T12:40:14.920 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.795212794816     dec_j2k = -24.2839152515872
2025-11-17T12:40:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104616118478806;171.162351965909;_
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104616118478806;171.162351965909;_
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36811)
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:14.938 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:14.938 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94461711, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616118478806, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108343, telescope_az=89.992948, telescope_ra=18.8213821, telescope_dec=-24.256465, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.84113, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.795212794816, telescope_dec_j2k=-24.2839152515872, observability=1)
2025-11-17T12:40:26.248 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:40:26.248 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.310842752456665s
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:26.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8245563;-24.256464;50.108342;89.992948;50.08601;90.12017;15.84431;2460996.94474826;12.67393667;1.3;_
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8245563;-24.256464;50.108342;89.992948;50.08601;90.12017;15.84431;2460996.94474826;12.67393667;1.3;_
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:26.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:26.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:26.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:26.251 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8245563, teldec = -24.256464
2025-11-17T12:40:26.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8245563 -24.256464
2025-11-17T12:40:26.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8245563 -24.256464
2025-11-17T12:40:26.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8245563 -24.256464
2025-11-17T12:40:26.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8245563;-24.256464;50.108342;89.992948;50.08601;90.12017;15.84431;2460996.94474829;12.67393667;1.3;_18.7983874428301 -24.2840308627891
2025-11-17T12:40:26.252 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.7983874428301     dec_j2k = -24.2840308627891
2025-11-17T12:40:26.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:26.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10461631903852;171.162362694745;_
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10461631903852;171.162362694745;_
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:26.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:26.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:26.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:26.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:26.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:26.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:26.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:26.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:26.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:26.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:40:26.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58063)
2025-11-17T12:40:26.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:26.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:26.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:26.258 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:26.258 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:26.266 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:40:26.267 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94474826, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461631903852, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992948, telescope_ra=18.8245563, telescope_dec=-24.256464, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.84431, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.7983874428301, telescope_dec_j2k=-24.2840308627891, observability=1)
2025-11-17T12:40:26.267 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05230736732483 seconds ago
2025-11-17T12:40:26.610 [DEBUG] [Thread-67735 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:26.610 [DEBUG] [Thread-67735 (handle)] [server.py] [get_status()] Status age = 0.3437683582305908s
2025-11-17T12:40:26.610 [DEBUG] [Thread-67735 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3437683582305908
2025-11-17T12:40:41.295 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:40:41
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.028580904006958s
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:41.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:41.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8287372;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84849;2460996.94492242;12.67810611;1.3;_
2025-11-17T12:40:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8287372;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84849;2460996.94492242;12.67810611;1.3;_
2025-11-17T12:40:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:41.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:41.298 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8287372, teldec = -24.256464
2025-11-17T12:40:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8287372 -24.256464
2025-11-17T12:40:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8287372 -24.256464
2025-11-17T12:40:41.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8287372 -24.256464
2025-11-17T12:40:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8287372;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84849;2460996.94492244;12.67810611;1.3;_18.8025689368727 -24.2841844294796
2025-11-17T12:40:41.299 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.8025689368727     dec_j2k = -24.2841844294796
2025-11-17T12:40:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:41.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:41.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104616198702692;171.162351965909;_
2025-11-17T12:40:41.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104616198702692;171.162351965909;_
2025-11-17T12:40:41.300 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:41.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:41.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:41.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:41.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:41.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:40:41.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39701)
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:41.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:41.310 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:41.310 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:41.310 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:41.311 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:41.311 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94492242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616198702692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992947, telescope_ra=18.8287372, telescope_dec=-24.256464, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.84849, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.8025689368727, telescope_dec_j2k=-24.2841844294796, observability=1)
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Status age = 3.3683979511260986s
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:44.679 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 17;18.8296825;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84944;2460996.94496159;12.67904889;1.3;_
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response 17;18.8296825;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84944;2460996.94496159;12.67904889;1.3;_
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:40:44.681 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:40:44.682 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:44.682 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:40:44.682 [INFO] [Thread-67736 (handle)] [driver.py] [get_status()] Telra = 18.8296825, teldec = -24.256464
2025-11-17T12:40:44.683 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8296825 -24.256464
2025-11-17T12:40:44.683 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8296825 -24.256464
2025-11-17T12:40:44.683 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8296825 -24.256464
2025-11-17T12:40:44.684 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 17;18.8296825;-24.256464;50.108342;89.992947;50.08601;90.12017;15.84944;2460996.94496161;12.67904889;1.3;_18.8035143718472 -24.2842191464646
2025-11-17T12:40:44.684 [INFO] [Thread-67736 (handle)] [driver.py] [get_status()] ra_j2k = 18.8035143718472     dec_j2k = -24.2842191464646
2025-11-17T12:40:44.684 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:40:44.684 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:40:44.684 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 140;0.104616519598234;171.162351965909;_
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response 140;0.104616519598234;171.162351965909;_
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:44.685 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:40:44.686 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:40:44.687 [DEBUG] [Thread-67736 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:44.687 [DEBUG] [Thread-67736 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:40:44.687 [DEBUG] [Thread-67736 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40433)
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:44.694 [DEBUG] [Thread-67736 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:44.701 [DEBUG] [Thread-67736 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:44.701 [DEBUG] [Thread-67736 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:44.701 [DEBUG] [Thread-67736 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:40:44.701 [DEBUG] [Thread-67736 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:40:44.701 [DEBUG] [Thread-67736 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:44.702 [DEBUG] [Thread-67736 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:44.702 [DEBUG] [Thread-67736 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:40:44.702 [DEBUG] [Thread-67736 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:40:44.702 [DEBUG] [Thread-67736 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:40:44.702 [INFO] [Thread-67736 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94496159, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616519598234, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992947, telescope_ra=18.8296825, telescope_dec=-24.256464, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.84944, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:39:44.706008', telescope_ra_j2k=18.8035143718472, telescope_dec_j2k=-24.2842191464646, observability=1)
2025-11-17T12:40:44.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:44.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:44.853 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:44.854 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:40:44.854 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:44.854 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:44.854 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:44.854 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:44.854 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:44.855 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:44.855 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:44.855 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:44.855 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:44.856 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:44.856 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:40:44.856 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:40:44.856 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:40:44.857 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:45.857 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:45.857 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:45.857 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:45.857 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:40:45.858 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:40:45.859 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:40:45.860 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:40:45.860 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:40:45.860 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:40:45.860 [DEBUG] [ThreadPoolExecutor-2798_0] [payload.py] [to_registers()] [0]
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34685)
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:40:45.862 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:40:45.869 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:40:45.869 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:40:45.869 [DEBUG] [ThreadPoolExecutor-2798_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:40:45.870 [DEBUG] [ThreadPoolExecutor-2798_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:40:45.870 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:40:45.870 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:40:45.870 [DEBUG] [ThreadPoolExecutor-2798_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:02.823 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Status age = 18.121842622756958s
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:02.824 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:02.825 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 17;18.8347224;-24.256464;50.108342;89.992947;50.08601;90.12017;15.85448;2460996.94517159;12.684075;1.3;_
2025-11-17T12:41:02.825 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response 17;18.8347224;-24.256464;50.108342;89.992947;50.08601;90.12017;15.85448;2460996.94517159;12.684075;1.3;_
2025-11-17T12:41:02.825 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:02.825 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:02.825 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:02.828 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:02.828 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:02.828 [INFO] [Thread-67737 (handle)] [driver.py] [get_status()] Telra = 18.8347224, teldec = -24.256464
2025-11-17T12:41:02.828 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8347224 -24.256464
2025-11-17T12:41:02.828 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8347224 -24.256464
2025-11-17T12:41:02.828 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8347224 -24.256464
2025-11-17T12:41:02.829 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 17;18.8347224;-24.256464;50.108342;89.992947;50.08601;90.12017;15.8545;2460996.94517163;12.68410306;1.3;_18.8085549955868 -24.2844042138331
2025-11-17T12:41:02.829 [INFO] [Thread-67737 (handle)] [driver.py] [get_status()] ra_j2k = 18.8085549955868     dec_j2k = -24.2844042138331
2025-11-17T12:41:02.829 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:02.829 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:02.829 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 140;0.104616559710177;171.162351965909;_
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response 140;0.104616559710177;171.162351965909;_
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:02.830 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:02.831 [DEBUG] [Thread-67737 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:02.832 [DEBUG] [Thread-67737 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55615)
2025-11-17T12:41:02.832 [DEBUG] [Thread-67737 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:02.833 [DEBUG] [Thread-67737 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:02.833 [DEBUG] [Thread-67737 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:02.833 [DEBUG] [Thread-67737 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:02.833 [DEBUG] [Thread-67737 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:02.840 [DEBUG] [Thread-67737 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:02.840 [INFO] [Thread-67737 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94517159, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616559710177, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992947, telescope_ra=18.8347224, telescope_dec=-24.256464, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.85448, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8085549955868, telescope_dec_j2k=-24.2844042138331, observability=1)
2025-11-17T12:41:03.570 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:03.570 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.729804277420044s
2025-11-17T12:41:03.570 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.729804277420044
2025-11-17T12:41:10.493 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:10.493 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Status age = 7.6531312465667725s
2025-11-17T12:41:10.493 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:10.493 [DEBUG] [Thread-67738 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:10.494 [DEBUG] [Thread-67738 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:10.494 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:10.494 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:10.494 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:10.495 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:10.496 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 17;18.8368699;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85662;2460996.94526037;12.68621667;1.3;_
2025-11-17T12:41:10.496 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response 17;18.8368699;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85662;2460996.94526037;12.68621667;1.3;_
2025-11-17T12:41:10.496 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:10.496 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:10.496 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:10.497 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:10.497 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:10.497 [INFO] [Thread-67738 (handle)] [driver.py] [get_status()] Telra = 18.8368699, teldec = -24.256463
2025-11-17T12:41:10.497 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8368699 -24.256463
2025-11-17T12:41:10.497 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8368699 -24.256463
2025-11-17T12:41:10.497 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8368699 -24.256463
2025-11-17T12:41:10.498 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 17;18.8368699;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85662;2460996.94526039;12.68621667;1.3;_18.8107028062756 -24.2844820569648
2025-11-17T12:41:10.498 [INFO] [Thread-67738 (handle)] [driver.py] [get_status()] ra_j2k = 18.8107028062756     dec_j2k = -24.2844820569648
2025-11-17T12:41:10.498 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:10.498 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:10.498 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 140;0.104615917919092;171.162357330327;_
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response 140;0.104615917919092;171.162357330327;_
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:10.499 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:10.500 [DEBUG] [Thread-67738 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:10.500 [DEBUG] [Thread-67738 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:10.500 [DEBUG] [Thread-67738 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51081)
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:10.505 [DEBUG] [Thread-67738 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:10.512 [DEBUG] [Thread-67738 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:10.512 [DEBUG] [Thread-67738 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:10.513 [DEBUG] [Thread-67738 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:10.513 [INFO] [Thread-67738 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94526037, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615917919092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992946, telescope_ra=18.8368699, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.85662, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8107028062756, telescope_dec_j2k=-24.2844820569648, observability=1)
2025-11-17T12:41:10.870 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:10.870 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:10.870 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:10.870 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:10.870 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:10.871 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:41:10.872 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:41:10.873 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.412522077560425s
2025-11-17T12:41:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.838122;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85787;2460996.94531166;12.68746528;1.3;_
2025-11-17T12:41:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.838122;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85787;2460996.94531166;12.68746528;1.3;_
2025-11-17T12:41:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:14.928 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.838122, teldec = -24.256463
2025-11-17T12:41:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.838122 -24.256463
2025-11-17T12:41:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.838122 -24.256463
2025-11-17T12:41:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.838122 -24.256463
2025-11-17T12:41:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.838122;-24.256463;50.108342;89.992946;50.08601;90.12017;15.85787;2460996.94531168;12.68746528;1.3;_18.8119550878892 -24.28452802251
2025-11-17T12:41:14.929 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.8119550878892     dec_j2k = -24.28452802251
2025-11-17T12:41:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104615958031035;171.162351965909;_
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104615958031035;171.162351965909;_
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39475)
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:14.943 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:14.943 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:14.943 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:14.944 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94531166, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104615958031035, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108342, telescope_az=89.992946, telescope_ra=18.838122, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.85787, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8119550878892, telescope_dec_j2k=-24.28452802251, observability=1)
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Status age = 5.9464499950408936s
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:20.890 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:20.891 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:20.892 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 17;18.8397704;-24.256463;50.108341;89.992946;50.08601;90.12017;15.85952;2460996.94538069;12.68910917;1.3;_
2025-11-17T12:41:20.892 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response 17;18.8397704;-24.256463;50.108341;89.992946;50.08601;90.12017;15.85952;2460996.94538069;12.68910917;1.3;_
2025-11-17T12:41:20.892 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:20.892 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:20.893 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:20.893 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:20.893 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:20.893 [INFO] [Thread-67739 (handle)] [driver.py] [get_status()] Telra = 18.8397704, teldec = -24.256463
2025-11-17T12:41:20.894 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8397704 -24.256463
2025-11-17T12:41:20.894 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8397704 -24.256463
2025-11-17T12:41:20.894 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8397704 -24.256463
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 17;18.8397704;-24.256463;50.108341;89.992946;50.08601;90.12017;15.85952;2460996.94538072;12.68910917;1.3;_18.8136037276377 -24.2845885321358
2025-11-17T12:41:20.895 [INFO] [Thread-67739 (handle)] [driver.py] [get_status()] ra_j2k = 18.8136037276377     dec_j2k = -24.2845885321358
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 140;0.104616639934062;171.162351965909;_
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response 140;0.104616639934062;171.162351965909;_
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:20.895 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:20.896 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:20.896 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:20.896 [DEBUG] [Thread-67739 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:20.896 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:20.896 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:20.897 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:20.897 [DEBUG] [Thread-67739 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:20.897 [DEBUG] [Thread-67739 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:20.897 [DEBUG] [Thread-67739 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37345)
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:20.899 [DEBUG] [Thread-67739 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:20.906 [DEBUG] [Thread-67739 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:20.906 [INFO] [Thread-67739 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94538069, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616639934062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992946, telescope_ra=18.8397704, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.85952, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8136037276377, telescope_dec_j2k=-24.2845885321358, observability=1)
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.420443534851074s
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:26.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:26.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:26.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8412954;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86105;2460996.94544362;12.69063;1.3;_
2025-11-17T12:41:26.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8412954;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86105;2460996.94544362;12.69063;1.3;_
2025-11-17T12:41:26.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:26.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:26.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:26.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:26.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:26.331 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8412954, teldec = -24.256463
2025-11-17T12:41:26.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8412954 -24.256463
2025-11-17T12:41:26.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8412954 -24.256463
2025-11-17T12:41:26.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8412954 -24.256463
2025-11-17T12:41:26.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8412954;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86105;2460996.94544366;12.69063;1.3;_18.8151289500991 -24.2846445075257
2025-11-17T12:41:26.332 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8151289500991     dec_j2k = -24.2846445075257
2025-11-17T12:41:26.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:26.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:26.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104616399262406;171.162351965909;_
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104616399262406;171.162351965909;_
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:26.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:26.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:26.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:26.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39093)
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:26.339 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:26.346 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:41:26.346 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94544362, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616399262406, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992946, telescope_ra=18.8412954, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.86105, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8151289500991, telescope_dec_j2k=-24.2846445075257, observability=1)
2025-11-17T12:41:26.346 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05148792266846 seconds ago
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Status age = 12.611572504043579s
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:38.958 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 17;18.8448069;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86456;2460996.9455898;12.69413194;1.3;_
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response 17;18.8448069;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86456;2460996.9455898;12.69413194;1.3;_
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:38.959 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:38.960 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:38.960 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:38.960 [INFO] [Thread-67740 (handle)] [driver.py] [get_status()] Telra = 18.8448069, teldec = -24.256463
2025-11-17T12:41:38.960 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8448069 -24.256463
2025-11-17T12:41:38.960 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8448069 -24.256463
2025-11-17T12:41:38.961 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8448069 -24.256463
2025-11-17T12:41:38.961 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 17;18.8448069;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86456;2460996.94558983;12.69413194;1.3;_18.8186409647575 -24.2847733814061
2025-11-17T12:41:38.962 [INFO] [Thread-67740 (handle)] [driver.py] [get_status()] ra_j2k = 18.8186409647575     dec_j2k = -24.2847733814061
2025-11-17T12:41:38.962 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:38.962 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:38.962 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 140;0.104616720157948;171.162362694745;_
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response 140;0.104616720157948;171.162362694745;_
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:38.963 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:38.964 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:38.965 [DEBUG] [Thread-67740 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:38.965 [DEBUG] [Thread-67740 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:38.965 [DEBUG] [Thread-67740 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:38.971 [DEBUG] [Thread-67740 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56951)
2025-11-17T12:41:38.971 [DEBUG] [Thread-67740 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:38.971 [DEBUG] [Thread-67740 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:38.971 [DEBUG] [Thread-67740 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:38.972 [DEBUG] [Thread-67740 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:38.972 [DEBUG] [Thread-67740 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:38.979 [DEBUG] [Thread-67740 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:38.979 [INFO] [Thread-67740 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9455898, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616720157948, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992946, telescope_ra=18.8448069, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.86456, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8186409647575, telescope_dec_j2k=-24.2847733814061, observability=1)
2025-11-17T12:41:41.372 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:41:41
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.3929672241210938s
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:41.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:41.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:41.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8454799;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86523;2460996.94561775;12.69480306;1.3;_
2025-11-17T12:41:41.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8454799;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86523;2460996.94561775;12.69480306;1.3;_
2025-11-17T12:41:41.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:41.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:41.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:41.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:41.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:41.375 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8454799, teldec = -24.256463
2025-11-17T12:41:41.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8454799 -24.256463
2025-11-17T12:41:41.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8454799 -24.256463
2025-11-17T12:41:41.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8454799 -24.256463
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8454799;-24.256463;50.108341;89.992946;50.08601;90.12017;15.86523;2460996.94561778;12.69480306;1.3;_18.8193140637792 -24.2847980782487
2025-11-17T12:41:41.376 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.8193140637792     dec_j2k = -24.2847980782487
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104616278926577;171.162351965909;_
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104616278926577;171.162351965909;_
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:41.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:41.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:41.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47193)
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:41.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:41.386 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:41.386 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94561775, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616278926577, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992946, telescope_ra=18.8454799, telescope_dec=-24.256463, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.86523, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:40:44.851696', telescope_ra_j2k=18.8193140637792, telescope_dec_j2k=-24.2847980782487, observability=1)
2025-11-17T12:41:44.992 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:44.992 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:44.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:44.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:44.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:44.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:44.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:44.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:44.993 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:44.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:44.995 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:41:44.995 [INFO] [ThreadPoolExecutor-2799_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:41:44.995 [INFO] [ThreadPoolExecutor-2799_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Status age = 15.743762254714966s
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:41:57.130 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:41:57.131 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:41:57.131 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:41:57.131 [DEBUG] [Thread-67741 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:41:57.131 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:41:57.131 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:41:57.132 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:41:57.132 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:41:57.132 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 17;18.8498577;-24.256462;50.108341;89.992945;50.08601;90.12017;15.86961;2460996.94580014;12.69916889;1.3;_
2025-11-17T12:41:57.132 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response 17;18.8498577;-24.256462;50.108341;89.992945;50.08601;90.12017;15.86961;2460996.94580014;12.69916889;1.3;_
2025-11-17T12:41:57.133 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:41:57.133 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:41:57.133 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:41:57.134 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:57.134 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:41:57.134 [INFO] [Thread-67741 (handle)] [driver.py] [get_status()] Telra = 18.8498577, teldec = -24.256462
2025-11-17T12:41:57.134 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8498577 -24.256462
2025-11-17T12:41:57.134 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8498577 -24.256462
2025-11-17T12:41:57.134 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8498577 -24.256462
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 17;18.8498577;-24.256462;50.108341;89.992945;50.08601;90.12017;15.86961;2460996.94580017;12.69916889;1.3;_18.8236925111193 -24.2849577083426
2025-11-17T12:41:57.135 [INFO] [Thread-67741 (handle)] [driver.py] [get_status()] ra_j2k = 18.8236925111193     dec_j2k = -24.2849577083426
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 140;0.104616720157948;171.162362694745;_
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response 140;0.104616720157948;171.162362694745;_
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:57.135 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:41:57.136 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:41:57.137 [DEBUG] [Thread-67741 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:57.137 [DEBUG] [Thread-67741 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:41:57.137 [DEBUG] [Thread-67741 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37455)
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:41:57.139 [DEBUG] [Thread-67741 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:41:57.147 [DEBUG] [Thread-67741 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:41:57.148 [DEBUG] [Thread-67741 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:41:57.148 [DEBUG] [Thread-67741 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:41:57.148 [INFO] [Thread-67741 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94580014, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616720157948, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992945, telescope_ra=18.8498577, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.86961, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8236925111193, telescope_dec_j2k=-24.2849577083426, observability=1)
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.501535177230835s
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:02.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8514108;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87116;2460996.945864;12.70071778;1.3;_
2025-11-17T12:42:02.650 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.8514108;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87116;2460996.945864;12.70071778;1.3;_
2025-11-17T12:42:02.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:02.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:02.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:02.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:02.652 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:02.652 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.8514108, teldec = -24.256462
2025-11-17T12:42:02.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8514108 -24.256462
2025-11-17T12:42:02.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8514108 -24.256462
2025-11-17T12:42:02.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8514108 -24.256462
2025-11-17T12:42:02.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8514108;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87116;2460996.94586404;12.70071778;1.3;_18.8252458419616 -24.2850146860203
2025-11-17T12:42:02.653 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.8252458419616     dec_j2k = -24.2850146860203
2025-11-17T12:42:02.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:02.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:02.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104616720157948;171.162368059163;_
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104616720157948;171.162368059163;_
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:02.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:02.655 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:02.660 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41725)
2025-11-17T12:42:02.660 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:02.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:02.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:02.661 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:02.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:02.668 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:02.668 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.945864, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616720157948, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992945, telescope_ra=18.8514108, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.87116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8252458419616, telescope_dec_j2k=-24.2850146860203, observability=1)
2025-11-17T12:42:05.873 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.874 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:42:05.875 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:42:05.875 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:42:05.875 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.875 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.876 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.876 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:05.876 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:05.876 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:05.877 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:42:05.878 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:05.879 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Park
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:42:05.880 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:42:05.881 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 29;18.8523085;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87206;2460996.9459014;12.70161306;1.3;_Park Command Successful
2025-11-17T12:42:06.882 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:42:06.882 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:42:06.882 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:42:06.883 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:42:06.883 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:42:07.883 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:42:07.883 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:42:07.883 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:42:07.884 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:42:07.884 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:42:08.884 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:42:08.884 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:42:08.884 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:42:08.885 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:42:08.885 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:42:09.885 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:42:09.885 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:42:09.885 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:09.886 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:42:09.887 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:42:09.888 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:42:09.888 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:10.544 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Status age = 7.8763556480407715s
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:10.545 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:10.546 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:10.547 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 17;18.853589;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87334;2460996.9459554;12.70289;1.3;_
2025-11-17T12:42:10.547 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response 17;18.853589;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87334;2460996.9459554;12.70289;1.3;_
2025-11-17T12:42:10.547 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:10.547 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:10.547 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:10.548 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:10.548 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:10.548 [INFO] [Thread-67742 (handle)] [driver.py] [get_status()] Telra = 18.853589, teldec = -24.256462
2025-11-17T12:42:10.548 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] UnCookCoordinates 18.853589 -24.256462
2025-11-17T12:42:10.548 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.853589 -24.256462
2025-11-17T12:42:10.548 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.853589 -24.256462
2025-11-17T12:42:10.549 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 17;18.853589;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87334;2460996.94595543;12.70289;1.3;_18.8274243668234 -24.2850945887721
2025-11-17T12:42:10.549 [INFO] [Thread-67742 (handle)] [driver.py] [get_status()] ra_j2k = 18.8274243668234     dec_j2k = -24.2850945887721
2025-11-17T12:42:10.549 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:10.549 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:10.549 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 140;0.104616198702692;171.162362694745;_
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response 140;0.104616198702692;171.162362694745;_
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:10.550 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:10.551 [DEBUG] [Thread-67742 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55275)
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:10.554 [DEBUG] [Thread-67742 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:10.561 [DEBUG] [Thread-67742 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:10.561 [INFO] [Thread-67742 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9459554, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616198702692, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992945, telescope_ra=18.853589, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.87334, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8274243668234, telescope_dec_j2k=-24.2850945887721, observability=1)
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:10.889 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:42:10.890 [DEBUG] [ThreadPoolExecutor-2798_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:10.891 [INFO] [ThreadPoolExecutor-2798_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.367727518081665s
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.854814;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87457;2460996.94600616;12.70411167;1.3;_
2025-11-17T12:42:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.854814;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87457;2460996.94600616;12.70411167;1.3;_
2025-11-17T12:42:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:14.933 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.854814, teldec = -24.256462
2025-11-17T12:42:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.854814 -24.256462
2025-11-17T12:42:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.854814 -24.256462
2025-11-17T12:42:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.854814 -24.256462
2025-11-17T12:42:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.854814;-24.256462;50.108341;89.992945;50.08601;90.12017;15.87457;2460996.94600618;12.70411167;1.3;_18.8286495500916 -24.2851395214474
2025-11-17T12:42:14.934 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.8286495500916     dec_j2k = -24.2851395214474
2025-11-17T12:42:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104616720157948;171.162351965909;_
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104616720157948;171.162351965909;_
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56795)
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:14.942 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:14.949 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94600616, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616720157948, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108341, telescope_az=89.992945, telescope_ra=18.854814, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.87457, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8286495500916, telescope_dec_j2k=-24.2851395214474, observability=1)
2025-11-17T12:42:15.194 [DEBUG] [Thread-67743 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:15.194 [DEBUG] [Thread-67743 (handle)] [server.py] [get_status()] Status age = 0.24509429931640625s
2025-11-17T12:42:15.194 [DEBUG] [Thread-67743 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.24509429931640625
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.456421375274658s
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:26.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:26.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8580208;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87777;2460996.94613897;12.70730972;1.3;_
2025-11-17T12:42:26.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8580208;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87777;2460996.94613897;12.70730972;1.3;_
2025-11-17T12:42:26.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:26.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:26.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:26.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:26.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:26.408 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8580208, teldec = -24.256462
2025-11-17T12:42:26.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8580208 -24.256462
2025-11-17T12:42:26.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8580208 -24.256462
2025-11-17T12:42:26.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8580208 -24.256462
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8580208;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87777;2460996.94613899;12.70730972;1.3;_18.8318568317888 -24.2852571326514
2025-11-17T12:42:26.409 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8318568317888     dec_j2k = -24.2852571326514
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10461704105349;171.162362694745;_
2025-11-17T12:42:26.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10461704105349;171.162362694745;_
2025-11-17T12:42:26.410 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:26.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:26.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:26.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:26.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:26.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:26.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:26.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49653)
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:26.414 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:26.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:26.422 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:42:26.422 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94613897, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461704105349, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992944, telescope_ra=18.8580208, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.87777, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8318568317888, telescope_dec_j2k=-24.2852571326514, observability=1)
2025-11-17T12:42:26.422 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.050286293029785 seconds ago
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Status age = 6.847908020019531s
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:33.270 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:33.271 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:33.272 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:33.273 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 17;18.859938;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87969;2460996.94621844;12.70922167;1.3;_
2025-11-17T12:42:33.273 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response 17;18.859938;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87969;2460996.94621844;12.70922167;1.3;_
2025-11-17T12:42:33.273 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:33.273 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:33.273 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:33.274 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:33.274 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:33.274 [INFO] [Thread-67744 (handle)] [driver.py] [get_status()] Telra = 18.859938, teldec = -24.256462
2025-11-17T12:42:33.274 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] UnCookCoordinates 18.859938 -24.256462
2025-11-17T12:42:33.274 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.859938 -24.256462
2025-11-17T12:42:33.274 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.859938 -24.256462
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 17;18.859938;-24.256462;50.10834;89.992944;50.08601;90.12017;15.87969;2460996.94621846;12.70922167;1.3;_18.8337743211138 -24.285327437778
2025-11-17T12:42:33.275 [INFO] [Thread-67744 (handle)] [driver.py] [get_status()] ra_j2k = 18.8337743211138     dec_j2k = -24.285327437778
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 140;0.104616680046005;171.162362694745;_
2025-11-17T12:42:33.275 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response 140;0.104616680046005;171.162362694745;_
2025-11-17T12:42:33.276 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:33.276 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:33.276 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:33.276 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:33.276 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:33.277 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:33.277 [DEBUG] [Thread-67744 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:33.277 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:33.277 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:33.277 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:33.278 [DEBUG] [Thread-67744 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:33.278 [DEBUG] [Thread-67744 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:33.278 [DEBUG] [Thread-67744 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46541)
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:33.282 [DEBUG] [Thread-67744 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:33.289 [DEBUG] [Thread-67744 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:33.290 [DEBUG] [Thread-67744 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:33.290 [DEBUG] [Thread-67744 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:33.290 [DEBUG] [Thread-67744 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:33.290 [INFO] [Thread-67744 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94621844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104616680046005, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992944, telescope_ra=18.859938, telescope_dec=-24.256462, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.87969, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8337743211138, telescope_dec_j2k=-24.285327437778, observability=1)
2025-11-17T12:42:41.447 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:42:41
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.157337188720703s
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:41.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8622014;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88195;2460996.94631306;12.71147889;1.3;_
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8622014;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88195;2460996.94631306;12.71147889;1.3;_
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:41.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:41.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:41.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:41.449 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8622014, teldec = -24.256461
2025-11-17T12:42:41.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8622014 -24.256461
2025-11-17T12:42:41.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8622014 -24.256461
2025-11-17T12:42:41.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8622014 -24.256461
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8622014;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88195;2460996.94631308;12.71147889;1.3;_18.8360380641706 -24.2854094294316
2025-11-17T12:42:41.451 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.8360380641706     dec_j2k = -24.2854094294316
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104617000941548;171.162357330327;_
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104617000941548;171.162357330327;_
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:41.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:41.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:41.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:41.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:42:41.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33625)
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:41.457 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:41.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:41.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:41.464 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:41.465 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:41.465 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94631306, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104617000941548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992944, telescope_ra=18.8622014, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.88195, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:41:44.992342', telescope_ra_j2k=18.8360380641706, telescope_dec_j2k=-24.2854094294316, observability=1)
2025-11-17T12:42:45.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:45.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:45.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:45.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:45.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:45.136 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:45.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:45.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:45.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:45.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:45.137 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:42:45.137 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:45.137 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:42:45.138 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:42:45.139 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:46.139 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:46.139 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:46.139 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:46.140 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:46.141 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:42:46.141 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:42:46.141 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:42:46.141 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:46.141 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:46.142 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:46.142 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:46.142 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:46.142 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:46.143 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:46.143 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:46.143 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:46.143 [DEBUG] [ThreadPoolExecutor-2800_0] [payload.py] [to_registers()] [0]
2025-11-17T12:42:46.148 [DEBUG] [ThreadPoolExecutor-2800_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53771)
2025-11-17T12:42:46.148 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:46.148 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:46.149 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:42:46.149 [DEBUG] [ThreadPoolExecutor-2800_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:46.149 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:46.156 [DEBUG] [ThreadPoolExecutor-2800_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Status age = 9.982314586639404s
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:42:51.447 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:42:51.448 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:42:51.449 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 17;18.8649859;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88474;2460996.94642881;12.71425583;1.3;_
2025-11-17T12:42:51.449 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response 17;18.8649859;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88474;2460996.94642881;12.71425583;1.3;_
2025-11-17T12:42:51.449 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:42:51.449 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:42:51.449 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:42:51.450 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:51.450 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:42:51.450 [INFO] [Thread-67745 (handle)] [driver.py] [get_status()] Telra = 18.8649859, teldec = -24.256461
2025-11-17T12:42:51.450 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8649859 -24.256461
2025-11-17T12:42:51.450 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8649859 -24.256461
2025-11-17T12:42:51.450 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8649859 -24.256461
2025-11-17T12:42:51.451 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 17;18.8649859;-24.256461;50.10834;89.992944;50.08601;90.12017;15.88474;2460996.94642883;12.71425583;1.3;_18.8388229878847 -24.2855115147202
2025-11-17T12:42:51.451 [INFO] [Thread-67745 (handle)] [driver.py] [get_status()] ra_j2k = 18.8388229878847     dec_j2k = -24.2855115147202
2025-11-17T12:42:51.451 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:42:51.451 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 140;0.104617843292347;171.162351965909;_
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response 140;0.104617843292347;171.162351965909;_
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:51.452 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:51.453 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:51.453 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:51.453 [DEBUG] [Thread-67745 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:42:51.454 [DEBUG] [Thread-67745 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33465)
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:42:51.455 [DEBUG] [Thread-67745 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:42:51.462 [DEBUG] [Thread-67745 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:42:51.463 [DEBUG] [Thread-67745 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:42:51.463 [DEBUG] [Thread-67745 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:42:51.463 [DEBUG] [Thread-67745 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:42:51.463 [INFO] [Thread-67745 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94642881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104617843292347, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992944, telescope_ra=18.8649859, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.88474, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8388229878847, telescope_dec_j2k=-24.2855115147202, observability=1)
2025-11-17T12:43:01.757 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:01.757 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.294243812561035s
2025-11-17T12:43:01.757 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:01.757 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:01.758 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:01.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:01.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:01.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:01.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:01.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:01.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.867878;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88763;2460996.94654819;12.71714;1.3;_
2025-11-17T12:43:01.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.867878;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88763;2460996.94654819;12.71714;1.3;_
2025-11-17T12:43:01.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:01.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:01.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:01.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:01.765 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:01.766 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.867878, teldec = -24.256461
2025-11-17T12:43:01.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.867878 -24.256461
2025-11-17T12:43:01.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.867878 -24.256461
2025-11-17T12:43:01.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.867878 -24.256461
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.867878;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88763;2460996.94654822;12.71714;1.3;_18.841715530211 -24.2856175291963
2025-11-17T12:43:01.767 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.841715530211     dec_j2k = -24.2856175291963
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104618364747603;171.162357330327;_
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104618364747603;171.162357330327;_
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:01.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:01.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:01.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:01.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:01.769 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43259)
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:01.772 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:01.779 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:01.779 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:01.780 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:01.780 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94654819, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104618364747603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992943, telescope_ra=18.867878, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.88763, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.841715530211, telescope_dec_j2k=-24.2856175291963, observability=1)
2025-11-17T12:43:09.503 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:09.503 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Status age = 7.723345994949341s
2025-11-17T12:43:09.503 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:09.503 [DEBUG] [Thread-67746 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:09.503 [DEBUG] [Thread-67746 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:09.504 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:09.505 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:09.505 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 17;18.8700267;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88978;2460996.94663779;12.71928278;1.3;_
2025-11-17T12:43:09.505 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response 17;18.8700267;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88978;2460996.94663779;12.71928278;1.3;_
2025-11-17T12:43:09.506 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:09.506 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:09.506 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:09.507 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:09.507 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:09.507 [INFO] [Thread-67746 (handle)] [driver.py] [get_status()] Telra = 18.8700267, teldec = -24.256461
2025-11-17T12:43:09.507 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8700267 -24.256461
2025-11-17T12:43:09.507 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8700267 -24.256461
2025-11-17T12:43:09.507 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8700267 -24.256461
2025-11-17T12:43:09.508 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 17;18.8700267;-24.256461;50.10834;89.992943;50.08601;90.12017;15.88978;2460996.94663782;12.71928278;1.3;_18.8438645603165 -24.2856962828206
2025-11-17T12:43:09.508 [INFO] [Thread-67746 (handle)] [driver.py] [get_status()] ra_j2k = 18.8438645603165     dec_j2k = -24.2856962828206
2025-11-17T12:43:09.508 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:09.508 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:09.508 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 140;0.104618204299832;171.162357330327;_
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response 140;0.104618204299832;171.162357330327;_
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:09.509 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:09.510 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:09.511 [DEBUG] [Thread-67746 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:09.511 [DEBUG] [Thread-67746 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:09.511 [DEBUG] [Thread-67746 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55867)
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:09.515 [DEBUG] [Thread-67746 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:09.522 [DEBUG] [Thread-67746 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:09.523 [DEBUG] [Thread-67746 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:09.523 [INFO] [Thread-67746 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94663779, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104618204299832, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992943, telescope_ra=18.8700267, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.88978, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8438645603165, telescope_dec_j2k=-24.2856962828206, observability=1)
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Status age = 1.071969985961914s
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:10.595 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:10.596 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 17;18.8703344;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89009;2460996.94665043;12.71958972;1.3;_
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response 17;18.8703344;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89009;2460996.94665043;12.71958972;1.3;_
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:10.597 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:10.598 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:10.598 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:10.598 [INFO] [Thread-67747 (handle)] [driver.py] [get_status()] Telra = 18.8703344, teldec = -24.256461
2025-11-17T12:43:10.599 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8703344 -24.256461
2025-11-17T12:43:10.599 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8703344 -24.256461
2025-11-17T12:43:10.599 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8703344 -24.256461
2025-11-17T12:43:10.599 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 17;18.8703344;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89009;2460996.94665045;12.71958972;1.3;_18.8441723076916 -24.285707559841
2025-11-17T12:43:10.600 [INFO] [Thread-67747 (handle)] [driver.py] [get_status()] ra_j2k = 18.8441723076916     dec_j2k = -24.285707559841
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 140;0.104618485083431;171.162357330327;_
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response 140;0.104618485083431;171.162357330327;_
2025-11-17T12:43:10.600 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:10.601 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:10.602 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:10.602 [DEBUG] [Thread-67747 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:10.602 [DEBUG] [Thread-67747 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:10.603 [DEBUG] [Thread-67747 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57879)
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:10.609 [DEBUG] [Thread-67747 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:10.617 [DEBUG] [Thread-67747 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:10.617 [INFO] [Thread-67747 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94665043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104618485083431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992943, telescope_ra=18.8703344, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.89009, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8441723076916, telescope_dec_j2k=-24.285707559841, observability=1)
2025-11-17T12:43:11.156 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:11.157 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:11.157 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:11.157 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:11.157 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:11.158 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:43:11.159 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:43:11.160 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.320021867752075s
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8715297;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89128;2460996.94670068;12.72078167;1.3;_
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.8715297;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89128;2460996.94670068;12.72078167;1.3;_
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:14.940 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.8715297, teldec = -24.256461
2025-11-17T12:43:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8715297 -24.256461
2025-11-17T12:43:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8715297 -24.256461
2025-11-17T12:43:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8715297 -24.256461
2025-11-17T12:43:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8715297;-24.256461;50.10834;89.992943;50.08601;90.12017;15.89128;2460996.94670071;12.72078167;1.3;_18.8453677919712 -24.2857513651448
2025-11-17T12:43:14.941 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.8453677919712     dec_j2k = -24.2857513651448
2025-11-17T12:43:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10461860541926;171.162357330327;_
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10461860541926;171.162357330327;_
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:14.950 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33273)
2025-11-17T12:43:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:14.950 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:14.951 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:14.958 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94670068, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461860541926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10834, telescope_az=89.992943, telescope_ra=18.8715297, telescope_dec=-24.256461, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.89128, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8453677919712, telescope_dec_j2k=-24.2857513651448, observability=1)
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.52426552772522s
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:26.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:26.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:26.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:26.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:26.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:26.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8747607;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89451;2460996.94683431;12.72400389;1.3;_
2025-11-17T12:43:26.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8747607;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89451;2460996.94683431;12.72400389;1.3;_
2025-11-17T12:43:26.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:26.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:26.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:26.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:26.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:26.486 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8747607, teldec = -24.25646
2025-11-17T12:43:26.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8747607 -24.25646
2025-11-17T12:43:26.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8747607 -24.25646
2025-11-17T12:43:26.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8747607 -24.25646
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8747607;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89451;2460996.94683434;12.72400389;1.3;_18.8485992922408 -24.2858687610173
2025-11-17T12:43:26.487 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8485992922408     dec_j2k = -24.2858687610173
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104619367546173;171.162357330327;_
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104619367546173;171.162357330327;_
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:26.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:26.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38165)
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:26.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:26.497 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:43:26.498 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94683431, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619367546173, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992943, telescope_ra=18.8747607, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.89451, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8485992922408, telescope_dec_j2k=-24.2858687610173, observability=1)
2025-11-17T12:43:26.498 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05080819129944 seconds ago
2025-11-17T12:43:27.692 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:27.692 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Status age = 1.194901704788208s
2025-11-17T12:43:27.692 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:27.693 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:27.694 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 17;18.8750969;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89485;2460996.94684831;12.72433917;1.3;_
2025-11-17T12:43:27.694 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response 17;18.8750969;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89485;2460996.94684831;12.72433917;1.3;_
2025-11-17T12:43:27.694 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:27.694 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:27.694 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:27.695 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:27.695 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:27.695 [INFO] [Thread-67748 (handle)] [driver.py] [get_status()] Telra = 18.8750969, teldec = -24.25646
2025-11-17T12:43:27.695 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8750969 -24.25646
2025-11-17T12:43:27.695 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8750969 -24.25646
2025-11-17T12:43:27.695 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8750969 -24.25646
2025-11-17T12:43:27.696 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 17;18.8750969;-24.25646;50.108339;89.992943;50.08601;90.12017;15.89485;2460996.94684833;12.72433917;1.3;_18.8489355444392 -24.2858810794735
2025-11-17T12:43:27.696 [INFO] [Thread-67748 (handle)] [driver.py] [get_status()] ra_j2k = 18.8489355444392     dec_j2k = -24.2858810794735
2025-11-17T12:43:27.696 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 140;0.104619006538688;171.162351965909;_
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response 140;0.104619006538688;171.162351965909;_
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:27.697 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:27.698 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:27.699 [DEBUG] [Thread-67748 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:27.699 [DEBUG] [Thread-67748 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:27.699 [DEBUG] [Thread-67748 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:27.705 [DEBUG] [Thread-67748 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57395)
2025-11-17T12:43:27.705 [DEBUG] [Thread-67748 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:27.705 [DEBUG] [Thread-67748 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:27.706 [DEBUG] [Thread-67748 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:27.706 [DEBUG] [Thread-67748 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:27.706 [DEBUG] [Thread-67748 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:27.713 [DEBUG] [Thread-67748 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:27.713 [INFO] [Thread-67748 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94684831, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619006538688, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992943, telescope_ra=18.8750969, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.89485, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8489355444392, telescope_dec_j2k=-24.2858810794735, observability=1)
2025-11-17T12:43:41.525 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:43:41
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.812494277954102s
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:41.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:41.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:41.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8789438;-24.25646;50.108339;89.992942;50.08601;90.12017;15.8987;2460996.94700843;12.72817556;1.3;_
2025-11-17T12:43:41.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8789438;-24.25646;50.108339;89.992942;50.08601;90.12017;15.8987;2460996.94700843;12.72817556;1.3;_
2025-11-17T12:43:41.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:41.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:41.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:41.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:41.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:41.529 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8789438, teldec = -24.25646
2025-11-17T12:43:41.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8789438 -24.25646
2025-11-17T12:43:41.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8789438 -24.25646
2025-11-17T12:43:41.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8789438 -24.25646
2025-11-17T12:43:41.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8789438;-24.25646;50.108339;89.992942;50.08601;90.12017;15.8987;2460996.94700845;12.72817556;1.3;_18.8527830439024 -24.2860220153398
2025-11-17T12:43:41.530 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.8527830439024     dec_j2k = -24.2860220153398
2025-11-17T12:43:41.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:41.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:41.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104618444971489;171.162357330327;_
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104618444971489;171.162357330327;_
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:41.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:41.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:41.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:41.533 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:41.534 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35645)
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:41.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:41.547 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:41.548 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:41.548 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94700843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104618444971489, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992942, telescope_ra=18.8789438, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.8987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:42:45.134913', telescope_ra_j2k=18.8527830439024, telescope_dec_j2k=-24.2860220153398, observability=1)
2025-11-17T12:43:45.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:45.278 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:45.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:45.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:45.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:45.279 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:45.279 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:43:45.279 [INFO] [ThreadPoolExecutor-2801_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:43:45.280 [INFO] [ThreadPoolExecutor-2801_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Status age = 4.205063104629517s
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:43:45.753 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:43:45.754 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:43:45.755 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 17;18.8801106;-24.25646;50.108339;89.992942;50.08601;90.12017;15.89986;2460996.94705735;12.72933917;1.3;_
2025-11-17T12:43:45.755 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response 17;18.8801106;-24.25646;50.108339;89.992942;50.08601;90.12017;15.89986;2460996.94705735;12.72933917;1.3;_
2025-11-17T12:43:45.755 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:43:45.755 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:43:45.755 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:43:45.756 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:45.756 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:43:45.756 [INFO] [Thread-67749 (handle)] [driver.py] [get_status()] Telra = 18.8801106, teldec = -24.25646
2025-11-17T12:43:45.756 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8801106 -24.25646
2025-11-17T12:43:45.756 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8801106 -24.25646
2025-11-17T12:43:45.757 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8801106 -24.25646
2025-11-17T12:43:45.757 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 17;18.8801106;-24.25646;50.108339;89.992942;50.08601;90.12017;15.89986;2460996.94705737;12.72933917;1.3;_18.8539500265225 -24.2860647568093
2025-11-17T12:43:45.758 [INFO] [Thread-67749 (handle)] [driver.py] [get_status()] ra_j2k = 18.8539500265225     dec_j2k = -24.2860647568093
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 140;0.104619287322288;171.162351965909;_
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response 140;0.104619287322288;171.162351965909;_
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:45.758 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:43:45.759 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:43:45.760 [DEBUG] [Thread-67749 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:45.760 [DEBUG] [Thread-67749 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:43:45.760 [DEBUG] [Thread-67749 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43981)
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:43:45.763 [DEBUG] [Thread-67749 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:43:45.770 [DEBUG] [Thread-67749 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:43:45.770 [DEBUG] [Thread-67749 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:45.770 [DEBUG] [Thread-67749 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:43:45.770 [DEBUG] [Thread-67749 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:43:45.771 [DEBUG] [Thread-67749 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:43:45.771 [DEBUG] [Thread-67749 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:43:45.771 [DEBUG] [Thread-67749 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:43:45.771 [DEBUG] [Thread-67749 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:43:45.771 [DEBUG] [Thread-67749 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:43:45.771 [INFO] [Thread-67749 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94705735, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619287322288, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992942, telescope_ra=18.8801106, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.89986, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8539500265225, telescope_dec_j2k=-24.2860647568093, observability=1)
2025-11-17T12:44:00.871 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 15.100845575332642s
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:00.872 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8843165;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90407;2460996.94723233;12.73353361;1.3;_
2025-11-17T12:44:00.873 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.8843165;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90407;2460996.94723233;12.73353361;1.3;_
2025-11-17T12:44:00.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:00.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:00.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:00.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:00.875 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:00.875 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.8843165, teldec = -24.25646
2025-11-17T12:44:00.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8843165 -24.25646
2025-11-17T12:44:00.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8843165 -24.25646
2025-11-17T12:44:00.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8843165 -24.25646
2025-11-17T12:44:00.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.8843447;-24.25646;50.108339;89.992942;50.08601;90.12017;15.9041;2460996.94723236;12.73356167;1.3;_18.8581565878829 -24.2862188026544
2025-11-17T12:44:00.876 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.8581565878829     dec_j2k = -24.2862188026544
2025-11-17T12:44:00.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:00.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:00.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104619768665601;171.162357330327;_
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104619768665601;171.162357330327;_
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:00.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:00.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:00.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:00.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:00.879 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50791)
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:00.886 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:00.893 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:00.893 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:00.893 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:00.894 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:00.894 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94723233, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619768665601, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992942, telescope_ra=18.8843165, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.90407, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8581565878829, telescope_dec_j2k=-24.2862188026544, observability=1)
2025-11-17T12:44:03.819 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Status age = 2.9256908893585205s
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:03.820 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:03.821 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:03.822 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 17;18.8851577;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90491;2460996.94726646;12.7343725;1.3;_
2025-11-17T12:44:03.822 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response 17;18.8851577;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90491;2460996.94726646;12.7343725;1.3;_
2025-11-17T12:44:03.822 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:03.822 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:03.822 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:03.823 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:03.823 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:03.823 [INFO] [Thread-67750 (handle)] [driver.py] [get_status()] Telra = 18.8851577, teldec = -24.25646
2025-11-17T12:44:03.823 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8851577 -24.25646
2025-11-17T12:44:03.823 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8851577 -24.25646
2025-11-17T12:44:03.823 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8851577 -24.25646
2025-11-17T12:44:03.824 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 17;18.8851577;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90491;2460996.94726648;12.7343725;1.3;_18.8589979207367 -24.2862496084139
2025-11-17T12:44:03.824 [INFO] [Thread-67750 (handle)] [driver.py] [get_status()] ra_j2k = 18.8589979207367     dec_j2k = -24.2862496084139
2025-11-17T12:44:03.824 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:03.824 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:03.824 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 140;0.104619929113372;171.162351965909;_
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response 140;0.104619929113372;171.162351965909;_
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:03.825 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:03.826 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:03.827 [DEBUG] [Thread-67750 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:03.827 [DEBUG] [Thread-67750 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:03.827 [DEBUG] [Thread-67750 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43035)
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:03.829 [DEBUG] [Thread-67750 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:03.836 [DEBUG] [Thread-67750 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:03.836 [INFO] [Thread-67750 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94726646, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619929113372, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992942, telescope_ra=18.8851577, telescope_dec=-24.25646, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.90491, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8589979207367, telescope_dec_j2k=-24.2862496084139, observability=1)
2025-11-17T12:44:06.160 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.160 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.160 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:06.160 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:06.161 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:06.161 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.161 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:06.161 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:06.161 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.162 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.163 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:06.163 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:06.163 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:06.163 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.163 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:06.164 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:44:06.165 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:06.166 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Park
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:44:06.167 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:44:06.168 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 29;18.8857936;-24.25646;50.108339;89.992942;50.08601;90.12017;15.90555;2460996.94729361;12.73500667;1.3;_Park Command Successful
2025-11-17T12:44:07.168 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:44:07.168 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:44:07.168 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:44:07.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:44:07.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:44:08.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:44:08.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:44:08.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:44:08.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:44:08.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:44:09.169 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:44:09.170 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:44:09.170 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:44:09.171 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:44:09.171 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:44:10.171 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:44:10.171 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:44:10.171 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:10.172 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:44:10.173 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:44:10.174 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:44:10.174 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Status age = 6.814322233200073s
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:10.651 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:10.652 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:10.653 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 17;18.8870546;-24.256459;50.108339;89.992942;50.08601;90.12017;15.90681;2460996.94734552;12.73626417;1.3;_
2025-11-17T12:44:10.653 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response 17;18.8870546;-24.256459;50.108339;89.992942;50.08601;90.12017;15.90681;2460996.94734552;12.73626417;1.3;_
2025-11-17T12:44:10.653 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:10.653 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:10.653 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:10.654 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:10.654 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:10.654 [INFO] [Thread-67751 (handle)] [driver.py] [get_status()] Telra = 18.8870546, teldec = -24.256459
2025-11-17T12:44:10.654 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8870546 -24.256459
2025-11-17T12:44:10.654 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8870546 -24.256459
2025-11-17T12:44:10.654 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8870546 -24.256459
2025-11-17T12:44:10.655 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 17;18.8870546;-24.256459;50.108339;89.992942;50.08601;90.12017;15.90681;2460996.94734554;12.73626417;1.3;_18.8608951212248 -24.286318070176
2025-11-17T12:44:10.655 [INFO] [Thread-67751 (handle)] [driver.py] [get_status()] ra_j2k = 18.8608951212248     dec_j2k = -24.286318070176
2025-11-17T12:44:10.655 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:10.655 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:10.655 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:10.656 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 140;0.104619287322288;171.162357330327;_
2025-11-17T12:44:10.656 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response 140;0.104619287322288;171.162357330327;_
2025-11-17T12:44:10.656 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:10.656 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:10.656 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:10.657 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:10.658 [DEBUG] [Thread-67751 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:10.659 [DEBUG] [Thread-67751 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:10.659 [DEBUG] [Thread-67751 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44385)
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:10.662 [DEBUG] [Thread-67751 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:10.669 [DEBUG] [Thread-67751 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:10.670 [INFO] [Thread-67751 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94734552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619287322288, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992942, telescope_ra=18.8870546, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.90681, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8608951212248, telescope_dec_j2k=-24.286318070176, observability=1)
2025-11-17T12:44:11.174 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:11.175 [DEBUG] [ThreadPoolExecutor-2800_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:11.176 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:44:11.176 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:44:11.176 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:44:11.176 [DEBUG] [ThreadPoolExecutor-2800_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:11.176 [INFO] [ThreadPoolExecutor-2800_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.2436888217926025s
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:14.913 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:14.914 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8882506;-24.256459;50.108339;89.992941;50.08601;90.12017;15.908;2460996.94739485;12.73745694;1.3;_
2025-11-17T12:44:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.8882506;-24.256459;50.108339;89.992941;50.08601;90.12017;15.908;2460996.94739485;12.73745694;1.3;_
2025-11-17T12:44:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:14.915 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:14.916 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.8882506, teldec = -24.256459
2025-11-17T12:44:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8882506 -24.256459
2025-11-17T12:44:14.916 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8882506 -24.256459
2025-11-17T12:44:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8882506 -24.256459
2025-11-17T12:44:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.8882506;-24.256459;50.108339;89.992941;50.08601;90.12017;15.908;2460996.94739487;12.73745694;1.3;_18.8620913110638 -24.2863618623098
2025-11-17T12:44:14.917 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.8620913110638     dec_j2k = -24.2863618623098
2025-11-17T12:44:14.917 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10461960821783;171.162351965909;_
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10461960821783;171.162351965909;_
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:14.924 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57405)
2025-11-17T12:44:14.924 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:14.924 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:14.924 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:14.924 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:14.925 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:14.932 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:14.932 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94739485, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10461960821783, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108339, telescope_az=89.992941, telescope_ra=18.8882506, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.908, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8620913110638, telescope_dec_j2k=-24.2863618623098, observability=1)
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Status age = 7.03193473815918s
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:21.964 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:21.965 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:21.966 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:21.967 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 17;18.8902026;-24.256459;50.108338;89.992941;50.08601;90.12017;15.90996;2460996.94747647;12.73940361;1.3;_
2025-11-17T12:44:21.967 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response 17;18.8902026;-24.256459;50.108338;89.992941;50.08601;90.12017;15.90996;2460996.94747647;12.73940361;1.3;_
2025-11-17T12:44:21.967 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:21.967 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:21.967 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:21.968 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:21.968 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:21.968 [INFO] [Thread-67752 (handle)] [driver.py] [get_status()] Telra = 18.8902026, teldec = -24.256459
2025-11-17T12:44:21.968 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8902026 -24.256459
2025-11-17T12:44:21.968 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8902026 -24.256459
2025-11-17T12:44:21.968 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8902026 -24.256459
2025-11-17T12:44:21.969 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 17;18.8902026;-24.256459;50.108338;89.992941;50.08601;90.12017;15.90996;2460996.94747649;12.73940361;1.3;_18.8640436217387 -24.2864333297229
2025-11-17T12:44:21.969 [INFO] [Thread-67752 (handle)] [driver.py] [get_status()] ra_j2k = 18.8640436217387     dec_j2k = -24.2864333297229
2025-11-17T12:44:21.969 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:21.969 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:21.969 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 140;0.104620250008915;171.162351965909;_
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response 140;0.104620250008915;171.162351965909;_
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:21.970 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:21.971 [DEBUG] [Thread-67752 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:44:21.977 [DEBUG] [Thread-67752 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52321)
2025-11-17T12:44:21.978 [DEBUG] [Thread-67752 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:21.978 [DEBUG] [Thread-67752 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:21.978 [DEBUG] [Thread-67752 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:21.978 [DEBUG] [Thread-67752 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:21.978 [DEBUG] [Thread-67752 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:21.985 [DEBUG] [Thread-67752 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:21.985 [INFO] [Thread-67752 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94747647, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104620250008915, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.992941, telescope_ra=18.8902026, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.90996, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8640436217387, telescope_dec_j2k=-24.2864333297229, observability=1)
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.5723044872283936s
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:26.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:26.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:26.559 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:26.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:26.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:26.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:26.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8914817;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91123;2460996.94752962;12.74067917;1.3;_
2025-11-17T12:44:26.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.8914817;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91123;2460996.94752962;12.74067917;1.3;_
2025-11-17T12:44:26.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:26.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:26.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:26.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:26.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:26.561 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.8914817, teldec = -24.256459
2025-11-17T12:44:26.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.8914817 -24.256459
2025-11-17T12:44:26.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.8914817 -24.256459
2025-11-17T12:44:26.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8914817 -24.256459
2025-11-17T12:44:26.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.8914817;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91123;2460996.94752965;12.74067917;1.3;_18.8653229258798 -24.2864801565819
2025-11-17T12:44:26.562 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8653229258798     dec_j2k = -24.2864801565819
2025-11-17T12:44:26.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:26.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:26.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104619568105887;171.162357330327;_
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104619568105887;171.162357330327;_
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:26.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:26.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:26.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:26.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:26.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36215)
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:26.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:26.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:26.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:26.574 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:26.575 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:44:26.575 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94752962, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104619568105887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.992941, telescope_ra=18.8914817, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.91123, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8653229258798, telescope_dec_j2k=-24.2864801565819, observability=1)
2025-11-17T12:44:26.575 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04956364631653 seconds ago
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Status age = 13.449942111968994s
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:40.025 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:40.026 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:40.027 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 17;18.8952439;-24.256459;50.108338;89.992941;50.08601;90.12017;15.915;2460996.9476855;12.74443111;1.3;_
2025-11-17T12:44:40.027 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response 17;18.8952439;-24.256459;50.108338;89.992941;50.08601;90.12017;15.915;2460996.9476855;12.74443111;1.3;_
2025-11-17T12:44:40.027 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:40.027 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:40.027 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:40.028 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:40.028 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:40.028 [INFO] [Thread-67753 (handle)] [driver.py] [get_status()] Telra = 18.8952439, teldec = -24.256459
2025-11-17T12:44:40.028 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8952439 -24.256459
2025-11-17T12:44:40.028 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8952439 -24.256459
2025-11-17T12:44:40.028 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8952439 -24.256459
2025-11-17T12:44:40.029 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 17;18.8952439;-24.256459;50.108338;89.992941;50.08601;90.12017;15.915;2460996.94768552;12.74443111;1.3;_18.8690857289013 -24.2866178690855
2025-11-17T12:44:40.029 [INFO] [Thread-67753 (handle)] [driver.py] [get_status()] ra_j2k = 18.8690857289013     dec_j2k = -24.2866178690855
2025-11-17T12:44:40.029 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:40.029 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:40.029 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 140;0.104621172583599;171.162362694745;_
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response 140;0.104621172583599;171.162362694745;_
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:40.030 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:40.031 [DEBUG] [Thread-67753 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:40.031 [DEBUG] [Thread-67753 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:40.031 [DEBUG] [Thread-67753 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59109)
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:40.035 [DEBUG] [Thread-67753 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:40.042 [DEBUG] [Thread-67753 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:40.042 [DEBUG] [Thread-67753 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:40.042 [DEBUG] [Thread-67753 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:40.043 [DEBUG] [Thread-67753 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:40.043 [INFO] [Thread-67753 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9476855, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104621172583599, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.992941, telescope_ra=18.8952439, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.8690857289013, telescope_dec_j2k=-24.2866178690855, observability=1)
2025-11-17T12:44:41.609 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:44:41
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.5659408569335938s
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:41.609 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:41.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:41.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8956639;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91542;2460996.94770383;12.74485;1.3;_
2025-11-17T12:44:41.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.8956639;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91542;2460996.94770383;12.74485;1.3;_
2025-11-17T12:44:41.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:41.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:41.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:41.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:41.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:41.612 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.8956639, teldec = -24.256459
2025-11-17T12:44:41.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.8956639 -24.256459
2025-11-17T12:44:41.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.8956639 -24.256459
2025-11-17T12:44:41.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.8956639 -24.256459
2025-11-17T12:44:41.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.8956639;-24.256459;50.108338;89.992941;50.08601;90.12017;15.91542;2460996.94770385;12.74485;1.3;_18.86950579646 -24.286633241132
2025-11-17T12:44:41.613 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.86950579646     dec_j2k = -24.286633241132
2025-11-17T12:44:41.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:41.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:41.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104620410456686;171.162357330327;_
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104620410456686;171.162357330327;_
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:41.614 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:41.615 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:41.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:41.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:44:41.616 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34269)
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:41.621 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:41.628 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:41.628 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94770383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104620410456686, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.992941, telescope_ra=18.8956639, telescope_dec=-24.256459, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.91542, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:43:45.276598', telescope_ra_j2k=18.86950579646, telescope_dec_j2k=-24.286633241132, observability=1)
2025-11-17T12:44:45.422 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:45.422 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:45.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:45.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:45.423 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:45.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:45.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:45.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:45.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:45.424 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:44:45.424 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:44:45.425 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:44:45.426 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:44:45.426 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:46.426 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:44:46.427 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:46.428 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:46.429 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:46.429 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:46.429 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:46.429 [DEBUG] [ThreadPoolExecutor-2802_0] [payload.py] [to_registers()] [0]
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44171)
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:46.435 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:46.443 [DEBUG] [ThreadPoolExecutor-2802_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Status age = 16.463791608810425s
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:58.092 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:58.093 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:58.094 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 17;18.900259;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92001;2460996.94789461;12.7494325;1.3;_
2025-11-17T12:44:58.094 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response 17;18.900259;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92001;2460996.94789461;12.7494325;1.3;_
2025-11-17T12:44:58.094 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:58.094 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:58.094 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:58.095 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:58.095 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:58.095 [INFO] [Thread-67754 (handle)] [driver.py] [get_status()] Telra = 18.900259, teldec = -24.256458
2025-11-17T12:44:58.095 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] UnCookCoordinates 18.900259 -24.256458
2025-11-17T12:44:58.095 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.900259 -24.256458
2025-11-17T12:44:58.096 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.900259 -24.256458
2025-11-17T12:44:58.096 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 17;18.900259;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92001;2460996.94789463;12.7494325;1.3;_18.8741016389349 -24.2868003994945
2025-11-17T12:44:58.097 [INFO] [Thread-67754 (handle)] [driver.py] [get_status()] ra_j2k = 18.8741016389349     dec_j2k = -24.2868003994945
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 140;0.104621052247771;171.162351965909;_
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response 140;0.104621052247771;171.162351965909;_
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:58.097 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:58.098 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:58.099 [DEBUG] [Thread-67754 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:58.099 [DEBUG] [Thread-67754 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:58.099 [DEBUG] [Thread-67754 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51449)
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:58.106 [DEBUG] [Thread-67754 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:44:58.113 [DEBUG] [Thread-67754 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:44:58.113 [DEBUG] [Thread-67754 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:58.113 [DEBUG] [Thread-67754 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:44:58.114 [DEBUG] [Thread-67754 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:44:58.114 [INFO] [Thread-67754 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94789461, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104621052247771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.99294, telescope_ra=18.900259, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92001, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8741016389349, telescope_dec_j2k=-24.2868003994945, observability=1)
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.8682215213775635s
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:44:59.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:44:59.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:44:59.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9007913;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92054;2460996.94791648;12.74996333;1.3;_
2025-11-17T12:44:59.984 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9007913;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92054;2460996.94791648;12.74996333;1.3;_
2025-11-17T12:44:59.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:44:59.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:44:59.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:44:59.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:59.985 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:44:59.985 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9007913, teldec = -24.256458
2025-11-17T12:44:59.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9007913 -24.256458
2025-11-17T12:44:59.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9007913 -24.256458
2025-11-17T12:44:59.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9007913 -24.256458
2025-11-17T12:44:59.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9007913;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92054;2460996.9479165;12.74996333;1.3;_18.8746340252929 -24.2868198763661
2025-11-17T12:44:59.986 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.8746340252929     dec_j2k = -24.2868198763661
2025-11-17T12:44:59.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:44:59.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:44:59.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.1046206110164;171.162362694745;_
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.1046206110164;171.162362694745;_
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:59.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:59.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:59.988 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:59.988 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:59.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:44:59.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:44:59.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:44:59.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:59.989 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:44:59.990 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50365)
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:44:59.993 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:00.001 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:00.001 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94791648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046206110164, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.99294, telescope_ra=18.9007913, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92054, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8746340252929, telescope_dec_j2k=-24.2868198763661, observability=1)
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Status age = 10.701383352279663s
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:10.703 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:10.704 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:10.705 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 17;18.9037697;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92352;2460996.94804057;12.75293361;1.3;_
2025-11-17T12:45:10.705 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response 17;18.9037697;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92352;2460996.94804057;12.75293361;1.3;_
2025-11-17T12:45:10.705 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:10.705 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:10.705 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:10.706 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:10.706 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:10.706 [INFO] [Thread-67755 (handle)] [driver.py] [get_status()] Telra = 18.9037697, teldec = -24.256458
2025-11-17T12:45:10.706 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9037697 -24.256458
2025-11-17T12:45:10.706 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9037697 -24.256458
2025-11-17T12:45:10.706 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9037697 -24.256458
2025-11-17T12:45:10.707 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 17;18.9037697;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92352;2460996.94804059;12.75293361;1.3;_18.8776129099191 -24.2869288456609
2025-11-17T12:45:10.707 [INFO] [Thread-67755 (handle)] [driver.py] [get_status()] ra_j2k = 18.8776129099191     dec_j2k = -24.2869288456609
2025-11-17T12:45:10.707 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:10.707 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:10.707 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 140;0.104621694038856;171.162357330327;_
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response 140;0.104621694038856;171.162357330327;_
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:10.708 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:10.709 [DEBUG] [Thread-67755 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:10.713 [DEBUG] [Thread-67755 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56219)
2025-11-17T12:45:10.714 [DEBUG] [Thread-67755 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:10.714 [DEBUG] [Thread-67755 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:10.714 [DEBUG] [Thread-67755 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:10.714 [DEBUG] [Thread-67755 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:10.714 [DEBUG] [Thread-67755 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:10.721 [DEBUG] [Thread-67755 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:10.721 [INFO] [Thread-67755 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94804057, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104621694038856, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.99294, telescope_ra=18.9037697, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92352, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8776129099191, telescope_dec_j2k=-24.2869288456609, observability=1)
2025-11-17T12:45:11.443 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:11.443 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:11.443 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:11.443 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:11.444 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:11.444 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:11.445 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:45:11.446 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:45:11.447 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.2008678913116455s
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9049641;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92472;2460996.9480894;12.75412472;1.3;_
2025-11-17T12:45:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9049641;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92472;2460996.9480894;12.75412472;1.3;_
2025-11-17T12:45:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:14.926 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9049641, teldec = -24.256458
2025-11-17T12:45:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9049641 -24.256458
2025-11-17T12:45:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9049641 -24.256458
2025-11-17T12:45:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9049641 -24.256458
2025-11-17T12:45:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9049641;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92472;2460996.94808943;12.75412472;1.3;_18.878807504943 -24.2869725396144
2025-11-17T12:45:14.927 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.878807504943     dec_j2k = -24.2869725396144
2025-11-17T12:45:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104622055046341;171.162357330327;_
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104622055046341;171.162357330327;_
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:14.932 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35761)
2025-11-17T12:45:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:14.933 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:14.940 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:14.940 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:14.941 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9480894, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104622055046341, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.99294, telescope_ra=18.9049641, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92472, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.878807504943, telescope_dec_j2k=-24.2869725396144, observability=1)
2025-11-17T12:45:16.263 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Status age = 1.3226258754730225s
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:16.264 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:16.265 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:16.266 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 17;18.9053284;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92508;2460996.94810493;12.75448806;1.3;_
2025-11-17T12:45:16.266 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response 17;18.9053284;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92508;2460996.94810493;12.75448806;1.3;_
2025-11-17T12:45:16.266 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:16.266 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:16.266 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:16.267 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:16.267 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:16.267 [INFO] [Thread-67756 (handle)] [driver.py] [get_status()] Telra = 18.9053284, teldec = -24.256458
2025-11-17T12:45:16.267 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9053284 -24.256458
2025-11-17T12:45:16.267 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9053284 -24.256458
2025-11-17T12:45:16.267 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9053284 -24.256458
2025-11-17T12:45:16.268 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 17;18.9053284;-24.256458;50.108338;89.99294;50.08601;90.12017;15.92508;2460996.94810495;12.75448806;1.3;_18.8791718645039 -24.2869858659936
2025-11-17T12:45:16.268 [INFO] [Thread-67756 (handle)] [driver.py] [get_status()] ra_j2k = 18.8791718645039     dec_j2k = -24.2869858659936
2025-11-17T12:45:16.268 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:16.268 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 140;0.104622496277712;171.162357330327;_
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response 140;0.104622496277712;171.162357330327;_
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:16.269 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:16.270 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:16.270 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:16.270 [DEBUG] [Thread-67756 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:16.271 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:16.271 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:16.271 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:16.272 [DEBUG] [Thread-67756 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:16.272 [DEBUG] [Thread-67756 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:16.272 [DEBUG] [Thread-67756 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41873)
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:16.278 [DEBUG] [Thread-67756 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:16.285 [DEBUG] [Thread-67756 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:16.285 [INFO] [Thread-67756 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94810493, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104622496277712, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108338, telescope_az=89.99294, telescope_ra=18.9053284, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92508, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8791718645039, telescope_dec_j2k=-24.2869858659936, observability=1)
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.349827766418457s
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:26.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:26.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:26.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9082316;-24.256458;50.108337;89.992939;50.08601;90.12017;15.92798;2460996.94822498;12.75738333;1.3;_
2025-11-17T12:45:26.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9082316;-24.256458;50.108337;89.992939;50.08601;90.12017;15.92798;2460996.94822498;12.75738333;1.3;_
2025-11-17T12:45:26.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:26.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:26.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:26.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:26.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:26.639 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9082316, teldec = -24.256458
2025-11-17T12:45:26.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9082316 -24.256458
2025-11-17T12:45:26.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9082316 -24.256458
2025-11-17T12:45:26.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9082316 -24.256458
2025-11-17T12:45:26.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9082316;-24.256458;50.108337;89.992939;50.08601;90.12017;15.92798;2460996.948225;12.75738333;1.3;_18.8820755404517 -24.287092057794
2025-11-17T12:45:26.640 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8820755404517     dec_j2k = -24.287092057794
2025-11-17T12:45:26.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:26.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:26.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:26.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104623057844911;171.162368059163;_
2025-11-17T12:45:26.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104623057844911;171.162368059163;_
2025-11-17T12:45:26.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:26.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:26.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:26.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:26.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:26.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:26.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:26.644 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55439)
2025-11-17T12:45:26.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:26.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:26.644 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:26.645 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:26.645 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:26.652 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:26.653 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:26.653 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:45:26.653 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94822498, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104623057844911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992939, telescope_ra=18.9082316, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.92798, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8820755404517, telescope_dec_j2k=-24.287092057794, observability=1)
2025-11-17T12:45:26.653 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.043962717056274 seconds ago
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Status age = 7.673259258270264s
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:34.326 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:34.327 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:34.328 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 17;18.9103697;-24.256458;50.108337;89.992939;50.08601;90.12017;15.93012;2460996.94831398;12.75951556;1.3;_
2025-11-17T12:45:34.328 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response 17;18.9103697;-24.256458;50.108337;89.992939;50.08601;90.12017;15.93012;2460996.94831398;12.75951556;1.3;_
2025-11-17T12:45:34.328 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:34.328 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:34.328 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:34.329 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:34.329 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:34.329 [INFO] [Thread-67757 (handle)] [driver.py] [get_status()] Telra = 18.9103697, teldec = -24.256458
2025-11-17T12:45:34.329 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9103697 -24.256458
2025-11-17T12:45:34.329 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9103697 -24.256458
2025-11-17T12:45:34.329 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9103697 -24.256458
2025-11-17T12:45:34.330 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 17;18.9103697;-24.256458;50.108337;89.992939;50.08601;90.12017;15.93012;2460996.948314;12.75951556;1.3;_18.8842139924374 -24.2871702532973
2025-11-17T12:45:34.330 [INFO] [Thread-67757 (handle)] [driver.py] [get_status()] ra_j2k = 18.8842139924374     dec_j2k = -24.2871702532973
2025-11-17T12:45:34.330 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:34.330 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:34.330 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 140;0.104623097956854;171.162368059163;_
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response 140;0.104623097956854;171.162368059163;_
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:34.331 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:34.332 [DEBUG] [Thread-67757 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:34.332 [DEBUG] [Thread-67757 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:34.332 [DEBUG] [Thread-67757 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:34.338 [DEBUG] [Thread-67757 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36803)
2025-11-17T12:45:34.339 [DEBUG] [Thread-67757 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:34.339 [DEBUG] [Thread-67757 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:34.339 [DEBUG] [Thread-67757 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:34.339 [DEBUG] [Thread-67757 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:34.339 [DEBUG] [Thread-67757 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:34.346 [DEBUG] [Thread-67757 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:34.346 [INFO] [Thread-67757 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94831398, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104623097956854, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992939, telescope_ra=18.9103697, telescope_dec=-24.256458, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.93012, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8842139924374, telescope_dec_j2k=-24.2871702532973, observability=1)
2025-11-17T12:45:41.689 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:45:41
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.343205213546753s
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:41.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:41.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:41.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9124044;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93216;2460996.9483992;12.76154472;1.3;_
2025-11-17T12:45:41.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.9124044;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93216;2460996.9483992;12.76154472;1.3;_
2025-11-17T12:45:41.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:41.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:41.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:41.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:41.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:41.692 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.9124044, teldec = -24.256457
2025-11-17T12:45:41.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9124044 -24.256457
2025-11-17T12:45:41.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9124044 -24.256457
2025-11-17T12:45:41.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9124044 -24.256457
2025-11-17T12:45:41.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9124044;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93216;2460996.94839922;12.76154472;1.3;_18.8862490287523 -24.2872436587162
2025-11-17T12:45:41.693 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.8862490287523     dec_j2k = -24.2872436587162
2025-11-17T12:45:41.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:41.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:41.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104623057844911;171.162346601491;_
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104623057844911;171.162346601491;_
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:41.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:41.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:41.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54277)
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:41.698 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:41.705 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:41.706 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:41.706 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:41.706 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9483992, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104623057844911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992939, telescope_ra=18.9124044, telescope_dec=-24.256457, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.93216, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:44:45.422270', telescope_ra_j2k=18.8862490287523, telescope_dec_j2k=-24.2872436587162, observability=1)
2025-11-17T12:45:45.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:45.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:45.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:45.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:45.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:45.566 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:45.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:45.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:45.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:45.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:45.567 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:45:45.567 [INFO] [ThreadPoolExecutor-2803_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:45:45.568 [INFO] [ThreadPoolExecutor-2803_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:45:52.393 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Status age = 10.687954425811768s
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:52.394 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:52.395 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:52.396 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 17;18.9153912;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93514;2460996.9485231;12.76452333;1.3;_
2025-11-17T12:45:52.396 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response 17;18.9153912;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93514;2460996.9485231;12.76452333;1.3;_
2025-11-17T12:45:52.396 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:52.396 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:52.396 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:52.397 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:52.397 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:52.397 [INFO] [Thread-67758 (handle)] [driver.py] [get_status()] Telra = 18.9153912, teldec = -24.256457
2025-11-17T12:45:52.397 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9153912 -24.256457
2025-11-17T12:45:52.397 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9153912 -24.256457
2025-11-17T12:45:52.397 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9153912 -24.256457
2025-11-17T12:45:52.398 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 17;18.9153912;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93514;2460996.94852312;12.76452333;1.3;_18.8892363241942 -24.2873528654654
2025-11-17T12:45:52.398 [INFO] [Thread-67758 (handle)] [driver.py] [get_status()] ra_j2k = 18.8892363241942     dec_j2k = -24.2873528654654
2025-11-17T12:45:52.398 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:52.398 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:52.398 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 140;0.104623458964339;171.162357330327;_
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response 140;0.104623458964339;171.162357330327;_
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:52.399 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:52.400 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:52.400 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:52.400 [DEBUG] [Thread-67758 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:52.400 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:52.400 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:52.401 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:52.401 [DEBUG] [Thread-67758 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:52.401 [DEBUG] [Thread-67758 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:45:52.401 [DEBUG] [Thread-67758 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50709)
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:52.407 [DEBUG] [Thread-67758 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:52.414 [DEBUG] [Thread-67758 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:52.414 [INFO] [Thread-67758 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9485231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104623458964339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992939, telescope_ra=18.9153912, telescope_dec=-24.256457, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.93514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8892363241942, telescope_dec_j2k=-24.2873528654654, observability=1)
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.672483205795288s
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:45:59.087 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9172591;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93701;2460996.94860056;12.76638611;1.3;_
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9172591;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93701;2460996.94860056;12.76638611;1.3;_
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:45:59.088 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:45:59.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:45:59.089 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:59.089 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:45:59.090 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9172591, teldec = -24.256457
2025-11-17T12:45:59.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9172591 -24.256457
2025-11-17T12:45:59.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9172591 -24.256457
2025-11-17T12:45:59.090 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9172591 -24.256457
2025-11-17T12:45:59.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9172591;-24.256457;50.108337;89.992939;50.08601;90.12017;15.93701;2460996.94860059;12.76638611;1.3;_18.8911045352704 -24.2874211525222
2025-11-17T12:45:59.091 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.8911045352704     dec_j2k = -24.2874211525222
2025-11-17T12:45:59.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:45:59.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:45:59.091 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104623499076282;171.162357330327;_
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104623499076282;171.162357330327;_
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:59.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:45:59.093 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56077)
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:45:59.097 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:45:59.104 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:45:59.104 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:59.104 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:45:59.104 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:45:59.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:45:59.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:45:59.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:45:59.105 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:45:59.105 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:45:59.105 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94860056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104623499076282, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992939, telescope_ra=18.9172591, telescope_dec=-24.256457, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.93701, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8911045352704, telescope_dec_j2k=-24.2874211525222, observability=1)
2025-11-17T12:46:06.447 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.447 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.447 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:06.447 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:06.447 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:46:06.448 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:06.449 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:06.450 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.450 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.451 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:46:06.452 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:06.453 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Park
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:46:06.454 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:46:06.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 29;18.9193136;-24.256457;50.108337;89.992938;50.08601;90.12017;15.93907;2460996.94868581;12.768435;1.3;_Park Command Successful
2025-11-17T12:46:07.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:46:07.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:46:07.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:46:07.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:46:07.455 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:46:08.456 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:46:08.456 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:46:08.456 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:46:08.457 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:46:08.457 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:46:09.457 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:46:09.457 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:46:09.457 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:46:09.458 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:46:09.458 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:46:10.458 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:46:10.458 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:10.459 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:46:10.460 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:46:10.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Status age = 11.46546459197998s
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:10.570 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:10.571 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:10.572 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:10.573 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 17;18.9204625;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94022;2460996.94873348;12.76958083;1.3;_
2025-11-17T12:46:10.573 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response 17;18.9204625;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94022;2460996.94873348;12.76958083;1.3;_
2025-11-17T12:46:10.573 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:10.573 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:10.573 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:10.574 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:10.574 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:10.574 [INFO] [Thread-67759 (handle)] [driver.py] [get_status()] Telra = 18.9204625, teldec = -24.256457
2025-11-17T12:46:10.574 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9204625 -24.256457
2025-11-17T12:46:10.574 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9204625 -24.256457
2025-11-17T12:46:10.574 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9204625 -24.256457
2025-11-17T12:46:10.575 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 17;18.9204625;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94022;2460996.94873351;12.76958083;1.3;_18.8943084709692 -24.2875382464989
2025-11-17T12:46:10.575 [INFO] [Thread-67759 (handle)] [driver.py] [get_status()] ra_j2k = 18.8943084709692     dec_j2k = -24.2875382464989
2025-11-17T12:46:10.575 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:10.575 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 140;0.104624060643481;171.162351965909;_
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response 140;0.104624060643481;171.162351965909;_
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:10.576 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:10.577 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:10.578 [DEBUG] [Thread-67759 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:10.578 [DEBUG] [Thread-67759 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:10.578 [DEBUG] [Thread-67759 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36945)
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:10.580 [DEBUG] [Thread-67759 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:10.588 [DEBUG] [Thread-67759 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:10.588 [INFO] [Thread-67759 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94873348, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104624060643481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992938, telescope_ra=18.9204625, telescope_dec=-24.256457, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.94022, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8943084709692, telescope_dec_j2k=-24.2875382464989, observability=1)
2025-11-17T12:46:10.759 [DEBUG] [Thread-67760 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:10.759 [DEBUG] [Thread-67760 (handle)] [server.py] [get_status()] Status age = 0.17104291915893555s
2025-11-17T12:46:10.759 [DEBUG] [Thread-67760 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.17104291915893555
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:46:11.461 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:46:11.462 [DEBUG] [ThreadPoolExecutor-2802_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:11.462 [INFO] [ThreadPoolExecutor-2802_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.353480577468872s
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:14.943 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9216856;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94144;2460996.94878407;12.77080056;1.3;_
2025-11-17T12:46:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9216856;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94144;2460996.94878407;12.77080056;1.3;_
2025-11-17T12:46:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:14.945 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9216856, teldec = -24.256457
2025-11-17T12:46:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9216856 -24.256457
2025-11-17T12:46:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9216856 -24.256457
2025-11-17T12:46:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9216856 -24.256457
2025-11-17T12:46:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9216856;-24.256457;50.108337;89.992938;50.08601;90.12017;15.94144;2460996.9487841;12.77080056;1.3;_18.8955317762429 -24.2875829489794
2025-11-17T12:46:14.946 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.8955317762429     dec_j2k = -24.2875829489794
2025-11-17T12:46:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104624461762909;171.162357330327;_
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104624461762909;171.162357330327;_
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:14.952 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39721)
2025-11-17T12:46:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:14.960 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:14.960 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:14.961 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:14.961 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94878407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104624461762909, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108337, telescope_az=89.992938, telescope_ra=18.9216856, telescope_dec=-24.256457, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.94144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8955317762429, telescope_dec_j2k=-24.2875829489794, observability=1)
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.752007246017456s
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:26.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:26.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:26.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:26.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9249495;-24.256456;50.108336;89.992938;50.08601;90.12017;15.9447;2460996.94892031;12.77405556;1.3;_
2025-11-17T12:46:26.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9249495;-24.256456;50.108336;89.992938;50.08601;90.12017;15.9447;2460996.94892031;12.77405556;1.3;_
2025-11-17T12:46:26.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:26.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:26.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:26.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:26.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:26.717 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9249495, teldec = -24.256456
2025-11-17T12:46:26.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9249495 -24.256456
2025-11-17T12:46:26.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9249495 -24.256456
2025-11-17T12:46:26.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9249495 -24.256456
2025-11-17T12:46:26.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9249495;-24.256456;50.108336;89.992938;50.08601;90.12017;15.9447;2460996.94892035;12.77405556;1.3;_18.8987962262136 -24.2877012247252
2025-11-17T12:46:26.718 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.8987962262136     dec_j2k = -24.2877012247252
2025-11-17T12:46:26.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:26.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:26.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104624541986795;171.162351965909;_
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104624541986795;171.162351965909;_
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:26.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:26.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:26.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:26.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:26.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42005)
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:26.728 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:26.735 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:46:26.736 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94892031, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104624541986795, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992938, telescope_ra=18.9249495, telescope_dec=-24.256456, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.9447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8987962262136, telescope_dec_j2k=-24.2877012247252, observability=1)
2025-11-17T12:46:26.736 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.046483516693115 seconds ago
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Status age = 1.892474889755249s
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:28.628 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:28.629 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:28.630 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 17;18.9255016;-24.256456;50.108336;89.992938;50.08601;90.12017;15.94525;2460996.94894248;12.77460611;1.3;_
2025-11-17T12:46:28.630 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response 17;18.9255016;-24.256456;50.108336;89.992938;50.08601;90.12017;15.94525;2460996.94894248;12.77460611;1.3;_
2025-11-17T12:46:28.630 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:28.630 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:28.630 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:28.631 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:28.631 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:28.631 [INFO] [Thread-67761 (handle)] [driver.py] [get_status()] Telra = 18.9255016, teldec = -24.256456
2025-11-17T12:46:28.631 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9255016 -24.256456
2025-11-17T12:46:28.631 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9255016 -24.256456
2025-11-17T12:46:28.631 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9255016 -24.256456
2025-11-17T12:46:28.632 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 17;18.9255016;-24.256456;50.108336;89.992938;50.08601;90.12017;15.94525;2460996.9489425;12.77460611;1.3;_18.8993484194966 -24.2877213984546
2025-11-17T12:46:28.632 [INFO] [Thread-67761 (handle)] [driver.py] [get_status()] ra_j2k = 18.8993484194966     dec_j2k = -24.2877213984546
2025-11-17T12:46:28.632 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:28.632 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:28.632 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 140;0.104624541986795;171.162346601491;_
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response 140;0.104624541986795;171.162346601491;_
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:28.633 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:28.634 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:28.635 [DEBUG] [Thread-67761 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:28.635 [DEBUG] [Thread-67761 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:28.635 [DEBUG] [Thread-67761 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:28.641 [DEBUG] [Thread-67761 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40627)
2025-11-17T12:46:28.641 [DEBUG] [Thread-67761 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:28.642 [DEBUG] [Thread-67761 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:28.642 [DEBUG] [Thread-67761 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:28.642 [DEBUG] [Thread-67761 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:28.642 [DEBUG] [Thread-67761 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:28.649 [DEBUG] [Thread-67761 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:28.649 [INFO] [Thread-67761 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94894248, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104624541986795, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992938, telescope_ra=18.9255016, telescope_dec=-24.256456, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.94525, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.8993484194966, telescope_dec_j2k=-24.2877213984546, observability=1)
2025-11-17T12:46:41.766 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:46:41
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.11688780784607s
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:41.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:41.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9291591;-24.256456;50.108336;89.992937;50.08601;90.12017;15.94891;2460996.94909454;12.77825361;1.3;_
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.9291591;-24.256456;50.108336;89.992937;50.08601;90.12017;15.94891;2460996.94909454;12.77825361;1.3;_
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:41.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:41.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:41.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:41.769 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.9291591, teldec = -24.256456
2025-11-17T12:46:41.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9291591 -24.256456
2025-11-17T12:46:41.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9291591 -24.256456
2025-11-17T12:46:41.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9291591 -24.256456
2025-11-17T12:46:41.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9291591;-24.256456;50.108336;89.992937;50.08601;90.12017;15.94891;2460996.94909456;12.77825361;1.3;_18.9030065395643 -24.2878550276163
2025-11-17T12:46:41.770 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.9030065395643     dec_j2k = -24.2878550276163
2025-11-17T12:46:41.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:41.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:41.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:41.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104624943106223;171.162346601491;_
2025-11-17T12:46:41.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104624943106223;171.162346601491;_
2025-11-17T12:46:41.771 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:41.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:41.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:41.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:41.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:41.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:41.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:41.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:41.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:41.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:41.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:41.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:41.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36253)
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:41.775 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:41.782 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:41.782 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.94909454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104624943106223, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9291591, telescope_dec=-24.256456, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.94891, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:45:45.564091', telescope_ra_j2k=18.9030065395643, telescope_dec_j2k=-24.2878550276163, observability=1)
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:45.707 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:45.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:45.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:45.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:45.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:45.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:45.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:45.708 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:45.709 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:46:45.710 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:46.693 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:46.693 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Status age = 4.910900354385376s
2025-11-17T12:46:46.693 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:46.694 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:46.695 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 17;18.9305228;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95028;2460996.94915156;12.77961361;1.3;_
2025-11-17T12:46:46.695 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response 17;18.9305228;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95028;2460996.94915156;12.77961361;1.3;_
2025-11-17T12:46:46.695 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:46.695 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:46.695 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:46.696 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:46.696 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:46.696 [INFO] [Thread-67762 (handle)] [driver.py] [get_status()] Telra = 18.9305228, teldec = -24.256456
2025-11-17T12:46:46.696 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9305228 -24.256456
2025-11-17T12:46:46.696 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9305228 -24.256456
2025-11-17T12:46:46.696 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9305228 -24.256456
2025-11-17T12:46:46.697 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 17;18.9305228;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95028;2460996.94915159;12.77961361;1.3;_18.9043704716883 -24.2879048442217
2025-11-17T12:46:46.697 [INFO] [Thread-67762 (handle)] [driver.py] [get_status()] ra_j2k = 18.9043704716883     dec_j2k = -24.2879048442217
2025-11-17T12:46:46.697 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:46.697 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:46.697 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 140;0.104625304113708;171.162357330327;_
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response 140;0.104625304113708;171.162357330327;_
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:46.698 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:46.699 [DEBUG] [Thread-67762 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42049)
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:46.706 [DEBUG] [Thread-67762 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:46:46.711 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:46.712 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:46.713 [DEBUG] [Thread-67762 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:46.713 [DEBUG] [Thread-67762 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:46.713 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:46.713 [DEBUG] [Thread-67762 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:46.713 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:46.713 [DEBUG] [Thread-67762 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:46.713 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:46.714 [DEBUG] [Thread-67762 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:46.714 [DEBUG] [ThreadPoolExecutor-2804_0] [payload.py] [to_registers()] [0]
2025-11-17T12:46:46.714 [DEBUG] [Thread-67762 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:46.714 [DEBUG] [Thread-67762 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:46.714 [DEBUG] [Thread-67762 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:46.714 [DEBUG] [Thread-67762 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:46.714 [INFO] [Thread-67762 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94915156, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625304113708, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9305228, telescope_dec=-24.256456, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.95028, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9043704716883, telescope_dec_j2k=-24.2879048442217, observability=1)
2025-11-17T12:46:46.720 [DEBUG] [ThreadPoolExecutor-2804_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40273)
2025-11-17T12:46:46.720 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:46.720 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:46.720 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:46:46.721 [DEBUG] [ThreadPoolExecutor-2804_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:46.721 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:46.728 [DEBUG] [ThreadPoolExecutor-2804_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.480899810791016s
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:46:58.195 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9337255;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95348;2460996.94928468;12.7828075;1.3;_
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9337255;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95348;2460996.94928468;12.7828075;1.3;_
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:46:58.196 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:46:58.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:58.197 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:46:58.197 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9337255, teldec = -24.256456
2025-11-17T12:46:58.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9337255 -24.256456
2025-11-17T12:46:58.197 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9337255 -24.256456
2025-11-17T12:46:58.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9337255 -24.256456
2025-11-17T12:46:58.198 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9337255;-24.256456;50.108336;89.992937;50.08601;90.12017;15.95348;2460996.9492847;12.7828075;1.3;_18.9075737188297 -24.2880218252186
2025-11-17T12:46:58.199 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9075737188297     dec_j2k = -24.2880218252186
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104625223889823;171.162351965909;_
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104625223889823;171.162351965909;_
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:58.199 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:46:58.200 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:46:58.205 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50271)
2025-11-17T12:46:58.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:46:58.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:46:58.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:46:58.206 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:46:58.206 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:46:58.213 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:46:58.213 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94928468, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625223889823, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9337255, telescope_dec=-24.256456, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.95348, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9075737188297, telescope_dec_j2k=-24.2880218252186, observability=1)
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Status age = 6.654704570770264s
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:04.868 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:04.869 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:04.870 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 17;18.9355931;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95535;2460996.94936192;12.78467;1.3;_
2025-11-17T12:47:04.870 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response 17;18.9355931;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95535;2460996.94936192;12.78467;1.3;_
2025-11-17T12:47:04.870 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:04.870 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:04.870 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:04.871 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:04.871 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:04.871 [INFO] [Thread-67763 (handle)] [driver.py] [get_status()] Telra = 18.9355931, teldec = -24.256455
2025-11-17T12:47:04.871 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9355931 -24.256455
2025-11-17T12:47:04.871 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9355931 -24.256455
2025-11-17T12:47:04.871 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9355931 -24.256455
2025-11-17T12:47:04.872 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 17;18.9355931;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95535;2460996.94936194;12.78467;1.3;_18.9094416393691 -24.2880890309402
2025-11-17T12:47:04.872 [INFO] [Thread-67763 (handle)] [driver.py] [get_status()] ra_j2k = 18.9094416393691     dec_j2k = -24.2880890309402
2025-11-17T12:47:04.872 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:04.872 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:04.872 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 140;0.104625223889823;171.162351965909;_
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response 140;0.104625223889823;171.162351965909;_
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:04.873 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:04.874 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:04.875 [DEBUG] [Thread-67763 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:04.875 [DEBUG] [Thread-67763 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:04.875 [DEBUG] [Thread-67763 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53831)
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:04.878 [DEBUG] [Thread-67763 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:04.885 [DEBUG] [Thread-67763 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:04.885 [INFO] [Thread-67763 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94936192, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625223889823, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9355931, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.95535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9094416393691, telescope_dec_j2k=-24.2880890309402, observability=1)
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Status age = 5.902627944946289s
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:10.788 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:10.789 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:10.790 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 17;18.9372359;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95699;2460996.94943044;12.78630833;1.3;_
2025-11-17T12:47:10.790 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response 17;18.9372359;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95699;2460996.94943044;12.78630833;1.3;_
2025-11-17T12:47:10.790 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:10.790 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:10.790 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:10.791 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:10.791 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:10.791 [INFO] [Thread-67764 (handle)] [driver.py] [get_status()] Telra = 18.9372359, teldec = -24.256455
2025-11-17T12:47:10.792 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9372359 -24.256455
2025-11-17T12:47:10.792 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9372359 -24.256455
2025-11-17T12:47:10.792 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9372359 -24.256455
2025-11-17T12:47:10.792 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 17;18.9372359;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95699;2460996.94943046;12.78630833;1.3;_18.9110847219383 -24.2881490207765
2025-11-17T12:47:10.793 [INFO] [Thread-67764 (handle)] [driver.py] [get_status()] ra_j2k = 18.9110847219383     dec_j2k = -24.2881490207765
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 140;0.104625745345079;171.162357330327;_
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response 140;0.104625745345079;171.162357330327;_
2025-11-17T12:47:10.793 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:10.794 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:10.794 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:10.794 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:10.795 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:10.796 [DEBUG] [Thread-67764 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:10.796 [DEBUG] [Thread-67764 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:10.796 [DEBUG] [Thread-67764 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60167)
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:10.802 [DEBUG] [Thread-67764 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:10.809 [DEBUG] [Thread-67764 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:10.809 [DEBUG] [Thread-67764 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:10.809 [DEBUG] [Thread-67764 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:10.809 [DEBUG] [Thread-67764 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:10.810 [DEBUG] [Thread-67764 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:10.810 [DEBUG] [Thread-67764 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:10.810 [DEBUG] [Thread-67764 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:10.810 [DEBUG] [Thread-67764 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:10.810 [DEBUG] [Thread-67764 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:10.810 [INFO] [Thread-67764 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94943044, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625745345079, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9372359, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.95699, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9110847219383, telescope_dec_j2k=-24.2881490207765, observability=1)
2025-11-17T12:47:11.728 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:11.728 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:11.728 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:11.728 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:11.728 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:11.729 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:47:11.730 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:47:11.731 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.138446092605591s
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9383748;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95813;2460996.94947859;12.78744417;1.3;_
2025-11-17T12:47:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9383748;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95813;2460996.94947859;12.78744417;1.3;_
2025-11-17T12:47:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:14.951 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9383748, teldec = -24.256455
2025-11-17T12:47:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9383748 -24.256455
2025-11-17T12:47:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9383748 -24.256455
2025-11-17T12:47:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9383748 -24.256455
2025-11-17T12:47:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.938403;-24.256455;50.108336;89.992937;50.08601;90.12017;15.95816;2460996.94947861;12.78747222;1.3;_18.9122238182653 -24.288190606481
2025-11-17T12:47:14.952 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.9122238182653     dec_j2k = -24.288190606481
2025-11-17T12:47:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104625825568965;171.162357330327;_
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104625825568965;171.162357330327;_
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36643)
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:14.964 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94947859, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625825568965, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108336, telescope_az=89.992937, telescope_ra=18.9383748, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.95813, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9122238182653, telescope_dec_j2k=-24.288190606481, observability=1)
2025-11-17T12:47:22.929 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:22.929 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Status age = 7.965551137924194s
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:22.930 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:22.931 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:22.932 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 17;18.9406068;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96036;2460996.94957097;12.78967;1.3;_
2025-11-17T12:47:22.932 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response 17;18.9406068;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96036;2460996.94957097;12.78967;1.3;_
2025-11-17T12:47:22.932 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:22.932 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:22.932 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:22.933 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:22.933 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:22.933 [INFO] [Thread-67765 (handle)] [driver.py] [get_status()] Telra = 18.9406068, teldec = -24.256455
2025-11-17T12:47:22.933 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9406068 -24.256455
2025-11-17T12:47:22.933 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9406068 -24.256455
2025-11-17T12:47:22.933 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9406068 -24.256455
2025-11-17T12:47:22.934 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 17;18.9406068;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96036;2460996.949571;12.78967;1.3;_18.9144562040472 -24.288272097688
2025-11-17T12:47:22.934 [INFO] [Thread-67765 (handle)] [driver.py] [get_status()] ra_j2k = 18.9144562040472     dec_j2k = -24.288272097688
2025-11-17T12:47:22.934 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:22.934 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:22.934 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 140;0.104625825568965;171.162357330327;_
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response 140;0.104625825568965;171.162357330327;_
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:22.935 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:22.936 [DEBUG] [Thread-67765 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:22.940 [DEBUG] [Thread-67765 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51045)
2025-11-17T12:47:22.940 [DEBUG] [Thread-67765 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:22.940 [DEBUG] [Thread-67765 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:22.941 [DEBUG] [Thread-67765 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:22.941 [DEBUG] [Thread-67765 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:22.941 [DEBUG] [Thread-67765 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:22.947 [DEBUG] [Thread-67765 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:22.948 [DEBUG] [Thread-67765 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:22.948 [INFO] [Thread-67765 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94957097, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104625825568965, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992936, telescope_ra=18.9406068, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.96036, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9144562040472, telescope_dec_j2k=-24.288272097688, observability=1)
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.847721815109253s
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:26.796 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:26.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:26.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:26.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:26.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9416984;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96145;2460996.94961572;12.79075861;1.3;_
2025-11-17T12:47:26.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9416984;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96145;2460996.94961572;12.79075861;1.3;_
2025-11-17T12:47:26.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:26.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:26.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:26.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:26.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:26.799 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9416984, teldec = -24.256455
2025-11-17T12:47:26.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9416984 -24.256455
2025-11-17T12:47:26.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9416984 -24.256455
2025-11-17T12:47:26.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9416984 -24.256455
2025-11-17T12:47:26.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9416984;-24.256455;50.108335;89.992936;50.08601;90.12017;15.96145;2460996.94961574;12.79075861;1.3;_18.9155479932142 -24.2883119486388
2025-11-17T12:47:26.800 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.9155479932142     dec_j2k = -24.2883119486388
2025-11-17T12:47:26.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:26.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:26.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104626226688393;171.162368059163;_
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104626226688393;171.162368059163;_
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:26.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:26.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:26.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:26.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:26.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:26.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58859)
2025-11-17T12:47:26.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:26.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:26.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:26.809 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:26.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:26.816 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:47:26.816 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94961572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104626226688393, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992936, telescope_ra=18.9416984, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.96145, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9155479932142, telescope_dec_j2k=-24.2883119486388, observability=1)
2025-11-17T12:47:26.816 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.050501346588135 seconds ago
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Status age = 14.190098285675049s
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:41.006 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:41.007 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:41.007 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:41.007 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:41.007 [DEBUG] [Thread-67766 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:41.008 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:41.008 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:41.008 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:41.008 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:41.008 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 17;18.9456475;-24.256455;50.108335;89.992936;50.08601;90.12017;15.9654;2460996.94978019;12.79469694;1.3;_
2025-11-17T12:47:41.009 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response 17;18.9456475;-24.256455;50.108335;89.992936;50.08601;90.12017;15.9654;2460996.94978019;12.79469694;1.3;_
2025-11-17T12:47:41.009 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:41.009 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:41.009 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:41.010 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:41.010 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:41.010 [INFO] [Thread-67766 (handle)] [driver.py] [get_status()] Telra = 18.9456475, teldec = -24.256455
2025-11-17T12:47:41.010 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9456475 -24.256455
2025-11-17T12:47:41.010 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9456475 -24.256455
2025-11-17T12:47:41.010 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9456475 -24.256455
2025-11-17T12:47:41.011 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 17;18.9456475;-24.256455;50.108335;89.992936;50.08601;90.12017;15.9654;2460996.94978022;12.79469694;1.3;_18.9194977802734 -24.2884560972005
2025-11-17T12:47:41.011 [INFO] [Thread-67766 (handle)] [driver.py] [get_status()] ra_j2k = 18.9194977802734     dec_j2k = -24.2884560972005
2025-11-17T12:47:41.011 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:41.011 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:41.011 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 140;0.104626427248107;171.162357330327;_
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response 140;0.104626427248107;171.162357330327;_
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:41.012 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:41.013 [DEBUG] [Thread-67766 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45199)
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:41.015 [DEBUG] [Thread-67766 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:41.023 [DEBUG] [Thread-67766 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:41.023 [INFO] [Thread-67766 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94978019, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104626427248107, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992936, telescope_ra=18.9456475, telescope_dec=-24.256455, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.9654, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:46:45.706668', telescope_ra_j2k=18.9194977802734, telescope_dec_j2k=-24.2884560972005, observability=1)
2025-11-17T12:47:41.843 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:47:41
2025-11-17T12:47:41.843 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:41.844 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.8205134868621826s
2025-11-17T12:47:41.844 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8205134868621826
2025-11-17T12:47:45.847 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:45.847 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:45.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:45.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:45.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:45.848 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:45.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:45.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:45.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:45.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:45.849 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:47:45.849 [INFO] [ThreadPoolExecutor-2805_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:47:45.849 [INFO] [ThreadPoolExecutor-2805_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.28465175628662s
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:57.308 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:57.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:57.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9501949;-24.256454;50.108335;89.992935;50.08601;90.12017;15.96995;2460996.94996885;12.79923194;1.3;_
2025-11-17T12:47:57.309 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9501949;-24.256454;50.108335;89.992935;50.08601;90.12017;15.96995;2460996.94996885;12.79923194;1.3;_
2025-11-17T12:47:57.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:57.309 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:57.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:57.310 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:57.311 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:57.311 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9501949, teldec = -24.256454
2025-11-17T12:47:57.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9501949 -24.256454
2025-11-17T12:47:57.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9501949 -24.256454
2025-11-17T12:47:57.311 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9501949 -24.256454
2025-11-17T12:47:57.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9501949;-24.256454;50.108335;89.992935;50.08601;90.12017;15.96995;2460996.94996889;12.79923194;1.3;_18.9240459768721 -24.2886210440315
2025-11-17T12:47:57.312 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9240459768721     dec_j2k = -24.2886210440315
2025-11-17T12:47:57.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:57.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:57.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10462718937502;171.162362694745;_
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10462718937502;171.162362694745;_
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:57.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:57.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:57.314 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:47:57.314 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50017)
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:57.316 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:57.323 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:57.323 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94996885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10462718937502, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992935, telescope_ra=18.9501949, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.96995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9240459768721, telescope_dec_j2k=-24.2886210440315, observability=1)
2025-11-17T12:47:59.175 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Status age = 1.8521668910980225s
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:47:59.176 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:47:59.177 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:47:59.177 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 17;18.9506991;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97045;2460996.94999047;12.79973472;1.3;_
2025-11-17T12:47:59.177 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response 17;18.9506991;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97045;2460996.94999047;12.79973472;1.3;_
2025-11-17T12:47:59.178 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:47:59.178 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:47:59.178 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:47:59.179 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:59.179 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:47:59.179 [INFO] [Thread-67767 (handle)] [driver.py] [get_status()] Telra = 18.9506991, teldec = -24.256454
2025-11-17T12:47:59.179 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9506991 -24.256454
2025-11-17T12:47:59.179 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9506991 -24.256454
2025-11-17T12:47:59.179 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9506991 -24.256454
2025-11-17T12:47:59.180 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 17;18.9506991;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97045;2460996.94999051;12.79973472;1.3;_18.9245502655208 -24.2886394409396
2025-11-17T12:47:59.180 [INFO] [Thread-67767 (handle)] [driver.py] [get_status()] ra_j2k = 18.9245502655208     dec_j2k = -24.2886394409396
2025-11-17T12:47:59.180 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:47:59.180 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:47:59.180 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 140;0.104627510270563;171.162368059163;_
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response 140;0.104627510270563;171.162368059163;_
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:59.181 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:47:59.182 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:47:59.183 [DEBUG] [Thread-67767 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:59.183 [DEBUG] [Thread-67767 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:47:59.183 [DEBUG] [Thread-67767 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56747)
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:47:59.184 [DEBUG] [Thread-67767 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:47:59.191 [DEBUG] [Thread-67767 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:47:59.191 [DEBUG] [Thread-67767 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:59.191 [DEBUG] [Thread-67767 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:47:59.191 [DEBUG] [Thread-67767 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:47:59.191 [DEBUG] [Thread-67767 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:47:59.192 [DEBUG] [Thread-67767 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:47:59.192 [DEBUG] [Thread-67767 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:47:59.192 [DEBUG] [Thread-67767 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:47:59.192 [DEBUG] [Thread-67767 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:47:59.192 [INFO] [Thread-67767 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.94999047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104627510270563, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992935, telescope_ra=18.9506991, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.97045, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9245502655208, telescope_dec_j2k=-24.2886394409396, observability=1)
2025-11-17T12:48:06.731 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.731 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.731 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:06.731 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:06.731 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:48:06.732 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:06.733 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:06.734 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:48:06.735 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:06.736 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Park
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:48:06.737 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:48:06.738 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 29;18.9528129;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97257;2460996.95007799;12.80184278;1.3;_Park Command Successful
2025-11-17T12:48:07.738 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:48:07.738 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:48:07.739 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:48:07.739 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:48:07.739 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:48:08.739 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:48:08.739 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:48:08.740 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:48:08.740 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:48:08.741 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:48:09.741 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:48:09.741 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:48:09.741 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:48:09.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:48:09.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:10.742 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:10.743 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:10.743 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:10.743 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:48:10.744 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:48:10.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Status age = 11.650229930877686s
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:10.842 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:10.843 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:10.844 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 17;18.9539521;-24.256454;50.108335;89.992935;50.08601;90.12017;15.9737;2460996.95012551;12.80297889;1.3;_
2025-11-17T12:48:10.844 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response 17;18.9539521;-24.256454;50.108335;89.992935;50.08601;90.12017;15.9737;2460996.95012551;12.80297889;1.3;_
2025-11-17T12:48:10.844 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:10.844 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:10.844 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:10.845 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:10.845 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:10.845 [INFO] [Thread-67768 (handle)] [driver.py] [get_status()] Telra = 18.9539521, teldec = -24.256454
2025-11-17T12:48:10.845 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9539521 -24.256454
2025-11-17T12:48:10.845 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9539521 -24.256454
2025-11-17T12:48:10.845 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9539521 -24.256454
2025-11-17T12:48:10.846 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 17;18.9539521;-24.256454;50.108335;89.992935;50.08601;90.12017;15.9737;2460996.95012553;12.80297889;1.3;_18.9278038391261 -24.2887581212281
2025-11-17T12:48:10.846 [INFO] [Thread-67768 (handle)] [driver.py] [get_status()] ra_j2k = 18.9278038391261     dec_j2k = -24.2887581212281
2025-11-17T12:48:10.846 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:10.847 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:10.847 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:10.847 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 140;0.104628071837762;171.162346601491;_
2025-11-17T12:48:10.847 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response 140;0.104628071837762;171.162346601491;_
2025-11-17T12:48:10.847 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:10.848 [DEBUG] [Thread-67768 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:10.849 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:10.849 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:10.849 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:10.850 [DEBUG] [Thread-67768 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:10.850 [DEBUG] [Thread-67768 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:10.850 [DEBUG] [Thread-67768 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49503)
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:10.852 [DEBUG] [Thread-67768 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:10.853 [DEBUG] [Thread-67768 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:10.854 [INFO] [Thread-67768 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95012551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104628071837762, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992935, telescope_ra=18.9539521, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.9737, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9278038391261, telescope_dec_j2k=-24.2887581212281, observability=1)
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:48:11.745 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:48:11.746 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:48:11.746 [DEBUG] [ThreadPoolExecutor-2804_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:11.746 [INFO] [ThreadPoolExecutor-2804_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:48:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:14.921 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.068035125732422s
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9551008;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97485;2460996.95017273;12.80412444;1.3;_
2025-11-17T12:48:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9551008;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97485;2460996.95017273;12.80412444;1.3;_
2025-11-17T12:48:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:14.925 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9551008, teldec = -24.256454
2025-11-17T12:48:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9551008 -24.256454
2025-11-17T12:48:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9551008 -24.256454
2025-11-17T12:48:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9551008 -24.256454
2025-11-17T12:48:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9551008;-24.256454;50.108335;89.992935;50.08601;90.12017;15.97485;2460996.95017275;12.80412444;1.3;_18.928952742365 -24.2888000242579
2025-11-17T12:48:14.926 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.928952742365     dec_j2k = -24.2888000242579
2025-11-17T12:48:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104627871278048;171.162357330327;_
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104627871278048;171.162357330327;_
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58971)
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:14.932 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:14.939 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95017273, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104627871278048, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108335, telescope_az=89.992935, telescope_ra=18.9551008, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.97485, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.928952742365, telescope_dec_j2k=-24.2888000242579, observability=1)
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Status age = 2.293962001800537s
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:17.233 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:17.234 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:17.234 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 17;18.9557353;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97549;2460996.95019948;12.80475722;1.3;_
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response 17;18.9557353;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97549;2460996.95019948;12.80475722;1.3;_
2025-11-17T12:48:17.235 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:17.236 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:17.236 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:17.237 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:17.237 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:17.237 [INFO] [Thread-67769 (handle)] [driver.py] [get_status()] Telra = 18.9557353, teldec = -24.256454
2025-11-17T12:48:17.237 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9557353 -24.256454
2025-11-17T12:48:17.237 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9557353 -24.256454
2025-11-17T12:48:17.237 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9557353 -24.256454
2025-11-17T12:48:17.238 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 17;18.9557353;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97549;2460996.95019951;12.80475722;1.3;_18.9295873547805 -24.2888231687583
2025-11-17T12:48:17.238 [INFO] [Thread-67769 (handle)] [driver.py] [get_status()] ra_j2k = 18.9295873547805     dec_j2k = -24.2888231687583
2025-11-17T12:48:17.238 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:17.238 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:17.238 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 140;0.104628593293018;171.162357330327;_
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response 140;0.104628593293018;171.162357330327;_
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:17.239 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:17.240 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:17.241 [DEBUG] [Thread-67769 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:17.241 [DEBUG] [Thread-67769 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:17.241 [DEBUG] [Thread-67769 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36543)
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:17.245 [DEBUG] [Thread-67769 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:17.252 [DEBUG] [Thread-67769 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:17.253 [DEBUG] [Thread-67769 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:17.253 [INFO] [Thread-67769 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95019948, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104628593293018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992935, telescope_ra=18.9557353, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.97549, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9295873547805, telescope_dec_j2k=-24.2888231687583, observability=1)
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.623127698898315s
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:26.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9584157;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97817;2460996.95031108;12.80743028;1.3;_
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9584157;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97817;2460996.95031108;12.80743028;1.3;_
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:26.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:26.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:26.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:26.878 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9584157, teldec = -24.256454
2025-11-17T12:48:26.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9584157 -24.256454
2025-11-17T12:48:26.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9584157 -24.256454
2025-11-17T12:48:26.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9584157 -24.256454
2025-11-17T12:48:26.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9584157;-24.256454;50.108334;89.992935;50.08601;90.12017;15.97817;2460996.9503111;12.80743028;1.3;_18.9322682308791 -24.2889209315656
2025-11-17T12:48:26.880 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.9322682308791     dec_j2k = -24.2889209315656
2025-11-17T12:48:26.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:26.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:26.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:26.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104628833964675;171.162368059163;_
2025-11-17T12:48:26.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104628833964675;171.162368059163;_
2025-11-17T12:48:26.881 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:26.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:26.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:26.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:26.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:26.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:26.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56461)
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:26.886 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:26.893 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:26.893 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:26.893 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:26.894 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:48:26.894 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95031108, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104628833964675, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992935, telescope_ra=18.9584157, telescope_dec=-24.256454, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.97817, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9322682308791, telescope_dec_j2k=-24.2889209315656, observability=1)
2025-11-17T12:48:26.894 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05051279067993 seconds ago
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Status age = 8.48552393913269s
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:35.379 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:35.380 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:35.381 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 17;18.9607861;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98054;2460996.9504095;12.80979417;1.3;_
2025-11-17T12:48:35.381 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response 17;18.9607861;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98054;2460996.9504095;12.80979417;1.3;_
2025-11-17T12:48:35.381 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:35.381 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:35.381 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:35.382 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:35.382 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:35.382 [INFO] [Thread-67770 (handle)] [driver.py] [get_status()] Telra = 18.9607861, teldec = -24.256453
2025-11-17T12:48:35.382 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9607861 -24.256453
2025-11-17T12:48:35.382 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9607861 -24.256453
2025-11-17T12:48:35.382 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9607861 -24.256453
2025-11-17T12:48:35.383 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 17;18.9607861;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98054;2460996.95040953;12.80979417;1.3;_18.9346390537367 -24.289006374946
2025-11-17T12:48:35.383 [INFO] [Thread-67770 (handle)] [driver.py] [get_status()] ra_j2k = 18.9346390537367     dec_j2k = -24.289006374946
2025-11-17T12:48:35.383 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:35.383 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:35.383 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 140;0.104629435643817;171.162357330327;_
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response 140;0.104629435643817;171.162357330327;_
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:35.384 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:35.385 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:35.386 [DEBUG] [Thread-67770 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:35.386 [DEBUG] [Thread-67770 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:35.386 [DEBUG] [Thread-67770 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:48:35.388 [DEBUG] [Thread-67770 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34051)
2025-11-17T12:48:35.388 [DEBUG] [Thread-67770 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:35.388 [DEBUG] [Thread-67770 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:35.388 [DEBUG] [Thread-67770 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:35.389 [DEBUG] [Thread-67770 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:35.389 [DEBUG] [Thread-67770 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:35.396 [DEBUG] [Thread-67770 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:35.396 [INFO] [Thread-67770 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9504095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104629435643817, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992934, telescope_ra=18.9607861, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.98054, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9346390537367, telescope_dec_j2k=-24.289006374946, observability=1)
2025-11-17T12:48:41.904 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:48:41
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.508290767669678s
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:41.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:41.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:41.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9626164;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98237;2460996.95048504;12.81161944;1.3;_
2025-11-17T12:48:41.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.9626164;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98237;2460996.95048504;12.81161944;1.3;_
2025-11-17T12:48:41.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:41.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:41.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:41.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:41.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:41.908 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.9626164, teldec = -24.256453
2025-11-17T12:48:41.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9626164 -24.256453
2025-11-17T12:48:41.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9626164 -24.256453
2025-11-17T12:48:41.908 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9626164 -24.256453
2025-11-17T12:48:41.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9626164;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98237;2460996.95048506;12.81161944;1.3;_18.9364696811394 -24.2890731137363
2025-11-17T12:48:41.909 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.9364696811394     dec_j2k = -24.2890731137363
2025-11-17T12:48:41.909 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:41.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:41.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104629997211017;171.162362694745;_
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104629997211017;171.162362694745;_
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:41.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:41.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50157)
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:41.914 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:41.922 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:41.923 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:41.923 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:41.923 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:41.923 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95048504, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104629997211017, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992934, telescope_ra=18.9626164, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.98237, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:47:45.847002', telescope_ra_j2k=18.9364696811394, telescope_dec_j2k=-24.2890731137363, observability=1)
2025-11-17T12:48:45.990 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:45.990 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:45.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:45.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:45.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:45.991 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:45.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:45.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:45.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:45.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:45.992 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:48:45.992 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:45.992 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:45.992 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:45.992 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:48:45.993 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:48:45.994 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:46.994 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:46.994 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:46.994 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:46.995 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:46.995 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:46.995 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:48:46.996 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:46.997 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:46.998 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:46.998 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:46.998 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:46.998 [DEBUG] [ThreadPoolExecutor-2806_0] [payload.py] [to_registers()] [0]
2025-11-17T12:48:47.004 [DEBUG] [ThreadPoolExecutor-2806_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35159)
2025-11-17T12:48:47.004 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:47.004 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:47.004 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:48:47.005 [DEBUG] [ThreadPoolExecutor-2806_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:47.005 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:47.012 [DEBUG] [ThreadPoolExecutor-2806_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:53.447 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:53.447 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Status age = 11.524668216705322s
2025-11-17T12:48:53.447 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:53.447 [DEBUG] [Thread-67771 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:53.447 [DEBUG] [Thread-67771 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:53.448 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:53.449 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 17;18.9658282;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98558;2460996.95061862;12.8148225;1.3;_
2025-11-17T12:48:53.449 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response 17;18.9658282;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98558;2460996.95061862;12.8148225;1.3;_
2025-11-17T12:48:53.449 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:53.449 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:53.449 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:53.450 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:53.450 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:53.450 [INFO] [Thread-67771 (handle)] [driver.py] [get_status()] Telra = 18.9658282, teldec = -24.256453
2025-11-17T12:48:53.450 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9658282 -24.256453
2025-11-17T12:48:53.450 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9658282 -24.256453
2025-11-17T12:48:53.450 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9658282 -24.256453
2025-11-17T12:48:53.451 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 17;18.9658282;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98558;2460996.95061865;12.8148225;1.3;_18.939682057864 -24.2891902091643
2025-11-17T12:48:53.451 [INFO] [Thread-67771 (handle)] [driver.py] [get_status()] ra_j2k = 18.939682057864     dec_j2k = -24.2891902091643
2025-11-17T12:48:53.451 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 140;0.104630318106559;171.162351965909;_
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response 140;0.104630318106559;171.162351965909;_
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:53.452 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:53.453 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:53.453 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:53.453 [DEBUG] [Thread-67771 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:53.453 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:53.454 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:53.454 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:53.454 [DEBUG] [Thread-67771 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:53.454 [DEBUG] [Thread-67771 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:53.454 [DEBUG] [Thread-67771 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:53.455 [DEBUG] [Thread-67771 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38715)
2025-11-17T12:48:53.455 [DEBUG] [Thread-67771 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:53.455 [DEBUG] [Thread-67771 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:53.456 [DEBUG] [Thread-67771 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:53.456 [DEBUG] [Thread-67771 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:53.456 [DEBUG] [Thread-67771 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:53.463 [DEBUG] [Thread-67771 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:53.463 [INFO] [Thread-67771 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95061862, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104630318106559, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992934, telescope_ra=18.9658282, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.98558, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.939682057864, telescope_dec_j2k=-24.2891902091643, observability=1)
2025-11-17T12:48:56.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.9535160064697266s
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:48:56.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:48:56.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:48:56.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9666599;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98641;2460996.950653;12.81565194;1.3;_
2025-11-17T12:48:56.419 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9666599;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98641;2460996.950653;12.81565194;1.3;_
2025-11-17T12:48:56.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:48:56.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:48:56.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:48:56.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:56.420 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:48:56.420 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9666599, teldec = -24.256453
2025-11-17T12:48:56.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9666599 -24.256453
2025-11-17T12:48:56.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9666599 -24.256453
2025-11-17T12:48:56.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9666599 -24.256453
2025-11-17T12:48:56.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9666599;-24.256453;50.108334;89.992934;50.08601;90.12017;15.98641;2460996.95065302;12.81565194;1.3;_18.9405139076644 -24.2892205275596
2025-11-17T12:48:56.421 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9405139076644     dec_j2k = -24.2892205275596
2025-11-17T12:48:56.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:48:56.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:48:56.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:48:56.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104630799449873;171.162351965909;_
2025-11-17T12:48:56.422 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104630799449873;171.162351965909;_
2025-11-17T12:48:56.422 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:48:56.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:56.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:56.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:48:56.424 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:48:56.425 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:56.425 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:48:56.425 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41767)
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:48:56.429 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:48:56.436 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:48:56.436 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:48:56.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:48:56.437 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.950653, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104630799449873, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992934, telescope_ra=18.9666599, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.98641, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9405139076644, telescope_dec_j2k=-24.2892205275596, observability=1)
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Status age = 14.445270538330078s
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:10.882 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:10.884 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:10.885 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 17;18.9706748;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99043;2460996.95082043;12.81965583;1.3;_
2025-11-17T12:49:10.885 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response 17;18.9706748;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99043;2460996.95082043;12.81965583;1.3;_
2025-11-17T12:49:10.885 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:10.885 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:10.885 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:10.886 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:10.886 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:10.886 [INFO] [Thread-67772 (handle)] [driver.py] [get_status()] Telra = 18.9706748, teldec = -24.256453
2025-11-17T12:49:10.886 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9706748 -24.256453
2025-11-17T12:49:10.886 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9706748 -24.256453
2025-11-17T12:49:10.886 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9706748 -24.256453
2025-11-17T12:49:10.887 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 17;18.9706748;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99043;2460996.95082045;12.81965583;1.3;_18.9445295334454 -24.289366863765
2025-11-17T12:49:10.887 [INFO] [Thread-67772 (handle)] [driver.py] [get_status()] ra_j2k = 18.9445295334454     dec_j2k = -24.289366863765
2025-11-17T12:49:10.887 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:10.887 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:10.887 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 140;0.104631601688729;171.162357330327;_
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response 140;0.104631601688729;171.162357330327;_
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:10.888 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:10.889 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:10.889 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:10.889 [DEBUG] [Thread-67772 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:10.889 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:10.889 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:10.890 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:10.890 [DEBUG] [Thread-67772 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:10.890 [DEBUG] [Thread-67772 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:10.890 [DEBUG] [Thread-67772 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33513)
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:10.892 [DEBUG] [Thread-67772 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:10.899 [DEBUG] [Thread-67772 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:10.900 [INFO] [Thread-67772 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95082043, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104631601688729, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992933, telescope_ra=18.9706748, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.99043, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9445295334454, telescope_dec_j2k=-24.289366863765, observability=1)
2025-11-17T12:49:11.514 [DEBUG] [Thread-67773 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:11.514 [DEBUG] [Thread-67773 (handle)] [server.py] [get_status()] Status age = 0.6149187088012695s
2025-11-17T12:49:11.514 [DEBUG] [Thread-67773 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6149187088012695
2025-11-17T12:49:12.012 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:12.012 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:12.012 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:12.012 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:12.012 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:12.013 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:49:12.014 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:49:12.015 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.024856328964233s
2025-11-17T12:49:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:14.925 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9718134;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99157;2460996.95086721;12.82079139;1.3;_
2025-11-17T12:49:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9718134;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99157;2460996.95086721;12.82079139;1.3;_
2025-11-17T12:49:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:14.928 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9718134, teldec = -24.256453
2025-11-17T12:49:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9718134 -24.256453
2025-11-17T12:49:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9718134 -24.256453
2025-11-17T12:49:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9718134 -24.256453
2025-11-17T12:49:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9718134;-24.256453;50.108334;89.992933;50.08601;90.12017;15.99157;2460996.95086723;12.82079139;1.3;_18.9456683400692 -24.2894083574176
2025-11-17T12:49:14.929 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.9456683400692     dec_j2k = -24.2894083574176
2025-11-17T12:49:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104632564375356;171.162351965909;_
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104632564375356;171.162351965909;_
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:49:14.933 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41707)
2025-11-17T12:49:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:14.933 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:14.934 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:14.934 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:14.941 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95086721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104632564375356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108334, telescope_az=89.992933, telescope_ra=18.9718134, telescope_dec=-24.256453, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.99157, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9456683400692, telescope_dec_j2k=-24.2894083574176, observability=1)
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.01270341873169s
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:26.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9751581;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99491;2460996.95100642;12.82412694;1.3;_
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9751581;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99491;2460996.95100642;12.82412694;1.3;_
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:26.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:26.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:26.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:26.956 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9751581, teldec = -24.256452
2025-11-17T12:49:26.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9751581 -24.256452
2025-11-17T12:49:26.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9751581 -24.256452
2025-11-17T12:49:26.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9751581 -24.256452
2025-11-17T12:49:26.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9751581;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99491;2460996.95100645;12.82412694;1.3;_18.9490136492691 -24.2895292310691
2025-11-17T12:49:26.957 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.9490136492691     dec_j2k = -24.2895292310691
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104632203367871;171.162357330327;_
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104632203367871;171.162357330327;_
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:26.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:26.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:26.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:26.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:26.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:26.965 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50333)
2025-11-17T12:49:26.965 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:26.965 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:26.966 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:26.966 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:26.966 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:26.973 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:49:26.973 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95100642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104632203367871, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992933, telescope_ra=18.9751581, telescope_dec=-24.256452, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.99491, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9490136492691, telescope_dec_j2k=-24.2895292310691, observability=1)
2025-11-17T12:49:26.973 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.068910121917725 seconds ago
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Status age = 2.6747047901153564s
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:29.648 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 17;18.9759149;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99567;2460996.9510376;12.82488167;1.3;_
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response 17;18.9759149;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99567;2460996.9510376;12.82488167;1.3;_
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:29.649 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:29.650 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:29.650 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:29.650 [INFO] [Thread-67774 (handle)] [driver.py] [get_status()] Telra = 18.9759149, teldec = -24.256452
2025-11-17T12:49:29.650 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9759149 -24.256452
2025-11-17T12:49:29.650 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9759149 -24.256452
2025-11-17T12:49:29.650 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9759149 -24.256452
2025-11-17T12:49:29.651 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 17;18.9759149;-24.256452;50.108333;89.992933;50.08601;90.12017;15.99567;2460996.95103763;12.82488167;1.3;_18.9497705874892 -24.2895568038281
2025-11-17T12:49:29.651 [INFO] [Thread-67774 (handle)] [driver.py] [get_status()] ra_j2k = 18.9497705874892     dec_j2k = -24.2895568038281
2025-11-17T12:49:29.651 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:29.651 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:29.651 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 140;0.104632002808157;171.162357330327;_
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response 140;0.104632002808157;171.162357330327;_
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:29.652 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:29.653 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:29.654 [DEBUG] [Thread-67774 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:29.654 [DEBUG] [Thread-67774 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:29.654 [DEBUG] [Thread-67774 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35027)
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:29.656 [DEBUG] [Thread-67774 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:29.663 [DEBUG] [Thread-67774 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:29.663 [INFO] [Thread-67774 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9510376, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104632002808157, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992933, telescope_ra=18.9759149, telescope_dec=-24.256452, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.99567, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9497705874892, telescope_dec_j2k=-24.2895568038281, observability=1)
2025-11-17T12:49:41.983 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:49:41
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.31969165802002s
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:41.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:41.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:41.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9793415;-24.256452;50.108333;89.992932;50.08601;90.12017;15.99909;2460996.95118038;12.82829889;1.3;_
2025-11-17T12:49:41.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;18.9793415;-24.256452;50.108333;89.992932;50.08601;90.12017;15.99909;2460996.95118038;12.82829889;1.3;_
2025-11-17T12:49:41.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:41.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:41.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:41.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:41.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:41.986 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 18.9793415, teldec = -24.256452
2025-11-17T12:49:41.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9793415 -24.256452
2025-11-17T12:49:41.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9793415 -24.256452
2025-11-17T12:49:41.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9793415 -24.256452
2025-11-17T12:49:41.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;18.9793415;-24.256452;50.108333;89.992932;50.08601;90.12017;15.99909;2460996.9511804;12.82829889;1.3;_18.9531978152614 -24.2896816306774
2025-11-17T12:49:41.987 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.9531978152614     dec_j2k = -24.2896816306774
2025-11-17T12:49:41.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:41.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:41.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104633206166441;171.162362694745;_
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104633206166441;171.162362694745;_
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:41.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:41.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:41.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35441)
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:41.995 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:42.002 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:42.003 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:42.003 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:42.003 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:42.003 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95118038, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104633206166441, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9793415, telescope_dec=-24.256452, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=15.99909, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:48:45.989472', telescope_ra_j2k=18.9531978152614, telescope_dec_j2k=-24.2896816306774, observability=1)
2025-11-17T12:49:46.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:46.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:46.133 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:46.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:46.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:46.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:46.134 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:49:46.134 [INFO] [ThreadPoolExecutor-2807_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:49:46.134 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Status age = 5.6984007358551025s
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:47.701 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:47.702 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:47.703 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 17;18.9809289;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00068;2460996.95124656;12.82988194;1.3;_
2025-11-17T12:49:47.703 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response 17;18.9809289;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00068;2460996.95124656;12.82988194;1.3;_
2025-11-17T12:49:47.703 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:47.703 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:47.703 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:47.704 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:47.704 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:47.704 [INFO] [Thread-67775 (handle)] [driver.py] [get_status()] Telra = 18.9809289, teldec = -24.256452
2025-11-17T12:49:47.704 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9809289 -24.256452
2025-11-17T12:49:47.704 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9809289 -24.256452
2025-11-17T12:49:47.704 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9809289 -24.256452
2025-11-17T12:49:47.705 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 17;18.9809289;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00068;2460996.95124659;12.82988194;1.3;_18.9547855071625 -24.2897394490014
2025-11-17T12:49:47.705 [INFO] [Thread-67775 (handle)] [driver.py] [get_status()] ra_j2k = 18.9547855071625     dec_j2k = -24.2897394490014
2025-11-17T12:49:47.705 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:47.705 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:47.705 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 140;0.104633567173926;171.162357330327;_
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response 140;0.104633567173926;171.162357330327;_
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:47.706 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:47.707 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:47.708 [DEBUG] [Thread-67775 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:47.708 [DEBUG] [Thread-67775 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:49:47.708 [DEBUG] [Thread-67775 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:49:47.715 [DEBUG] [Thread-67775 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54429)
2025-11-17T12:49:47.716 [DEBUG] [Thread-67775 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:47.716 [DEBUG] [Thread-67775 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:47.716 [DEBUG] [Thread-67775 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:47.716 [DEBUG] [Thread-67775 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:47.716 [DEBUG] [Thread-67775 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:47.723 [DEBUG] [Thread-67775 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:47.724 [DEBUG] [Thread-67775 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:47.724 [DEBUG] [Thread-67775 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:47.724 [INFO] [Thread-67775 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95124656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104633567173926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9809289, telescope_dec=-24.256452, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.00068, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9547855071625, telescope_dec_j2k=-24.2897394490014, observability=1)
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.80620002746582s
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:49:55.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:49:55.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9831035;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00286;2460996.95133716;12.83205056;1.3;_
2025-11-17T12:49:55.532 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9831035;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00286;2460996.95133716;12.83205056;1.3;_
2025-11-17T12:49:55.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:49:55.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:49:55.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:49:55.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:55.533 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:49:55.533 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9831035, teldec = -24.256452
2025-11-17T12:49:55.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9831035 -24.256452
2025-11-17T12:49:55.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9831035 -24.256452
2025-11-17T12:49:55.533 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9831035 -24.256452
2025-11-17T12:49:55.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9831035;-24.256452;50.108333;89.992932;50.08601;90.12017;16.00286;2460996.9513372;12.83205056;1.3;_18.9569605081522 -24.289818646094
2025-11-17T12:49:55.534 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9569605081522     dec_j2k = -24.289818646094
2025-11-17T12:49:55.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:49:55.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:49:55.534 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104634249076954;171.162357330327;_
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104634249076954;171.162357330327;_
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:55.535 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:49:55.536 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:49:55.541 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46313)
2025-11-17T12:49:55.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:49:55.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:49:55.541 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:49:55.541 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:49:55.542 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:49:55.548 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:49:55.549 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:49:55.549 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95133716, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104634249076954, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9831035, telescope_dec=-24.256452, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.00286, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9569605081522, telescope_dec_j2k=-24.289818646094, observability=1)
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Status age = 10.23202896118164s
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:05.781 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:05.782 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:05.782 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:05.782 [DEBUG] [Thread-67776 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:05.783 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:05.783 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:05.783 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:05.783 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:05.784 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 17;18.9859732;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00573;2460996.95145582;12.8349125;1.3;_
2025-11-17T12:50:05.784 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response 17;18.9859732;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00573;2460996.95145582;12.8349125;1.3;_
2025-11-17T12:50:05.784 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:05.784 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:05.784 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:05.785 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:05.785 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:05.785 [INFO] [Thread-67776 (handle)] [driver.py] [get_status()] Telra = 18.9859732, teldec = -24.256451
2025-11-17T12:50:05.785 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9859732 -24.256451
2025-11-17T12:50:05.785 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9859732 -24.256451
2025-11-17T12:50:05.785 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9859732 -24.256451
2025-11-17T12:50:05.786 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 17;18.9859732;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00573;2460996.95145586;12.8349125;1.3;_18.9598307394758 -24.2899221422804
2025-11-17T12:50:05.786 [INFO] [Thread-67776 (handle)] [driver.py] [get_status()] ra_j2k = 18.9598307394758     dec_j2k = -24.2899221422804
2025-11-17T12:50:05.786 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:05.786 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:05.786 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 140;0.10463404851724;171.162351965909;_
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response 140;0.10463404851724;171.162351965909;_
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:05.787 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:05.788 [DEBUG] [Thread-67776 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:05.788 [DEBUG] [Thread-67776 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:05.788 [DEBUG] [Thread-67776 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35123)
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:05.791 [DEBUG] [Thread-67776 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:05.798 [DEBUG] [Thread-67776 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:05.799 [DEBUG] [Thread-67776 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:05.799 [INFO] [Thread-67776 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95145582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10463404851724, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9859732, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.00573, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9598307394758, telescope_dec_j2k=-24.2899221422804, observability=1)
2025-11-17T12:50:07.015 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.015 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.015 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:07.015 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:50:07.016 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.017 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.017 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.017 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:07.017 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:07.017 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:07.018 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:50:07.019 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:07.020 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Park
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:50:07.021 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 29;18.9863097;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00606;2460996.95147015;12.83524806;1.3;_Park Command Successful
2025-11-17T12:50:08.022 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:50:08.022 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:50:08.022 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:50:08.023 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:50:08.023 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:50:09.023 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:50:09.023 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:50:09.023 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:50:09.024 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:50:09.024 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:50:10.024 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:50:10.024 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:50:10.024 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:50:10.025 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:50:10.025 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Status age = 5.133634090423584s
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:10.932 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:10.933 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:10.934 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 17;18.9873946;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00715;2460996.95151544;12.83633;1.3;_
2025-11-17T12:50:10.934 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response 17;18.9873946;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00715;2460996.95151544;12.83633;1.3;_
2025-11-17T12:50:10.934 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:10.934 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:10.934 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:10.935 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:10.935 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:10.935 [INFO] [Thread-67777 (handle)] [driver.py] [get_status()] Telra = 18.9873946, teldec = -24.256451
2025-11-17T12:50:10.935 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9873946 -24.256451
2025-11-17T12:50:10.935 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9873946 -24.256451
2025-11-17T12:50:10.935 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9873946 -24.256451
2025-11-17T12:50:10.936 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 17;18.9873946;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00715;2460996.95151546;12.83633;1.3;_18.9612524033787 -24.2899738938396
2025-11-17T12:50:10.936 [INFO] [Thread-67777 (handle)] [driver.py] [get_status()] ra_j2k = 18.9612524033787     dec_j2k = -24.2899738938396
2025-11-17T12:50:10.936 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:10.936 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 140;0.104634730420268;171.162351965909;_
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response 140;0.104634730420268;171.162351965909;_
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:10.937 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:10.938 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:10.939 [DEBUG] [Thread-67777 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:10.939 [DEBUG] [Thread-67777 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:10.939 [DEBUG] [Thread-67777 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39147)
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:10.941 [DEBUG] [Thread-67777 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:10.948 [DEBUG] [Thread-67777 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:10.948 [INFO] [Thread-67777 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95151544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104634730420268, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9873946, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.00715, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9612524033787, telescope_dec_j2k=-24.2899738938396, observability=1)
2025-11-17T12:50:11.025 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:50:11.025 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:50:11.025 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:50:11.026 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:50:11.027 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:12.027 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:12.028 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:12.029 [DEBUG] [ThreadPoolExecutor-2806_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:12.029 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:50:12.029 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:50:12.029 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:50:12.029 [DEBUG] [ThreadPoolExecutor-2806_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:12.029 [INFO] [ThreadPoolExecutor-2806_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:50:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.9961891174316406s
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9885361;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00829;2460996.95156188;12.83746833;1.3;_
2025-11-17T12:50:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;18.9885361;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00829;2460996.95156188;12.83746833;1.3;_
2025-11-17T12:50:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:14.947 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 18.9885361, teldec = -24.256451
2025-11-17T12:50:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9885361 -24.256451
2025-11-17T12:50:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9885361 -24.256451
2025-11-17T12:50:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9885361 -24.256451
2025-11-17T12:50:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;18.9885361;-24.256451;50.108333;89.992932;50.08601;90.12017;16.00829;2460996.9515619;12.83746833;1.3;_18.9623941157113 -24.2900154513221
2025-11-17T12:50:14.948 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.9623941157113     dec_j2k = -24.2900154513221
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104635091427753;171.162357330327;_
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104635091427753;171.162357330327;_
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51537)
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:14.961 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95156188, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104635091427753, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108333, telescope_az=89.992932, telescope_ra=18.9885361, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.00829, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9623941157113, telescope_dec_j2k=-24.2900154513221, observability=1)
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Status age = 8.913437366485596s
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:23.874 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:23.875 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 17;18.9910101;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01076;2460996.95166523;12.83993556;1.3;_
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response 17;18.9910101;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01076;2460996.95166523;12.83993556;1.3;_
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:23.876 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:23.877 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:23.877 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:23.877 [INFO] [Thread-67778 (handle)] [driver.py] [get_status()] Telra = 18.9910101, teldec = -24.256451
2025-11-17T12:50:23.877 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9910101 -24.256451
2025-11-17T12:50:23.877 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9910101 -24.256451
2025-11-17T12:50:23.877 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9910101 -24.256451
2025-11-17T12:50:23.878 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 17;18.9910101;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01076;2460996.95166525;12.83993556;1.3;_18.9648685771185 -24.2901055099273
2025-11-17T12:50:23.878 [INFO] [Thread-67778 (handle)] [driver.py] [get_status()] ra_j2k = 18.9648685771185     dec_j2k = -24.2901055099273
2025-11-17T12:50:23.878 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:23.878 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:23.878 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:23.879 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 140;0.10463477053221;171.162357330327;_
2025-11-17T12:50:23.879 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response 140;0.10463477053221;171.162357330327;_
2025-11-17T12:50:23.880 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:23.880 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:23.880 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:23.880 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:23.881 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:23.882 [DEBUG] [Thread-67778 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:23.882 [DEBUG] [Thread-67778 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:23.882 [DEBUG] [Thread-67778 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59613)
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:23.886 [DEBUG] [Thread-67778 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:23.893 [DEBUG] [Thread-67778 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:23.893 [INFO] [Thread-67778 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95166523, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10463477053221, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.992931, telescope_ra=18.9910101, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.01076, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9648685771185, telescope_dec_j2k=-24.2901055099273, observability=1)
2025-11-17T12:50:27.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:50:27.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.1401174068450928s
2025-11-17T12:50:27.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:27.033 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:27.034 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:27.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:27.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:27.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:27.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:27.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9918791;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01163;2460996.95170181;12.84080222;1.3;_
2025-11-17T12:50:27.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;18.9918791;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01163;2460996.95170181;12.84080222;1.3;_
2025-11-17T12:50:27.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:27.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:27.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:27.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:27.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:27.037 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 18.9918791, teldec = -24.256451
2025-11-17T12:50:27.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 18.9918791 -24.256451
2025-11-17T12:50:27.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 18.9918791 -24.256451
2025-11-17T12:50:27.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9918791 -24.256451
2025-11-17T12:50:27.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;18.9918791;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01163;2460996.95170183;12.84080222;1.3;_18.9657377395834 -24.2901371400609
2025-11-17T12:50:27.038 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.9657377395834     dec_j2k = -24.2901371400609
2025-11-17T12:50:27.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104635171651639;171.162368059163;_
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104635171651639;171.162368059163;_
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:27.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:27.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:27.041 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:27.041 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:27.041 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51335)
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:27.043 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:27.050 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:27.051 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:50:27.051 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95170181, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104635171651639, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.992931, telescope_ra=18.9918791, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.01163, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9657377395834, telescope_dec_j2k=-24.2901371400609, observability=1)
2025-11-17T12:50:27.051 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0677490234375 seconds ago
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Status age = 14.897287607192993s
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:41.948 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:41.949 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:41.949 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:41.949 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:41.949 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 17;18.9960536;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01581;2460996.95187441;12.84496528;1.3;_
2025-11-17T12:50:41.950 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response 17;18.9960536;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01581;2460996.95187441;12.84496528;1.3;_
2025-11-17T12:50:41.950 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:41.950 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:41.950 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:41.951 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:41.951 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:41.951 [INFO] [Thread-67779 (handle)] [driver.py] [get_status()] Telra = 18.9960536, teldec = -24.256451
2025-11-17T12:50:41.951 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9960536 -24.256451
2025-11-17T12:50:41.951 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9960536 -24.256451
2025-11-17T12:50:41.951 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9960536 -24.256451
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 17;18.9960536;-24.256451;50.108332;89.992931;50.08601;90.12017;16.01581;2460996.95187444;12.84496528;1.3;_18.9699130228885 -24.2902890613816
2025-11-17T12:50:41.952 [INFO] [Thread-67779 (handle)] [driver.py] [get_status()] ra_j2k = 18.9699130228885     dec_j2k = -24.2902890613816
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 140;0.104635211763581;171.162351965909;_
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response 140;0.104635211763581;171.162351965909;_
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:41.952 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:41.953 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:41.954 [DEBUG] [Thread-67779 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:41.954 [DEBUG] [Thread-67779 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:41.954 [DEBUG] [Thread-67779 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57259)
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:41.960 [DEBUG] [Thread-67779 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:41.967 [DEBUG] [Thread-67779 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:41.968 [DEBUG] [Thread-67779 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:41.968 [DEBUG] [Thread-67779 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:41.968 [DEBUG] [Thread-67779 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:41.968 [INFO] [Thread-67779 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95187441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104635211763581, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.992931, telescope_ra=18.9960536, telescope_dec=-24.256451, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.01581, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:49:46.131033', telescope_ra_j2k=18.9699130228885, telescope_dec_j2k=-24.2902890613816, observability=1)
2025-11-17T12:50:42.063 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:50:42
2025-11-17T12:50:42.063 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:42.063 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.09548687934875488s
2025-11-17T12:50:42.063 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.09548687934875488
2025-11-17T12:50:46.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:46.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:46.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:46.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:46.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:46.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:46.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:46.274 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:46.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:46.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:46.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:46.275 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:50:46.275 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:46.275 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:46.275 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:46.275 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:46.275 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:50:46.276 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:50:46.277 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:47.277 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:47.277 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:47.277 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:47.277 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:47.277 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:50:47.278 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:47.279 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:47.280 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:47.280 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:47.280 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:47.280 [DEBUG] [ThreadPoolExecutor-2808_0] [payload.py] [to_registers()] [0]
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40927)
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:47.286 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:47.294 [DEBUG] [ThreadPoolExecutor-2808_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:54.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:50:54.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.673607110977173s
2025-11-17T12:50:54.641 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:50:54.641 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:50:54.642 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:50:54.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9995924;-24.25645;50.108332;89.99293;50.08601;90.12017;16.01934;2460996.95202133;12.84849444;1.3;_
2025-11-17T12:50:54.643 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;18.9995924;-24.25645;50.108332;89.99293;50.08601;90.12017;16.01934;2460996.95202133;12.84849444;1.3;_
2025-11-17T12:50:54.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:50:54.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:50:54.643 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:50:54.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:54.644 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:50:54.644 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 18.9995924, teldec = -24.25645
2025-11-17T12:50:54.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 18.9995924 -24.25645
2025-11-17T12:50:54.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 18.9995924 -24.25645
2025-11-17T12:50:54.644 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 18.9995924 -24.25645
2025-11-17T12:50:54.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;18.9995924;-24.25645;50.108332;89.99293;50.08601;90.12017;16.01934;2460996.95202135;12.84849444;1.3;_18.9734524908081 -24.2904168174619
2025-11-17T12:50:54.645 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9734524908081     dec_j2k = -24.2904168174619
2025-11-17T12:50:54.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:50:54.645 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:50:54.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:50:54.646 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104635291987467;171.162351965909;_
2025-11-17T12:50:54.646 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104635291987467;171.162351965909;_
2025-11-17T12:50:54.646 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:50:54.647 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:50:54.648 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:50:54.655 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32907)
2025-11-17T12:50:54.655 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:50:54.655 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:50:54.656 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:50:54.656 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:50:54.656 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:50:54.663 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:50:54.663 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95202133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104635291987467, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.99293, telescope_ra=18.9995924, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.01934, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9734524908081, telescope_dec_j2k=-24.2904168174619, observability=1)
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Status age = 5.34386944770813s
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:00.007 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:00.008 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:00.009 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 17;19.0010767;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02083;2460996.95208344;12.84997472;1.3;_
2025-11-17T12:51:00.009 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response 17;19.0010767;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02083;2460996.95208344;12.84997472;1.3;_
2025-11-17T12:51:00.009 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:00.009 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:00.009 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:00.010 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:00.010 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:00.010 [INFO] [Thread-67780 (handle)] [driver.py] [get_status()] Telra = 19.0010767, teldec = -24.25645
2025-11-17T12:51:00.010 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0010767 -24.25645
2025-11-17T12:51:00.010 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0010767 -24.25645
2025-11-17T12:51:00.010 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0010767 -24.25645
2025-11-17T12:51:00.011 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 17;19.0010767;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02083;2460996.95208346;12.84997472;1.3;_18.9749370718873 -24.2904708140062
2025-11-17T12:51:00.011 [INFO] [Thread-67780 (handle)] [driver.py] [get_status()] ra_j2k = 18.9749370718873     dec_j2k = -24.2904708140062
2025-11-17T12:51:00.011 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:00.011 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:00.011 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 140;0.104636014002437;171.162357330327;_
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response 140;0.104636014002437;171.162357330327;_
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:00.012 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:00.013 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:00.014 [DEBUG] [Thread-67780 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:00.014 [DEBUG] [Thread-67780 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:00.014 [DEBUG] [Thread-67780 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:00.016 [DEBUG] [Thread-67780 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53865)
2025-11-17T12:51:00.016 [DEBUG] [Thread-67780 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:00.016 [DEBUG] [Thread-67780 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:00.017 [DEBUG] [Thread-67780 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:00.017 [DEBUG] [Thread-67780 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:00.017 [DEBUG] [Thread-67780 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:00.024 [DEBUG] [Thread-67780 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:00.024 [DEBUG] [Thread-67780 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:00.024 [DEBUG] [Thread-67780 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:00.024 [DEBUG] [Thread-67780 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:00.025 [DEBUG] [Thread-67780 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:00.025 [DEBUG] [Thread-67780 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:00.025 [DEBUG] [Thread-67780 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:00.025 [DEBUG] [Thread-67780 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:00.025 [DEBUG] [Thread-67780 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:00.025 [INFO] [Thread-67780 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95208344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104636014002437, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.99293, telescope_ra=19.0010767, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.02083, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9749370718873, telescope_dec_j2k=-24.2904708140062, observability=1)
2025-11-17T12:51:10.983 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:10.983 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Status age = 10.958645105361938s
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:10.984 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 17;19.0041404;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02389;2460996.95221047;12.85303;1.3;_
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response 17;19.0041404;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02389;2460996.95221047;12.85303;1.3;_
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:10.985 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:10.986 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:10.986 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:10.986 [INFO] [Thread-67781 (handle)] [driver.py] [get_status()] Telra = 19.0041404, teldec = -24.25645
2025-11-17T12:51:10.986 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0041404 -24.25645
2025-11-17T12:51:10.986 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0041404 -24.25645
2025-11-17T12:51:10.986 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0041404 -24.25645
2025-11-17T12:51:10.987 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 17;19.0041404;-24.25645;50.108332;89.99293;50.08601;90.12017;16.02389;2460996.9522105;12.85303;1.3;_18.9780013539444 -24.2905822510266
2025-11-17T12:51:10.987 [INFO] [Thread-67781 (handle)] [driver.py] [get_status()] ra_j2k = 18.9780013539444     dec_j2k = -24.2905822510266
2025-11-17T12:51:10.987 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:10.987 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:10.987 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 140;0.10463761848015;171.162346601491;_
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response 140;0.10463761848015;171.162346601491;_
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:10.988 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:10.989 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:10.989 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:10.989 [DEBUG] [Thread-67781 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:10.989 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:10.989 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:10.990 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:10.990 [DEBUG] [Thread-67781 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:10.990 [DEBUG] [Thread-67781 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:10.990 [DEBUG] [Thread-67781 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:10.993 [DEBUG] [Thread-67781 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34805)
2025-11-17T12:51:10.994 [DEBUG] [Thread-67781 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:10.994 [DEBUG] [Thread-67781 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:10.994 [DEBUG] [Thread-67781 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:10.994 [DEBUG] [Thread-67781 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:10.994 [DEBUG] [Thread-67781 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:11.001 [DEBUG] [Thread-67781 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:11.001 [INFO] [Thread-67781 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95221047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10463761848015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.99293, telescope_ra=19.0041404, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.02389, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9780013539444, telescope_dec_j2k=-24.2905822510266, observability=1)
2025-11-17T12:51:12.294 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:12.294 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:12.295 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:12.295 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:12.295 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:12.296 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:51:12.297 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:51:12.298 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.946566343307495s
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0052518;-24.25645;50.108332;89.99293;50.08601;90.12017;16.025;2460996.95225637;12.85413833;1.3;_
2025-11-17T12:51:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0052518;-24.25645;50.108332;89.99293;50.08601;90.12017;16.025;2460996.95225637;12.85413833;1.3;_
2025-11-17T12:51:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:14.951 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0052518, teldec = -24.25645
2025-11-17T12:51:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0052518 -24.25645
2025-11-17T12:51:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0052518 -24.25645
2025-11-17T12:51:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0052518 -24.25645
2025-11-17T12:51:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0052518;-24.25645;50.108332;89.99293;50.08601;90.12017;16.025;2460996.95225639;12.85413833;1.3;_18.979112965723 -24.2906226711376
2025-11-17T12:51:14.952 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.979112965723     dec_j2k = -24.2906226711376
2025-11-17T12:51:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104637498144321;171.162351965909;_
2025-11-17T12:51:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104637498144321;171.162351965909;_
2025-11-17T12:51:14.954 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49815)
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:14.968 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95225637, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104637498144321, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108332, telescope_az=89.99293, telescope_ra=19.0052518, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.025, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.979112965723, telescope_dec_j2k=-24.2906226711376, observability=1)
2025-11-17T12:51:18.145 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:18.145 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Status age = 3.177016019821167s
2025-11-17T12:51:18.145 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:18.145 [DEBUG] [Thread-67782 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:18.145 [DEBUG] [Thread-67782 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:18.146 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:18.147 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 17;19.0061194;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02587;2460996.95229337;12.85500361;1.3;_
2025-11-17T12:51:18.147 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response 17;19.0061194;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02587;2460996.95229337;12.85500361;1.3;_
2025-11-17T12:51:18.147 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:18.147 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:18.147 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:18.148 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:18.148 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:18.148 [INFO] [Thread-67782 (handle)] [driver.py] [get_status()] Telra = 19.0061194, teldec = -24.25645
2025-11-17T12:51:18.148 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0061194 -24.25645
2025-11-17T12:51:18.148 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0061194 -24.25645
2025-11-17T12:51:18.148 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0061194 -24.25645
2025-11-17T12:51:18.149 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 17;19.0061194;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02587;2460996.95229339;12.85500361;1.3;_18.9799807312781 -24.290654222636
2025-11-17T12:51:18.149 [INFO] [Thread-67782 (handle)] [driver.py] [get_status()] ra_j2k = 18.9799807312781     dec_j2k = -24.290654222636
2025-11-17T12:51:18.149 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:18.149 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:18.149 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 140;0.104637538256264;171.162346601491;_
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response 140;0.104637538256264;171.162346601491;_
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:18.150 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:18.151 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:18.152 [DEBUG] [Thread-67782 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:18.152 [DEBUG] [Thread-67782 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:51:18.152 [DEBUG] [Thread-67782 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44219)
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:18.158 [DEBUG] [Thread-67782 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:18.166 [DEBUG] [Thread-67782 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:18.166 [INFO] [Thread-67782 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95229337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104637538256264, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.99293, telescope_ra=19.0061194, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.02587, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9799807312781, telescope_dec_j2k=-24.290654222636, observability=1)
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.944763898849487s
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:27.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0086218;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02837;2460996.95239713;12.85749917;1.3;_
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0086218;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02837;2460996.95239713;12.85749917;1.3;_
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:27.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:27.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:27.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:27.113 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0086218, teldec = -24.25645
2025-11-17T12:51:27.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0086218 -24.25645
2025-11-17T12:51:27.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0086218 -24.25645
2025-11-17T12:51:27.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0086218 -24.25645
2025-11-17T12:51:27.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0086218;-24.25645;50.108331;89.99293;50.08601;90.12017;16.02837;2460996.95239718;12.85749917;1.3;_18.9824836099285 -24.2907452164127
2025-11-17T12:51:27.116 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.9824836099285     dec_j2k = -24.2907452164127
2025-11-17T12:51:27.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:27.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:27.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104638420719006;171.162351965909;_
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104638420719006;171.162351965909;_
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:27.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:27.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:27.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:27.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:27.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:27.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:27.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:27.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:27.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:27.124 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52895)
2025-11-17T12:51:27.124 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:27.124 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:27.124 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:27.125 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:27.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:27.132 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:51:27.132 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95239713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104638420719006, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.99293, telescope_ra=19.0086218, telescope_dec=-24.25645, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.02837, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9824836099285, telescope_dec_j2k=-24.2907452164127, observability=1)
2025-11-17T12:51:27.132 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.069013833999634 seconds ago
2025-11-17T12:51:36.211 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:36.211 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Status age = 9.079357147216797s
2025-11-17T12:51:36.211 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:36.211 [DEBUG] [Thread-67783 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:36.212 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:36.213 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:36.213 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 17;19.0111621;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03091;2460996.95250247;12.8600325;1.3;_
2025-11-17T12:51:36.214 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response 17;19.0111621;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03091;2460996.95250247;12.8600325;1.3;_
2025-11-17T12:51:36.214 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:36.214 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:36.214 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:36.215 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:36.215 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:36.215 [INFO] [Thread-67783 (handle)] [driver.py] [get_status()] Telra = 19.0111621, teldec = -24.256449
2025-11-17T12:51:36.215 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0111621 -24.256449
2025-11-17T12:51:36.215 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0111621 -24.256449
2025-11-17T12:51:36.215 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0111621 -24.256449
2025-11-17T12:51:36.216 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 17;19.0111621;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03091;2460996.9525025;12.8600325;1.3;_18.9850243977596 -24.2908365739017
2025-11-17T12:51:36.216 [INFO] [Thread-67783 (handle)] [driver.py] [get_status()] ra_j2k = 18.9850243977596     dec_j2k = -24.2908365739017
2025-11-17T12:51:36.216 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:36.216 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:36.216 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:36.216 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 140;0.10463862127872;171.162357330327;_
2025-11-17T12:51:36.217 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response 140;0.10463862127872;171.162357330327;_
2025-11-17T12:51:36.217 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:36.217 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:36.217 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:36.217 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:36.218 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:36.219 [DEBUG] [Thread-67783 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:36.219 [DEBUG] [Thread-67783 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:36.219 [DEBUG] [Thread-67783 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55533)
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:36.224 [DEBUG] [Thread-67783 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:36.231 [DEBUG] [Thread-67783 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:36.232 [DEBUG] [Thread-67783 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:36.232 [DEBUG] [Thread-67783 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:36.232 [INFO] [Thread-67783 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95250247, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10463862127872, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992929, telescope_ra=19.0111621, telescope_dec=-24.256449, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.03091, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9850243977596, telescope_dec_j2k=-24.2908365739017, observability=1)
2025-11-17T12:51:42.124 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:51:42
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.892458200454712s
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:42.124 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:42.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:42.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:42.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0128055;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03256;2460996.9525709;12.86167139;1.3;_
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.0128055;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03256;2460996.9525709;12.86167139;1.3;_
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:42.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:42.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:42.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:42.127 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.0128055, teldec = -24.256449
2025-11-17T12:51:42.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0128055 -24.256449
2025-11-17T12:51:42.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0128055 -24.256449
2025-11-17T12:51:42.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0128055 -24.256449
2025-11-17T12:51:42.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0128055;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03256;2460996.95257093;12.86167139;1.3;_18.9866681141592 -24.2908963150102
2025-11-17T12:51:42.128 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 18.9866681141592     dec_j2k = -24.2908963150102
2025-11-17T12:51:42.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:42.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:42.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104640065308661;171.162357330327;_
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104640065308661;171.162357330327;_
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:42.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:42.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56705)
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:42.135 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:42.142 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:42.143 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9525709, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104640065308661, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992929, telescope_ra=19.0128055, telescope_dec=-24.256449, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.03256, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:50:46.272016', telescope_ra_j2k=18.9866681141592, telescope_dec_j2k=-24.2908963150102, observability=1)
2025-11-17T12:51:46.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:46.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:46.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:46.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:46.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:46.417 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:46.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:46.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:46.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:46.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:46.418 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:51:46.418 [INFO] [ThreadPoolExecutor-2809_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:51:46.418 [INFO] [ThreadPoolExecutor-2809_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:51:53.754 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.612061500549316s
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:51:53.755 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0160329;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03579;2460996.95270551;12.86489;1.3;_
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.0160329;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03579;2460996.95270551;12.86489;1.3;_
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:51:53.756 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:51:53.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:53.757 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:51:53.757 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.0160329, teldec = -24.256449
2025-11-17T12:51:53.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0160329 -24.256449
2025-11-17T12:51:53.757 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0160329 -24.256449
2025-11-17T12:51:53.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0160329 -24.256449
2025-11-17T12:51:53.758 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0160329;-24.256449;50.108331;89.992929;50.08601;90.12017;16.03579;2460996.95270553;12.86489;1.3;_18.9898961376531 -24.2910136200132
2025-11-17T12:51:53.759 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 18.9898961376531     dec_j2k = -24.2910136200132
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104639985084775;171.162368059163;_
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104639985084775;171.162368059163;_
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:53.759 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:51:53.760 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:51:53.761 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:53.761 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:51:53.761 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:51:53.766 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58937)
2025-11-17T12:51:53.766 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:51:53.766 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:51:53.767 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:51:53.767 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:51:53.767 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:51:53.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:51:53.774 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95270551, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104639985084775, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992929, telescope_ra=19.0160329, telescope_dec=-24.256449, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.03579, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=18.9898961376531, telescope_dec_j2k=-24.2910136200132, observability=1)
2025-11-17T12:51:54.277 [DEBUG] [Thread-67784 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:51:54.277 [DEBUG] [Thread-67784 (handle)] [server.py] [get_status()] Status age = 0.5030355453491211s
2025-11-17T12:51:54.277 [DEBUG] [Thread-67784 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5030355453491211
2025-11-17T12:52:07.298 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.298 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.298 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:07.298 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:07.298 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:52:07.299 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:07.300 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:07.301 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:07.302 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:07.302 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.302 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:07.302 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:07.302 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.303 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:07.304 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:07.304 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:07.304 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:07.304 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Park
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:52:07.305 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 29;19.0198277;-24.256449;50.108331;89.992928;50.08601;90.12017;16.03958;2460996.95286233;12.86867444;1.3;_Park Command Successful
2025-11-17T12:52:08.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:52:08.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:52:08.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:52:08.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:52:08.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:52:09.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:52:09.306 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:52:09.307 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:52:09.308 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:52:09.308 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:52:10.308 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:52:10.308 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:52:10.308 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:52:10.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:52:10.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Status age = 17.261064291000366s
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:11.035 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:11.036 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:11.037 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 17;19.0208569;-24.256449;50.108331;89.992928;50.08601;90.12017;16.04061;2460996.95290552;12.86970083;1.3;_
2025-11-17T12:52:11.037 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response 17;19.0208569;-24.256449;50.108331;89.992928;50.08601;90.12017;16.04061;2460996.95290552;12.86970083;1.3;_
2025-11-17T12:52:11.037 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:11.037 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:11.037 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:11.038 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:11.038 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:11.038 [INFO] [Thread-67785 (handle)] [driver.py] [get_status()] Telra = 19.0208569, teldec = -24.256449
2025-11-17T12:52:11.038 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0208569 -24.256449
2025-11-17T12:52:11.038 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0208569 -24.256449
2025-11-17T12:52:11.038 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0208569 -24.256449
2025-11-17T12:52:11.039 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 17;19.0208569;-24.256449;50.108331;89.992928;50.08601;90.12017;16.04061;2460996.95290554;12.86970083;1.3;_18.9947210748547 -24.2911889116163
2025-11-17T12:52:11.039 [INFO] [Thread-67785 (handle)] [driver.py] [get_status()] ra_j2k = 18.9947210748547     dec_j2k = -24.2911889116163
2025-11-17T12:52:11.039 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:11.039 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:11.039 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 140;0.104640466428089;171.162351965909;_
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response 140;0.104640466428089;171.162351965909;_
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:11.040 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:11.041 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:11.042 [DEBUG] [Thread-67785 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:11.042 [DEBUG] [Thread-67785 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:11.042 [DEBUG] [Thread-67785 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58625)
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:11.050 [DEBUG] [Thread-67785 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:11.057 [DEBUG] [Thread-67785 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:11.057 [INFO] [Thread-67785 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95290552, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104640466428089, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992928, telescope_ra=19.0208569, telescope_dec=-24.256449, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.04061, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=18.9947210748547, telescope_dec_j2k=-24.2911889116163, observability=1)
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:11.309 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:11.310 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:11.310 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:11.310 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:11.310 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:52:11.311 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:52:12.312 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:52:12.313 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:52:12.313 [DEBUG] [ThreadPoolExecutor-2808_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:12.313 [INFO] [ThreadPoolExecutor-2808_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Status age = 1.353799819946289s
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:12.411 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:12.412 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:12.413 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 17;19.0212496;-24.256449;50.108331;89.992928;50.08601;90.12017;16.041;2460996.95292145;12.8700925;1.3;_
2025-11-17T12:52:12.413 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response 17;19.0212496;-24.256449;50.108331;89.992928;50.08601;90.12017;16.041;2460996.95292145;12.8700925;1.3;_
2025-11-17T12:52:12.413 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:12.413 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:12.413 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:12.414 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:12.414 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:12.414 [INFO] [Thread-67786 (handle)] [driver.py] [get_status()] Telra = 19.0212496, teldec = -24.256449
2025-11-17T12:52:12.414 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0212496 -24.256449
2025-11-17T12:52:12.414 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0212496 -24.256449
2025-11-17T12:52:12.414 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0212496 -24.256449
2025-11-17T12:52:12.415 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 17;19.0212496;-24.256449;50.108331;89.992928;50.08601;90.12017;16.041;2460996.95292147;12.8700925;1.3;_18.9951138514256 -24.2912031789644
2025-11-17T12:52:12.415 [INFO] [Thread-67786 (handle)] [driver.py] [get_status()] ra_j2k = 18.9951138514256     dec_j2k = -24.2912031789644
2025-11-17T12:52:12.415 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:12.415 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:12.415 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 140;0.104640265868375;171.162357330327;_
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response 140;0.104640265868375;171.162357330327;_
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:12.416 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:12.417 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:12.418 [DEBUG] [Thread-67786 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:12.418 [DEBUG] [Thread-67786 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:12.418 [DEBUG] [Thread-67786 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46773)
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:12.421 [DEBUG] [Thread-67786 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:12.428 [DEBUG] [Thread-67786 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:12.429 [DEBUG] [Thread-67786 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:12.429 [INFO] [Thread-67786 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95292145, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104640265868375, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992928, telescope_ra=19.0212496, telescope_dec=-24.256449, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=18.9951138514256, telescope_dec_j2k=-24.2912031789644, observability=1)
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.48970365524292s
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:14.918 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:14.919 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0219418;-24.256448;50.108331;89.992928;50.08601;90.12017;16.04169;2460996.95295046;12.87078278;1.3;_
2025-11-17T12:52:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0219418;-24.256448;50.108331;89.992928;50.08601;90.12017;16.04169;2460996.95295046;12.87078278;1.3;_
2025-11-17T12:52:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:14.920 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:14.921 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:14.921 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0219418, teldec = -24.256448
2025-11-17T12:52:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0219418 -24.256448
2025-11-17T12:52:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0219418 -24.256448
2025-11-17T12:52:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0219418 -24.256448
2025-11-17T12:52:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0219418;-24.256448;50.108331;89.992928;50.08601;90.12017;16.04169;2460996.95295049;12.87078278;1.3;_18.9958061866909 -24.2912273267885
2025-11-17T12:52:14.923 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 18.9958061866909     dec_j2k = -24.2912273267885
2025-11-17T12:52:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104640707099746;171.162357330327;_
2025-11-17T12:52:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104640707099746;171.162357330327;_
2025-11-17T12:52:14.924 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45357)
2025-11-17T12:52:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:14.929 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:14.929 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:14.936 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:14.937 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:14.937 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95295046, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104640707099746, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108331, telescope_az=89.992928, telescope_ra=19.0219418, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.04169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=18.9958061866909, telescope_dec_j2k=-24.2912273267885, observability=1)
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.255257368087769s
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:27.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:27.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0253701;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04512;2460996.95309252;12.87420167;1.3;_
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0253701;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04512;2460996.95309252;12.87420167;1.3;_
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:27.194 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:27.195 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:27.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:27.196 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0253701, teldec = -24.256448
2025-11-17T12:52:27.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0253701 -24.256448
2025-11-17T12:52:27.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0253701 -24.256448
2025-11-17T12:52:27.196 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0253701 -24.256448
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0253701;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04512;2460996.95309256;12.87420167;1.3;_18.999235157579 -24.2913518612692
2025-11-17T12:52:27.197 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 18.999235157579     dec_j2k = -24.2913518612692
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104640867547517;171.162351965909;_
2025-11-17T12:52:27.197 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104640867547517;171.162351965909;_
2025-11-17T12:52:27.198 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:27.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:27.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:27.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:27.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:27.203 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34999)
2025-11-17T12:52:27.203 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:27.204 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:27.204 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:27.204 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:27.204 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:27.211 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:52:27.211 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95309252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104640867547517, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992928, telescope_ra=19.0253701, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.04512, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=18.999235157579, telescope_dec_j2k=-24.2913518612692, observability=1)
2025-11-17T12:52:27.211 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08709526062012 seconds ago
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Status age = 3.267059803009033s
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:30.478 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 17;19.026287;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04604;2460996.95313056;12.87511611;1.3;_
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response 17;19.026287;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04604;2460996.95313056;12.87511611;1.3;_
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:30.480 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:30.481 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:30.481 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:30.481 [INFO] [Thread-67787 (handle)] [driver.py] [get_status()] Telra = 19.026287, teldec = -24.256448
2025-11-17T12:52:30.481 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] UnCookCoordinates 19.026287 -24.256448
2025-11-17T12:52:30.481 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.026287 -24.256448
2025-11-17T12:52:30.481 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.026287 -24.256448
2025-11-17T12:52:30.482 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 17;19.026287;-24.256448;50.10833;89.992928;50.08601;90.12017;16.04604;2460996.95313058;12.87511611;1.3;_19.000152237548 -24.291385163467
2025-11-17T12:52:30.482 [INFO] [Thread-67787 (handle)] [driver.py] [get_status()] ra_j2k = 19.000152237548     dec_j2k = -24.291385163467
2025-11-17T12:52:30.482 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 140;0.104641308778888;171.162368059163;_
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response 140;0.104641308778888;171.162368059163;_
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:30.483 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:30.484 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:30.485 [DEBUG] [Thread-67787 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:30.485 [DEBUG] [Thread-67787 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:30.485 [DEBUG] [Thread-67787 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:30.487 [DEBUG] [Thread-67787 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48745)
2025-11-17T12:52:30.487 [DEBUG] [Thread-67787 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:30.488 [DEBUG] [Thread-67787 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:30.488 [DEBUG] [Thread-67787 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:30.488 [DEBUG] [Thread-67787 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:30.488 [DEBUG] [Thread-67787 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:30.495 [DEBUG] [Thread-67787 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:30.496 [DEBUG] [Thread-67787 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:30.496 [DEBUG] [Thread-67787 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:30.496 [INFO] [Thread-67787 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95313056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104641308778888, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992928, telescope_ra=19.026287, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.04604, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=19.000152237548, telescope_dec_j2k=-24.291385163467, observability=1)
2025-11-17T12:52:42.203 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:52:42
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.707385540008545s
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:42.203 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:42.204 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:42.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0295459;-24.256448;50.10833;89.992927;50.08601;90.12017;16.0493;2460996.95326626;12.87836611;1.3;_
2025-11-17T12:52:42.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.0295459;-24.256448;50.10833;89.992927;50.08601;90.12017;16.0493;2460996.95326626;12.87836611;1.3;_
2025-11-17T12:52:42.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:42.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:42.205 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:42.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:42.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:42.206 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.0295459, teldec = -24.256448
2025-11-17T12:52:42.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0295459 -24.256448
2025-11-17T12:52:42.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0295459 -24.256448
2025-11-17T12:52:42.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0295459 -24.256448
2025-11-17T12:52:42.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0295459;-24.256448;50.10833;89.992927;50.08601;90.12017;16.0493;2460996.95326628;12.87836611;1.3;_19.0034117790481 -24.2915035123745
2025-11-17T12:52:42.207 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0034117790481     dec_j2k = -24.2915035123745
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104641228555002;171.162368059163;_
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104641228555002;171.162368059163;_
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:42.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:42.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:42.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:42.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:42.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:42.211 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40053)
2025-11-17T12:52:42.211 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:42.211 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:42.211 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:42.211 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:42.212 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:42.219 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:42.219 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95326626, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104641228555002, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.0295459, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.0493, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:51:46.416180', telescope_ra_j2k=19.0034117790481, telescope_dec_j2k=-24.2915035123745, observability=1)
2025-11-17T12:52:46.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:46.559 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:46.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:46.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:46.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:46.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:46.560 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:52:46.561 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:52:46.562 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:52:46.562 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:47.563 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:47.563 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:47.563 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:47.563 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:47.563 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:52:47.564 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:47.565 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:47.566 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:47.566 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:47.566 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:47.566 [DEBUG] [ThreadPoolExecutor-2810_0] [payload.py] [to_registers()] [0]
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46147)
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:47.568 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:47.575 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:47.575 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:52:47.575 [DEBUG] [ThreadPoolExecutor-2810_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:52:47.576 [DEBUG] [ThreadPoolExecutor-2810_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:52:47.576 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:47.576 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:47.576 [DEBUG] [ThreadPoolExecutor-2810_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Status age = 6.326767444610596s
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:48.546 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:48.547 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:48.548 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 17;19.0313015;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05105;2460996.95333968;12.88011694;1.3;_
2025-11-17T12:52:48.548 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response 17;19.0313015;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05105;2460996.95333968;12.88011694;1.3;_
2025-11-17T12:52:48.548 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:48.548 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:48.548 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:48.549 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:48.549 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:48.549 [INFO] [Thread-67788 (handle)] [driver.py] [get_status()] Telra = 19.0313015, teldec = -24.256448
2025-11-17T12:52:48.549 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0313015 -24.256448
2025-11-17T12:52:48.549 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0313015 -24.256448
2025-11-17T12:52:48.549 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0313015 -24.256448
2025-11-17T12:52:48.550 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 17;19.0313015;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05105;2460996.9533397;12.88011694;1.3;_19.0051677258227 -24.2915672578463
2025-11-17T12:52:48.550 [INFO] [Thread-67788 (handle)] [driver.py] [get_status()] ra_j2k = 19.0051677258227     dec_j2k = -24.2915672578463
2025-11-17T12:52:48.550 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:48.550 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:48.550 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:48.551 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 140;0.104641669786373;171.162357330327;_
2025-11-17T12:52:48.551 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response 140;0.104641669786373;171.162357330327;_
2025-11-17T12:52:48.552 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:48.552 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:48.552 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:48.552 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:48.553 [DEBUG] [Thread-67788 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:48.554 [DEBUG] [Thread-67788 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45899)
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:48.561 [DEBUG] [Thread-67788 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:48.568 [DEBUG] [Thread-67788 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:48.569 [DEBUG] [Thread-67788 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:48.569 [INFO] [Thread-67788 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95333968, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104641669786373, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.0313015, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.05105, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0051677258227, telescope_dec_j2k=-24.2915672578463, observability=1)
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.324136018753052s
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:52:52.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.032506;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05226;2460996.95338998;12.88131806;1.3;_
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.032506;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05226;2460996.95338998;12.88131806;1.3;_
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:52:52.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:52:52.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:52.895 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:52:52.895 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.032506, teldec = -24.256448
2025-11-17T12:52:52.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.032506 -24.256448
2025-11-17T12:52:52.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.032506 -24.256448
2025-11-17T12:52:52.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.032506 -24.256448
2025-11-17T12:52:52.896 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0325341;-24.256448;50.10833;89.992927;50.08601;90.12017;16.05229;2460996.95339;12.88134611;1.3;_19.0063724642243 -24.2916109888533
2025-11-17T12:52:52.896 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.0063724642243     dec_j2k = -24.2916109888533
2025-11-17T12:52:52.896 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:52:52.896 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:52:52.896 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104641870346087;171.162362694745;_
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104641870346087;171.162362694745;_
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:52.897 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:52:52.898 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:52:52.899 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:52.899 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:52:52.899 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53311)
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:52:52.905 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:52:52.913 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:52:52.913 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95338998, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104641870346087, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.032506, telescope_dec=-24.256448, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.05226, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0063724642243, telescope_dec_j2k=-24.2916109888533, observability=1)
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Status age = 13.753841161727905s
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:06.667 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 17;19.0363459;-24.256447;50.10833;89.992927;50.08601;90.12017;16.0561;2460996.9535494;12.8851475;1.3;_
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response 17;19.0363459;-24.256447;50.10833;89.992927;50.08601;90.12017;16.0561;2460996.9535494;12.8851475;1.3;_
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:06.668 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:06.669 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:06.669 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:06.669 [INFO] [Thread-67789 (handle)] [driver.py] [get_status()] Telra = 19.0363459, teldec = -24.256447
2025-11-17T12:53:06.670 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0363459 -24.256447
2025-11-17T12:53:06.670 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0363459 -24.256447
2025-11-17T12:53:06.670 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0363459 -24.256447
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 17;19.0363459;-24.256447;50.10833;89.992927;50.08601;90.12017;16.0561;2460996.95354942;12.8851475;1.3;_19.0102131270567 -24.291749379176
2025-11-17T12:53:06.671 [INFO] [Thread-67789 (handle)] [driver.py] [get_status()] ra_j2k = 19.0102131270567     dec_j2k = -24.291749379176
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 140;0.10464191045803;171.162357330327;_
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response 140;0.10464191045803;171.162357330327;_
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:06.671 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:06.672 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:06.673 [DEBUG] [Thread-67789 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:06.673 [DEBUG] [Thread-67789 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:06.673 [DEBUG] [Thread-67789 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46603)
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:06.680 [DEBUG] [Thread-67789 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:06.687 [DEBUG] [Thread-67789 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:06.688 [INFO] [Thread-67789 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9535494, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464191045803, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.0363459, telescope_dec=-24.256447, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.0561, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0102131270567, telescope_dec_j2k=-24.291749379176, observability=1)
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Status age = 4.403244256973267s
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:11.091 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:11.092 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:11.093 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 17;19.0375781;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05733;2460996.95360061;12.88637639;1.3;_
2025-11-17T12:53:11.093 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response 17;19.0375781;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05733;2460996.95360061;12.88637639;1.3;_
2025-11-17T12:53:11.093 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:11.093 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:11.093 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:11.094 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:11.094 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:11.094 [INFO] [Thread-67790 (handle)] [driver.py] [get_status()] Telra = 19.0375781, teldec = -24.256447
2025-11-17T12:53:11.094 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0375781 -24.256447
2025-11-17T12:53:11.094 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0375781 -24.256447
2025-11-17T12:53:11.094 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0375781 -24.256447
2025-11-17T12:53:11.095 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 17;19.0375781;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05733;2460996.95360064;12.88637639;1.3;_19.0114455726289 -24.2917941013496
2025-11-17T12:53:11.095 [INFO] [Thread-67790 (handle)] [driver.py] [get_status()] ra_j2k = 19.0114455726289     dec_j2k = -24.2917941013496
2025-11-17T12:53:11.095 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:11.095 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:11.095 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 140;0.104641709898316;171.162357330327;_
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response 140;0.104641709898316;171.162357330327;_
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:11.096 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:11.097 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:11.098 [DEBUG] [Thread-67790 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:11.098 [DEBUG] [Thread-67790 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:11.098 [DEBUG] [Thread-67790 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42263)
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:11.102 [DEBUG] [Thread-67790 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:11.109 [DEBUG] [Thread-67790 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:11.109 [INFO] [Thread-67790 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95360061, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104641709898316, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.0375781, telescope_dec=-24.256447, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.05733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0114455726289, telescope_dec_j2k=-24.2917941013496, observability=1)
2025-11-17T12:53:12.576 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:12.576 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:12.576 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:12.576 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:12.576 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:12.577 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:53:12.578 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:53:12.579 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.8122618198394775s
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:14.922 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:14.923 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:14.923 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0386622;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05841;2460996.95364495;12.8874575;1.3;_
2025-11-17T12:53:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0386622;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05841;2460996.95364495;12.8874575;1.3;_
2025-11-17T12:53:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:14.924 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:14.925 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0386622, teldec = -24.256447
2025-11-17T12:53:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0386622 -24.256447
2025-11-17T12:53:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0386622 -24.256447
2025-11-17T12:53:14.925 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0386622 -24.256447
2025-11-17T12:53:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0386622;-24.256447;50.10833;89.992927;50.08601;90.12017;16.05841;2460996.95364498;12.8874575;1.3;_19.0125298890254 -24.2918334453624
2025-11-17T12:53:14.926 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.0125298890254     dec_j2k = -24.2918334453624
2025-11-17T12:53:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:14.926 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104642271465515;171.162357330327;_
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104642271465515;171.162357330327;_
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:14.927 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:14.928 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59497)
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:14.930 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:14.937 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:14.937 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:14.938 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95364495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104642271465515, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10833, telescope_az=89.992927, telescope_ra=19.0386622, telescope_dec=-24.256447, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.05841, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0125298890254, telescope_dec_j2k=-24.2918334453624, observability=1)
2025-11-17T12:53:24.739 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Status age = 9.801660060882568s
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:24.740 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:24.741 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 17;19.0413888;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06114;2460996.95375858;12.89017667;1.3;_
2025-11-17T12:53:24.741 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response 17;19.0413888;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06114;2460996.95375858;12.89017667;1.3;_
2025-11-17T12:53:24.741 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:24.741 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:24.741 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:24.742 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:24.742 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:24.743 [INFO] [Thread-67791 (handle)] [driver.py] [get_status()] Telra = 19.0413888, teldec = -24.256447
2025-11-17T12:53:24.743 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0413888 -24.256447
2025-11-17T12:53:24.743 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0413888 -24.256447
2025-11-17T12:53:24.743 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0413888 -24.256447
2025-11-17T12:53:24.744 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 17;19.0413888;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06114;2460996.95375861;12.89017667;1.3;_19.015257034687 -24.2919323866024
2025-11-17T12:53:24.744 [INFO] [Thread-67791 (handle)] [driver.py] [get_status()] ra_j2k = 19.015257034687     dec_j2k = -24.2919323866024
2025-11-17T12:53:24.744 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:24.744 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:24.744 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:24.744 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 140;0.104642752808829;171.162357330327;_
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response 140;0.104642752808829;171.162357330327;_
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:24.745 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:24.746 [DEBUG] [Thread-67791 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:24.746 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:24.746 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:24.746 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:24.747 [DEBUG] [Thread-67791 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:24.747 [DEBUG] [Thread-67791 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:24.747 [DEBUG] [Thread-67791 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:24.752 [DEBUG] [Thread-67791 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39817)
2025-11-17T12:53:24.752 [DEBUG] [Thread-67791 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:24.752 [DEBUG] [Thread-67791 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:24.752 [DEBUG] [Thread-67791 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:24.752 [DEBUG] [Thread-67791 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:24.753 [DEBUG] [Thread-67791 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:24.760 [DEBUG] [Thread-67791 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:24.760 [INFO] [Thread-67791 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95375858, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104642752808829, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992926, telescope_ra=19.0413888, telescope_dec=-24.256447, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.06114, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.015257034687, telescope_dec_j2k=-24.2919323866024, observability=1)
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.510969638824463s
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:27.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:27.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:27.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0420896;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06184;2460996.95378788;12.89087556;1.3;_
2025-11-17T12:53:27.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0420896;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06184;2460996.95378788;12.89087556;1.3;_
2025-11-17T12:53:27.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:27.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:27.273 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:27.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:27.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:27.274 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0420896, teldec = -24.256447
2025-11-17T12:53:27.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0420896 -24.256447
2025-11-17T12:53:27.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0420896 -24.256447
2025-11-17T12:53:27.274 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0420896 -24.256447
2025-11-17T12:53:27.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0420896;-24.256447;50.108329;89.992926;50.08601;90.12017;16.06184;2460996.95378791;12.89087556;1.3;_19.01595797526 -24.2919578139997
2025-11-17T12:53:27.275 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.01595797526     dec_j2k = -24.2919578139997
2025-11-17T12:53:27.275 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:27.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:27.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:27.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104642752808829;171.162357330327;_
2025-11-17T12:53:27.276 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104642752808829;171.162357330327;_
2025-11-17T12:53:27.276 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:27.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:27.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:27.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:27.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60605)
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:27.283 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:27.291 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:53:27.291 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95378788, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104642752808829, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992926, telescope_ra=19.0420896, telescope_dec=-24.256447, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.06184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.01595797526, telescope_dec_j2k=-24.2919578139997, observability=1)
2025-11-17T12:53:27.291 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.088611364364624 seconds ago
2025-11-17T12:53:42.280 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:53:42
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.988610744476318s
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:42.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:42.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:42.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0462644;-24.256446;50.108329;89.992926;50.08601;90.12017;16.06602;2460996.9539616;12.89503889;1.3;_
2025-11-17T12:53:42.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.0462644;-24.256446;50.108329;89.992926;50.08601;90.12017;16.06602;2460996.9539616;12.89503889;1.3;_
2025-11-17T12:53:42.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:42.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:42.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:42.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:42.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:42.283 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.0462644, teldec = -24.256446
2025-11-17T12:53:42.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0462644 -24.256446
2025-11-17T12:53:42.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0462644 -24.256446
2025-11-17T12:53:42.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0462644 -24.256446
2025-11-17T12:53:42.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0462644;-24.256446;50.108329;89.992926;50.08601;90.12017;16.06602;2460996.95396162;12.89503889;1.3;_19.0201336156295 -24.2921082660296
2025-11-17T12:53:42.284 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0201336156295     dec_j2k = -24.2921082660296
2025-11-17T12:53:42.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:42.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:42.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104643153928257;171.162357330327;_
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104643153928257;171.162357330327;_
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:42.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:42.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:53:42.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:53:42.290 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42733)
2025-11-17T12:53:42.290 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:42.290 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:42.290 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:42.290 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:42.291 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:42.297 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:42.297 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:42.298 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:42.298 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9539616, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643153928257, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992926, telescope_ra=19.0462644, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.06602, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:52:46.558367', telescope_ra_j2k=19.0201336156295, telescope_dec_j2k=-24.2921082660296, observability=1)
2025-11-17T12:53:42.868 [DEBUG] [Thread-67792 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:42.868 [DEBUG] [Thread-67792 (handle)] [server.py] [get_status()] Status age = 0.5700714588165283s
2025-11-17T12:53:42.868 [DEBUG] [Thread-67792 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5700714588165283
2025-11-17T12:53:46.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:46.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:46.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:46.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:46.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:46.701 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:46.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:46.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:46.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:46.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:46.705 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:53:46.705 [INFO] [ThreadPoolExecutor-2811_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:53:46.706 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.707326173782349s
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:53:52.005 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:53:52.006 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:53:52.006 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:53:52.006 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:53:52.006 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:53:52.006 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0489735;-24.256446;50.108329;89.992925;50.08601;90.12017;16.06873;2460996.95407416;12.89774056;1.3;_
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.0489735;-24.256446;50.108329;89.992925;50.08601;90.12017;16.06873;2460996.95407416;12.89774056;1.3;_
2025-11-17T12:53:52.007 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:53:52.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:53:52.008 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:53:52.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:52.009 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:53:52.009 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.0489735, teldec = -24.256446
2025-11-17T12:53:52.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0489735 -24.256446
2025-11-17T12:53:52.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0489735 -24.256446
2025-11-17T12:53:52.009 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0489735 -24.256446
2025-11-17T12:53:52.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0489735;-24.256446;50.108329;89.992925;50.08601;90.12017;16.06873;2460996.95407419;12.89774056;1.3;_19.0228432633581 -24.2922065238376
2025-11-17T12:53:52.010 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.0228432633581     dec_j2k = -24.2922065238376
2025-11-17T12:53:52.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:53:52.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:53:52.010 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104643394599914;171.162341237072;_
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104643394599914;171.162341237072;_
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:52.011 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:53:52.012 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:53:52.013 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:52.013 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:53:52.013 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44205)
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:53:52.015 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:53:52.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:53:52.022 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:52.022 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:53:52.022 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:53:52.023 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:53:52.023 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:53:52.023 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:53:52.023 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:53:52.023 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:53:52.023 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95407416, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643394599914, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992925, telescope_ra=19.0489735, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.06873, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0228432633581, telescope_dec_j2k=-24.2922065238376, observability=1)
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Status age = 8.9131498336792s
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:00.936 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:00.937 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:00.938 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 17;19.0514792;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07123;2460996.95417752;12.90023944;1.3;_
2025-11-17T12:54:00.938 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response 17;19.0514792;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07123;2460996.95417752;12.90023944;1.3;_
2025-11-17T12:54:00.938 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:00.938 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:00.939 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:00.939 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:00.940 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:00.940 [INFO] [Thread-67793 (handle)] [driver.py] [get_status()] Telra = 19.0514792, teldec = -24.256446
2025-11-17T12:54:00.940 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0514792 -24.256446
2025-11-17T12:54:00.940 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0514792 -24.256446
2025-11-17T12:54:00.940 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0514792 -24.256446
2025-11-17T12:54:00.941 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 17;19.0514792;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07123;2460996.95417756;12.90023944;1.3;_19.0253494717313 -24.2922973889664
2025-11-17T12:54:00.941 [INFO] [Thread-67793 (handle)] [driver.py] [get_status()] ra_j2k = 19.0253494717313     dec_j2k = -24.2922973889664
2025-11-17T12:54:00.941 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:00.941 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:00.941 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 140;0.104643555047685;171.162357330327;_
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response 140;0.104643555047685;171.162357330327;_
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:00.942 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:00.943 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:00.944 [DEBUG] [Thread-67793 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:00.944 [DEBUG] [Thread-67793 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:00.944 [DEBUG] [Thread-67793 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33315)
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:00.949 [DEBUG] [Thread-67793 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:00.956 [DEBUG] [Thread-67793 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:00.957 [DEBUG] [Thread-67793 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:00.957 [INFO] [Thread-67793 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95417752, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643555047685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992925, telescope_ra=19.0514792, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.07123, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0253494717313, telescope_dec_j2k=-24.2922973889664, observability=1)
2025-11-17T12:54:07.579 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.579 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.579 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:07.579 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:54:07.580 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:07.581 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:07.582 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.582 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:07.582 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:07.583 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:54:07.584 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:07.585 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Park
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:54:07.586 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 29;19.0533214;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07307;2460996.95425447;12.90207667;1.3;_Park Command Successful
2025-11-17T12:54:08.587 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:54:08.587 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:54:08.587 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:54:08.588 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:54:08.588 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:54:09.588 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:54:09.588 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:54:09.588 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:54:09.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:54:09.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:54:10.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:54:10.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:54:10.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:54:10.589 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:54:10.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Status age = 10.191842794418335s
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:11.149 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 17;19.0543206;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07407;2460996.95429572;12.90307306;1.3;_
2025-11-17T12:54:11.150 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response 17;19.0543206;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07407;2460996.95429572;12.90307306;1.3;_
2025-11-17T12:54:11.151 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:11.151 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:11.151 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:11.151 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:11.152 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:11.152 [INFO] [Thread-67794 (handle)] [driver.py] [get_status()] Telra = 19.0543206, teldec = -24.256446
2025-11-17T12:54:11.152 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0543206 -24.256446
2025-11-17T12:54:11.152 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0543206 -24.256446
2025-11-17T12:54:11.152 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0543206 -24.256446
2025-11-17T12:54:11.153 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 17;19.0543206;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07407;2460996.95429575;12.90307306;1.3;_19.0281914502693 -24.2924004096878
2025-11-17T12:54:11.153 [INFO] [Thread-67794 (handle)] [driver.py] [get_status()] ra_j2k = 19.0281914502693     dec_j2k = -24.2924004096878
2025-11-17T12:54:11.153 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:11.153 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:11.153 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 140;0.104643474823799;171.162357330327;_
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response 140;0.104643474823799;171.162357330327;_
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:11.155 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:11.156 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:11.156 [DEBUG] [Thread-67794 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:11.156 [DEBUG] [Thread-67794 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:11.156 [DEBUG] [Thread-67794 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58075)
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:11.158 [DEBUG] [Thread-67794 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:11.165 [DEBUG] [Thread-67794 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:11.165 [DEBUG] [Thread-67794 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:11.166 [DEBUG] [Thread-67794 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:11.166 [INFO] [Thread-67794 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95429572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643474823799, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992925, telescope_ra=19.0543206, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.07407, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0281914502693, telescope_dec_j2k=-24.2924004096878, observability=1)
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:11.590 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:54:11.591 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:54:11.592 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:12.593 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:12.593 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:12.593 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:12.593 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:12.593 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:54:12.594 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:54:12.595 [DEBUG] [ThreadPoolExecutor-2810_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:12.595 [INFO] [ThreadPoolExecutor-2810_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.7752702236175537s
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0553757;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07513;2460996.95433962;12.90412528;1.3;_
2025-11-17T12:54:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0553757;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07513;2460996.95433962;12.90412528;1.3;_
2025-11-17T12:54:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:14.944 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0553757, teldec = -24.256446
2025-11-17T12:54:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0553757 -24.256446
2025-11-17T12:54:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0553757 -24.256446
2025-11-17T12:54:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0553757 -24.256446
2025-11-17T12:54:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0553757;-24.256446;50.108329;89.992925;50.08601;90.12017;16.07513;2460996.95433964;12.90412528;1.3;_19.0292467656547 -24.2924386595916
2025-11-17T12:54:14.945 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.0292467656547     dec_j2k = -24.2924386595916
2025-11-17T12:54:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104643595159628;171.162357330327;_
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104643595159628;171.162357330327;_
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:54:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:54:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57541)
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:14.961 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95433962, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643595159628, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108329, telescope_az=89.992925, telescope_ra=19.0553757, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.07513, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0292467656547, telescope_dec_j2k=-24.2924386595916, observability=1)
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Status age = 4.035764217376709s
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:18.997 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:18.998 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 17;19.0564965;-24.256446;50.108328;89.992925;50.08601;90.12017;16.07625;2460996.95438656;12.90524306;1.3;_
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response 17;19.0564965;-24.256446;50.108328;89.992925;50.08601;90.12017;16.07625;2460996.95438656;12.90524306;1.3;_
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:18.999 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:19.000 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:19.000 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:19.000 [INFO] [Thread-67795 (handle)] [driver.py] [get_status()] Telra = 19.0564965, teldec = -24.256446
2025-11-17T12:54:19.000 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0564965 -24.256446
2025-11-17T12:54:19.000 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0564965 -24.256446
2025-11-17T12:54:19.001 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0564965 -24.256446
2025-11-17T12:54:19.001 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 17;19.0564965;-24.256446;50.108328;89.992925;50.08601;90.12017;16.07625;2460996.95438659;12.90524306;1.3;_19.0303677947818 -24.2924792883737
2025-11-17T12:54:19.002 [INFO] [Thread-67795 (handle)] [driver.py] [get_status()] ra_j2k = 19.0303677947818     dec_j2k = -24.2924792883737
2025-11-17T12:54:19.002 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:19.002 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:19.002 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 140;0.104643474823799;171.162357330327;_
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response 140;0.104643474823799;171.162357330327;_
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:19.003 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:19.004 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:19.005 [DEBUG] [Thread-67795 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:19.005 [DEBUG] [Thread-67795 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:19.005 [DEBUG] [Thread-67795 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38307)
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:19.007 [DEBUG] [Thread-67795 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:19.014 [DEBUG] [Thread-67795 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:19.014 [INFO] [Thread-67795 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95438656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643474823799, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992925, telescope_ra=19.0564965, telescope_dec=-24.256446, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.07625, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0303677947818, telescope_dec_j2k=-24.2924792883737, observability=1)
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.337425231933594s
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:27.352 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0588332;-24.256445;50.108328;89.992925;50.08601;90.12017;16.07859;2460996.95448325;12.90757333;1.3;_
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0588332;-24.256445;50.108328;89.992925;50.08601;90.12017;16.07859;2460996.95448325;12.90757333;1.3;_
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:27.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:27.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:27.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:27.354 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0588332, teldec = -24.256445
2025-11-17T12:54:27.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0588332 -24.256445
2025-11-17T12:54:27.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0588332 -24.256445
2025-11-17T12:54:27.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0588332 -24.256445
2025-11-17T12:54:27.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0588332;-24.256445;50.108328;89.992925;50.08601;90.12017;16.07859;2460996.95448328;12.90757333;1.3;_19.0327049737643 -24.2925629837373
2025-11-17T12:54:27.355 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.0327049737643     dec_j2k = -24.2925629837373
2025-11-17T12:54:27.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:27.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:27.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:27.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104643595159628;171.162351965909;_
2025-11-17T12:54:27.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104643595159628;171.162351965909;_
2025-11-17T12:54:27.356 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:27.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:27.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:27.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:27.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:27.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:27.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:27.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:27.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:27.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:27.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:27.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:27.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39257)
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:27.360 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:27.367 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:54:27.367 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95448325, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643595159628, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992925, telescope_ra=19.0588332, telescope_dec=-24.256445, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.07859, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0327049737643, telescope_dec_j2k=-24.2925629837373, observability=1)
2025-11-17T12:54:27.367 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08737564086914 seconds ago
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Status age = 9.761033296585083s
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:37.128 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:37.129 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:37.130 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:37.131 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 17;19.0615654;-24.256439;50.108328;89.992913;50.08601;90.12016;16.08132;2460996.95459642;12.91029833;1.3;_
2025-11-17T12:54:37.131 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response 17;19.0615654;-24.256439;50.108328;89.992913;50.08601;90.12016;16.08132;2460996.95459642;12.91029833;1.3;_
2025-11-17T12:54:37.131 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:37.131 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:37.131 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:37.132 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:37.132 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:37.132 [INFO] [Thread-67796 (handle)] [driver.py] [get_status()] Telra = 19.0615654, teldec = -24.256439
2025-11-17T12:54:37.132 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0615654 -24.256439
2025-11-17T12:54:37.132 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0615654 -24.256439
2025-11-17T12:54:37.132 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0615654 -24.256439
2025-11-17T12:54:37.133 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 17;19.0615654;-24.256439;50.108328;89.992913;50.08601;90.12016;16.08132;2460996.95459645;12.91029833;1.3;_19.0354377366267 -24.2926559981103
2025-11-17T12:54:37.133 [INFO] [Thread-67796 (handle)] [driver.py] [get_status()] ra_j2k = 19.0354377366267     dec_j2k = -24.2926559981103
2025-11-17T12:54:37.133 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:37.133 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:37.133 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 140;0.104643514935742;171.162357330327;_
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response 140;0.104643514935742;171.162357330327;_
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:37.134 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:37.135 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:37.136 [DEBUG] [Thread-67796 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:37.136 [DEBUG] [Thread-67796 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:37.136 [DEBUG] [Thread-67796 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48637)
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:37.138 [DEBUG] [Thread-67796 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:37.145 [DEBUG] [Thread-67796 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:37.145 [DEBUG] [Thread-67796 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:37.145 [DEBUG] [Thread-67796 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:37.145 [DEBUG] [Thread-67796 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:37.145 [DEBUG] [Thread-67796 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:37.146 [DEBUG] [Thread-67796 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:37.146 [DEBUG] [Thread-67796 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:37.146 [DEBUG] [Thread-67796 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:37.146 [DEBUG] [Thread-67796 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:37.146 [INFO] [Thread-67796 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95459642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643514935742, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992913, telescope_ra=19.0615654, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.08132, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0354377366267, telescope_dec_j2k=-24.2926559981103, observability=1)
2025-11-17T12:54:42.359 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:54:42
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.212998151779175s
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:42.359 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:42.360 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:42.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0630146;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08277;2460996.95465696;12.91174333;1.3;_
2025-11-17T12:54:42.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.0630146;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08277;2460996.95465696;12.91174333;1.3;_
2025-11-17T12:54:42.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:42.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:42.361 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:42.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:42.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:42.362 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.0630146, teldec = -24.256445
2025-11-17T12:54:42.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0630146 -24.256445
2025-11-17T12:54:42.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0630146 -24.256445
2025-11-17T12:54:42.362 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0630146 -24.256445
2025-11-17T12:54:42.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0630146;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08277;2460996.95465698;12.91174333;1.3;_19.0368872342173 -24.2927145088373
2025-11-17T12:54:42.363 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0368872342173     dec_j2k = -24.2927145088373
2025-11-17T12:54:42.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:42.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104643835831285;171.162351965909;_
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104643835831285;171.162351965909;_
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:42.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:42.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:42.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:42.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:42.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:42.370 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46279)
2025-11-17T12:54:42.370 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:42.370 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:42.370 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:42.370 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:42.371 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:42.377 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:42.377 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:42.378 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:42.378 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95465696, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643835831285, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992924, telescope_ra=19.0630146, telescope_dec=-24.256445, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.08277, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:53:46.699804', telescope_ra_j2k=19.0368872342173, telescope_dec_j2k=-24.2927145088373, observability=1)
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:46.846 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:46.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:46.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:46.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:46.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:46.847 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:54:46.847 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:46.847 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:54:46.848 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:54:46.849 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:47.849 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:47.849 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:47.849 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:47.850 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:47.851 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:47.852 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:47.852 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:47.852 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:47.852 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:47.853 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:47.853 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:47.853 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:47.853 [DEBUG] [ThreadPoolExecutor-2812_0] [payload.py] [to_registers()] [0]
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46937)
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:47.857 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:47.864 [DEBUG] [ThreadPoolExecutor-2812_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.73863172531128s
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:51.117 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:51.118 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:51.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0654418;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08519;2460996.95475832;12.91416389;1.3;_
2025-11-17T12:54:51.119 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.0654418;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08519;2460996.95475832;12.91416389;1.3;_
2025-11-17T12:54:51.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:51.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:51.119 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:51.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:51.120 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:51.120 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.0654418, teldec = -24.256445
2025-11-17T12:54:51.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0654418 -24.256445
2025-11-17T12:54:51.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0654418 -24.256445
2025-11-17T12:54:51.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0654418 -24.256445
2025-11-17T12:54:51.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0654418;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08519;2460996.95475834;12.91416389;1.3;_19.0393149358585 -24.2928024461944
2025-11-17T12:54:51.121 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.0393149358585     dec_j2k = -24.2928024461944
2025-11-17T12:54:51.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:51.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104643755607399;171.162357330327;_
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104643755607399;171.162357330327;_
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:51.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:51.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:51.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:51.124 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:51.124 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:51.127 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32979)
2025-11-17T12:54:51.128 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:51.128 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:51.128 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:51.128 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:51.128 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:51.135 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:51.135 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95475832, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643755607399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992924, telescope_ra=19.0654418, telescope_dec=-24.256445, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.08519, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0393149358585, telescope_dec_j2k=-24.2928024461944, observability=1)
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Status age = 4.063352584838867s
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:54:55.199 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:54:55.200 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:54:55.201 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 17;19.066581;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08633;2460996.95480557;12.9153;1.3;_
2025-11-17T12:54:55.201 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response 17;19.066581;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08633;2460996.95480557;12.9153;1.3;_
2025-11-17T12:54:55.201 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:54:55.201 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:54:55.201 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:54:55.202 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:55.202 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:54:55.203 [INFO] [Thread-67797 (handle)] [driver.py] [get_status()] Telra = 19.066581, teldec = -24.256445
2025-11-17T12:54:55.203 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] UnCookCoordinates 19.066581 -24.256445
2025-11-17T12:54:55.203 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.066581 -24.256445
2025-11-17T12:54:55.203 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.066581 -24.256445
2025-11-17T12:54:55.204 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 17;19.066581;-24.256445;50.108328;89.992924;50.08601;90.12017;16.08633;2460996.9548056;12.9153;1.3;_19.0404543718518 -24.2928437144771
2025-11-17T12:54:55.204 [INFO] [Thread-67797 (handle)] [driver.py] [get_status()] ra_j2k = 19.0404543718518     dec_j2k = -24.2928437144771
2025-11-17T12:54:55.204 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:54:55.204 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:54:55.204 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 140;0.104643755607399;171.162351965909;_
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response 140;0.104643755607399;171.162351965909;_
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:55.205 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:54:55.206 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:54:55.207 [DEBUG] [Thread-67797 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:55.207 [DEBUG] [Thread-67797 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:54:55.207 [DEBUG] [Thread-67797 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:54:55.209 [DEBUG] [Thread-67797 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48737)
2025-11-17T12:54:55.210 [DEBUG] [Thread-67797 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:54:55.210 [DEBUG] [Thread-67797 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:54:55.210 [DEBUG] [Thread-67797 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:54:55.210 [DEBUG] [Thread-67797 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:54:55.210 [DEBUG] [Thread-67797 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:54:55.217 [DEBUG] [Thread-67797 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:54:55.217 [DEBUG] [Thread-67797 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:55.217 [DEBUG] [Thread-67797 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:54:55.218 [DEBUG] [Thread-67797 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:54:55.218 [INFO] [Thread-67797 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95480557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104643755607399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992924, telescope_ra=19.066581, telescope_dec=-24.256445, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.08633, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0404543718518, telescope_dec_j2k=-24.2928437144771, observability=1)
2025-11-17T12:55:11.194 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:11.194 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Status age = 15.97659969329834s
2025-11-17T12:55:11.194 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:11.194 [DEBUG] [Thread-67798 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:11.195 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:11.196 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 17;19.071036;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09079;2460996.95499069;12.91974278;1.3;_
2025-11-17T12:55:11.196 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response 17;19.071036;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09079;2460996.95499069;12.91974278;1.3;_
2025-11-17T12:55:11.196 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:11.196 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:11.196 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:11.197 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:11.197 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:11.197 [INFO] [Thread-67798 (handle)] [driver.py] [get_status()] Telra = 19.071036, teldec = -24.256444
2025-11-17T12:55:11.197 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] UnCookCoordinates 19.071036 -24.256444
2025-11-17T12:55:11.198 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.071036 -24.256444
2025-11-17T12:55:11.198 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.071036 -24.256444
2025-11-17T12:55:11.198 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 17;19.071036;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09079;2460996.95499072;12.91974278;1.3;_19.0449102982998 -24.2930040698552
2025-11-17T12:55:11.199 [INFO] [Thread-67798 (handle)] [driver.py] [get_status()] ra_j2k = 19.0449102982998     dec_j2k = -24.2930040698552
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 140;0.104644557846255;171.162357330327;_
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response 140;0.104644557846255;171.162357330327;_
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:11.199 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:11.200 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:11.201 [DEBUG] [Thread-67798 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:55:11.201 [DEBUG] [Thread-67798 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:55:11.201 [DEBUG] [Thread-67798 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59101)
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:11.204 [DEBUG] [Thread-67798 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:11.211 [DEBUG] [Thread-67798 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:11.211 [INFO] [Thread-67798 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95499069, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644557846255, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992923, telescope_ra=19.071036, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.09079, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0449102982998, telescope_dec_j2k=-24.2930040698552, observability=1)
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:12.865 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:12.866 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:12.866 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:12.866 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:55:12.867 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Status age = 2.0466296672821045s
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:13.258 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:13.259 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:13.260 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 17;19.0716256;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09138;2460996.95501458;12.92033083;1.3;_
2025-11-17T12:55:13.260 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response 17;19.0716256;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09138;2460996.95501458;12.92033083;1.3;_
2025-11-17T12:55:13.260 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:13.260 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:13.260 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:13.261 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:13.261 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:13.261 [INFO] [Thread-67799 (handle)] [driver.py] [get_status()] Telra = 19.0716256, teldec = -24.256444
2025-11-17T12:55:13.261 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0716256 -24.256444
2025-11-17T12:55:13.261 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0716256 -24.256444
2025-11-17T12:55:13.261 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0716256 -24.256444
2025-11-17T12:55:13.262 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 17;19.0716256;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09138;2460996.95501461;12.92033083;1.3;_19.0455000212877 -24.2930254209368
2025-11-17T12:55:13.262 [INFO] [Thread-67799 (handle)] [driver.py] [get_status()] ra_j2k = 19.0455000212877     dec_j2k = -24.2930254209368
2025-11-17T12:55:13.262 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:13.262 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 140;0.104644597958198;171.162351965909;_
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response 140;0.104644597958198;171.162351965909;_
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:13.263 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:13.264 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:13.265 [DEBUG] [Thread-67799 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:13.265 [DEBUG] [Thread-67799 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:13.265 [DEBUG] [Thread-67799 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39767)
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:13.267 [DEBUG] [Thread-67799 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:13.274 [DEBUG] [Thread-67799 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:13.274 [INFO] [Thread-67799 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95501458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644597958198, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992923, telescope_ra=19.0716256, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.09138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0455000212877, telescope_dec_j2k=-24.2930254209368, observability=1)
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6709330081939697s
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0720744;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09183;2460996.95503411;12.92077833;1.3;_
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0720744;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09183;2460996.95503411;12.92077833;1.3;_
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:14.949 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0720744, teldec = -24.256444
2025-11-17T12:55:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0720744 -24.256444
2025-11-17T12:55:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0720744 -24.256444
2025-11-17T12:55:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0720744 -24.256444
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0720744;-24.256444;50.108328;89.992923;50.08601;90.12017;16.09183;2460996.95503414;12.92077833;1.3;_19.0459489149683 -24.2930416726883
2025-11-17T12:55:14.950 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.0459489149683     dec_j2k = -24.2930416726883
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104644317174598;171.162346601491;_
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104644317174598;171.162346601491;_
2025-11-17T12:55:14.950 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56353)
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:14.963 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:14.963 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:14.964 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:14.964 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95503411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644317174598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108328, telescope_az=89.992923, telescope_ra=19.0720744, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.09183, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0459489149683, telescope_dec_j2k=-24.2930416726883, observability=1)
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.463316202163696s
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:27.427 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:27.428 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:27.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0755525;-24.256444;50.108327;89.992923;50.08601;90.12017;16.0953;2460996.95517858;12.92424694;1.3;_
2025-11-17T12:55:27.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0755525;-24.256444;50.108327;89.992923;50.08601;90.12017;16.0953;2460996.95517858;12.92424694;1.3;_
2025-11-17T12:55:27.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:27.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:27.429 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:27.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:27.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:27.430 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0755525, teldec = -24.256444
2025-11-17T12:55:27.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0755525 -24.256444
2025-11-17T12:55:27.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0755525 -24.256444
2025-11-17T12:55:27.430 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0755525 -24.256444
2025-11-17T12:55:27.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0755525;-24.256444;50.108327;89.992923;50.08601;90.12017;16.0953;2460996.9551786;12.92424694;1.3;_19.0494277428183 -24.2931676035763
2025-11-17T12:55:27.431 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.0494277428183     dec_j2k = -24.2931676035763
2025-11-17T12:55:27.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:27.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:27.431 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104644076502941;171.162362694745;_
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104644076502941;171.162362694745;_
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:27.432 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:27.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:27.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:27.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:27.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51747)
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:27.437 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:27.444 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:55:27.445 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95517858, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644076502941, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992923, telescope_ra=19.0755525, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.0953, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0494277428183, telescope_dec_j2k=-24.2931676035763, observability=1)
2025-11-17T12:55:27.445 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08587694168091 seconds ago
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Status age = 3.9493391513824463s
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:31.394 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:31.395 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:31.396 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 17;19.0766652;-24.256444;50.108327;89.992923;50.08601;90.12017;16.09642;2460996.95522449;12.92535667;1.3;_
2025-11-17T12:55:31.396 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response 17;19.0766652;-24.256444;50.108327;89.992923;50.08601;90.12017;16.09642;2460996.95522449;12.92535667;1.3;_
2025-11-17T12:55:31.396 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:31.396 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:31.397 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:31.397 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:31.397 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:31.397 [INFO] [Thread-67800 (handle)] [driver.py] [get_status()] Telra = 19.0766652, teldec = -24.256444
2025-11-17T12:55:31.398 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0766652 -24.256444
2025-11-17T12:55:31.398 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0766652 -24.256444
2025-11-17T12:55:31.398 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0766652 -24.256444
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 17;19.0766652;-24.256444;50.108327;89.992923;50.08601;90.12017;16.09642;2460996.95522451;12.92535667;1.3;_19.0505406763596 -24.293207884682
2025-11-17T12:55:31.399 [INFO] [Thread-67800 (handle)] [driver.py] [get_status()] ra_j2k = 19.0505406763596     dec_j2k = -24.293207884682
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 140;0.104644076502941;171.162362694745;_
2025-11-17T12:55:31.399 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response 140;0.104644076502941;171.162362694745;_
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:31.400 [DEBUG] [Thread-67800 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:31.401 [DEBUG] [Thread-67800 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:31.402 [DEBUG] [Thread-67800 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51663)
2025-11-17T12:55:31.402 [DEBUG] [Thread-67800 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:31.402 [DEBUG] [Thread-67800 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:31.402 [DEBUG] [Thread-67800 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:31.403 [DEBUG] [Thread-67800 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:31.403 [DEBUG] [Thread-67800 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:31.409 [DEBUG] [Thread-67800 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:31.410 [DEBUG] [Thread-67800 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:31.410 [INFO] [Thread-67800 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95522449, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644076502941, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992923, telescope_ra=19.0766652, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.09642, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0505406763596, telescope_dec_j2k=-24.293207884682, observability=1)
2025-11-17T12:55:42.439 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:55:42
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.02909803390503s
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:42.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:42.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:42.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0797336;-24.256444;50.108327;89.992922;50.08601;90.12017;16.09949;2460996.95535233;12.92841667;1.3;_
2025-11-17T12:55:42.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.0797336;-24.256444;50.108327;89.992922;50.08601;90.12017;16.09949;2460996.95535233;12.92841667;1.3;_
2025-11-17T12:55:42.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:42.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:42.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:42.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:42.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:42.442 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.0797336, teldec = -24.256444
2025-11-17T12:55:42.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0797336 -24.256444
2025-11-17T12:55:42.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0797336 -24.256444
2025-11-17T12:55:42.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0797336 -24.256444
2025-11-17T12:55:42.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.0797336;-24.256444;50.108327;89.992922;50.08601;90.12017;16.09951;2460996.95535235;12.92844472;1.3;_19.0536097221106 -24.2933189489011
2025-11-17T12:55:42.443 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0536097221106     dec_j2k = -24.2933189489011
2025-11-17T12:55:42.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:42.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:42.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104644557846255;171.162346601491;_
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104644557846255;171.162346601491;_
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:42.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:42.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:42.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:42.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:42.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55575)
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:42.448 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:42.455 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:42.455 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95535233, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104644557846255, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992922, telescope_ra=19.0797336, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.09949, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:54:46.845448', telescope_ra_j2k=19.0536097221106, telescope_dec_j2k=-24.2933189489011, observability=1)
2025-11-17T12:55:46.985 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:46.985 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:46.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:46.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:46.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:46.986 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:46.987 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:55:46.988 [INFO] [ThreadPoolExecutor-2813_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:55:46.988 [INFO] [ThreadPoolExecutor-2813_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Status age = 6.994877815246582s
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:55:49.450 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:55:49.451 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:55:49.452 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 17;19.0816887;-24.256444;50.108327;89.992922;50.08601;90.12017;16.10144;2460996.95543346;12.93036639;1.3;_
2025-11-17T12:55:49.452 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response 17;19.0816887;-24.256444;50.108327;89.992922;50.08601;90.12017;16.10144;2460996.95543346;12.93036639;1.3;_
2025-11-17T12:55:49.452 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:55:49.452 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:55:49.452 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:55:49.453 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:49.453 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:55:49.453 [INFO] [Thread-67801 (handle)] [driver.py] [get_status()] Telra = 19.0816887, teldec = -24.256444
2025-11-17T12:55:49.453 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0816887 -24.256444
2025-11-17T12:55:49.453 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0816887 -24.256444
2025-11-17T12:55:49.453 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0816887 -24.256444
2025-11-17T12:55:49.454 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 17;19.0816887;-24.256444;50.108327;89.992922;50.08601;90.12017;16.10144;2460996.9554335;12.93036639;1.3;_19.0555652348925 -24.2933897039754
2025-11-17T12:55:49.454 [INFO] [Thread-67801 (handle)] [driver.py] [get_status()] ra_j2k = 19.0555652348925     dec_j2k = -24.2933897039754
2025-11-17T12:55:49.454 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:55:49.454 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:55:49.454 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 140;0.10464548042094;171.162357330327;_
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response 140;0.10464548042094;171.162357330327;_
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:49.455 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:55:49.456 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:55:49.457 [DEBUG] [Thread-67801 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:49.457 [DEBUG] [Thread-67801 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:55:49.457 [DEBUG] [Thread-67801 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45745)
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:55:49.463 [DEBUG] [Thread-67801 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:55:49.470 [DEBUG] [Thread-67801 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:55:49.471 [DEBUG] [Thread-67801 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:55:49.471 [INFO] [Thread-67801 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95543346, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464548042094, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992922, telescope_ra=19.0816887, telescope_dec=-24.256444, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.10144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0555652348925, telescope_dec_j2k=-24.2933897039754, observability=1)
2025-11-17T12:55:50.231 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:55:50.231 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.759819746017456s
2025-11-17T12:55:50.231 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.759819746017456
2025-11-17T12:56:07.516 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:07.516 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Status age = 18.045346975326538s
2025-11-17T12:56:07.516 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:07.517 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 17;19.0867286;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10648;2460996.95564257;12.9353925;1.3;_
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response 17;19.0867286;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10648;2460996.95564257;12.9353925;1.3;_
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:07.518 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:07.519 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:07.519 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:07.519 [INFO] [Thread-67802 (handle)] [driver.py] [get_status()] Telra = 19.0867286, teldec = -24.256443
2025-11-17T12:56:07.519 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0867286 -24.256443
2025-11-17T12:56:07.519 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0867286 -24.256443
2025-11-17T12:56:07.519 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0867286 -24.256443
2025-11-17T12:56:07.520 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 17;19.0867286;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10648;2460996.95564259;12.9353925;1.3;_19.0606062039272 -24.2935710548707
2025-11-17T12:56:07.520 [INFO] [Thread-67802 (handle)] [driver.py] [get_status()] ra_j2k = 19.0606062039272     dec_j2k = -24.2935710548707
2025-11-17T12:56:07.520 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:07.520 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:07.520 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 140;0.104645881540368;171.162357330327;_
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response 140;0.104645881540368;171.162357330327;_
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:07.521 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:07.522 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:07.523 [DEBUG] [Thread-67802 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:07.523 [DEBUG] [Thread-67802 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:07.523 [DEBUG] [Thread-67802 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43903)
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:07.528 [DEBUG] [Thread-67802 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:07.535 [DEBUG] [Thread-67802 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:07.535 [DEBUG] [Thread-67802 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:07.535 [DEBUG] [Thread-67802 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:07.535 [DEBUG] [Thread-67802 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:07.536 [DEBUG] [Thread-67802 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:07.536 [DEBUG] [Thread-67802 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:07.536 [DEBUG] [Thread-67802 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:07.536 [DEBUG] [Thread-67802 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:07.536 [DEBUG] [Thread-67802 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:07.536 [INFO] [Thread-67802 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95564257, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104645881540368, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992922, telescope_ra=19.0867286, telescope_dec=-24.256443, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.10648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0606062039272, telescope_dec_j2k=-24.2935710548707, observability=1)
2025-11-17T12:56:07.867 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:56:07.868 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:07.869 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:07.870 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.870 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:07.870 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.871 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:56:07.872 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.873 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:07.873 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:07.873 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:07.873 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:07.873 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Park
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:56:07.874 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:56:07.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 29;19.0868411;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10659;2460996.9556467;12.93550472;1.3;_Park Command Successful
2025-11-17T12:56:08.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:56:08.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:56:08.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:56:08.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:56:08.875 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:56:09.876 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:56:09.876 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:56:09.876 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:56:09.876 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:56:09.876 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:56:10.877 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:56:10.877 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:56:10.877 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:56:10.877 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:56:10.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Status age = 3.7089147567749023s
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:11.245 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:11.246 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:11.247 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 17;19.0877553;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10751;2460996.95568573;12.93641639;1.3;_
2025-11-17T12:56:11.247 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response 17;19.0877553;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10751;2460996.95568573;12.93641639;1.3;_
2025-11-17T12:56:11.247 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:11.247 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:11.247 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:11.248 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:11.248 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:11.248 [INFO] [Thread-67803 (handle)] [driver.py] [get_status()] Telra = 19.0877553, teldec = -24.256443
2025-11-17T12:56:11.248 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0877553 -24.256443
2025-11-17T12:56:11.248 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0877553 -24.256443
2025-11-17T12:56:11.248 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0877553 -24.256443
2025-11-17T12:56:11.249 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 17;19.0877553;-24.256443;50.108327;89.992922;50.08601;90.12017;16.10751;2460996.95568575;12.93641639;1.3;_19.0616331225069 -24.293608194701
2025-11-17T12:56:11.249 [INFO] [Thread-67803 (handle)] [driver.py] [get_status()] ra_j2k = 19.0616331225069     dec_j2k = -24.293608194701
2025-11-17T12:56:11.249 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:11.249 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:11.249 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 140;0.104646242547853;171.162351965909;_
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response 140;0.104646242547853;171.162351965909;_
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:11.250 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:11.251 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:11.252 [DEBUG] [Thread-67803 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:11.252 [DEBUG] [Thread-67803 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:11.252 [DEBUG] [Thread-67803 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56367)
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:11.256 [DEBUG] [Thread-67803 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:11.263 [DEBUG] [Thread-67803 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:11.263 [INFO] [Thread-67803 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95568573, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104646242547853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992922, telescope_ra=19.0877553, telescope_dec=-24.256443, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.10751, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0616331225069, telescope_dec_j2k=-24.293608194701, observability=1)
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:11.878 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:56:11.879 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:56:11.880 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:56:11.880 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:12.880 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:12.881 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:12.881 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:12.881 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:12.881 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:56:12.882 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:56:12.883 [DEBUG] [ThreadPoolExecutor-2812_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:12.883 [INFO] [ThreadPoolExecutor-2812_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:56:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.70102596282959s
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0887923;-24.256443;50.108327;89.992921;50.08601;90.12017;16.10854;2460996.95572877;12.93745056;1.3;_
2025-11-17T12:56:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.0887923;-24.256443;50.108327;89.992921;50.08601;90.12017;16.10854;2460996.95572877;12.93745056;1.3;_
2025-11-17T12:56:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:14.968 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.0887923, teldec = -24.256443
2025-11-17T12:56:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0887923 -24.256443
2025-11-17T12:56:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0887923 -24.256443
2025-11-17T12:56:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0887923 -24.256443
2025-11-17T12:56:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.0887923;-24.256443;50.108327;89.992921;50.08601;90.12017;16.10854;2460996.95572881;12.93745056;1.3;_19.0626703435684 -24.2936457044888
2025-11-17T12:56:14.969 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.0626703435684     dec_j2k = -24.2936457044888
2025-11-17T12:56:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10464648321951;171.162362694745;_
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10464648321951;171.162362694745;_
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58867)
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:14.978 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:14.986 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:14.986 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95572877, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464648321951, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108327, telescope_az=89.992921, telescope_ra=19.0887923, telescope_dec=-24.256443, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.10854, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0626703435684, telescope_dec_j2k=-24.2936457044888, observability=1)
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Status age = 10.654778718948364s
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:25.641 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 17;19.091771;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11152;2460996.95585234;12.94042111;1.3;_
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response 17;19.091771;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11152;2460996.95585234;12.94042111;1.3;_
2025-11-17T12:56:25.642 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:25.643 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:25.643 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:25.643 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:25.643 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:25.644 [INFO] [Thread-67804 (handle)] [driver.py] [get_status()] Telra = 19.091771, teldec = -24.256443
2025-11-17T12:56:25.644 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] UnCookCoordinates 19.091771 -24.256443
2025-11-17T12:56:25.644 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.091771 -24.256443
2025-11-17T12:56:25.644 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.091771 -24.256443
2025-11-17T12:56:25.645 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 17;19.091771;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11152;2460996.95585237;12.94042111;1.3;_19.0656496801655 -24.29375343362
2025-11-17T12:56:25.645 [INFO] [Thread-67804 (handle)] [driver.py] [get_status()] ra_j2k = 19.0656496801655     dec_j2k = -24.29375343362
2025-11-17T12:56:25.645 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:25.645 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:25.645 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 140;0.104647044786709;171.162368059163;_
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response 140;0.104647044786709;171.162368059163;_
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:25.646 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:25.647 [DEBUG] [Thread-67804 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:25.648 [DEBUG] [Thread-67804 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:25.648 [DEBUG] [Thread-67804 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:56:25.652 [DEBUG] [Thread-67804 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33529)
2025-11-17T12:56:25.652 [DEBUG] [Thread-67804 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:25.652 [DEBUG] [Thread-67804 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:25.653 [DEBUG] [Thread-67804 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:25.653 [DEBUG] [Thread-67804 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:25.653 [DEBUG] [Thread-67804 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:25.660 [DEBUG] [Thread-67804 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:25.660 [INFO] [Thread-67804 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95585234, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647044786709, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.992921, telescope_ra=19.091771, telescope_dec=-24.256443, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.11152, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0656496801655, telescope_dec_j2k=-24.29375343362, observability=1)
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.8448536396026611s
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:27.505 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:27.506 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0923032;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11206;2460996.95587391;12.94095194;1.3;_
2025-11-17T12:56:27.506 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.0923032;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11206;2460996.95587391;12.94095194;1.3;_
2025-11-17T12:56:27.506 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:27.506 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:27.506 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:27.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:27.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:27.507 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.0923032, teldec = -24.256443
2025-11-17T12:56:27.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.0923032 -24.256443
2025-11-17T12:56:27.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.0923032 -24.256443
2025-11-17T12:56:27.507 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0923032 -24.256443
2025-11-17T12:56:27.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.0923032;-24.256443;50.108326;89.992921;50.08601;90.12017;16.11206;2460996.95587394;12.94095194;1.3;_19.0661819941577 -24.2937726791197
2025-11-17T12:56:27.508 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.0661819941577     dec_j2k = -24.2937726791197
2025-11-17T12:56:27.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:27.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:27.508 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104647365682251;171.162368059163;_
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104647365682251;171.162368059163;_
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:27.509 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:27.510 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:27.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:27.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:27.511 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44107)
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:27.514 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:27.521 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:27.522 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:56:27.522 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95587391, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647365682251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.992921, telescope_ra=19.0923032, telescope_dec=-24.256443, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.11206, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0661819941577, telescope_dec_j2k=-24.2937726791197, observability=1)
2025-11-17T12:56:27.522 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08284258842468 seconds ago
2025-11-17T12:56:42.516 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:56:42
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.994426012039185s
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:42.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:42.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:42.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.096476;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11623;2460996.95604765;12.94511333;1.3;_
2025-11-17T12:56:42.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.096476;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11623;2460996.95604765;12.94511333;1.3;_
2025-11-17T12:56:42.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:42.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:42.518 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:42.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:42.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:42.519 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.096476, teldec = -24.256442
2025-11-17T12:56:42.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.096476 -24.256442
2025-11-17T12:56:42.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.096476 -24.256442
2025-11-17T12:56:42.519 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.096476 -24.256442
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.096476;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11623;2460996.95604769;12.94511333;1.3;_19.0703556907763 -24.2939225523367
2025-11-17T12:56:42.520 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0703556907763     dec_j2k = -24.2939225523367
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104648007473336;171.162357330327;_
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104648007473336;171.162357330327;_
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:42.520 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:42.521 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:42.522 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:42.522 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:56:42.522 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:56:42.526 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35247)
2025-11-17T12:56:42.526 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:42.526 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:42.526 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:42.526 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:42.527 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:42.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:42.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:42.534 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:42.534 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95604765, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648007473336, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.992921, telescope_ra=19.096476, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.11623, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0703556907763, telescope_dec_j2k=-24.2939225523367, observability=1)
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Status age = 1.1751189231872559s
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:43.709 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:43.710 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:43.710 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:43.710 [DEBUG] [Thread-67805 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:43.710 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 17;19.0968125;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11656;2460996.95606147;12.94544889;1.3;_
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response 17;19.0968125;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11656;2460996.95606147;12.94544889;1.3;_
2025-11-17T12:56:43.711 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:43.712 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:43.712 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:43.713 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:43.713 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:43.713 [INFO] [Thread-67805 (handle)] [driver.py] [get_status()] Telra = 19.0968125, teldec = -24.256442
2025-11-17T12:56:43.713 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0968125 -24.256442
2025-11-17T12:56:43.713 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0968125 -24.256442
2025-11-17T12:56:43.713 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0968125 -24.256442
2025-11-17T12:56:43.714 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 17;19.0968125;-24.256442;50.108326;89.992921;50.08601;90.12017;16.11656;2460996.9560615;12.94544889;1.3;_19.0706922632701 -24.29393471706
2025-11-17T12:56:43.714 [INFO] [Thread-67805 (handle)] [driver.py] [get_status()] ra_j2k = 19.0706922632701     dec_j2k = -24.29393471706
2025-11-17T12:56:43.714 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:43.714 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:43.714 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 140;0.104647927249451;171.162357330327;_
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response 140;0.104647927249451;171.162357330327;_
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:43.715 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:43.716 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:43.717 [DEBUG] [Thread-67805 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:43.717 [DEBUG] [Thread-67805 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:43.717 [DEBUG] [Thread-67805 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40743)
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:43.722 [DEBUG] [Thread-67805 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:43.730 [DEBUG] [Thread-67805 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:43.730 [INFO] [Thread-67805 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95606147, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647927249451, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.992921, telescope_ra=19.0968125, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.11656, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:55:46.984994', telescope_ra_j2k=19.0706922632701, telescope_dec_j2k=-24.29393471706, observability=1)
2025-11-17T12:56:47.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:47.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:47.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:47.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:47.128 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:47.128 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:47.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:47.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:47.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:47.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:47.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:47.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:47.130 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:47.130 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:56:47.131 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:56:47.132 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:48.132 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:48.132 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:48.132 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:48.132 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:48.132 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:56:48.133 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:48.134 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:48.135 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:48.135 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:48.135 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:48.135 [DEBUG] [ThreadPoolExecutor-2814_0] [payload.py] [to_registers()] [0]
2025-11-17T12:56:48.138 [DEBUG] [ThreadPoolExecutor-2814_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34487)
2025-11-17T12:56:48.139 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:48.139 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:48.139 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:56:48.139 [DEBUG] [ThreadPoolExecutor-2814_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:48.139 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:48.146 [DEBUG] [ThreadPoolExecutor-2814_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.596669435501099s
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:56:49.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:56:49.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0983715;-24.256442;50.108326;89.99292;50.08601;90.12017;16.11812;2460996.95612648;12.94700361;1.3;_
2025-11-17T12:56:49.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.0983715;-24.256442;50.108326;89.99292;50.08601;90.12017;16.11812;2460996.95612648;12.94700361;1.3;_
2025-11-17T12:56:49.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:56:49.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:56:49.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:56:49.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:49.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:56:49.330 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.0983715, teldec = -24.256442
2025-11-17T12:56:49.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.0983715 -24.256442
2025-11-17T12:56:49.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.0983715 -24.256442
2025-11-17T12:56:49.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.0983715 -24.256442
2025-11-17T12:56:49.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.0983715;-24.256442;50.108326;89.99292;50.08601;90.12017;16.11812;2460996.9561265;12.94700361;1.3;_19.0722515995317 -24.2939910723882
2025-11-17T12:56:49.331 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.0722515995317     dec_j2k = -24.2939910723882
2025-11-17T12:56:49.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:56:49.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:56:49.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10464720523448;171.162357330327;_
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10464720523448;171.162357330327;_
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:49.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:56:49.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:56:49.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:49.334 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:56:49.334 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:56:49.334 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50377)
2025-11-17T12:56:49.334 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:56:49.335 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:56:49.335 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:56:49.335 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:56:49.335 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:56:49.343 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:56:49.343 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95612648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464720523448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.99292, telescope_ra=19.0983715, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.11812, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0722515995317, telescope_dec_j2k=-24.2939910723882, observability=1)
2025-11-17T12:57:01.768 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:01.768 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Status age = 12.425203323364258s
2025-11-17T12:57:01.768 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:01.769 [DEBUG] [Thread-67806 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:01.769 [DEBUG] [Thread-67806 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:01.769 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:01.769 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:01.769 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:01.770 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:01.771 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 17;19.1018268;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12158;2460996.9562705;12.95044944;1.3;_
2025-11-17T12:57:01.771 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response 17;19.1018268;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12158;2460996.9562705;12.95044944;1.3;_
2025-11-17T12:57:01.771 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:01.771 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:01.771 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:01.772 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:01.772 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:01.772 [INFO] [Thread-67806 (handle)] [driver.py] [get_status()] Telra = 19.1018268, teldec = -24.256442
2025-11-17T12:57:01.772 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1018268 -24.256442
2025-11-17T12:57:01.772 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1018268 -24.256442
2025-11-17T12:57:01.772 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1018268 -24.256442
2025-11-17T12:57:01.773 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 17;19.1018268;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12158;2460996.95627052;12.95044944;1.3;_19.075707647146 -24.2941159543232
2025-11-17T12:57:01.773 [INFO] [Thread-67806 (handle)] [driver.py] [get_status()] ra_j2k = 19.075707647146     dec_j2k = -24.2941159543232
2025-11-17T12:57:01.773 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:01.773 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 140;0.104647847025565;171.162351965909;_
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response 140;0.104647847025565;171.162351965909;_
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:01.774 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:01.775 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:01.775 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:01.775 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:01.775 [DEBUG] [Thread-67806 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:01.776 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:01.776 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:01.776 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:01.777 [DEBUG] [Thread-67806 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:01.777 [DEBUG] [Thread-67806 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:01.777 [DEBUG] [Thread-67806 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41451)
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:01.780 [DEBUG] [Thread-67806 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:01.788 [DEBUG] [Thread-67806 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:01.788 [INFO] [Thread-67806 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9562705, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647847025565, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.99292, telescope_ra=19.1018268, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.12158, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.075707647146, telescope_dec_j2k=-24.2941159543232, observability=1)
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Status age = 9.50870156288147s
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:11.297 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 17;19.1045071;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12426;2460996.95638076;12.9531225;1.3;_
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response 17;19.1045071;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12426;2460996.95638076;12.9531225;1.3;_
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:11.298 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:11.299 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:11.299 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:11.299 [INFO] [Thread-67807 (handle)] [driver.py] [get_status()] Telra = 19.1045071, teldec = -24.256442
2025-11-17T12:57:11.299 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1045071 -24.256442
2025-11-17T12:57:11.299 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1045071 -24.256442
2025-11-17T12:57:11.299 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1045071 -24.256442
2025-11-17T12:57:11.300 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 17;19.1045071;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12426;2460996.95638079;12.9531225;1.3;_19.0783885292952 -24.2942128055736
2025-11-17T12:57:11.300 [INFO] [Thread-67807 (handle)] [driver.py] [get_status()] ra_j2k = 19.0783885292952     dec_j2k = -24.2942128055736
2025-11-17T12:57:11.300 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:11.300 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:11.300 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 140;0.104648007473336;171.162368059163;_
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response 140;0.104648007473336;171.162368059163;_
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:11.301 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:11.302 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:11.303 [DEBUG] [Thread-67807 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:11.303 [DEBUG] [Thread-67807 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:11.303 [DEBUG] [Thread-67807 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:11.306 [DEBUG] [Thread-67807 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49873)
2025-11-17T12:57:11.307 [DEBUG] [Thread-67807 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:11.307 [DEBUG] [Thread-67807 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:11.307 [DEBUG] [Thread-67807 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:11.307 [DEBUG] [Thread-67807 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:11.307 [DEBUG] [Thread-67807 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:11.314 [DEBUG] [Thread-67807 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:11.314 [INFO] [Thread-67807 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95638076, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648007473336, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.99292, telescope_ra=19.1045071, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.12426, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0783885292952, telescope_dec_j2k=-24.2942128055736, observability=1)
2025-11-17T12:57:13.146 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:13.146 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:13.146 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:13.146 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:13.146 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:13.147 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:57:13.148 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:57:13.149 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.6209962368011475s
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1055063;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12526;2460996.95642288;12.95411889;1.3;_
2025-11-17T12:57:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.1055063;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12526;2460996.95642288;12.95411889;1.3;_
2025-11-17T12:57:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:14.938 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.1055063, teldec = -24.256442
2025-11-17T12:57:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1055063 -24.256442
2025-11-17T12:57:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1055063 -24.256442
2025-11-17T12:57:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1055063 -24.256442
2025-11-17T12:57:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1055063;-24.256442;50.108326;89.99292;50.08601;90.12017;16.12526;2460996.9564229;12.95411889;1.3;_19.0793879468132 -24.2942489065475
2025-11-17T12:57:14.939 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.0793879468132     dec_j2k = -24.2942489065475
2025-11-17T12:57:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104647445906137;171.162357330327;_
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104647445906137;171.162357330327;_
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49223)
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:14.956 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:14.956 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95642288, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647445906137, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.99292, telescope_ra=19.1055063, telescope_dec=-24.256442, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.12526, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0793879468132, telescope_dec_j2k=-24.2942489065475, observability=1)
2025-11-17T12:57:19.902 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:19.902 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Status age = 4.946471929550171s
2025-11-17T12:57:19.902 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:19.903 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:19.904 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 17;19.1068981;-24.256441;50.108326;89.99292;50.08601;90.12017;16.12665;2460996.95648036;12.95550694;1.3;_
2025-11-17T12:57:19.904 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response 17;19.1068981;-24.256441;50.108326;89.99292;50.08601;90.12017;16.12665;2460996.95648036;12.95550694;1.3;_
2025-11-17T12:57:19.904 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:19.904 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:19.904 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:19.905 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:19.905 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:19.905 [INFO] [Thread-67808 (handle)] [driver.py] [get_status()] Telra = 19.1068981, teldec = -24.256441
2025-11-17T12:57:19.905 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1068981 -24.256441
2025-11-17T12:57:19.905 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1068981 -24.256441
2025-11-17T12:57:19.905 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1068981 -24.256441
2025-11-17T12:57:19.906 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 17;19.1068981;-24.256441;50.108326;89.99292;50.08601;90.12017;16.12665;2460996.95648039;12.95550694;1.3;_19.0807800504393 -24.294298188021
2025-11-17T12:57:19.906 [INFO] [Thread-67808 (handle)] [driver.py] [get_status()] ra_j2k = 19.0807800504393     dec_j2k = -24.294298188021
2025-11-17T12:57:19.906 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:19.906 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:19.906 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 140;0.104648127809165;171.162346601491;_
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response 140;0.104648127809165;171.162346601491;_
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:19.907 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:19.908 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:19.909 [DEBUG] [Thread-67808 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:19.909 [DEBUG] [Thread-67808 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:19.909 [DEBUG] [Thread-67808 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57965)
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:19.910 [DEBUG] [Thread-67808 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:19.918 [DEBUG] [Thread-67808 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:19.918 [DEBUG] [Thread-67808 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:19.918 [DEBUG] [Thread-67808 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:19.918 [DEBUG] [Thread-67808 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:19.918 [DEBUG] [Thread-67808 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:19.919 [DEBUG] [Thread-67808 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:19.919 [DEBUG] [Thread-67808 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:19.919 [DEBUG] [Thread-67808 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:19.919 [DEBUG] [Thread-67808 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:19.919 [INFO] [Thread-67808 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95648036, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648127809165, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108326, telescope_az=89.99292, telescope_ra=19.1068981, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.12665, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0807800504393, telescope_dec_j2k=-24.294298188021, observability=1)
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.663135766983032s
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:27.582 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:27.583 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:27.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1090214;-24.256441;50.108325;89.992919;50.08601;90.12017;16.12877;2460996.95656926;12.95762444;1.3;_
2025-11-17T12:57:27.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.1090214;-24.256441;50.108325;89.992919;50.08601;90.12017;16.12877;2460996.95656926;12.95762444;1.3;_
2025-11-17T12:57:27.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:27.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:27.584 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:27.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:27.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:27.585 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.1090214, teldec = -24.256441
2025-11-17T12:57:27.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.1090214 -24.256441
2025-11-17T12:57:27.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.1090214 -24.256441
2025-11-17T12:57:27.585 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1090214 -24.256441
2025-11-17T12:57:27.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1090214;-24.256441;50.108325;89.992919;50.08601;90.12017;16.12877;2460996.95656928;12.95762444;1.3;_19.0829038143571 -24.2943748868609
2025-11-17T12:57:27.586 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.0829038143571     dec_j2k = -24.2943748868609
2025-11-17T12:57:27.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:27.586 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104647566241965;171.162362694745;_
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104647566241965;171.162362694745;_
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:27.587 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:27.588 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:27.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:27.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:27.589 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47503)
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:27.593 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:27.600 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:57:27.601 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95656926, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104647566241965, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992919, telescope_ra=19.1090214, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.12877, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0829038143571, telescope_dec_j2k=-24.2943748868609, observability=1)
2025-11-17T12:57:27.601 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08477520942688 seconds ago
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Status age = 10.367586851119995s
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:37.968 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:37.969 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:37.970 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 17;19.1119149;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13167;2460996.95668947;12.96051;1.3;_
2025-11-17T12:57:37.970 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response 17;19.1119149;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13167;2460996.95668947;12.96051;1.3;_
2025-11-17T12:57:37.970 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:37.970 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:37.970 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:37.971 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:37.971 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:37.971 [INFO] [Thread-67809 (handle)] [driver.py] [get_status()] Telra = 19.1119149, teldec = -24.256441
2025-11-17T12:57:37.971 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1119149 -24.256441
2025-11-17T12:57:37.971 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1119149 -24.256441
2025-11-17T12:57:37.972 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1119149 -24.256441
2025-11-17T12:57:37.972 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 17;19.1119149;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13167;2460996.95668949;12.96051;1.3;_19.0857979485135 -24.2944793889697
2025-11-17T12:57:37.972 [INFO] [Thread-67809 (handle)] [driver.py] [get_status()] ra_j2k = 19.0857979485135     dec_j2k = -24.2944793889697
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 140;0.10464848881665;171.162351965909;_
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response 140;0.10464848881665;171.162351965909;_
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:37.973 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:37.974 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:37.974 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:37.974 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:37.975 [DEBUG] [Thread-67809 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:37.982 [DEBUG] [Thread-67809 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54261)
2025-11-17T12:57:37.982 [DEBUG] [Thread-67809 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:37.982 [DEBUG] [Thread-67809 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:37.982 [DEBUG] [Thread-67809 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:37.983 [DEBUG] [Thread-67809 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:37.983 [DEBUG] [Thread-67809 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:37.990 [DEBUG] [Thread-67809 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:37.990 [INFO] [Thread-67809 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95668947, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464848881665, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992919, telescope_ra=19.1119149, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.13167, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0857979485135, telescope_dec_j2k=-24.2944793889697, observability=1)
2025-11-17T12:57:42.595 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:57:42
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.605005502700806s
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:42.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:42.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:42.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1132034;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13296;2460996.95674302;12.961795;1.3;_
2025-11-17T12:57:42.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1132034;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13296;2460996.95674302;12.961795;1.3;_
2025-11-17T12:57:42.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:42.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:42.597 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:42.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:42.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:42.598 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1132034, teldec = -24.256441
2025-11-17T12:57:42.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1132034 -24.256441
2025-11-17T12:57:42.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1132034 -24.256441
2025-11-17T12:57:42.598 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1132034 -24.256441
2025-11-17T12:57:42.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1132034;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13296;2460996.95674304;12.961795;1.3;_19.0870867316356 -24.2945259178505
2025-11-17T12:57:42.599 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.0870867316356     dec_j2k = -24.2945259178505
2025-11-17T12:57:42.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:42.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:42.599 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10464848881665;171.162357330327;_
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10464848881665;171.162357330327;_
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:42.600 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:42.601 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:42.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:42.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:42.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35045)
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:42.609 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:42.616 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:42.617 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:42.617 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:42.617 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95674302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464848881665, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992919, telescope_ra=19.1132034, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.13296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:56:47.127325', telescope_ra_j2k=19.0870867316356, telescope_dec_j2k=-24.2945259178505, observability=1)
2025-11-17T12:57:47.270 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:47.270 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:47.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:47.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:47.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:47.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:47.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:47.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:47.271 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:57:47.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:47.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:47.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:47.272 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:57:47.273 [INFO] [ThreadPoolExecutor-2815_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:57:47.273 [INFO] [ThreadPoolExecutor-2815_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.814373731613159s
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:48.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:48.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:48.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:48.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1148465;-24.256441;50.108325;89.992919;50.08601;90.12017;16.1346;2460996.95681058;12.96343361;1.3;_
2025-11-17T12:57:48.434 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.1148465;-24.256441;50.108325;89.992919;50.08601;90.12017;16.1346;2460996.95681058;12.96343361;1.3;_
2025-11-17T12:57:48.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:48.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:48.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:48.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:48.435 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:48.435 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.1148465, teldec = -24.256441
2025-11-17T12:57:48.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1148465 -24.256441
2025-11-17T12:57:48.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1148465 -24.256441
2025-11-17T12:57:48.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1148465 -24.256441
2025-11-17T12:57:48.436 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1148465;-24.256441;50.108325;89.992919;50.08601;90.12017;16.1346;2460996.9568106;12.96343361;1.3;_19.0887301933238 -24.2945852455701
2025-11-17T12:57:48.436 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.0887301933238     dec_j2k = -24.2945852455701
2025-11-17T12:57:48.436 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:48.436 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:48.436 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10464848881665;171.162362694745;_
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10464848881665;171.162362694745;_
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:48.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:48.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:48.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:48.439 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:57:48.439 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:57:48.442 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35123)
2025-11-17T12:57:48.442 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:48.442 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:48.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:48.443 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:48.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:48.450 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:48.450 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95681058, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10464848881665, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992919, telescope_ra=19.1148465, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1346, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.0887301933238, telescope_dec_j2k=-24.2945852455701, observability=1)
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Status age = 7.584071159362793s
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:57:56.034 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:57:56.035 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:57:56.036 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 17;19.1169651;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13672;2460996.95689856;12.96554639;1.3;_
2025-11-17T12:57:56.036 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response 17;19.1169651;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13672;2460996.95689856;12.96554639;1.3;_
2025-11-17T12:57:56.036 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:57:56.036 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:57:56.036 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:57:56.037 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:56.038 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:57:56.038 [INFO] [Thread-67810 (handle)] [driver.py] [get_status()] Telra = 19.1169651, teldec = -24.256441
2025-11-17T12:57:56.038 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1169651 -24.256441
2025-11-17T12:57:56.038 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1169651 -24.256441
2025-11-17T12:57:56.038 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1169651 -24.256441
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 17;19.1169651;-24.256441;50.108325;89.992919;50.08601;90.12017;16.13672;2460996.9568986;12.96554639;1.3;_19.0908492607564 -24.2946617321773
2025-11-17T12:57:56.039 [INFO] [Thread-67810 (handle)] [driver.py] [get_status()] ra_j2k = 19.0908492607564     dec_j2k = -24.2946617321773
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 140;0.104648849824135;171.162357330327;_
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response 140;0.104648849824135;171.162357330327;_
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:56.039 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:57:56.040 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:57:56.041 [DEBUG] [Thread-67810 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:56.041 [DEBUG] [Thread-67810 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:57:56.041 [DEBUG] [Thread-67810 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:57:56.047 [DEBUG] [Thread-67810 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48521)
2025-11-17T12:57:56.048 [DEBUG] [Thread-67810 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:57:56.048 [DEBUG] [Thread-67810 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:57:56.048 [DEBUG] [Thread-67810 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:57:56.048 [DEBUG] [Thread-67810 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:57:56.048 [DEBUG] [Thread-67810 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:57:56.055 [DEBUG] [Thread-67810 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:57:56.055 [INFO] [Thread-67810 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95689856, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648849824135, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992919, telescope_ra=19.1169651, telescope_dec=-24.256441, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.13672, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.0908492607564, telescope_dec_j2k=-24.2946617321773, observability=1)
2025-11-17T12:58:08.149 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.149 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.149 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:08.149 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:08.150 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T12:58:08.151 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:08.152 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:08.153 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T12:58:08.154 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:08.155 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Park
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command Park
2025-11-17T12:58:08.156 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to Park
2025-11-17T12:58:08.157 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 29;19.1203293;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14008;2460996.95703885;12.96890139;1.3;_Park Command Successful
2025-11-17T12:58:09.157 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:58:09.157 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:58:09.157 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:58:09.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:58:09.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T12:58:10.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:58:10.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:58:10.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:58:10.158 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:58:10.159 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:58:11.159 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T12:58:11.159 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T12:58:11.159 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T12:58:11.160 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:58:11.160 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Status age = 15.288533210754395s
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:11.344 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 17;19.1212256;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14098;2460996.95707575;12.96979528;1.3;_
2025-11-17T12:58:11.345 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response 17;19.1212256;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14098;2460996.95707575;12.96979528;1.3;_
2025-11-17T12:58:11.346 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:11.346 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:11.346 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:11.347 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:11.347 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:11.347 [INFO] [Thread-67811 (handle)] [driver.py] [get_status()] Telra = 19.1212256, teldec = -24.25644
2025-11-17T12:58:11.347 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1212256 -24.25644
2025-11-17T12:58:11.347 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1212256 -24.25644
2025-11-17T12:58:11.347 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1212256 -24.25644
2025-11-17T12:58:11.348 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 17;19.1212256;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14098;2460996.95707579;12.96979528;1.3;_19.0951107046207 -24.2948145121929
2025-11-17T12:58:11.348 [INFO] [Thread-67811 (handle)] [driver.py] [get_status()] ra_j2k = 19.0951107046207     dec_j2k = -24.2948145121929
2025-11-17T12:58:11.348 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:11.348 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:11.348 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 140;0.104648609152478;171.162351965909;_
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response 140;0.104648609152478;171.162351965909;_
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:11.349 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:11.350 [DEBUG] [Thread-67811 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:11.350 [DEBUG] [Thread-67811 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:11.350 [DEBUG] [Thread-67811 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:11.356 [DEBUG] [Thread-67811 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57597)
2025-11-17T12:58:11.357 [DEBUG] [Thread-67811 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:11.357 [DEBUG] [Thread-67811 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:11.357 [DEBUG] [Thread-67811 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:11.357 [DEBUG] [Thread-67811 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:11.357 [DEBUG] [Thread-67811 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:11.364 [DEBUG] [Thread-67811 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:11.365 [INFO] [Thread-67811 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95707575, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648609152478, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992918, telescope_ra=19.1212256, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.14098, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.0951107046207, telescope_dec_j2k=-24.2948145121929, observability=1)
2025-11-17T12:58:12.160 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] ParkRotator
2025-11-17T12:58:12.160 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T12:58:12.160 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:12.161 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T12:58:12.162 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T12:58:12.163 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:13.163 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:13.163 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:58:13.164 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:58:13.165 [DEBUG] [ThreadPoolExecutor-2814_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:13.165 [INFO] [ThreadPoolExecutor-2814_0] [server.py] [done()] Shutdown complete...
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Status age = 2.7982449531555176s
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:14.163 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:14.164 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:14.165 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 17;19.1219999;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14175;2460996.95710839;12.9705675;1.3;_
2025-11-17T12:58:14.165 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response 17;19.1219999;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14175;2460996.95710839;12.9705675;1.3;_
2025-11-17T12:58:14.165 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:14.165 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:14.165 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:14.166 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:14.166 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:14.166 [INFO] [Thread-67812 (handle)] [driver.py] [get_status()] Telra = 19.1219999, teldec = -24.25644
2025-11-17T12:58:14.166 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1219999 -24.25644
2025-11-17T12:58:14.166 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1219999 -24.25644
2025-11-17T12:58:14.166 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1219999 -24.25644
2025-11-17T12:58:14.167 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 17;19.1219999;-24.25644;50.108325;89.992918;50.08601;90.12017;16.14175;2460996.95710841;12.9705675;1.3;_19.0958851766484 -24.2948424550852
2025-11-17T12:58:14.167 [INFO] [Thread-67812 (handle)] [driver.py] [get_status()] ra_j2k = 19.0958851766484     dec_j2k = -24.2948424550852
2025-11-17T12:58:14.167 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:14.167 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:14.167 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 140;0.104648288256936;171.162357330327;_
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response 140;0.104648288256936;171.162357330327;_
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:14.168 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:14.169 [DEBUG] [Thread-67812 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:14.170 [DEBUG] [Thread-67812 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56181)
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:14.172 [DEBUG] [Thread-67812 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:14.179 [DEBUG] [Thread-67812 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:14.180 [DEBUG] [Thread-67812 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:14.180 [INFO] [Thread-67812 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95710839, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648288256936, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108325, telescope_az=89.992918, telescope_ra=19.1219999, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.14175, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.0958851766484, telescope_dec_j2k=-24.2948424550852, observability=1)
2025-11-17T12:58:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.7585945129394531s
2025-11-17T12:58:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7585945129394531
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.480793714523315s
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:27.661 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:27.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1257636;-24.25644;50.108324;89.992918;50.08601;90.12017;16.14552;2460996.95726461;12.97432083;1.3;_
2025-11-17T12:58:27.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.1257636;-24.25644;50.108324;89.992918;50.08601;90.12017;16.14552;2460996.95726461;12.97432083;1.3;_
2025-11-17T12:58:27.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:27.662 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:27.663 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:27.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:27.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:27.664 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.1257636, teldec = -24.25644
2025-11-17T12:58:27.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.1257636 -24.25644
2025-11-17T12:58:27.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.1257636 -24.25644
2025-11-17T12:58:27.664 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1257636 -24.25644
2025-11-17T12:58:27.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1257636;-24.25644;50.108324;89.992918;50.08601;90.12017;16.14552;2460996.95726464;12.97432083;1.3;_19.0996497151395 -24.2949782574946
2025-11-17T12:58:27.665 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.0996497151395     dec_j2k = -24.2949782574946
2025-11-17T12:58:27.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:27.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:27.665 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104648408592764;171.162357330327;_
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104648408592764;171.162357330327;_
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:27.666 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:27.667 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36623)
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:27.671 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:27.678 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:58:27.679 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95726461, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648408592764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992918, telescope_ra=19.1257636, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.14552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.0996497151395, telescope_dec_j2k=-24.2949782574946, observability=1)
2025-11-17T12:58:27.679 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08377718925476 seconds ago
2025-11-17T12:58:32.228 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:32.228 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Status age = 4.549899578094482s
2025-11-17T12:58:32.228 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:32.229 [DEBUG] [Thread-67813 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:32.229 [DEBUG] [Thread-67813 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:32.229 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:32.229 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:32.229 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:32.230 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:32.231 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 17;19.1270234;-24.25644;50.108324;89.992918;50.08601;90.12017;16.14678;2460996.95731749;12.97557722;1.3;_
2025-11-17T12:58:32.231 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response 17;19.1270234;-24.25644;50.108324;89.992918;50.08601;90.12017;16.14678;2460996.95731749;12.97557722;1.3;_
2025-11-17T12:58:32.231 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:32.231 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:32.231 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:32.232 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:32.232 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:32.232 [INFO] [Thread-67813 (handle)] [driver.py] [get_status()] Telra = 19.1270234, teldec = -24.25644
2025-11-17T12:58:32.232 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1270234 -24.25644
2025-11-17T12:58:32.232 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1270234 -24.25644
2025-11-17T12:58:32.232 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1270234 -24.25644
2025-11-17T12:58:32.233 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 17;19.1270515;-24.25644;50.108324;89.992918;50.08601;90.12017;16.1468;2460996.95731751;12.97560528;1.3;_19.1009097966556 -24.295023705712
2025-11-17T12:58:32.233 [INFO] [Thread-67813 (handle)] [driver.py] [get_status()] ra_j2k = 19.1009097966556     dec_j2k = -24.295023705712
2025-11-17T12:58:32.233 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:32.233 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:32.233 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 140;0.104649411391334;171.162351965909;_
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response 140;0.104649411391334;171.162351965909;_
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:32.234 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:32.235 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:32.236 [DEBUG] [Thread-67813 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:32.236 [DEBUG] [Thread-67813 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:32.236 [DEBUG] [Thread-67813 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47551)
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:32.238 [DEBUG] [Thread-67813 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:32.245 [DEBUG] [Thread-67813 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:32.246 [DEBUG] [Thread-67813 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:32.246 [DEBUG] [Thread-67813 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:32.246 [INFO] [Thread-67813 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95731749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104649411391334, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992918, telescope_ra=19.1270234, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.14678, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.1009097966556, telescope_dec_j2k=-24.295023705712, observability=1)
2025-11-17T12:58:42.677 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:58:42
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.431619644165039s
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:42.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:42.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:42.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1299478;-24.25644;50.108324;89.992917;50.08601;90.12017;16.1497;2460996.95743841;12.97849361;1.3;_
2025-11-17T12:58:42.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1299478;-24.25644;50.108324;89.992917;50.08601;90.12017;16.1497;2460996.95743841;12.97849361;1.3;_
2025-11-17T12:58:42.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:42.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:42.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:42.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:42.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:42.680 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1299478, teldec = -24.25644
2025-11-17T12:58:42.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1299478 -24.25644
2025-11-17T12:58:42.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1299478 -24.25644
2025-11-17T12:58:42.680 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1299478 -24.25644
2025-11-17T12:58:42.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1299478;-24.25644;50.108324;89.992917;50.08601;90.12017;16.1497;2460996.95743844;12.97849361;1.3;_19.1038348517939 -24.2951291899394
2025-11-17T12:58:42.681 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1038348517939     dec_j2k = -24.2951291899394
2025-11-17T12:58:42.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:42.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:42.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104648328368879;171.162362694745;_
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104648328368879;171.162362694745;_
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:42.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:42.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:42.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:42.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:42.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46401)
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:42.691 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:42.699 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:42.699 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95743841, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648328368879, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992917, telescope_ra=19.1299478, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:57:47.269766', telescope_ra_j2k=19.1038348517939, telescope_dec_j2k=-24.2951291899394, observability=1)
2025-11-17T12:58:47.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:47.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:47.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:47.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:47.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:47.414 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:47.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:47.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:47.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:47.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:47.415 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:58:47.415 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:47.415 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:47.415 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:47.415 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:47.415 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T12:58:47.416 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T12:58:47.417 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.845565557479858s
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:47.545 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:47.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1313123;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15106;2460996.95749475;12.97985444;1.3;_
2025-11-17T12:58:47.547 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.1313123;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15106;2460996.95749475;12.97985444;1.3;_
2025-11-17T12:58:47.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:47.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:47.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:47.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:47.548 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:47.548 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.1313123, teldec = -24.256439
2025-11-17T12:58:47.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1313123 -24.256439
2025-11-17T12:58:47.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1313123 -24.256439
2025-11-17T12:58:47.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1313123 -24.256439
2025-11-17T12:58:47.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1313123;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15106;2460996.95749478;12.97985444;1.3;_19.1051996584575 -24.2951774005505
2025-11-17T12:58:47.549 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.1051996584575     dec_j2k = -24.2951774005505
2025-11-17T12:58:47.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:47.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:47.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104648849824135;171.162362694745;_
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104648849824135;171.162362694745;_
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:47.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:47.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:47.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:47.552 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:58:47.552 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:58:47.555 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57253)
2025-11-17T12:58:47.555 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:47.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:47.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:47.556 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:47.556 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:47.563 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:47.563 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95749475, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104648849824135, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992917, telescope_ra=19.1313123, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.15106, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1051996584575, telescope_dec_j2k=-24.2951774005505, observability=1)
2025-11-17T12:58:48.417 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:48.417 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:48.417 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:48.417 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:48.417 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T12:58:48.418 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:48.419 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:48.420 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:48.420 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:48.420 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:48.420 [DEBUG] [ThreadPoolExecutor-2816_0] [payload.py] [to_registers()] [0]
2025-11-17T12:58:48.421 [DEBUG] [ThreadPoolExecutor-2816_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33483)
2025-11-17T12:58:48.421 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:48.421 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:48.421 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T12:58:48.421 [DEBUG] [ThreadPoolExecutor-2816_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:48.422 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:48.429 [DEBUG] [ThreadPoolExecutor-2816_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Status age = 2.798147201538086s
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:58:50.361 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:58:50.362 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:58:50.363 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 17;19.132087;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15184;2460996.95752735;12.98062694;1.3;_
2025-11-17T12:58:50.363 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response 17;19.132087;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15184;2460996.95752735;12.98062694;1.3;_
2025-11-17T12:58:50.363 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:58:50.363 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:58:50.363 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:58:50.364 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:50.364 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:58:50.364 [INFO] [Thread-67814 (handle)] [driver.py] [get_status()] Telra = 19.132087, teldec = -24.256439
2025-11-17T12:58:50.364 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] UnCookCoordinates 19.132087 -24.256439
2025-11-17T12:58:50.364 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.132087 -24.256439
2025-11-17T12:58:50.364 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.132087 -24.256439
2025-11-17T12:58:50.365 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 17;19.132087;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15184;2460996.95752737;12.98062694;1.3;_19.1059745326806 -24.295205337885
2025-11-17T12:58:50.365 [INFO] [Thread-67814 (handle)] [driver.py] [get_status()] ra_j2k = 19.1059745326806     dec_j2k = -24.295205337885
2025-11-17T12:58:50.365 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:58:50.365 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:58:50.365 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 140;0.104649090495792;171.162362694745;_
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response 140;0.104649090495792;171.162362694745;_
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:50.366 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:58:50.367 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:58:50.368 [DEBUG] [Thread-67814 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:50.368 [DEBUG] [Thread-67814 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:58:50.368 [DEBUG] [Thread-67814 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:58:50.374 [DEBUG] [Thread-67814 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44737)
2025-11-17T12:58:50.374 [DEBUG] [Thread-67814 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:58:50.374 [DEBUG] [Thread-67814 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:58:50.375 [DEBUG] [Thread-67814 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:58:50.375 [DEBUG] [Thread-67814 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:58:50.375 [DEBUG] [Thread-67814 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:58:50.382 [DEBUG] [Thread-67814 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:58:50.382 [INFO] [Thread-67814 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95752735, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104649090495792, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992917, telescope_ra=19.132087, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.15184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1059745326806, telescope_dec_j2k=-24.295205337885, observability=1)
2025-11-17T12:59:08.427 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:08.427 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Status age = 18.045336484909058s
2025-11-17T12:59:08.427 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:08.427 [DEBUG] [Thread-67815 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:08.427 [DEBUG] [Thread-67815 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:08.428 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:08.429 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 17;19.1371346;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15689;2460996.95773645;12.98566083;1.3;_
2025-11-17T12:59:08.429 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response 17;19.1371346;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15689;2460996.95773645;12.98566083;1.3;_
2025-11-17T12:59:08.429 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:08.429 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:08.429 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:08.430 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:08.430 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:08.430 [INFO] [Thread-67815 (handle)] [driver.py] [get_status()] Telra = 19.1371346, teldec = -24.256439
2025-11-17T12:59:08.430 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1371346 -24.256439
2025-11-17T12:59:08.430 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1371346 -24.256439
2025-11-17T12:59:08.430 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1371346 -24.256439
2025-11-17T12:59:08.431 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 17;19.1371346;-24.256439;50.108324;89.992917;50.08601;90.12017;16.15689;2460996.95773647;12.98566083;1.3;_19.111023271801 -24.2953873272639
2025-11-17T12:59:08.431 [INFO] [Thread-67815 (handle)] [driver.py] [get_status()] ra_j2k = 19.111023271801     dec_j2k = -24.2953873272639
2025-11-17T12:59:08.431 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:08.431 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:08.431 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 140;0.104650333966019;171.162362694745;_
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response 140;0.104650333966019;171.162362694745;_
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:08.432 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:08.433 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:08.433 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:08.433 [DEBUG] [Thread-67815 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:08.433 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:08.433 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:08.434 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:08.435 [DEBUG] [Thread-67815 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:08.435 [DEBUG] [Thread-67815 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:08.435 [DEBUG] [Thread-67815 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40095)
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:08.441 [DEBUG] [Thread-67815 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:08.449 [DEBUG] [Thread-67815 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:08.449 [INFO] [Thread-67815 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95773645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104650333966019, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992917, telescope_ra=19.1371346, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.15689, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.111023271801, telescope_dec_j2k=-24.2953873272639, observability=1)
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Status age = 2.9498274326324463s
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:11.399 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 17;19.1379466;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1577;2460996.95777083;12.98647056;1.3;_
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response 17;19.1379466;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1577;2460996.95777083;12.98647056;1.3;_
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:11.400 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:11.401 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:11.401 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:11.401 [INFO] [Thread-67816 (handle)] [driver.py] [get_status()] Telra = 19.1379466, teldec = -24.256439
2025-11-17T12:59:11.401 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1379466 -24.256439
2025-11-17T12:59:11.402 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1379466 -24.256439
2025-11-17T12:59:11.402 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1379466 -24.256439
2025-11-17T12:59:11.403 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 17;19.1379466;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1577;2460996.95777086;12.98647056;1.3;_19.1118354556907 -24.2954165974881
2025-11-17T12:59:11.403 [INFO] [Thread-67816 (handle)] [driver.py] [get_status()] ra_j2k = 19.1118354556907     dec_j2k = -24.2954165974881
2025-11-17T12:59:11.403 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:11.403 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:11.403 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 140;0.104649972958534;171.162351965909;_
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response 140;0.104649972958534;171.162351965909;_
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:11.404 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:11.405 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:11.406 [DEBUG] [Thread-67816 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:11.406 [DEBUG] [Thread-67816 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:11.406 [DEBUG] [Thread-67816 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:11.412 [DEBUG] [Thread-67816 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38917)
2025-11-17T12:59:11.413 [DEBUG] [Thread-67816 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:11.413 [DEBUG] [Thread-67816 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:11.413 [DEBUG] [Thread-67816 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:11.413 [DEBUG] [Thread-67816 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:11.413 [DEBUG] [Thread-67816 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:11.420 [DEBUG] [Thread-67816 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:11.420 [DEBUG] [Thread-67816 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:11.421 [DEBUG] [Thread-67816 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:11.421 [INFO] [Thread-67816 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95777083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104649972958534, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992916, telescope_ra=19.1379466, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1577, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1118354556907, telescope_dec_j2k=-24.2954165974881, observability=1)
2025-11-17T12:59:13.429 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:13.429 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:13.429 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:13.429 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:13.429 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:13.430 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] CloseShutters
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T12:59:13.431 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T12:59:13.432 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.5369887351989746s
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1389463;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1587;2460996.95781204;12.9874675;1.3;_
2025-11-17T12:59:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.1389463;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1587;2460996.95781204;12.9874675;1.3;_
2025-11-17T12:59:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:14.961 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.1389463, teldec = -24.256439
2025-11-17T12:59:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1389463 -24.256439
2025-11-17T12:59:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1389463 -24.256439
2025-11-17T12:59:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1389463 -24.256439
2025-11-17T12:59:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1389463;-24.256439;50.108324;89.992916;50.08601;90.12017;16.1587;2460996.95781206;12.9874675;1.3;_19.1128353823318 -24.2954526314056
2025-11-17T12:59:14.962 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1128353823318     dec_j2k = -24.2954526314056
2025-11-17T12:59:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104650333966019;171.162357330327;_
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104650333966019;171.162357330327;_
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39117)
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:14.974 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:14.974 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95781204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104650333966019, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108324, telescope_az=89.992916, telescope_ra=19.1389463, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1587, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1128353823318, telescope_dec_j2k=-24.2954526314056, observability=1)
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Status age = 11.521639108657837s
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:26.495 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:26.496 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:26.497 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 17;19.1421481;-24.256439;50.108323;89.992916;50.08601;90.12017;16.1619;2460996.95794557;12.99066056;1.3;_
2025-11-17T12:59:26.497 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response 17;19.1421481;-24.256439;50.108323;89.992916;50.08601;90.12017;16.1619;2460996.95794557;12.99066056;1.3;_
2025-11-17T12:59:26.497 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:26.497 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:26.497 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:26.498 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:26.498 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:26.498 [INFO] [Thread-67817 (handle)] [driver.py] [get_status()] Telra = 19.1421481, teldec = -24.256439
2025-11-17T12:59:26.498 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1421481 -24.256439
2025-11-17T12:59:26.498 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1421481 -24.256439
2025-11-17T12:59:26.498 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1421481 -24.256439
2025-11-17T12:59:26.499 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 17;19.1421481;-24.256439;50.108323;89.992916;50.08601;90.12017;16.1619;2460996.95794559;12.99066056;1.3;_19.116037910021 -24.2955680219998
2025-11-17T12:59:26.499 [INFO] [Thread-67817 (handle)] [driver.py] [get_status()] ra_j2k = 19.116037910021     dec_j2k = -24.2955680219998
2025-11-17T12:59:26.499 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:26.499 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:26.499 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 140;0.104650133406305;171.162362694745;_
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response 140;0.104650133406305;171.162362694745;_
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:26.500 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:26.501 [DEBUG] [Thread-67817 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:26.506 [DEBUG] [Thread-67817 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44681)
2025-11-17T12:59:26.507 [DEBUG] [Thread-67817 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:26.507 [DEBUG] [Thread-67817 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:26.507 [DEBUG] [Thread-67817 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:26.507 [DEBUG] [Thread-67817 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:26.507 [DEBUG] [Thread-67817 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:26.514 [DEBUG] [Thread-67817 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:26.515 [DEBUG] [Thread-67817 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:26.515 [INFO] [Thread-67817 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95794557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104650133406305, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992916, telescope_ra=19.1421481, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1619, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.116037910021, telescope_dec_j2k=-24.2955680219998, observability=1)
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.2241003513336182s
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:27.739 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:27.740 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:27.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1425127;-24.256439;50.108323;89.992916;50.08601;90.12017;16.16226;2460996.95795997;12.99102417;1.3;_
2025-11-17T12:59:27.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.1425127;-24.256439;50.108323;89.992916;50.08601;90.12017;16.16226;2460996.95795997;12.99102417;1.3;_
2025-11-17T12:59:27.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:27.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:27.741 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:27.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:27.742 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:27.742 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.1425127, teldec = -24.256439
2025-11-17T12:59:27.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.1425127 -24.256439
2025-11-17T12:59:27.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.1425127 -24.256439
2025-11-17T12:59:27.743 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1425127 -24.256439
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1425127;-24.256439;50.108323;89.992916;50.08601;90.12017;16.16226;2460996.95795999;12.99102417;1.3;_19.1164025930606 -24.2955811602377
2025-11-17T12:59:27.744 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.1164025930606     dec_j2k = -24.2955811602377
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104650614749619;171.162357330327;_
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104650614749619;171.162357330327;_
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:27.744 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:27.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:27.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:27.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:27.745 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:27.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:27.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:27.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:27.746 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:27.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:27.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:27.747 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55705)
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:27.749 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:27.756 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T12:59:27.757 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95795997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104650614749619, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992916, telescope_ra=19.1425127, telescope_dec=-24.256439, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.16226, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1164025930606, telescope_dec_j2k=-24.2955811602377, observability=1)
2025-11-17T12:59:27.757 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0794792175293 seconds ago
2025-11-17T12:59:42.760 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T12:59:42
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.003588914871216s
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:42.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:42.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:42.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1466955;-24.256438;50.108323;89.992916;50.08601;90.12017;16.16645;2460996.95813382;12.99519556;1.3;_
2025-11-17T12:59:42.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1466955;-24.256438;50.108323;89.992916;50.08601;90.12017;16.16645;2460996.95813382;12.99519556;1.3;_
2025-11-17T12:59:42.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:42.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:42.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:42.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:42.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:42.763 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1466955, teldec = -24.256438
2025-11-17T12:59:42.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1466955 -24.256438
2025-11-17T12:59:42.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1466955 -24.256438
2025-11-17T12:59:42.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1466955 -24.256438
2025-11-17T12:59:42.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1466955;-24.256438;50.108323;89.992916;50.08601;90.12017;16.16645;2460996.95813384;12.99519556;1.3;_19.1205863484699 -24.2957308613676
2025-11-17T12:59:42.764 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1205863484699     dec_j2k = -24.2957308613676
2025-11-17T12:59:42.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:42.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:42.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104651336764589;171.162362694745;_
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104651336764589;171.162362694745;_
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:42.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T12:59:42.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54259)
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:42.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:42.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:42.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:42.777 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:42.777 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:42.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:42.778 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:42.778 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:42.778 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:42.778 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:42.778 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95813382, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651336764589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992916, telescope_ra=19.1466955, telescope_dec=-24.256438, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.16645, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1205863484699, telescope_dec_j2k=-24.2957308613676, observability=1)
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Status age = 1.8383848667144775s
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:44.616 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:44.617 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:44.618 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 17;19.1471994;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16695;2460996.9581553;12.99569806;1.3;_
2025-11-17T12:59:44.618 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response 17;19.1471994;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16695;2460996.9581553;12.99569806;1.3;_
2025-11-17T12:59:44.618 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:44.618 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:44.618 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:44.619 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:44.619 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:44.619 [INFO] [Thread-67818 (handle)] [driver.py] [get_status()] Telra = 19.1471994, teldec = -24.256438
2025-11-17T12:59:44.619 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1471994 -24.256438
2025-11-17T12:59:44.619 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1471994 -24.256438
2025-11-17T12:59:44.619 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1471994 -24.256438
2025-11-17T12:59:44.620 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 17;19.1471994;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16695;2460996.95815532;12.99569806;1.3;_19.1210903638625 -24.295749013178
2025-11-17T12:59:44.620 [INFO] [Thread-67818 (handle)] [driver.py] [get_status()] ra_j2k = 19.1210903638625     dec_j2k = -24.295749013178
2025-11-17T12:59:44.620 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:44.620 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:44.620 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 140;0.104651336764589;171.162357330327;_
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response 140;0.104651336764589;171.162357330327;_
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:44.621 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:44.622 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:44.623 [DEBUG] [Thread-67818 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:44.623 [DEBUG] [Thread-67818 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:44.623 [DEBUG] [Thread-67818 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35997)
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:44.625 [DEBUG] [Thread-67818 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:44.632 [DEBUG] [Thread-67818 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:44.632 [INFO] [Thread-67818 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9581553, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651336764589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992915, telescope_ra=19.1471994, telescope_dec=-24.256438, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.16695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1210903638625, telescope_dec_j2k=-24.295749013178, observability=1)
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.024773120880127s
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:46.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T12:59:46.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T12:59:46.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T12:59:46.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1477818;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16753;2460996.95817892;12.99627889;1.3;_
2025-11-17T12:59:46.659 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.1477818;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16753;2460996.95817892;12.99627889;1.3;_
2025-11-17T12:59:46.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T12:59:46.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T12:59:46.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T12:59:46.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:46.660 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T12:59:46.661 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.1477818, teldec = -24.256438
2025-11-17T12:59:46.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1477818 -24.256438
2025-11-17T12:59:46.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1477818 -24.256438
2025-11-17T12:59:46.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1477818 -24.256438
2025-11-17T12:59:46.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1477818;-24.256438;50.108323;89.992915;50.08601;90.12017;16.16753;2460996.95817896;12.99627889;1.3;_19.1216728973165 -24.2957699919405
2025-11-17T12:59:46.662 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.1216728973165     dec_j2k = -24.2957699919405
2025-11-17T12:59:46.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T12:59:46.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T12:59:46.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104650735085447;171.162341237072;_
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104650735085447;171.162341237072;_
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:46.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T12:59:46.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T12:59:46.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:46.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T12:59:46.665 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T12:59:46.671 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43585)
2025-11-17T12:59:46.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T12:59:46.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T12:59:46.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T12:59:46.671 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T12:59:46.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T12:59:46.679 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T12:59:46.679 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95817892, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104650735085447, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992915, telescope_ra=19.1477818, telescope_dec=-24.256438, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.16753, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:58:47.413022', telescope_ra_j2k=19.1216728973165, telescope_dec_j2k=-24.2957699919405, observability=1)
2025-11-17T12:59:47.554 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:47.554 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:47.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:47.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:47.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:47.555 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T12:59:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T12:59:47.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T12:59:47.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T12:59:47.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T12:59:47.556 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T12:59:47.556 [INFO] [ThreadPoolExecutor-2817_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T12:59:47.556 [INFO] [ThreadPoolExecutor-2817_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:00:02.678 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:02.678 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Status age = 15.999106884002686s
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:02.679 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:02.680 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 17;19.1522406;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17199;2460996.95836435;13.00072556;1.3;_
2025-11-17T13:00:02.681 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response 17;19.1522406;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17199;2460996.95836435;13.00072556;1.3;_
2025-11-17T13:00:02.681 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:02.681 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:02.681 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:02.682 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:02.682 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:02.682 [INFO] [Thread-67819 (handle)] [driver.py] [get_status()] Telra = 19.1522406, teldec = -24.256438
2025-11-17T13:00:02.682 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1522406 -24.256438
2025-11-17T13:00:02.682 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1522406 -24.256438
2025-11-17T13:00:02.682 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1522406 -24.256438
2025-11-17T13:00:02.683 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 17;19.1522406;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17199;2460996.95836439;13.00072556;1.3;_19.1261327220546 -24.2959305740091
2025-11-17T13:00:02.683 [INFO] [Thread-67819 (handle)] [driver.py] [get_status()] ra_j2k = 19.1261327220546     dec_j2k = -24.2959305740091
2025-11-17T13:00:02.683 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:02.683 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:02.683 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:02.684 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:02.685 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:02.686 [DEBUG] [Thread-67819 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:02.686 [DEBUG] [Thread-67819 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:02.686 [DEBUG] [Thread-67819 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:02.687 [DEBUG] [Thread-67819 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33053)
2025-11-17T13:00:02.688 [DEBUG] [Thread-67819 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:02.688 [DEBUG] [Thread-67819 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:02.688 [DEBUG] [Thread-67819 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:02.688 [DEBUG] [Thread-67819 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:02.688 [DEBUG] [Thread-67819 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:02.696 [DEBUG] [Thread-67819 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:02.696 [INFO] [Thread-67819 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95836435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651818107903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992915, telescope_ra=19.1522406, telescope_dec=-24.256438, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.17199, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1261327220546, telescope_dec_j2k=-24.2959305740091, observability=1)
2025-11-17T13:00:08.432 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.432 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.432 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:08.432 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:08.432 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:08.433 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.433 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:00:08.434 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.435 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.435 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.435 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:08.435 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:08.435 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:08.436 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:00:08.437 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:08.438 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Park
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:00:08.439 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:00:08.440 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 29;19.1538303;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17358;2460996.95843102;13.00231083;1.3;_Park Command Successful
2025-11-17T13:00:09.440 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:00:09.440 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:00:09.440 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:00:09.441 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:00:09.441 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:00:10.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:00:10.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:00:10.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:00:10.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:00:10.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:00:11.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:00:11.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:00:11.442 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:00:11.443 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:00:11.443 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:00:11.454 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:11.454 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Status age = 8.758224964141846s
2025-11-17T13:00:11.454 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:11.455 [DEBUG] [Thread-67820 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:11.455 [DEBUG] [Thread-67820 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:11.455 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:11.455 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:11.455 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:11.456 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:11.457 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 17;19.1546631;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17444;2460996.95846594;13.00316944;1.3;_
2025-11-17T13:00:11.457 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response 17;19.1546631;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17444;2460996.95846594;13.00316944;1.3;_
2025-11-17T13:00:11.457 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:11.457 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:11.457 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:11.458 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:11.458 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:11.458 [INFO] [Thread-67820 (handle)] [driver.py] [get_status()] Telra = 19.1546631, teldec = -24.256438
2025-11-17T13:00:11.458 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1546631 -24.256438
2025-11-17T13:00:11.458 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1546631 -24.256438
2025-11-17T13:00:11.458 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1546631 -24.256438
2025-11-17T13:00:11.459 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 17;19.1546912;-24.256438;50.108323;89.992915;50.08601;90.12017;16.17444;2460996.95846596;13.00316944;1.3;_19.1285557810465 -24.2960177976318
2025-11-17T13:00:11.459 [INFO] [Thread-67820 (handle)] [driver.py] [get_status()] ra_j2k = 19.1285557810465     dec_j2k = -24.2960177976318
2025-11-17T13:00:11.459 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:11.459 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:11.459 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:11.459 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:11.460 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:11.461 [DEBUG] [Thread-67820 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:11.461 [DEBUG] [Thread-67820 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:11.461 [DEBUG] [Thread-67820 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37885)
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:11.465 [DEBUG] [Thread-67820 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:11.473 [DEBUG] [Thread-67820 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:11.473 [INFO] [Thread-67820 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95846594, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651978555674, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992915, telescope_ra=19.1546631, telescope_dec=-24.256438, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.17444, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1285557810465, telescope_dec_j2k=-24.2960177976318, observability=1)
2025-11-17T13:00:12.443 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:00:12.443 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:00:12.443 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:12.444 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:00:12.445 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:00:12.446 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:13.446 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:13.446 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:13.446 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:13.447 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:13.447 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:00:13.448 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:00:13.449 [DEBUG] [ThreadPoolExecutor-2816_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:13.449 [INFO] [ThreadPoolExecutor-2816_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.4556596279144287s
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:14.929 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:14.930 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:14.930 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1556357;-24.256437;50.108323;89.992915;50.08601;90.12017;16.17539;2460996.95850615;13.00411139;1.3;_
2025-11-17T13:00:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.1556357;-24.256437;50.108323;89.992915;50.08601;90.12017;16.17539;2460996.95850615;13.00411139;1.3;_
2025-11-17T13:00:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:14.932 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.1556357, teldec = -24.256437
2025-11-17T13:00:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1556357 -24.256437
2025-11-17T13:00:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1556357 -24.256437
2025-11-17T13:00:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1556357 -24.256437
2025-11-17T13:00:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1556357;-24.256437;50.108323;89.992915;50.08601;90.12017;16.17539;2460996.95850617;13.00411139;1.3;_19.1295286061109 -24.2960518124452
2025-11-17T13:00:14.933 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1295286061109     dec_j2k = -24.2960518124452
2025-11-17T13:00:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104651617548189;171.162373423581;_
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104651617548189;171.162373423581;_
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33127)
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:14.947 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95850615, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651617548189, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992915, telescope_ra=19.1556357, telescope_dec=-24.256437, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.17539, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1295286061109, telescope_dec_j2k=-24.2960518124452, observability=1)
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Status age = 5.797973155975342s
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:20.745 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:20.746 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:20.747 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 17;19.1572535;-24.256437;50.108323;89.992914;50.08601;90.12017;16.17701;2460996.95857346;13.00572472;1.3;_
2025-11-17T13:00:20.747 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response 17;19.1572535;-24.256437;50.108323;89.992914;50.08601;90.12017;16.17701;2460996.95857346;13.00572472;1.3;_
2025-11-17T13:00:20.747 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:20.747 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:20.747 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:20.748 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:20.748 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:20.748 [INFO] [Thread-67821 (handle)] [driver.py] [get_status()] Telra = 19.1572535, teldec = -24.256437
2025-11-17T13:00:20.748 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1572535 -24.256437
2025-11-17T13:00:20.748 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1572535 -24.256437
2025-11-17T13:00:20.748 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1572535 -24.256437
2025-11-17T13:00:20.749 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 17;19.1572535;-24.256437;50.108323;89.992914;50.08601;90.12017;16.17701;2460996.95857348;13.00572472;1.3;_19.1311467807214 -24.2961100496173
2025-11-17T13:00:20.749 [INFO] [Thread-67821 (handle)] [driver.py] [get_status()] ra_j2k = 19.1311467807214     dec_j2k = -24.2961100496173
2025-11-17T13:00:20.749 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:20.749 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:20.749 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 140;0.104652379675102;171.162346601491;_
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response 140;0.104652379675102;171.162346601491;_
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:20.750 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:20.751 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:20.752 [DEBUG] [Thread-67821 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:20.752 [DEBUG] [Thread-67821 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:20.752 [DEBUG] [Thread-67821 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49301)
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:20.757 [DEBUG] [Thread-67821 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:20.764 [DEBUG] [Thread-67821 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:20.764 [INFO] [Thread-67821 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95857346, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652379675102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108323, telescope_az=89.992914, telescope_ra=19.1572535, telescope_dec=-24.256437, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.17701, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1311467807214, telescope_dec_j2k=-24.2961100496173, observability=1)
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.052311420440674s
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:27.817 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1592334;-24.256431;50.108322;89.992904;50.08601;90.12016;16.17899;2460996.9586553;13.00769944;1.3;_
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.1592334;-24.256431;50.108322;89.992904;50.08601;90.12016;16.17899;2460996.9586553;13.00769944;1.3;_
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:27.818 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:27.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:27.819 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:27.819 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.1592334, teldec = -24.256431
2025-11-17T13:00:27.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.1592334 -24.256431
2025-11-17T13:00:27.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.1592334 -24.256431
2025-11-17T13:00:27.820 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1592334 -24.256431
2025-11-17T13:00:27.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1592334;-24.256431;50.108322;89.992904;50.08601;90.12016;16.17899;2460996.95865532;13.00769944;1.3;_19.1331271412917 -24.2961753126786
2025-11-17T13:00:27.821 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.1331271412917     dec_j2k = -24.2961753126786
2025-11-17T13:00:27.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:27.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:27.821 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104652500010931;171.162357330327;_
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104652500010931;171.162357330327;_
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:27.822 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:27.823 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:27.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:27.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:27.824 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35847)
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:27.828 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:27.836 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:00:27.836 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9586553, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652500010931, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992904, telescope_ra=19.1592334, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.17899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1331271412917, telescope_dec_j2k=-24.2961753126786, observability=1)
2025-11-17T13:00:27.836 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0763885974884 seconds ago
2025-11-17T13:00:38.881 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:38.881 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Status age = 11.045218706130981s
2025-11-17T13:00:38.881 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:38.882 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:38.884 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 17;19.1623285;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18208;2460996.95878338;13.01078583;1.3;_
2025-11-17T13:00:38.884 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response 17;19.1623285;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18208;2460996.95878338;13.01078583;1.3;_
2025-11-17T13:00:38.884 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:38.884 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:38.884 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:38.885 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:38.885 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:38.886 [INFO] [Thread-67822 (handle)] [driver.py] [get_status()] Telra = 19.1623285, teldec = -24.256437
2025-11-17T13:00:38.886 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1623285 -24.256437
2025-11-17T13:00:38.886 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1623285 -24.256437
2025-11-17T13:00:38.886 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1623285 -24.256437
2025-11-17T13:00:38.887 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 17;19.1623285;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18208;2460996.9587834;13.01078583;1.3;_19.136222960436 -24.2962926934528
2025-11-17T13:00:38.887 [INFO] [Thread-67822 (handle)] [driver.py] [get_status()] ra_j2k = 19.136222960436     dec_j2k = -24.2962926934528
2025-11-17T13:00:38.887 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:38.887 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:38.887 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 140;0.104652820906473;171.162362694745;_
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response 140;0.104652820906473;171.162362694745;_
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:38.888 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:38.889 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:38.890 [DEBUG] [Thread-67822 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:38.890 [DEBUG] [Thread-67822 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:38.890 [DEBUG] [Thread-67822 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:00:38.896 [DEBUG] [Thread-67822 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56563)
2025-11-17T13:00:38.896 [DEBUG] [Thread-67822 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:38.896 [DEBUG] [Thread-67822 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:38.896 [DEBUG] [Thread-67822 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:38.896 [DEBUG] [Thread-67822 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:38.897 [DEBUG] [Thread-67822 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:38.904 [DEBUG] [Thread-67822 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:38.904 [INFO] [Thread-67822 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95878338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652820906473, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992914, telescope_ra=19.1623285, telescope_dec=-24.256437, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.18208, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.136222960436, telescope_dec_j2k=-24.2962926934528, observability=1)
2025-11-17T13:00:42.839 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:00:42
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.9345762729644775s
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:42.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:42.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:42.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:42.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:42.840 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:42.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1634139;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18317;2460996.95882918;13.01186833;1.3;_
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1634139;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18317;2460996.95882918;13.01186833;1.3;_
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:42.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:42.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:42.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:42.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:42.842 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1634139, teldec = -24.256437
2025-11-17T13:00:42.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1634139 -24.256437
2025-11-17T13:00:42.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1634139 -24.256437
2025-11-17T13:00:42.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1634139 -24.256437
2025-11-17T13:00:42.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1634139;-24.256437;50.108322;89.992914;50.08601;90.12017;16.18317;2460996.9588292;13.01186833;1.3;_19.1373086136433 -24.2963317470034
2025-11-17T13:00:42.844 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1373086136433     dec_j2k = -24.2963317470034
2025-11-17T13:00:42.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:42.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:42.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:42.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104652419787045;171.162362694745;_
2025-11-17T13:00:42.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104652419787045;171.162362694745;_
2025-11-17T13:00:42.845 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:42.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:42.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:42.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:42.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52413)
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:42.850 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:42.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:42.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:42.857 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:42.858 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:42.858 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95882918, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652419787045, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992914, telescope_ra=19.1634139, telescope_dec=-24.256437, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.18317, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1373086136433, telescope_dec_j2k=-24.2963317470034, observability=1)
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.9158425331115723s
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:45.774 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:45.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:45.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:45.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:45.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1642471;-24.256437;50.108322;89.992914;50.08601;90.12017;16.184;2460996.95886314;13.01269917;1.3;_
2025-11-17T13:00:45.776 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.1642471;-24.256437;50.108322;89.992914;50.08601;90.12017;16.184;2460996.95886314;13.01269917;1.3;_
2025-11-17T13:00:45.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:45.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:45.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:45.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:45.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:45.777 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.1642471, teldec = -24.256437
2025-11-17T13:00:45.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1642471 -24.256437
2025-11-17T13:00:45.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1642471 -24.256437
2025-11-17T13:00:45.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1642471 -24.256437
2025-11-17T13:00:45.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1642471;-24.256437;50.108322;89.992914;50.08601;90.12017;16.184;2460996.95886317;13.01269917;1.3;_19.1381420082313 -24.296361724081
2025-11-17T13:00:45.778 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.1381420082313     dec_j2k = -24.296361724081
2025-11-17T13:00:45.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:45.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:45.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104652299451216;171.162357330327;_
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104652299451216;171.162357330327;_
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:45.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:45.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:45.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:45.781 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:45.781 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54603)
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:45.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:45.791 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:45.792 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95886314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652299451216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992914, telescope_ra=19.1642471, telescope_dec=-24.256437, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T12:59:47.553993', telescope_ra_j2k=19.1381420082313, telescope_dec_j2k=-24.296361724081, observability=1)
2025-11-17T13:00:47.703 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:47.703 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:47.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:47.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:47.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:47.704 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:47.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:47.705 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:00:47.705 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:47.705 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:47.705 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:47.705 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:47.705 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:00:47.706 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:00:47.707 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:48.707 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:48.707 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:48.707 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:48.707 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:48.707 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:48.708 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:48.708 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:00:48.709 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:48.710 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:48.711 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:48.711 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:48.711 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:48.711 [DEBUG] [ThreadPoolExecutor-2818_0] [payload.py] [to_registers()] [0]
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49153)
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:48.716 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:48.723 [DEBUG] [ThreadPoolExecutor-2818_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Status age = 11.148755073547363s
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:00:56.940 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:00:56.941 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:00:56.941 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:00:56.942 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:00:56.943 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 17;19.167343;-24.256436;50.108322;89.992913;50.08601;90.12017;16.1871;2460996.9589924;13.01578667;1.3;_
2025-11-17T13:00:56.943 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response 17;19.167343;-24.256436;50.108322;89.992913;50.08601;90.12017;16.1871;2460996.9589924;13.01578667;1.3;_
2025-11-17T13:00:56.943 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:00:56.943 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:00:56.943 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:00:56.944 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:56.944 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:00:56.944 [INFO] [Thread-67823 (handle)] [driver.py] [get_status()] Telra = 19.167343, teldec = -24.256436
2025-11-17T13:00:56.944 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] UnCookCoordinates 19.167343 -24.256436
2025-11-17T13:00:56.944 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.167343 -24.256436
2025-11-17T13:00:56.944 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.167343 -24.256436
2025-11-17T13:00:56.945 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 17;19.167343;-24.256436;50.108322;89.992913;50.08601;90.12017;16.1871;2460996.95899242;13.01578667;1.3;_19.1412386330854 -24.2964720930876
2025-11-17T13:00:56.945 [INFO] [Thread-67823 (handle)] [driver.py] [get_status()] ra_j2k = 19.1412386330854     dec_j2k = -24.2964720930876
2025-11-17T13:00:56.945 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:00:56.945 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:00:56.945 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 140;0.104652379675102;171.162362694745;_
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response 140;0.104652379675102;171.162362694745;_
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:56.946 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:00:56.947 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:00:56.948 [DEBUG] [Thread-67823 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:56.948 [DEBUG] [Thread-67823 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:00:56.948 [DEBUG] [Thread-67823 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:00:56.952 [DEBUG] [Thread-67823 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42421)
2025-11-17T13:00:56.953 [DEBUG] [Thread-67823 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:00:56.953 [DEBUG] [Thread-67823 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:00:56.953 [DEBUG] [Thread-67823 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:00:56.953 [DEBUG] [Thread-67823 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:00:56.953 [DEBUG] [Thread-67823 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:00:56.960 [DEBUG] [Thread-67823 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:00:56.961 [DEBUG] [Thread-67823 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:00:56.961 [INFO] [Thread-67823 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9589924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652379675102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992913, telescope_ra=19.167343, telescope_dec=-24.256436, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.1871, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.1412386330854, telescope_dec_j2k=-24.2964720930876, observability=1)
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Status age = 14.550032377243042s
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:11.511 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:11.512 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:11.513 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 17;19.1714105;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19116;2460996.95916103;13.01984306;1.3;_
2025-11-17T13:01:11.513 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response 17;19.1714105;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19116;2460996.95916103;13.01984306;1.3;_
2025-11-17T13:01:11.513 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:11.513 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:11.513 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:11.514 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:11.514 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:11.514 [INFO] [Thread-67824 (handle)] [driver.py] [get_status()] Telra = 19.1714105, teldec = -24.256436
2025-11-17T13:01:11.514 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1714105 -24.256436
2025-11-17T13:01:11.514 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1714105 -24.256436
2025-11-17T13:01:11.514 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1714105 -24.256436
2025-11-17T13:01:11.515 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 17;19.1714105;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19116;2460996.95916105;13.01984306;1.3;_19.1453070890893 -24.2966183746664
2025-11-17T13:01:11.515 [INFO] [Thread-67824 (handle)] [driver.py] [get_status()] ra_j2k = 19.1453070890893     dec_j2k = -24.2966183746664
2025-11-17T13:01:11.515 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:11.515 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:11.515 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 140;0.104652861018416;171.162362694745;_
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response 140;0.104652861018416;171.162362694745;_
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:11.516 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:11.517 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:11.518 [DEBUG] [Thread-67824 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:11.518 [DEBUG] [Thread-67824 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:11.518 [DEBUG] [Thread-67824 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:11.522 [DEBUG] [Thread-67824 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53249)
2025-11-17T13:01:11.523 [DEBUG] [Thread-67824 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:11.523 [DEBUG] [Thread-67824 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:11.523 [DEBUG] [Thread-67824 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:11.523 [DEBUG] [Thread-67824 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:11.523 [DEBUG] [Thread-67824 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:11.530 [DEBUG] [Thread-67824 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:11.530 [INFO] [Thread-67824 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95916103, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652861018416, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992913, telescope_ra=19.1714105, telescope_dec=-24.256436, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.19116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.1453070890893, telescope_dec_j2k=-24.2966183746664, observability=1)
2025-11-17T13:01:13.723 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:13.724 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:13.724 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:13.724 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:13.724 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:13.725 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:01:13.726 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:01:13.727 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.407724380493164s
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1723556;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19211;2460996.95920069;13.02078556;1.3;_
2025-11-17T13:01:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.1723556;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19211;2460996.95920069;13.02078556;1.3;_
2025-11-17T13:01:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:14.942 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.1723556, teldec = -24.256436
2025-11-17T13:01:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1723556 -24.256436
2025-11-17T13:01:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1723556 -24.256436
2025-11-17T13:01:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1723556 -24.256436
2025-11-17T13:01:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1723556;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19211;2460996.95920073;13.02078556;1.3;_19.1462524118577 -24.2966523574639
2025-11-17T13:01:14.943 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1462524118577     dec_j2k = -24.2966523574639
2025-11-17T13:01:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104652861018416;171.162357330327;_
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104652861018416;171.162357330327;_
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57397)
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:14.957 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:14.957 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95920069, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652861018416, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992913, telescope_ra=19.1723556, telescope_dec=-24.256436, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.19211, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.1462524118577, telescope_dec_j2k=-24.2966523574639, observability=1)
2025-11-17T13:01:15.006 [DEBUG] [Thread-67825 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:15.006 [DEBUG] [Thread-67825 (handle)] [server.py] [get_status()] Status age = 0.048848628997802734s
2025-11-17T13:01:15.006 [DEBUG] [Thread-67825 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.048848628997802734
2025-11-17T13:01:27.896 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.939752578735352s
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:27.897 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:27.898 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:27.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1759791;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19573;2460996.95935067;13.02439917;1.3;_
2025-11-17T13:01:27.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.1759791;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19573;2460996.95935067;13.02439917;1.3;_
2025-11-17T13:01:27.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:27.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:27.899 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:27.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:27.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:27.900 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.1759791, teldec = -24.256436
2025-11-17T13:01:27.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.1759791 -24.256436
2025-11-17T13:01:27.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.1759791 -24.256436
2025-11-17T13:01:27.900 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1759791 -24.256436
2025-11-17T13:01:27.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.1759791;-24.256436;50.108322;89.992913;50.08601;90.12017;16.19573;2460996.95935071;13.02439917;1.3;_19.149876768174 -24.2967826248981
2025-11-17T13:01:27.901 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.149876768174     dec_j2k = -24.2967826248981
2025-11-17T13:01:27.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:27.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:27.901 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653222025901;171.162351965909;_
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653222025901;171.162351965909;_
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:27.902 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:27.903 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:27.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:27.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:27.904 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57733)
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:27.905 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:27.912 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:27.912 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:27.913 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:01:27.913 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95935067, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653222025901, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108322, telescope_az=89.992913, telescope_ra=19.1759791, telescope_dec=-24.256436, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.19573, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.149876768174, telescope_dec_j2k=-24.2967826248981, observability=1)
2025-11-17T13:01:27.913 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07432293891907 seconds ago
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Status age = 5.208920001983643s
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:33.122 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:33.123 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:33.124 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 17;19.1774292;-24.256436;50.108321;89.992912;50.08601;90.12017;16.19718;2460996.95941116;13.02584528;1.3;_
2025-11-17T13:01:33.124 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response 17;19.1774292;-24.256436;50.108321;89.992912;50.08601;90.12017;16.19718;2460996.95941116;13.02584528;1.3;_
2025-11-17T13:01:33.124 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:33.124 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:33.124 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:33.125 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:33.125 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:33.125 [INFO] [Thread-67826 (handle)] [driver.py] [get_status()] Telra = 19.1774292, teldec = -24.256436
2025-11-17T13:01:33.125 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1774292 -24.256436
2025-11-17T13:01:33.125 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1774292 -24.256436
2025-11-17T13:01:33.126 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1774292 -24.256436
2025-11-17T13:01:33.126 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 17;19.1774292;-24.256436;50.108321;89.992912;50.08601;90.12017;16.19718;2460996.95941118;13.02584528;1.3;_19.151327211855 -24.2968347471838
2025-11-17T13:01:33.126 [INFO] [Thread-67826 (handle)] [driver.py] [get_status()] ra_j2k = 19.151327211855     dec_j2k = -24.2968347471838
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 140;0.104653422585615;171.162357330327;_
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response 140;0.104653422585615;171.162357330327;_
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:33.127 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:33.129 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:33.130 [DEBUG] [Thread-67826 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:33.130 [DEBUG] [Thread-67826 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:33.130 [DEBUG] [Thread-67826 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56763)
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:33.134 [DEBUG] [Thread-67826 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:33.142 [DEBUG] [Thread-67826 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:33.142 [INFO] [Thread-67826 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95941116, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653422585615, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992912, telescope_ra=19.1774292, telescope_dec=-24.256436, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.19718, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.151327211855, telescope_dec_j2k=-24.2968347471838, observability=1)
2025-11-17T13:01:42.919 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:01:42
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.777099609375s
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:42.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:42.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:42.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1801603;-24.256435;50.108321;89.992912;50.08601;90.12017;16.19991;2460996.95952455;13.02856889;1.3;_
2025-11-17T13:01:42.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1801603;-24.256435;50.108321;89.992912;50.08601;90.12017;16.19991;2460996.95952455;13.02856889;1.3;_
2025-11-17T13:01:42.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:42.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:42.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:42.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:42.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:42.922 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1801603, teldec = -24.256435
2025-11-17T13:01:42.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1801603 -24.256435
2025-11-17T13:01:42.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1801603 -24.256435
2025-11-17T13:01:42.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1801603 -24.256435
2025-11-17T13:01:42.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1801603;-24.256435;50.108321;89.992912;50.08601;90.12017;16.19991;2460996.95952457;13.02856889;1.3;_19.1540589608664 -24.2969318983884
2025-11-17T13:01:42.923 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1540589608664     dec_j2k = -24.2969318983884
2025-11-17T13:01:42.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:42.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:42.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:42.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:42.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:42.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:42.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:42.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:42.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:42.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:42.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:42.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:42.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43891)
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:42.933 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:42.940 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:42.941 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95952455, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653542921443, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992912, telescope_ra=19.1801603, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.19991, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.1540589608664, telescope_dec_j2k=-24.2969318983884, observability=1)
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9444007873535156s
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:44.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:44.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:44.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1807123;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20046;2460996.9595473;13.02911944;1.3;_
2025-11-17T13:01:44.887 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.1807123;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20046;2460996.9595473;13.02911944;1.3;_
2025-11-17T13:01:44.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:44.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:44.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:44.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:44.888 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:44.888 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.1807123, teldec = -24.256435
2025-11-17T13:01:44.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1807123 -24.256435
2025-11-17T13:01:44.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1807123 -24.256435
2025-11-17T13:01:44.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1807123 -24.256435
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.1807123;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20046;2460996.95954733;13.02911944;1.3;_19.1546110922469 -24.2969517339001
2025-11-17T13:01:44.890 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.1546110922469     dec_j2k = -24.2969517339001
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.1046540643767;171.162357330327;_
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.1046540643767;171.162357330327;_
2025-11-17T13:01:44.890 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:44.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:44.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:44.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:44.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:44.891 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:44.892 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:44.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:44.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:44.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:44.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:44.893 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:01:44.893 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53459)
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:44.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:44.904 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:44.905 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9595473, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046540643767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992912, telescope_ra=19.1807123, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.20046, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:00:47.702739', telescope_ra_j2k=19.1546110922469, telescope_dec_j2k=-24.2969517339001, observability=1)
2025-11-17T13:01:47.847 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:47.847 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:47.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:47.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:47.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:47.848 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:47.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:47.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:47.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:47.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:47.849 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:01:47.850 [INFO] [ThreadPoolExecutor-2819_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:01:47.850 [INFO] [ThreadPoolExecutor-2819_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Status age = 6.2774598598480225s
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:01:51.182 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:01:51.183 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:01:51.184 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 17;19.1824426;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20219;2460996.95962019;13.030845;1.3;_
2025-11-17T13:01:51.184 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response 17;19.1824426;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20219;2460996.95962019;13.030845;1.3;_
2025-11-17T13:01:51.184 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:01:51.184 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:01:51.184 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:01:51.185 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:51.185 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:01:51.185 [INFO] [Thread-67827 (handle)] [driver.py] [get_status()] Telra = 19.1824426, teldec = -24.256435
2025-11-17T13:01:51.185 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1824426 -24.256435
2025-11-17T13:01:51.185 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1824426 -24.256435
2025-11-17T13:01:51.185 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1824426 -24.256435
2025-11-17T13:01:51.186 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 17;19.1824426;-24.256435;50.108321;89.992912;50.08601;90.12017;16.20219;2460996.95962021;13.030845;1.3;_19.1563418046032 -24.2970139050064
2025-11-17T13:01:51.186 [INFO] [Thread-67827 (handle)] [driver.py] [get_status()] ra_j2k = 19.1563418046032     dec_j2k = -24.2970139050064
2025-11-17T13:01:51.186 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:01:51.186 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:01:51.186 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 140;0.104653342361729;171.162346601491;_
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response 140;0.104653342361729;171.162346601491;_
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:51.187 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:01:51.188 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:01:51.189 [DEBUG] [Thread-67827 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:51.189 [DEBUG] [Thread-67827 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:01:51.189 [DEBUG] [Thread-67827 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44837)
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:01:51.194 [DEBUG] [Thread-67827 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:01:51.201 [DEBUG] [Thread-67827 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:01:51.201 [INFO] [Thread-67827 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95962019, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653342361729, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992912, telescope_ra=19.1824426, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.20219, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1563418046032, telescope_dec_j2k=-24.2970139050064, observability=1)
2025-11-17T13:02:08.727 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.727 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.727 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:08.727 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:08.727 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:02:08.728 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:08.729 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:08.730 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:02:08.731 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:08.732 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:08.733 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:08.733 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:08.733 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:08.733 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Park
2025-11-17T13:02:08.734 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:02:08.734 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:02:08.734 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 29;19.1873524;-24.256435;50.108321;89.992911;50.08601;90.12017;16.2071;2460996.95982331;13.03574139;1.3;_Park Command Successful
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Status age = 18.043926000595093s
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:09.245 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:09.246 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:09.247 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 17;19.1874836;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20724;2460996.95982925;13.03587222;1.3;_
2025-11-17T13:02:09.247 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response 17;19.1874836;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20724;2460996.95982925;13.03587222;1.3;_
2025-11-17T13:02:09.247 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:09.247 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:09.247 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:09.248 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:09.248 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:09.248 [INFO] [Thread-67828 (handle)] [driver.py] [get_status()] Telra = 19.1874836, teldec = -24.256435
2025-11-17T13:02:09.248 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1874836 -24.256435
2025-11-17T13:02:09.248 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1874836 -24.256435
2025-11-17T13:02:09.248 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1874836 -24.256435
2025-11-17T13:02:09.249 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 17;19.1874836;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20724;2460996.95982927;13.03587222;1.3;_19.1613840105348 -24.2971949862306
2025-11-17T13:02:09.249 [INFO] [Thread-67828 (handle)] [driver.py] [get_status()] ra_j2k = 19.1613840105348     dec_j2k = -24.2971949862306
2025-11-17T13:02:09.249 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:09.249 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 140;0.1046543451603;171.162357330327;_
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response 140;0.1046543451603;171.162357330327;_
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:09.250 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:09.251 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:09.252 [DEBUG] [Thread-67828 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:09.252 [DEBUG] [Thread-67828 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:09.252 [DEBUG] [Thread-67828 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39357)
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:09.258 [DEBUG] [Thread-67828 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:09.265 [DEBUG] [Thread-67828 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:09.266 [DEBUG] [Thread-67828 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:09.266 [DEBUG] [Thread-67828 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:09.266 [DEBUG] [Thread-67828 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:09.266 [INFO] [Thread-67828 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95982925, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046543451603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992911, telescope_ra=19.1874836, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.20724, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1613840105348, telescope_dec_j2k=-24.2971949862306, observability=1)
2025-11-17T13:02:09.734 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:02:09.735 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:02:09.735 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:02:09.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:02:09.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:02:10.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:02:10.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:02:10.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:02:10.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:02:10.736 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Status age = 2.304990530014038s
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:11.571 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:11.572 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:11.573 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 17;19.1881293;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20788;2460996.95985617;13.03651611;1.3;_
2025-11-17T13:02:11.573 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response 17;19.1881293;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20788;2460996.95985617;13.03651611;1.3;_
2025-11-17T13:02:11.573 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:11.573 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:11.574 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:11.574 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:11.574 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:11.574 [INFO] [Thread-67829 (handle)] [driver.py] [get_status()] Telra = 19.1881293, teldec = -24.256435
2025-11-17T13:02:11.574 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1881293 -24.256435
2025-11-17T13:02:11.575 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1881293 -24.256435
2025-11-17T13:02:11.575 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1881293 -24.256435
2025-11-17T13:02:11.575 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 17;19.1881293;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20788;2460996.95985619;13.03651611;1.3;_19.1620298654955 -24.2972181758975
2025-11-17T13:02:11.576 [INFO] [Thread-67829 (handle)] [driver.py] [get_status()] ra_j2k = 19.1620298654955     dec_j2k = -24.2972181758975
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 140;0.104654706167785;171.162346601491;_
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response 140;0.104654706167785;171.162346601491;_
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:11.576 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:11.577 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:11.577 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:11.578 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:11.579 [DEBUG] [Thread-67829 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:11.579 [DEBUG] [Thread-67829 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:11.579 [DEBUG] [Thread-67829 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50209)
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:11.586 [DEBUG] [Thread-67829 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:11.593 [DEBUG] [Thread-67829 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:11.594 [DEBUG] [Thread-67829 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:11.594 [DEBUG] [Thread-67829 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:11.594 [DEBUG] [Thread-67829 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:11.594 [INFO] [Thread-67829 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.95985617, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654706167785, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992911, telescope_ra=19.1881293, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.20788, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1620298654955, telescope_dec_j2k=-24.2972181758975, observability=1)
2025-11-17T13:02:11.737 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:02:11.737 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:02:11.737 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:02:11.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:02:11.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:02:12.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:02:12.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:02:12.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:02:12.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:02:12.738 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:02:12.739 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:12.739 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:12.739 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:12.739 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:12.739 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:02:12.740 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:02:12.741 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:13.741 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:13.741 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:13.741 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:13.741 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:13.741 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:02:13.742 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:02:13.743 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:02:13.743 [DEBUG] [ThreadPoolExecutor-2818_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:13.743 [INFO] [ThreadPoolExecutor-2818_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.347123146057129s
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1890738;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20883;2460996.95989517;13.03745806;1.3;_
2025-11-17T13:02:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.1890738;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20883;2460996.95989517;13.03745806;1.3;_
2025-11-17T13:02:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:14.944 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.1890738, teldec = -24.256435
2025-11-17T13:02:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1890738 -24.256435
2025-11-17T13:02:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1890738 -24.256435
2025-11-17T13:02:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1890738 -24.256435
2025-11-17T13:02:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.1890738;-24.256435;50.108321;89.992911;50.08601;90.12017;16.20883;2460996.9598952;13.03745806;1.3;_19.1629745923665 -24.2972520946307
2025-11-17T13:02:14.945 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1629745923665     dec_j2k = -24.2972520946307
2025-11-17T13:02:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.1046543451603;171.162357330327;_
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.1046543451603;171.162357330327;_
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:02:14.949 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52029)
2025-11-17T13:02:14.949 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:14.950 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:14.950 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:14.957 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:14.957 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.95989517, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046543451603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992911, telescope_ra=19.1890738, telescope_dec=-24.256435, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.20883, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1629745923665, telescope_dec_j2k=-24.2972520946307, observability=1)
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Status age = 12.441677570343018s
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:27.399 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:27.400 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:27.401 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 17;19.1925313;-24.256434;50.108321;89.992911;50.08601;90.12017;16.21228;2460996.96003936;13.04090611;1.3;_
2025-11-17T13:02:27.401 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response 17;19.1925313;-24.256434;50.108321;89.992911;50.08601;90.12017;16.21228;2460996.96003936;13.04090611;1.3;_
2025-11-17T13:02:27.401 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:27.401 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:27.401 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:27.402 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:27.402 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:27.402 [INFO] [Thread-67830 (handle)] [driver.py] [get_status()] Telra = 19.1925313, teldec = -24.256434
2025-11-17T13:02:27.402 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1925313 -24.256434
2025-11-17T13:02:27.402 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1925313 -24.256434
2025-11-17T13:02:27.403 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1925313 -24.256434
2025-11-17T13:02:27.403 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 17;19.1925313;-24.256434;50.108321;89.992911;50.08601;90.12017;16.21228;2460996.96003939;13.04090611;1.3;_19.166432925102 -24.2973752392411
2025-11-17T13:02:27.403 [INFO] [Thread-67830 (handle)] [driver.py] [get_status()] ra_j2k = 19.166432925102     dec_j2k = -24.2973752392411
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 140;0.104655107287213;171.162351965909;_
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response 140;0.104655107287213;171.162351965909;_
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:27.404 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:27.405 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:27.406 [DEBUG] [Thread-67830 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:27.406 [DEBUG] [Thread-67830 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:02:27.406 [DEBUG] [Thread-67830 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:02:27.410 [DEBUG] [Thread-67830 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52763)
2025-11-17T13:02:27.410 [DEBUG] [Thread-67830 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:27.411 [DEBUG] [Thread-67830 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:27.411 [DEBUG] [Thread-67830 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:27.411 [DEBUG] [Thread-67830 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:27.411 [DEBUG] [Thread-67830 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:27.418 [DEBUG] [Thread-67830 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:27.418 [INFO] [Thread-67830 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96003936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655107287213, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108321, telescope_az=89.992911, telescope_ra=19.1925313, telescope_dec=-24.256434, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.21228, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.166432925102, telescope_dec_j2k=-24.2973752392411, observability=1)
2025-11-17T13:02:27.973 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:02:27.973 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.555112361907959s
2025-11-17T13:02:27.973 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.555112361907959
2025-11-17T13:02:27.973 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05430340766907 seconds ago
2025-11-17T13:02:43.001 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:02:43
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.582988262176514s
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:43.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:43.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:43.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1968809;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21663;2460996.96021994;13.04524389;1.3;_
2025-11-17T13:02:43.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.1968809;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21663;2460996.96021994;13.04524389;1.3;_
2025-11-17T13:02:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:43.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:43.005 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.1968809, teldec = -24.256434
2025-11-17T13:02:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1968809 -24.256434
2025-11-17T13:02:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1968809 -24.256434
2025-11-17T13:02:43.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1968809 -24.256434
2025-11-17T13:02:43.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.1968809;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21663;2460996.96021998;13.04524389;1.3;_19.1707835770174 -24.2975313691785
2025-11-17T13:02:43.006 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1707835770174     dec_j2k = -24.2975313691785
2025-11-17T13:02:43.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:43.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:43.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104654746279728;171.162351965909;_
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104654746279728;171.162351965909;_
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:43.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:43.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:43.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:43.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:43.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52063)
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:43.012 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:43.019 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:43.019 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96021994, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654746279728, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.99291, telescope_ra=19.1968809, telescope_dec=-24.256434, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.21663, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1707835770174, telescope_dec_j2k=-24.2975313691785, observability=1)
2025-11-17T13:02:43.998 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:43.998 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.9787802696228027s
2025-11-17T13:02:43.998 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9787802696228027
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Status age = 2.448732614517212s
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:45.468 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 17;19.1975734;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21733;2460996.96024848;13.04593444;1.3;_
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response 17;19.1975734;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21733;2460996.96024848;13.04593444;1.3;_
2025-11-17T13:02:45.469 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:02:45.470 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:02:45.470 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:02:45.471 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:45.471 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:02:45.471 [INFO] [Thread-67831 (handle)] [driver.py] [get_status()] Telra = 19.1975734, teldec = -24.256434
2025-11-17T13:02:45.471 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] UnCookCoordinates 19.1975734 -24.256434
2025-11-17T13:02:45.471 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.1975734 -24.256434
2025-11-17T13:02:45.471 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.1975734 -24.256434
2025-11-17T13:02:45.472 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 17;19.1975734;-24.256434;50.10832;89.99291;50.08601;90.12017;16.21733;2460996.96024852;13.04593444;1.3;_19.1714762449617 -24.2975562218684
2025-11-17T13:02:45.472 [INFO] [Thread-67831 (handle)] [driver.py] [get_status()] ra_j2k = 19.1714762449617     dec_j2k = -24.2975562218684
2025-11-17T13:02:45.472 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:02:45.472 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:02:45.472 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 140;0.104655027063327;171.162362694745;_
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response 140;0.104655027063327;171.162362694745;_
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:45.473 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:02:45.474 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:02:45.475 [DEBUG] [Thread-67831 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:45.475 [DEBUG] [Thread-67831 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:02:45.475 [DEBUG] [Thread-67831 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42017)
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:45.482 [DEBUG] [Thread-67831 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:02:45.489 [DEBUG] [Thread-67831 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:02:45.489 [INFO] [Thread-67831 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96024848, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655027063327, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.99291, telescope_ra=19.1975734, telescope_dec=-24.256434, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.21733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:01:47.846863', telescope_ra_j2k=19.1714762449617, telescope_dec_j2k=-24.2975562218684, observability=1)
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:47.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:47.991 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:47.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:47.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:47.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:47.992 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:02:47.992 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:47.992 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:47.992 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:47.992 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:47.992 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:02:47.993 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:02:47.994 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:48.994 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:48.994 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:48.994 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:48.994 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:48.994 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:02:48.995 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:02:48.996 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:02:48.997 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:02:48.997 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:02:48.997 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:02:48.997 [DEBUG] [ThreadPoolExecutor-2820_0] [payload.py] [to_registers()] [0]
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47965)
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:02:48.999 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:02:49.006 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:02:49.006 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:02:49.006 [DEBUG] [ThreadPoolExecutor-2820_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:02:49.007 [DEBUG] [ThreadPoolExecutor-2820_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:02:49.007 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:02:49.007 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:02:49.007 [DEBUG] [ThreadPoolExecutor-2820_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Status age = 18.043278694152832s
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:03.533 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:03.534 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 17;19.2025942;-24.25644;50.10832;89.992921;50.08601;90.12018;16.22235;2460996.96045757;13.05094139;1.3;_
2025-11-17T13:03:03.534 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response 17;19.2025942;-24.25644;50.10832;89.992921;50.08601;90.12018;16.22235;2460996.96045757;13.05094139;1.3;_
2025-11-17T13:03:03.534 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:03.534 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:03.534 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:03.535 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:03.535 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:03.536 [INFO] [Thread-67832 (handle)] [driver.py] [get_status()] Telra = 19.2025942, teldec = -24.25644
2025-11-17T13:03:03.536 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2025942 -24.25644
2025-11-17T13:03:03.536 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2025942 -24.25644
2025-11-17T13:03:03.536 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2025942 -24.25644
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 17;19.2025942;-24.25644;50.10832;89.992921;50.08601;90.12018;16.22235;2460996.9604576;13.05094139;1.3;_19.1764982652998 -24.297742370405
2025-11-17T13:03:03.537 [INFO] [Thread-67832 (handle)] [driver.py] [get_status()] ra_j2k = 19.1764982652998     dec_j2k = -24.297742370405
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 140;0.104655468294698;171.162357330327;_
2025-11-17T13:03:03.537 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response 140;0.104655468294698;171.162357330327;_
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:03.538 [DEBUG] [Thread-67832 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:03.543 [DEBUG] [Thread-67832 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34263)
2025-11-17T13:03:03.543 [DEBUG] [Thread-67832 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:03.544 [DEBUG] [Thread-67832 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:03.544 [DEBUG] [Thread-67832 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:03.544 [DEBUG] [Thread-67832 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:03.544 [DEBUG] [Thread-67832 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:03.551 [DEBUG] [Thread-67832 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:03.551 [INFO] [Thread-67832 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96045757, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655468294698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.992921, telescope_ra=19.2025942, telescope_dec=-24.25644, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.22235, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1764982652998, telescope_dec_j2k=-24.297742370405, observability=1)
2025-11-17T13:03:11.636 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Status age = 8.085457801818848s
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:11.637 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:11.638 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 17;19.2048747;-24.256433;50.10832;89.99291;50.08601;90.12017;16.22463;2460996.96055137;13.05321583;1.3;_
2025-11-17T13:03:11.638 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response 17;19.2048747;-24.256433;50.10832;89.99291;50.08601;90.12017;16.22463;2460996.96055137;13.05321583;1.3;_
2025-11-17T13:03:11.638 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:11.638 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:11.638 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:11.639 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:11.639 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:11.639 [INFO] [Thread-67833 (handle)] [driver.py] [get_status()] Telra = 19.2048747, teldec = -24.256433
2025-11-17T13:03:11.640 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2048747 -24.256433
2025-11-17T13:03:11.640 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2048747 -24.256433
2025-11-17T13:03:11.640 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2048747 -24.256433
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 17;19.2048747;-24.256433;50.10832;89.99291;50.08601;90.12017;16.22463;2460996.96055139;13.05321583;1.3;_19.178779323691 -24.2978171737077
2025-11-17T13:03:11.641 [INFO] [Thread-67833 (handle)] [driver.py] [get_status()] ra_j2k = 19.178779323691     dec_j2k = -24.2978171737077
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 140;0.104655428182755;171.162357330327;_
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response 140;0.104655428182755;171.162357330327;_
2025-11-17T13:03:11.641 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:11.642 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:11.643 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:11.645 [DEBUG] [Thread-67833 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:11.646 [DEBUG] [Thread-67833 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:11.646 [DEBUG] [Thread-67833 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:11.646 [DEBUG] [Thread-67833 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52805)
2025-11-17T13:03:11.646 [DEBUG] [Thread-67833 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:11.646 [DEBUG] [Thread-67833 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:11.647 [DEBUG] [Thread-67833 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:11.647 [DEBUG] [Thread-67833 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:11.647 [DEBUG] [Thread-67833 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:11.653 [DEBUG] [Thread-67833 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:11.654 [DEBUG] [Thread-67833 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:11.654 [INFO] [Thread-67833 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96055137, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655428182755, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.99291, telescope_ra=19.2048747, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.22463, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.178779323691, telescope_dec_j2k=-24.2978171737077, observability=1)
2025-11-17T13:03:14.007 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:14.007 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:14.007 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:14.007 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:14.007 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:14.008 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:03:14.009 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:03:14.010 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.3077447414398193s
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2057895;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22554;2460996.96058986;13.05412806;1.3;_
2025-11-17T13:03:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2057895;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22554;2460996.96058986;13.05412806;1.3;_
2025-11-17T13:03:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:14.965 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2057895, teldec = -24.256433
2025-11-17T13:03:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2057895 -24.256433
2025-11-17T13:03:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2057895 -24.256433
2025-11-17T13:03:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2057895 -24.256433
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2057895;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22554;2460996.96058988;13.05412806;1.3;_19.1796943475376 -24.2978499840448
2025-11-17T13:03:14.966 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1796943475376     dec_j2k = -24.2978499840448
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:03:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:14.969 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36427)
2025-11-17T13:03:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:14.970 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:14.977 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96058986, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.992909, telescope_ra=19.2057895, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.22554, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1796943475376, telescope_dec_j2k=-24.2978499840448, observability=1)
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Status age = 6.6754889488220215s
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:21.653 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 17;19.2076579;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22741;2460996.96066729;13.05599139;1.3;_
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response 17;19.2076579;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22741;2460996.96066729;13.05599139;1.3;_
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:21.654 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:21.655 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:21.655 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:21.655 [INFO] [Thread-67834 (handle)] [driver.py] [get_status()] Telra = 19.2076579, teldec = -24.256433
2025-11-17T13:03:21.655 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2076579 -24.256433
2025-11-17T13:03:21.655 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2076579 -24.256433
2025-11-17T13:03:21.655 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2076579 -24.256433
2025-11-17T13:03:21.656 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 17;19.2076579;-24.256433;50.10832;89.992909;50.08601;90.12017;16.22741;2460996.96066732;13.05599139;1.3;_19.1815632054227 -24.2979169891627
2025-11-17T13:03:21.656 [INFO] [Thread-67834 (handle)] [driver.py] [get_status()] ra_j2k = 19.1815632054227     dec_j2k = -24.2979169891627
2025-11-17T13:03:21.656 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:21.656 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 140;0.104655588630527;171.162357330327;_
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response 140;0.104655588630527;171.162357330327;_
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:21.657 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:21.658 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:21.659 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:21.660 [DEBUG] [Thread-67834 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:21.660 [DEBUG] [Thread-67834 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:21.660 [DEBUG] [Thread-67834 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50935)
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:21.661 [DEBUG] [Thread-67834 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:21.668 [DEBUG] [Thread-67834 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:21.669 [DEBUG] [Thread-67834 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:21.669 [INFO] [Thread-67834 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96066729, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655588630527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.992909, telescope_ra=19.2076579, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.22741, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1815632054227, telescope_dec_j2k=-24.2979169891627, observability=1)
2025-11-17T13:03:28.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:03:28.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.364798545837402s
2025-11-17T13:03:28.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:28.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:28.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2094442;-24.256433;50.10832;89.992909;50.08601;90.12017;16.2292;2460996.96074115;13.05777278;1.3;_
2025-11-17T13:03:28.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.2094442;-24.256433;50.10832;89.992909;50.08601;90.12017;16.2292;2460996.96074115;13.05777278;1.3;_
2025-11-17T13:03:28.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:28.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:28.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:28.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:28.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:28.036 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.2094442, teldec = -24.256433
2025-11-17T13:03:28.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.2094442 -24.256433
2025-11-17T13:03:28.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.2094442 -24.256433
2025-11-17T13:03:28.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2094442 -24.256433
2025-11-17T13:03:28.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2094442;-24.256433;50.10832;89.992909;50.08601;90.12017;16.2292;2460996.96074117;13.05777278;1.3;_19.1833499440636 -24.2979810409823
2025-11-17T13:03:28.037 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.1833499440636     dec_j2k = -24.2979810409823
2025-11-17T13:03:28.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:28.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104655147399156;171.162362694745;_
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104655147399156;171.162362694745;_
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:28.038 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:28.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:28.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:28.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:28.039 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:28.040 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58275)
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:28.048 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:28.056 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:03:28.056 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96074115, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655147399156, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10832, telescope_az=89.992909, telescope_ra=19.2094442, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.2292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1833499440636, telescope_dec_j2k=-24.2979810409823, observability=1)
2025-11-17T13:03:28.056 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05536651611328 seconds ago
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Status age = 11.667170763015747s
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:39.723 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:39.724 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:39.724 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:39.725 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:39.726 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 17;19.2126774;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23243;2460996.96087645;13.06099722;1.3;_
2025-11-17T13:03:39.726 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response 17;19.2126774;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23243;2460996.96087645;13.06099722;1.3;_
2025-11-17T13:03:39.726 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:39.726 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:39.726 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:39.727 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:39.727 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:39.727 [INFO] [Thread-67835 (handle)] [driver.py] [get_status()] Telra = 19.2126774, teldec = -24.256433
2025-11-17T13:03:39.727 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2126774 -24.256433
2025-11-17T13:03:39.727 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2126774 -24.256433
2025-11-17T13:03:39.727 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2126774 -24.256433
2025-11-17T13:03:39.728 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 17;19.2126774;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23243;2460996.96087648;13.06099722;1.3;_19.18658394018 -24.29809695224
2025-11-17T13:03:39.728 [INFO] [Thread-67835 (handle)] [driver.py] [get_status()] ra_j2k = 19.18658394018     dec_j2k = -24.29809695224
2025-11-17T13:03:39.728 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:39.728 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:39.728 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 140;0.104655708966355;171.162362694745;_
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response 140;0.104655708966355;171.162362694745;_
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:39.729 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:39.730 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:39.731 [DEBUG] [Thread-67835 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:39.731 [DEBUG] [Thread-67835 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:39.731 [DEBUG] [Thread-67835 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46007)
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:39.732 [DEBUG] [Thread-67835 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:39.739 [DEBUG] [Thread-67835 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:39.739 [DEBUG] [Thread-67835 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:39.740 [DEBUG] [Thread-67835 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:39.740 [INFO] [Thread-67835 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96087645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655708966355, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992909, telescope_ra=19.2126774, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.23243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.18658394018, telescope_dec_j2k=-24.29809695224, observability=1)
2025-11-17T13:03:43.080 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:03:43
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.340158224105835s
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:43.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091532;13.06193944;1.3;_
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091532;13.06193944;1.3;_
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:43.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:43.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:43.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:43.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:43.086 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.2136223, teldec = -24.256433
2025-11-17T13:03:43.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091536;13.06193944;1.3;_19.1875290733739 -24.2981308217427
2025-11-17T13:03:43.087 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.1875290733739     dec_j2k = -24.2981308217427
2025-11-17T13:03:43.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:43.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:43.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162357330327;_
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162357330327;_
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:43.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:43.089 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.089 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.089 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:43.091 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.351590633392334s
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:43.092 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39003)
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:43.092 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:43.092 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:43.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:43.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:43.093 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091543;13.06193944;1.3;_
2025-11-17T13:03:43.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091543;13.06193944;1.3;_
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:43.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:43.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:43.094 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:43.094 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.2136223, teldec = -24.256433
2025-11-17T13:03:43.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2136223 -24.256433
2025-11-17T13:03:43.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2136223;-24.256433;50.108319;89.992909;50.08601;90.12017;16.23337;2460996.96091545;13.06193944;1.3;_19.1875290733739 -24.2981308217427
2025-11-17T13:03:43.095 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.1875290733739     dec_j2k = -24.2981308217427
2025-11-17T13:03:43.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:43.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162357330327;_
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162357330327;_
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:43.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:03:43.097 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:03:43.099 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43751)
2025-11-17T13:03:43.100 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:43.100 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:43.100 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:43.100 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:43.100 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:43.100 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:43.100 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96091532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992909, telescope_ra=19.2136223, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.23337, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1875290733739, telescope_dec_j2k=-24.2981308217427, observability=1)
2025-11-17T13:03:43.107 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:43.108 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:43.108 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96091543, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992909, telescope_ra=19.2136223, telescope_dec=-24.256433, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.23337, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:02:47.989653', telescope_ra_j2k=19.1875290733739, telescope_dec_j2k=-24.2981308217427, observability=1)
2025-11-17T13:03:48.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:48.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:48.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:48.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:48.132 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:48.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:48.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:48.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:48.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:48.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:48.133 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:03:48.134 [INFO] [ThreadPoolExecutor-2821_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:03:48.134 [INFO] [ThreadPoolExecutor-2821_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Status age = 14.728344678878784s
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:03:57.836 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:03:57.837 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:03:57.837 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:03:57.838 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:03:57.839 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 17;19.2177221;-24.256432;50.108319;89.992908;50.08601;90.12017;16.23747;2460996.9610861;13.06602806;1.3;_
2025-11-17T13:03:57.839 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response 17;19.2177221;-24.256432;50.108319;89.992908;50.08601;90.12017;16.23747;2460996.9610861;13.06602806;1.3;_
2025-11-17T13:03:57.839 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:03:57.839 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:03:57.839 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:03:57.840 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:57.840 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:03:57.840 [INFO] [Thread-67836 (handle)] [driver.py] [get_status()] Telra = 19.2177221, teldec = -24.256432
2025-11-17T13:03:57.840 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2177221 -24.256432
2025-11-17T13:03:57.840 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2177221 -24.256432
2025-11-17T13:03:57.840 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2177221 -24.256432
2025-11-17T13:03:57.841 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 17;19.2177221;-24.256432;50.108319;89.992908;50.08601;90.12017;16.23747;2460996.96108612;13.06602806;1.3;_19.1916298881379 -24.2982767485525
2025-11-17T13:03:57.841 [INFO] [Thread-67836 (handle)] [driver.py] [get_status()] ra_j2k = 19.1916298881379     dec_j2k = -24.2982767485525
2025-11-17T13:03:57.841 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:03:57.841 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:03:57.841 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 140;0.104655508406641;171.162362694745;_
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response 140;0.104655508406641;171.162362694745;_
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:57.842 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:03:57.843 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:03:57.844 [DEBUG] [Thread-67836 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:03:57.844 [DEBUG] [Thread-67836 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:03:57.844 [DEBUG] [Thread-67836 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:03:57.847 [DEBUG] [Thread-67836 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51927)
2025-11-17T13:03:57.847 [DEBUG] [Thread-67836 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:03:57.847 [DEBUG] [Thread-67836 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:03:57.848 [DEBUG] [Thread-67836 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:03:57.848 [DEBUG] [Thread-67836 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:03:57.848 [DEBUG] [Thread-67836 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:03:57.855 [DEBUG] [Thread-67836 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:03:57.855 [INFO] [Thread-67836 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9610861, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655508406641, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992908, telescope_ra=19.2177221, telescope_dec=-24.256432, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.23747, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.1916298881379, telescope_dec_j2k=-24.2982767485525, observability=1)
2025-11-17T13:04:09.010 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.011 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:04:09.012 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:09.013 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:09.014 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:04:09.015 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:09.016 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Park
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:04:09.017 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:04:09.018 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 29;19.2208353;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24059;2460996.96121549;13.06913278;1.3;_Park Command Successful
2025-11-17T13:04:10.018 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:04:10.018 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:04:10.018 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:04:10.019 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:04:10.020 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:04:11.020 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:04:11.020 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:04:11.020 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:04:11.021 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:04:11.021 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Status age = 13.836217164993286s
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:11.691 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:11.692 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:11.693 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 17;19.2215918;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24134;2460996.96124645;13.06988722;1.3;_
2025-11-17T13:04:11.693 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response 17;19.2215918;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24134;2460996.96124645;13.06988722;1.3;_
2025-11-17T13:04:11.693 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:11.693 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:11.693 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:11.694 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:11.694 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:11.694 [INFO] [Thread-67837 (handle)] [driver.py] [get_status()] Telra = 19.2215918, teldec = -24.256432
2025-11-17T13:04:11.694 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2215918 -24.256432
2025-11-17T13:04:11.694 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2215918 -24.256432
2025-11-17T13:04:11.694 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2215918 -24.256432
2025-11-17T13:04:11.695 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 17;19.2215918;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24134;2460996.96124647;13.06988722;1.3;_19.1955005499028 -24.2984153861515
2025-11-17T13:04:11.695 [INFO] [Thread-67837 (handle)] [driver.py] [get_status()] ra_j2k = 19.1955005499028     dec_j2k = -24.2984153861515
2025-11-17T13:04:11.695 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:11.695 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:11.695 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 140;0.104655708966355;171.162357330327;_
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response 140;0.104655708966355;171.162357330327;_
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:11.696 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:11.697 [DEBUG] [Thread-67837 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:11.698 [DEBUG] [Thread-67837 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:11.698 [DEBUG] [Thread-67837 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58585)
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:11.700 [DEBUG] [Thread-67837 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:11.707 [DEBUG] [Thread-67837 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:11.708 [DEBUG] [Thread-67837 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:04:11.708 [INFO] [Thread-67837 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96124645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655708966355, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992908, telescope_ra=19.2215918, telescope_dec=-24.256432, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.24134, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.1955005499028, telescope_dec_j2k=-24.2984153861515, observability=1)
2025-11-17T13:04:12.021 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:04:12.021 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:04:12.021 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:04:12.022 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:04:12.022 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:04:13.022 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:04:13.022 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:04:13.022 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:13.023 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:04:13.024 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:04:13.025 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:14.025 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:14.025 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:14.025 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:14.025 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:04:14.026 [DEBUG] [ThreadPoolExecutor-2820_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:14.026 [INFO] [ThreadPoolExecutor-2820_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.222749948501587s
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:14.931 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:14.932 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2224795;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24223;2460996.96128394;13.0707725;1.3;_
2025-11-17T13:04:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2224795;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24223;2460996.96128394;13.0707725;1.3;_
2025-11-17T13:04:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:14.933 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:14.934 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2224795, teldec = -24.256432
2025-11-17T13:04:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2224795 -24.256432
2025-11-17T13:04:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2224795 -24.256432
2025-11-17T13:04:14.934 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2224795 -24.256432
2025-11-17T13:04:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2224795;-24.256432;50.108319;89.992908;50.08601;90.12017;16.24223;2460996.96128397;13.0707725;1.3;_19.1963884710956 -24.2984471833962
2025-11-17T13:04:14.935 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.1963884710956     dec_j2k = -24.2984471833962
2025-11-17T13:04:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48359)
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:14.939 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:14.947 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:04:14.948 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96128394, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465534795887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992908, telescope_ra=19.2224795, telescope_dec=-24.256432, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.24223, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.1963884710956, telescope_dec_j2k=-24.2984471833962, observability=1)
2025-11-17T13:04:15.895 [DEBUG] [Thread-67838 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:15.895 [DEBUG] [Thread-67838 (handle)] [server.py] [get_status()] Status age = 0.9471521377563477s
2025-11-17T13:04:15.895 [DEBUG] [Thread-67838 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9471521377563477
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.168316841125488s
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:28.116 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:28.117 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:28.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2261623;-24.256432;50.108319;89.992907;50.08601;90.12017;16.24591;2460996.96143655;13.07444528;1.3;_
2025-11-17T13:04:28.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.2261623;-24.256432;50.108319;89.992907;50.08601;90.12017;16.24591;2460996.96143655;13.07444528;1.3;_
2025-11-17T13:04:28.118 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:28.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:28.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:28.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:28.119 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:28.120 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.2261623, teldec = -24.256432
2025-11-17T13:04:28.120 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.2261623 -24.256432
2025-11-17T13:04:28.120 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.2261623 -24.256432
2025-11-17T13:04:28.120 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2261623 -24.256432
2025-11-17T13:04:28.121 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2261623;-24.256432;50.108319;89.992907;50.08601;90.12017;16.24591;2460996.96143659;13.07444528;1.3;_19.200072191014 -24.2985790770486
2025-11-17T13:04:28.121 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.200072191014     dec_j2k = -24.2985790770486
2025-11-17T13:04:28.121 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:28.121 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:28.121 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:28.121 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10465606997384;171.162362694745;_
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10465606997384;171.162362694745;_
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:28.122 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:28.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:28.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:28.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:28.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:28.123 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:28.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:28.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:28.124 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:28.130 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41069)
2025-11-17T13:04:28.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:28.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:28.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:28.131 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:28.131 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:28.138 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:04:28.138 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96143655, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465606997384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992907, telescope_ra=19.2261623, telescope_dec=-24.256432, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.24591, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.200072191014, telescope_dec_j2k=-24.2985790770486, observability=1)
2025-11-17T13:04:28.138 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05835437774658 seconds ago
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Status age = 5.8167033195495605s
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:33.955 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:33.956 [DEBUG] [Thread-67839 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:33.956 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:33.956 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:33.956 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:33.956 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:33.957 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 17;19.2277801;-24.256431;50.108319;89.992907;50.08601;90.12017;16.24753;2460996.96150413;13.07605861;1.3;_
2025-11-17T13:04:33.957 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response 17;19.2277801;-24.256431;50.108319;89.992907;50.08601;90.12017;16.24753;2460996.96150413;13.07605861;1.3;_
2025-11-17T13:04:33.957 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:33.957 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:33.957 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:33.958 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:33.958 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:33.958 [INFO] [Thread-67839 (handle)] [driver.py] [get_status()] Telra = 19.2277801, teldec = -24.256431
2025-11-17T13:04:33.958 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2277801 -24.256431
2025-11-17T13:04:33.958 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2277801 -24.256431
2025-11-17T13:04:33.958 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2277801 -24.256431
2025-11-17T13:04:33.959 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 17;19.2277801;-24.256431;50.108319;89.992907;50.08601;90.12017;16.24753;2460996.96150416;13.07605861;1.3;_19.2016903964615 -24.2986360040616
2025-11-17T13:04:33.959 [INFO] [Thread-67839 (handle)] [driver.py] [get_status()] ra_j2k = 19.2016903964615     dec_j2k = -24.2986360040616
2025-11-17T13:04:33.959 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:33.959 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:33.959 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162357330327;_
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162357330327;_
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:33.960 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:33.961 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:33.962 [DEBUG] [Thread-67839 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:33.962 [DEBUG] [Thread-67839 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:33.962 [DEBUG] [Thread-67839 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58137)
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:33.964 [DEBUG] [Thread-67839 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:33.972 [DEBUG] [Thread-67839 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:33.973 [DEBUG] [Thread-67839 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:33.973 [DEBUG] [Thread-67839 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:04:33.973 [INFO] [Thread-67839 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96150413, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108319, telescope_az=89.992907, telescope_ra=19.2277801, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.24753, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.2016903964615, telescope_dec_j2k=-24.2986360040616, observability=1)
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.231586217880249s
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:42.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:42.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:42.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:42.205 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:42.205 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:42.205 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2300934;-24.256431;50.108318;89.992907;50.08601;90.12017;16.24985;2460996.96159961;13.07836556;1.3;_
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.2300934;-24.256431;50.108318;89.992907;50.08601;90.12017;16.24985;2460996.96159961;13.07836556;1.3;_
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:42.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:42.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:42.207 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:42.207 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.2300934, teldec = -24.256431
2025-11-17T13:04:42.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2300934 -24.256431
2025-11-17T13:04:42.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2300934 -24.256431
2025-11-17T13:04:42.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2300934 -24.256431
2025-11-17T13:04:42.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2300934;-24.256431;50.108318;89.992907;50.08601;90.12017;16.24985;2460996.96159963;13.07836556;1.3;_19.2040042771575 -24.2987188212898
2025-11-17T13:04:42.208 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.2040042771575     dec_j2k = -24.2987188212898
2025-11-17T13:04:42.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:42.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:42.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655989749955;171.162362694745;_
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655989749955;171.162362694745;_
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:42.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:42.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:42.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:42.212 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:42.212 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:42.218 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49087)
2025-11-17T13:04:42.218 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:42.218 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:42.218 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:42.219 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:42.219 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:42.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:42.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:42.226 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:04:42.226 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96159961, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655989749955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992907, telescope_ra=19.2300934, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.24985, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:03:48.131354', telescope_ra_j2k=19.2040042771575, telescope_dec_j2k=-24.2987188212898, observability=1)
2025-11-17T13:04:43.161 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:04:43
2025-11-17T13:04:43.161 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:43.162 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.9356780052185059s
2025-11-17T13:04:43.162 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9356780052185059
2025-11-17T13:04:48.273 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:48.273 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:48.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:48.274 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:48.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:48.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:48.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:48.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:48.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:48.275 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:48.275 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:48.276 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:48.277 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:48.277 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:04:48.277 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:04:48.277 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:04:48.277 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:49.278 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:04:49.279 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:49.280 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:49.281 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:49.281 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:49.281 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:49.281 [DEBUG] [ThreadPoolExecutor-2822_0] [payload.py] [to_registers()] [0]
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52773)
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:49.284 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:49.291 [DEBUG] [ThreadPoolExecutor-2822_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Status age = 9.846392393112183s
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:04:52.072 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:04:52.073 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:04:52.073 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:04:52.073 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:04:52.074 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:04:52.075 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 17;19.2328523;-24.256431;50.108318;89.992907;50.08601;90.12017;16.2526;2460996.96171383;13.08111694;1.3;_
2025-11-17T13:04:52.075 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response 17;19.2328523;-24.256431;50.108318;89.992907;50.08601;90.12017;16.2526;2460996.96171383;13.08111694;1.3;_
2025-11-17T13:04:52.075 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:04:52.075 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:04:52.075 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:04:52.076 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:52.076 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:04:52.076 [INFO] [Thread-67840 (handle)] [driver.py] [get_status()] Telra = 19.2328523, teldec = -24.256431
2025-11-17T13:04:52.076 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2328523 -24.256431
2025-11-17T13:04:52.076 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2328523 -24.256431
2025-11-17T13:04:52.076 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2328523 -24.256431
2025-11-17T13:04:52.077 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 17;19.2328523;-24.256431;50.108318;89.992907;50.08601;90.12017;16.2526;2460996.96171385;13.08111694;1.3;_19.2067638715853 -24.2988175715191
2025-11-17T13:04:52.077 [INFO] [Thread-67840 (handle)] [driver.py] [get_status()] ra_j2k = 19.2067638715853     dec_j2k = -24.2988175715191
2025-11-17T13:04:52.077 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:04:52.077 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:04:52.077 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 140;0.104655909526069;171.162357330327;_
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response 140;0.104655909526069;171.162357330327;_
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:52.078 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:04:52.079 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:04:52.080 [DEBUG] [Thread-67840 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:52.080 [DEBUG] [Thread-67840 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:04:52.080 [DEBUG] [Thread-67840 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56255)
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:04:52.086 [DEBUG] [Thread-67840 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:04:52.094 [DEBUG] [Thread-67840 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:04:52.094 [INFO] [Thread-67840 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96171383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655909526069, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992907, telescope_ra=19.2328523, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.2526, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2067638715853, telescope_dec_j2k=-24.2988175715191, observability=1)
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Status age = 18.054693937301636s
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:10.149 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:10.150 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:10.151 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 17;19.2378618;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25761;2460996.96192303;13.08611278;1.3;_
2025-11-17T13:05:10.151 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response 17;19.2378618;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25761;2460996.96192303;13.08611278;1.3;_
2025-11-17T13:05:10.151 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:10.151 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:10.151 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:10.152 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:10.152 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:10.152 [INFO] [Thread-67841 (handle)] [driver.py] [get_status()] Telra = 19.2378618, teldec = -24.256431
2025-11-17T13:05:10.152 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2378618 -24.256431
2025-11-17T13:05:10.152 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2378618 -24.256431
2025-11-17T13:05:10.152 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2378618 -24.256431
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 17;19.2378618;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25761;2460996.96192307;13.08611278;1.3;_19.2117746377124 -24.298996823313
2025-11-17T13:05:10.153 [INFO] [Thread-67841 (handle)] [driver.py] [get_status()] ra_j2k = 19.2117746377124     dec_j2k = -24.298996823313
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 140;0.104656511205211;171.162357330327;_
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response 140;0.104656511205211;171.162357330327;_
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:10.153 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:10.154 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:10.155 [DEBUG] [Thread-67841 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:10.155 [DEBUG] [Thread-67841 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:10.155 [DEBUG] [Thread-67841 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59247)
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:10.157 [DEBUG] [Thread-67841 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:10.164 [DEBUG] [Thread-67841 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:10.165 [DEBUG] [Thread-67841 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:10.165 [DEBUG] [Thread-67841 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:10.165 [DEBUG] [Thread-67841 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:10.165 [INFO] [Thread-67841 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96192303, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656511205211, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992906, telescope_ra=19.2378618, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.25761, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2117746377124, telescope_dec_j2k=-24.298996823313, observability=1)
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Status age = 1.5754084587097168s
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:11.740 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:11.741 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:11.741 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 17;19.2383103;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25806;2460996.96194146;13.08656;1.3;_
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response 17;19.2383103;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25806;2460996.96194146;13.08656;1.3;_
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:11.742 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:11.743 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:11.743 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:11.743 [INFO] [Thread-67842 (handle)] [driver.py] [get_status()] Telra = 19.2383103, teldec = -24.256431
2025-11-17T13:05:11.743 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2383103 -24.256431
2025-11-17T13:05:11.743 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2383103 -24.256431
2025-11-17T13:05:11.743 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2383103 -24.256431
2025-11-17T13:05:11.744 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 17;19.2383103;-24.256431;50.108318;89.992906;50.08601;90.12017;16.25806;2460996.96194148;13.08656;1.3;_19.2122232513965 -24.2990128682446
2025-11-17T13:05:11.744 [INFO] [Thread-67842 (handle)] [driver.py] [get_status()] ra_j2k = 19.2122232513965     dec_j2k = -24.2990128682446
2025-11-17T13:05:11.744 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:11.744 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:11.744 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 140;0.104656430981325;171.162362694745;_
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response 140;0.104656430981325;171.162362694745;_
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:11.745 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:11.746 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:11.747 [DEBUG] [Thread-67842 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:11.747 [DEBUG] [Thread-67842 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:11.747 [DEBUG] [Thread-67842 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56345)
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:11.751 [DEBUG] [Thread-67842 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:11.758 [DEBUG] [Thread-67842 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:11.759 [INFO] [Thread-67842 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96194146, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656430981325, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992906, telescope_ra=19.2383103, telescope_dec=-24.256431, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.25806, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2122232513965, telescope_dec_j2k=-24.2990128682446, observability=1)
2025-11-17T13:05:14.292 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:14.292 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:14.292 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:14.292 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:14.292 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:14.293 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:05:14.294 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:05:14.295 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1763203144073486s
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:14.935 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:14.936 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2391977;-24.25643;50.108318;89.992906;50.08601;90.12017;16.25895;2460996.96197844;13.087445;1.3;_
2025-11-17T13:05:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2391977;-24.25643;50.108318;89.992906;50.08601;90.12017;16.25895;2460996.96197844;13.087445;1.3;_
2025-11-17T13:05:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:14.937 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:14.938 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2391977, teldec = -24.25643
2025-11-17T13:05:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2391977 -24.25643
2025-11-17T13:05:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2391977 -24.25643
2025-11-17T13:05:14.938 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2391977 -24.25643
2025-11-17T13:05:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2391977;-24.25643;50.108318;89.992906;50.08601;90.12017;16.25895;2460996.96197846;13.087445;1.3;_19.2131108766814 -24.299043613073
2025-11-17T13:05:14.939 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2131108766814     dec_j2k = -24.299043613073
2025-11-17T13:05:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104655909526069;171.162351965909;_
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104655909526069;171.162351965909;_
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:14.945 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37095)
2025-11-17T13:05:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:14.945 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:14.946 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:14.946 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:14.953 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:14.954 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:14.954 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96197844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655909526069, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992906, telescope_ra=19.2391977, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.25895, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2131108766814, telescope_dec_j2k=-24.299043613073, observability=1)
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.244064092636108s
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:28.198 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:28.199 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:28.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213194;13.09114167;1.3;_
2025-11-17T13:05:28.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213194;13.09114167;1.3;_
2025-11-17T13:05:28.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:28.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:28.200 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:28.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:28.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:28.201 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.2429045, teldec = -24.25643
2025-11-17T13:05:28.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.201 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213197;13.09114167;1.3;_19.2168186192105 -24.2991761913702
2025-11-17T13:05:28.202 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.2168186192105     dec_j2k = -24.2991761913702
2025-11-17T13:05:28.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:28.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:28.202 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104656310645497;171.162351965909;_
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104656310645497;171.162351965909;_
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:28.203 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:28.204 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:28.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:28.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:28.205 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Status age = 13.25297236442566s
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:28.207 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59425)
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:28.208 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213204;13.09114167;1.3;_
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213204;13.09114167;1.3;_
2025-11-17T13:05:28.208 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:28.209 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:28.209 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:28.209 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:28.210 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:28.210 [INFO] [Thread-67843 (handle)] [driver.py] [get_status()] Telra = 19.2429045, teldec = -24.25643
2025-11-17T13:05:28.210 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.210 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.210 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2429045 -24.25643
2025-11-17T13:05:28.211 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 17;19.2429045;-24.25643;50.108318;89.992906;50.08601;90.12017;16.26266;2460996.96213207;13.09114167;1.3;_19.2168186192105 -24.2991761913702
2025-11-17T13:05:28.211 [INFO] [Thread-67843 (handle)] [driver.py] [get_status()] ra_j2k = 19.2168186192105     dec_j2k = -24.2991761913702
2025-11-17T13:05:28.211 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:28.211 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:28.211 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 140;0.104656310645497;171.162351965909;_
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response 140;0.104656310645497;171.162351965909;_
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:28.212 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:28.213 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:28.213 [DEBUG] [Thread-67843 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:05:28.213 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:28.213 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:28.213 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:28.214 [DEBUG] [Thread-67843 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:28.214 [DEBUG] [Thread-67843 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:28.214 [DEBUG] [Thread-67843 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50153)
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:28.216 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:28.216 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:28.216 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:28.216 [DEBUG] [Thread-67843 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:28.216 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:28.216 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:28.217 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:28.217 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:28.217 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:28.217 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:05:28.217 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96213194, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656310645497, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992906, telescope_ra=19.2429045, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.26266, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2168186192105, telescope_dec_j2k=-24.2991761913702, observability=1)
2025-11-17T13:05:28.217 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05563449859619 seconds ago
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:28.224 [DEBUG] [Thread-67843 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:28.224 [INFO] [Thread-67843 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96213204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656310645497, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992906, telescope_ra=19.2429045, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.26266, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2168186192105, telescope_dec_j2k=-24.2991761913702, observability=1)
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.097624063491821s
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:41.322 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:41.323 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:41.323 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:41.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:41.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:41.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:41.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.246555;-24.25643;50.108318;89.992905;50.08601;90.12017;16.26631;2460996.96228383;13.09478222;1.3;_
2025-11-17T13:05:41.324 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.246555;-24.25643;50.108318;89.992905;50.08601;90.12017;16.26631;2460996.96228383;13.09478222;1.3;_
2025-11-17T13:05:41.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:41.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:41.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:41.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:41.325 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:41.325 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.246555, teldec = -24.25643
2025-11-17T13:05:41.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.246555 -24.25643
2025-11-17T13:05:41.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.246555 -24.25643
2025-11-17T13:05:41.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.246555 -24.25643
2025-11-17T13:05:41.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.246555;-24.25643;50.108318;89.992905;50.08601;90.12017;16.26631;2460996.96228387;13.09478222;1.3;_19.22047005102 -24.2993067178238
2025-11-17T13:05:41.326 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.22047005102     dec_j2k = -24.2993067178238
2025-11-17T13:05:41.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:41.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:41.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:41.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:41.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:41.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:41.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:41.329 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35119)
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:41.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:41.344 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:41.344 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96228383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655267734984, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108318, telescope_az=89.992905, telescope_ra=19.246555, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.26631, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.22047005102, telescope_dec_j2k=-24.2993067178238, observability=1)
2025-11-17T13:05:43.222 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:05:43
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.8775911331176758s
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:43.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:43.223 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:43.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2470876;-24.25643;50.108317;89.992905;50.08601;90.12017;16.26684;2460996.96230583;13.09531333;1.3;_
2025-11-17T13:05:43.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.2470876;-24.25643;50.108317;89.992905;50.08601;90.12017;16.26684;2460996.96230583;13.09531333;1.3;_
2025-11-17T13:05:43.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:43.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:43.224 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:43.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:43.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:43.225 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.2470876, teldec = -24.25643
2025-11-17T13:05:43.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2470876 -24.25643
2025-11-17T13:05:43.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2470876 -24.25643
2025-11-17T13:05:43.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2470876 -24.25643
2025-11-17T13:05:43.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2470876;-24.25643;50.108317;89.992905;50.08601;90.12017;16.26684;2460996.96230586;13.09531333;1.3;_19.2210027872672 -24.2993257581728
2025-11-17T13:05:43.226 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.2210027872672     dec_j2k = -24.2993257581728
2025-11-17T13:05:43.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:43.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:43.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655789190241;171.162351965909;_
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655789190241;171.162351965909;_
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:43.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:43.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:43.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:43.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41089)
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:43.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:43.243 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:43.243 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:43.243 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:43.244 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:43.244 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96230583, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655789190241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992905, telescope_ra=19.2470876, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.26684, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2210027872672, telescope_dec_j2k=-24.2993257581728, observability=1)
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Status age = 3.0959205627441406s
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:46.340 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 17;19.247946;-24.25643;50.108317;89.992905;50.08601;90.12017;16.2677;2460996.96234191;13.09616944;1.3;_
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response 17;19.247946;-24.25643;50.108317;89.992905;50.08601;90.12017;16.2677;2460996.96234191;13.09616944;1.3;_
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:05:46.341 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:05:46.342 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:05:46.342 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:46.343 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:05:46.343 [INFO] [Thread-67844 (handle)] [driver.py] [get_status()] Telra = 19.247946, teldec = -24.25643
2025-11-17T13:05:46.343 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] UnCookCoordinates 19.247946 -24.25643
2025-11-17T13:05:46.343 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.247946 -24.25643
2025-11-17T13:05:46.343 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.247946 -24.25643
2025-11-17T13:05:46.344 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 17;19.247946;-24.25643;50.108317;89.992905;50.08601;90.12017;16.2677;2460996.96234194;13.09616944;1.3;_19.2218614070189 -24.2993564441052
2025-11-17T13:05:46.344 [INFO] [Thread-67844 (handle)] [driver.py] [get_status()] ra_j2k = 19.2218614070189     dec_j2k = -24.2993564441052
2025-11-17T13:05:46.344 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:05:46.344 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:05:46.344 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:05:46.344 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 140;0.104655708966355;171.162362694745;_
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response 140;0.104655708966355;171.162362694745;_
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:05:46.345 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:05:46.346 [DEBUG] [Thread-67844 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:46.346 [DEBUG] [Thread-67844 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:05:46.346 [DEBUG] [Thread-67844 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:05:46.348 [DEBUG] [Thread-67844 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48645)
2025-11-17T13:05:46.349 [DEBUG] [Thread-67844 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:05:46.349 [DEBUG] [Thread-67844 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:05:46.349 [DEBUG] [Thread-67844 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:05:46.349 [DEBUG] [Thread-67844 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:05:46.349 [DEBUG] [Thread-67844 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:05:46.356 [DEBUG] [Thread-67844 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:05:46.356 [INFO] [Thread-67844 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96234191, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655708966355, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992905, telescope_ra=19.247946, telescope_dec=-24.25643, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.2677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:04:48.273291', telescope_ra_j2k=19.2218614070189, telescope_dec_j2k=-24.2993564441052, observability=1)
2025-11-17T13:05:48.419 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:48.419 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:48.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:48.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:48.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:48.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:48.421 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:05:48.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:05:48.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:05:48.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:05:48.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:05:48.422 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:05:48.422 [INFO] [ThreadPoolExecutor-2823_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:05:48.422 [INFO] [ThreadPoolExecutor-2823_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Status age = 18.035897731781006s
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:04.392 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:04.393 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:04.393 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:04.394 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:04.395 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 17;19.2529918;-24.256429;50.108317;89.992905;50.08601;90.12017;16.27274;2460996.96255087;13.10120139;1.3;_
2025-11-17T13:06:04.395 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response 17;19.2529918;-24.256429;50.108317;89.992905;50.08601;90.12017;16.27274;2460996.96255087;13.10120139;1.3;_
2025-11-17T13:06:04.395 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:04.395 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:04.395 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:04.396 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:04.396 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:04.396 [INFO] [Thread-67845 (handle)] [driver.py] [get_status()] Telra = 19.2529918, teldec = -24.256429
2025-11-17T13:06:04.396 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2529918 -24.256429
2025-11-17T13:06:04.396 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2529918 -24.256429
2025-11-17T13:06:04.396 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2529918 -24.256429
2025-11-17T13:06:04.397 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 17;19.2529918;-24.256429;50.108317;89.992905;50.08601;90.12017;16.27274;2460996.96255089;13.10120139;1.3;_19.2269085029289 -24.299535777946
2025-11-17T13:06:04.397 [INFO] [Thread-67845 (handle)] [driver.py] [get_status()] ra_j2k = 19.2269085029289     dec_j2k = -24.299535777946
2025-11-17T13:06:04.397 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:04.397 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:04.397 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:04.398 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 140;0.104656029861897;171.162357330327;_
2025-11-17T13:06:04.398 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response 140;0.104656029861897;171.162357330327;_
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:04.399 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:04.400 [DEBUG] [Thread-67845 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:04.400 [DEBUG] [Thread-67845 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:04.400 [DEBUG] [Thread-67845 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34073)
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:04.406 [DEBUG] [Thread-67845 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:04.413 [DEBUG] [Thread-67845 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:04.414 [DEBUG] [Thread-67845 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:04.414 [DEBUG] [Thread-67845 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:04.414 [INFO] [Thread-67845 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96255087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656029861897, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992905, telescope_ra=19.2529918, telescope_dec=-24.256429, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.27274, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2269085029289, telescope_dec_j2k=-24.299535777946, observability=1)
2025-11-17T13:06:09.295 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.295 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.295 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:09.295 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.296 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.297 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.298 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:09.298 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:09.298 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:09.298 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:09.299 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:06:09.300 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:09.301 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Park
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:06:09.302 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:06:09.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 29;19.2543549;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27411;2460996.96260767;13.10256083;1.3;_Park Command Successful
2025-11-17T13:06:10.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:06:10.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:06:10.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:06:10.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:06:10.303 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:06:11.304 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:06:11.304 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:06:11.304 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:06:11.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:06:11.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Status age = 7.379172086715698s
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:11.793 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:11.794 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:11.795 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 17;19.2550555;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27481;2460996.96263652;13.10325944;1.3;_
2025-11-17T13:06:11.795 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response 17;19.2550555;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27481;2460996.96263652;13.10325944;1.3;_
2025-11-17T13:06:11.795 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:11.795 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:11.795 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:11.796 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:11.796 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:11.796 [INFO] [Thread-67846 (handle)] [driver.py] [get_status()] Telra = 19.2550555, teldec = -24.256429
2025-11-17T13:06:11.796 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2550555 -24.256429
2025-11-17T13:06:11.796 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2550555 -24.256429
2025-11-17T13:06:11.796 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2550555 -24.256429
2025-11-17T13:06:11.797 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 17;19.2550555;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27481;2460996.96263654;13.10325944;1.3;_19.2289727348328 -24.2996095122683
2025-11-17T13:06:11.797 [INFO] [Thread-67846 (handle)] [driver.py] [get_status()] ra_j2k = 19.2289727348328     dec_j2k = -24.2996095122683
2025-11-17T13:06:11.797 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:11.797 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:11.797 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 140;0.104656150197726;171.162357330327;_
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response 140;0.104656150197726;171.162357330327;_
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:11.798 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:11.799 [DEBUG] [Thread-67846 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50587)
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:11.802 [DEBUG] [Thread-67846 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:11.809 [DEBUG] [Thread-67846 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:11.810 [DEBUG] [Thread-67846 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:11.810 [INFO] [Thread-67846 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96263652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656150197726, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992904, telescope_ra=19.2550555, telescope_dec=-24.256429, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.27481, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2289727348328, telescope_dec_j2k=-24.2996095122683, observability=1)
2025-11-17T13:06:12.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:06:12.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:06:12.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:06:12.305 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:06:12.306 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:06:13.306 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:06:13.306 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:06:13.306 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:13.307 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:06:13.308 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:06:13.309 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:14.309 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:14.309 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:06:14.310 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:06:14.311 [DEBUG] [ThreadPoolExecutor-2822_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:14.311 [INFO] [ThreadPoolExecutor-2822_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1338717937469482s
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2559231;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27568;2460996.96267297;13.10412472;1.3;_
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2559231;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27568;2460996.96267297;13.10412472;1.3;_
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:14.947 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2559231, teldec = -24.256429
2025-11-17T13:06:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2559231 -24.256429
2025-11-17T13:06:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2559231 -24.256429
2025-11-17T13:06:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2559231 -24.256429
2025-11-17T13:06:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2559231;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27568;2460996.962673;13.10412472;1.3;_19.2298405587907 -24.2996405072563
2025-11-17T13:06:14.948 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2298405587907     dec_j2k = -24.2996405072563
2025-11-17T13:06:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104655909526069;171.162351965909;_
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104655909526069;171.162351965909;_
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53413)
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:14.956 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:14.963 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96267297, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655909526069, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992904, telescope_ra=19.2559231, telescope_dec=-24.256429, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.27568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2298405587907, telescope_dec_j2k=-24.2996405072563, observability=1)
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Status age = 7.504469871520996s
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:22.468 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:22.469 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:22.470 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 17;19.2580077;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27776;2460996.96276007;13.10620361;1.3;_
2025-11-17T13:06:22.470 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response 17;19.2580077;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27776;2460996.96276007;13.10620361;1.3;_
2025-11-17T13:06:22.470 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:22.470 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:22.470 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:22.471 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:22.471 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:22.471 [INFO] [Thread-67847 (handle)] [driver.py] [get_status()] Telra = 19.2580077, teldec = -24.256429
2025-11-17T13:06:22.471 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2580077 -24.256429
2025-11-17T13:06:22.471 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2580077 -24.256429
2025-11-17T13:06:22.472 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2580077 -24.256429
2025-11-17T13:06:22.472 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 17;19.2580077;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27776;2460996.96276009;13.10620361;1.3;_19.2319256977221 -24.2997149706828
2025-11-17T13:06:22.472 [INFO] [Thread-67847 (handle)] [driver.py] [get_status()] ra_j2k = 19.2319256977221     dec_j2k = -24.2997149706828
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162362694745;_
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162362694745;_
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:22.473 [DEBUG] [Thread-67847 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:22.474 [DEBUG] [Thread-67847 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57635)
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:22.481 [DEBUG] [Thread-67847 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:22.488 [DEBUG] [Thread-67847 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:22.489 [DEBUG] [Thread-67847 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:22.489 [INFO] [Thread-67847 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96276007, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992904, telescope_ra=19.2580077, telescope_dec=-24.256429, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.27776, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2319256977221, telescope_dec_j2k=-24.2997149706828, observability=1)
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.78814435005188s
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:28.277 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:28.278 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:28.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2596241;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27938;2460996.9628273;13.10781556;1.3;_
2025-11-17T13:06:28.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.2596241;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27938;2460996.9628273;13.10781556;1.3;_
2025-11-17T13:06:28.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:28.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:28.279 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:28.280 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:28.280 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:28.280 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.2596241, teldec = -24.256429
2025-11-17T13:06:28.280 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.2596241 -24.256429
2025-11-17T13:06:28.280 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.2596241 -24.256429
2025-11-17T13:06:28.280 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2596241 -24.256429
2025-11-17T13:06:28.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2596241;-24.256429;50.108317;89.992904;50.08601;90.12017;16.27938;2460996.96282733;13.10781556;1.3;_19.23354251641 -24.2997727010458
2025-11-17T13:06:28.281 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.23354251641     dec_j2k = -24.2997727010458
2025-11-17T13:06:28.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:28.281 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104656230421611;171.162357330327;_
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104656230421611;171.162357330327;_
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:28.282 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:28.283 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:28.283 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:28.284 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45203)
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:28.285 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:28.292 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:28.292 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:28.293 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:06:28.293 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9628273, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656230421611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992904, telescope_ra=19.2596241, telescope_dec=-24.256429, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.27938, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.23354251641, telescope_dec_j2k=-24.2997727010458, observability=1)
2025-11-17T13:06:28.293 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07107639312744 seconds ago
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.144006252288818s
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:40.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:40.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:40.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2630253;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28278;2460996.96296804;13.1112075;1.3;_
2025-11-17T13:06:40.439 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.2630253;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28278;2460996.96296804;13.1112075;1.3;_
2025-11-17T13:06:40.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:40.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:40.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:40.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:40.440 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:40.440 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.2630253, teldec = -24.256428
2025-11-17T13:06:40.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2630253 -24.256428
2025-11-17T13:06:40.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2630253 -24.256428
2025-11-17T13:06:40.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2630253 -24.256428
2025-11-17T13:06:40.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2630253;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28278;2460996.96296807;13.1112075;1.3;_19.2369445998789 -24.2998931516879
2025-11-17T13:06:40.441 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.2369445998789     dec_j2k = -24.2998931516879
2025-11-17T13:06:40.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:40.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:40.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655668854412;171.162351965909;_
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655668854412;171.162351965909;_
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:40.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:40.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:40.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:40.444 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:40.444 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:40.447 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41429)
2025-11-17T13:06:40.447 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:40.447 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:40.447 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:40.447 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:40.448 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:40.455 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:40.455 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96296804, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655668854412, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992903, telescope_ra=19.2630253, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.28278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2369445998789, telescope_dec_j2k=-24.2998931516879, observability=1)
2025-11-17T13:06:40.570 [DEBUG] [Thread-67848 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:40.570 [DEBUG] [Thread-67848 (handle)] [server.py] [get_status()] Status age = 0.11495733261108398s
2025-11-17T13:06:40.570 [DEBUG] [Thread-67848 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.11495733261108398
2025-11-17T13:06:43.304 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:06:43
2025-11-17T13:06:43.304 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:43.304 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.8494303226470947s
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:43.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:43.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:43.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2638091;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28356;2460996.96300124;13.11198917;1.3;_
2025-11-17T13:06:43.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.2638091;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28356;2460996.96300124;13.11198917;1.3;_
2025-11-17T13:06:43.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:43.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:43.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:43.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:43.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:43.308 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.2638091, teldec = -24.256428
2025-11-17T13:06:43.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2638091 -24.256428
2025-11-17T13:06:43.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2638091 -24.256428
2025-11-17T13:06:43.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2638091 -24.256428
2025-11-17T13:06:43.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2638091;-24.256428;50.108317;89.992903;50.08601;90.12017;16.28356;2460996.96300126;13.11198917;1.3;_19.2377286038672 -24.2999211349925
2025-11-17T13:06:43.309 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.2377286038672     dec_j2k = -24.2999211349925
2025-11-17T13:06:43.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:43.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:43.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104656190309669;171.162362694745;_
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104656190309669;171.162362694745;_
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:43.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:43.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:43.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:43.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:43.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:43.314 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37333)
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:43.315 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:43.316 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:43.316 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96300124, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656190309669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108317, telescope_az=89.992903, telescope_ra=19.2638091, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.28356, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:05:48.419122', telescope_ra_j2k=19.2377286038672, telescope_dec_j2k=-24.2999211349925, observability=1)
2025-11-17T13:06:48.561 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:48.561 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:48.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:48.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:48.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:48.563 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:48.563 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:48.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:48.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:48.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:48.564 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:06:48.564 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:48.564 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:48.564 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:48.564 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:48.564 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:06:48.565 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:06:48.566 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:49.566 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:49.566 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:49.566 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:49.566 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:49.566 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:49.567 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:06:49.568 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:49.569 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:49.570 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:49.570 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:49.570 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:49.570 [DEBUG] [ThreadPoolExecutor-2824_0] [payload.py] [to_registers()] [0]
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49979)
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:49.572 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:49.579 [DEBUG] [ThreadPoolExecutor-2824_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:58.637 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:06:58.637 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Status age = 15.321460008621216s
2025-11-17T13:06:58.637 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:06:58.637 [DEBUG] [Thread-67849 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:06:58.638 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 17;19.2680947;-24.256428;50.108316;89.992903;50.08601;90.12017;16.28785;2460996.96317869;13.11626306;1.3;_
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response 17;19.2680947;-24.256428;50.108316;89.992903;50.08601;90.12017;16.28785;2460996.96317869;13.11626306;1.3;_
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:06:58.639 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:06:58.640 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:58.640 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:06:58.640 [INFO] [Thread-67849 (handle)] [driver.py] [get_status()] Telra = 19.2680947, teldec = -24.256428
2025-11-17T13:06:58.640 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2680947 -24.256428
2025-11-17T13:06:58.640 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2680947 -24.256428
2025-11-17T13:06:58.640 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2680947 -24.256428
2025-11-17T13:06:58.641 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 17;19.2680947;-24.256428;50.108316;89.992903;50.08601;90.12017;16.28785;2460996.96317872;13.11626306;1.3;_19.242015322123 -24.3000741084126
2025-11-17T13:06:58.641 [INFO] [Thread-67849 (handle)] [driver.py] [get_status()] ra_j2k = 19.242015322123     dec_j2k = -24.3000741084126
2025-11-17T13:06:58.641 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:06:58.641 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:06:58.641 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:06:58.642 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 140;0.104656110085783;171.162362694745;_
2025-11-17T13:06:58.642 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response 140;0.104656110085783;171.162362694745;_
2025-11-17T13:06:58.643 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:06:58.643 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:58.643 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:58.643 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:06:58.644 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:06:58.645 [DEBUG] [Thread-67849 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:58.645 [DEBUG] [Thread-67849 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:06:58.645 [DEBUG] [Thread-67849 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40059)
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:06:58.648 [DEBUG] [Thread-67849 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:06:58.655 [DEBUG] [Thread-67849 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:06:58.655 [INFO] [Thread-67849 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96317869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656110085783, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992903, telescope_ra=19.2680947, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.28785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.242015322123, telescope_dec_j2k=-24.3000741084126, observability=1)
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Status age = 13.189842224121094s
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:11.845 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:11.846 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:11.847 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:11.847 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 17;19.2717759;-24.256428;50.108316;89.992903;50.08601;90.12017;16.29153;2460996.96333156;13.11993417;1.3;_
2025-11-17T13:07:11.847 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response 17;19.2717759;-24.256428;50.108316;89.992903;50.08601;90.12017;16.29153;2460996.96333156;13.11993417;1.3;_
2025-11-17T13:07:11.847 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:11.848 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:11.848 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:11.848 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:11.849 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:11.849 [INFO] [Thread-67850 (handle)] [driver.py] [get_status()] Telra = 19.2717759, teldec = -24.256428
2025-11-17T13:07:11.849 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2717759 -24.256428
2025-11-17T13:07:11.849 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2717759 -24.256428
2025-11-17T13:07:11.849 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2717759 -24.256428
2025-11-17T13:07:11.850 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 17;19.2717759;-24.256428;50.108316;89.992903;50.08601;90.12017;16.29153;2460996.9633316;13.11993417;1.3;_19.2456974865908 -24.3002054653098
2025-11-17T13:07:11.850 [INFO] [Thread-67850 (handle)] [driver.py] [get_status()] ra_j2k = 19.2456974865908     dec_j2k = -24.3002054653098
2025-11-17T13:07:11.850 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:11.850 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:11.850 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 140;0.104656390869383;171.162357330327;_
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response 140;0.104656390869383;171.162357330327;_
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:11.851 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:11.852 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:11.853 [DEBUG] [Thread-67850 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:11.853 [DEBUG] [Thread-67850 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:11.853 [DEBUG] [Thread-67850 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37719)
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:11.859 [DEBUG] [Thread-67850 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:11.866 [DEBUG] [Thread-67850 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:11.866 [INFO] [Thread-67850 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96333156, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656390869383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992903, telescope_ra=19.2717759, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29153, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2456974865908, telescope_dec_j2k=-24.3002054653098, observability=1)
2025-11-17T13:07:14.579 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:14.579 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:14.579 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:14.580 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:14.580 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:14.581 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:07:14.582 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:07:14.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.0855295658111572s
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2726354;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29239;2460996.96336752;13.12079139;1.3;_
2025-11-17T13:07:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2726354;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29239;2460996.96336752;13.12079139;1.3;_
2025-11-17T13:07:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:14.955 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2726354, teldec = -24.256428
2025-11-17T13:07:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2726354 -24.256428
2025-11-17T13:07:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2726354 -24.256428
2025-11-17T13:07:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2726354 -24.256428
2025-11-17T13:07:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2726354;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29239;2460996.96336755;13.12079139;1.3;_19.2465572122998 -24.300236129312
2025-11-17T13:07:14.956 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2465572122998     dec_j2k = -24.300236129312
2025-11-17T13:07:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10465635075744;171.162351965909;_
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10465635075744;171.162351965909;_
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:07:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:07:14.964 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54333)
2025-11-17T13:07:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:14.965 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:14.972 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96336752, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465635075744, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992902, telescope_ra=19.2726354, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29239, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2465572122998, telescope_dec_j2k=-24.300236129312, observability=1)
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Status age = 1.7323651313781738s
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:16.705 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:16.706 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:16.707 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 17;19.273112;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29286;2460996.96338781;13.12126667;1.3;_
2025-11-17T13:07:16.707 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response 17;19.273112;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29286;2460996.96338781;13.12126667;1.3;_
2025-11-17T13:07:16.707 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:16.707 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:16.707 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:16.708 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:16.708 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:16.708 [INFO] [Thread-67851 (handle)] [driver.py] [get_status()] Telra = 19.273112, teldec = -24.256428
2025-11-17T13:07:16.708 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] UnCookCoordinates 19.273112 -24.256428
2025-11-17T13:07:16.708 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.273112 -24.256428
2025-11-17T13:07:16.708 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.273112 -24.256428
2025-11-17T13:07:16.709 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 17;19.273112;-24.256428;50.108316;89.992902;50.08601;90.12017;16.29286;2460996.96338784;13.12126667;1.3;_19.2470339375425 -24.3002531318309
2025-11-17T13:07:16.709 [INFO] [Thread-67851 (handle)] [driver.py] [get_status()] ra_j2k = 19.2470339375425     dec_j2k = -24.3002531318309
2025-11-17T13:07:16.709 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:16.709 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:16.709 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 140;0.104655829302183;171.162368059163;_
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response 140;0.104655829302183;171.162368059163;_
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:16.710 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:16.711 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:16.712 [DEBUG] [Thread-67851 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:16.712 [DEBUG] [Thread-67851 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:16.712 [DEBUG] [Thread-67851 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43569)
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:16.715 [DEBUG] [Thread-67851 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:16.722 [DEBUG] [Thread-67851 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:16.723 [DEBUG] [Thread-67851 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:16.723 [DEBUG] [Thread-67851 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:16.723 [DEBUG] [Thread-67851 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:16.723 [INFO] [Thread-67851 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96338781, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655829302183, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992902, telescope_ra=19.273112, telescope_dec=-24.256428, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29286, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2470339375425, telescope_dec_j2k=-24.3002531318309, observability=1)
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.62994647026062s
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:28.353 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:28.354 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:28.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.276368;-24.256421;50.108316;89.992891;50.08601;90.12016;16.29612;2460996.96352263;13.12451389;1.3;_
2025-11-17T13:07:28.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.276368;-24.256421;50.108316;89.992891;50.08601;90.12016;16.29612;2460996.96352263;13.12451389;1.3;_
2025-11-17T13:07:28.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:28.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:28.355 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:28.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:28.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:28.356 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.276368, teldec = -24.256421
2025-11-17T13:07:28.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.276368 -24.256421
2025-11-17T13:07:28.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.276368 -24.256421
2025-11-17T13:07:28.356 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.276368 -24.256421
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.276368;-24.256421;50.108316;89.992891;50.08601;90.12016;16.29612;2460996.96352265;13.12451389;1.3;_19.2502907961251 -24.3003622711845
2025-11-17T13:07:28.357 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.2502907961251     dec_j2k = -24.3003622711845
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104655588630527;171.162357330327;_
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104655588630527;171.162357330327;_
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:28.357 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:28.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:28.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:28.358 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:28.359 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58369)
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:28.366 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:28.373 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:07:28.373 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96352263, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655588630527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992891, telescope_ra=19.276368, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2502907961251, telescope_dec_j2k=-24.3003622711845, observability=1)
2025-11-17T13:07:28.373 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06920266151428 seconds ago
2025-11-17T13:07:34.826 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:34.826 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Status age = 6.453050136566162s
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:34.827 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 17;19.2781831;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29793;2460996.96359755;13.12632389;1.3;_
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response 17;19.2781831;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29793;2460996.96359755;13.12632389;1.3;_
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:34.828 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:34.829 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:34.829 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:34.829 [INFO] [Thread-67852 (handle)] [driver.py] [get_status()] Telra = 19.2781831, teldec = -24.256427
2025-11-17T13:07:34.829 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2781831 -24.256427
2025-11-17T13:07:34.829 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2781831 -24.256427
2025-11-17T13:07:34.830 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2781831 -24.256427
2025-11-17T13:07:34.831 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 17;19.2781831;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29793;2460996.96359757;13.12632389;1.3;_19.252106374094 -24.3004330003132
2025-11-17T13:07:34.831 [INFO] [Thread-67852 (handle)] [driver.py] [get_status()] ra_j2k = 19.252106374094     dec_j2k = -24.3004330003132
2025-11-17T13:07:34.831 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:34.831 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:34.831 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:34.831 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162357330327;_
2025-11-17T13:07:34.832 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162357330327;_
2025-11-17T13:07:34.832 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:34.832 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:34.832 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:34.832 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:34.833 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:34.834 [DEBUG] [Thread-67852 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:34.834 [DEBUG] [Thread-67852 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:34.834 [DEBUG] [Thread-67852 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50313)
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:34.836 [DEBUG] [Thread-67852 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:34.843 [DEBUG] [Thread-67852 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:34.843 [INFO] [Thread-67852 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96359755, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992902, telescope_ra=19.2781831, telescope_dec=-24.256427, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.252106374094, telescope_dec_j2k=-24.3004330003132, observability=1)
2025-11-17T13:07:39.543 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:39.543 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.7002012729644775s
2025-11-17T13:07:39.543 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:39.544 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:39.545 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:39.545 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:39.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:39.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:39.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:39.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2794917;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29924;2460996.96365215;13.12762889;1.3;_
2025-11-17T13:07:39.546 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.2794917;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29924;2460996.96365215;13.12762889;1.3;_
2025-11-17T13:07:39.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:39.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:39.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:39.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:39.547 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:39.547 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.2794917, teldec = -24.256427
2025-11-17T13:07:39.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2794917 -24.256427
2025-11-17T13:07:39.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2794917 -24.256427
2025-11-17T13:07:39.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2794917 -24.256427
2025-11-17T13:07:39.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2794917;-24.256427;50.108316;89.992902;50.08601;90.12017;16.29924;2460996.96365218;13.12762889;1.3;_19.2534153200578 -24.3004796612745
2025-11-17T13:07:39.548 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.2534153200578     dec_j2k = -24.3004796612745
2025-11-17T13:07:39.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:39.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:39.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104654986951384;171.162351965909;_
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104654986951384;171.162351965909;_
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:39.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:39.550 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:39.550 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:39.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:39.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:39.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:39.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:39.551 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:39.551 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42855)
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:39.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:39.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:39.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:39.559 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:39.560 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:39.560 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96365215, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654986951384, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992902, telescope_ra=19.2794917, telescope_dec=-24.256427, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.29924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2534153200578, telescope_dec_j2k=-24.3004796612745, observability=1)
2025-11-17T13:07:43.377 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:07:43
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.817162275314331s
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:43.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:43.378 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2805554;-24.256427;50.108316;89.992902;50.08601;90.12017;16.30031;2460996.96369652;13.12868972;1.3;_
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.2805554;-24.256427;50.108316;89.992902;50.08601;90.12017;16.30031;2460996.96369652;13.12868972;1.3;_
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:43.379 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:43.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:43.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:43.380 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.2805554, teldec = -24.256427
2025-11-17T13:07:43.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2805554 -24.256427
2025-11-17T13:07:43.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2805554 -24.256427
2025-11-17T13:07:43.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2805554 -24.256427
2025-11-17T13:07:43.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2805554;-24.256427;50.108316;89.992902;50.08601;90.12017;16.30031;2460996.96369654;13.12868972;1.3;_19.2544793016128 -24.3005175860947
2025-11-17T13:07:43.382 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.2544793016128     dec_j2k = -24.3005175860947
2025-11-17T13:07:43.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:43.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:43.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:43.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:07:43.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:07:43.383 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:43.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:43.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:43.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:43.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:43.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:43.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:07:43.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56743)
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:43.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:43.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:43.395 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:43.395 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:43.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:43.396 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96369652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108316, telescope_az=89.992902, telescope_ra=19.2805554, telescope_dec=-24.256427, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.30031, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:06:48.560670', telescope_ra_j2k=19.2544793016128, telescope_dec_j2k=-24.3005175860947, observability=1)
2025-11-17T13:07:48.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:48.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:48.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:48.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:48.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:48.705 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:48.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:48.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:48.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:48.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:48.706 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:07:48.706 [INFO] [ThreadPoolExecutor-2825_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:07:48.706 [INFO] [ThreadPoolExecutor-2825_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Status age = 9.494466304779053s
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:07:52.890 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:07:52.891 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:07:52.891 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:07:52.891 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:07:52.892 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:07:52.893 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 17;19.283199;-24.256427;50.108315;89.992901;50.08601;90.12017;16.30295;2460996.96380663;13.13132611;1.3;_
2025-11-17T13:07:52.893 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response 17;19.283199;-24.256427;50.108315;89.992901;50.08601;90.12017;16.30295;2460996.96380663;13.13132611;1.3;_
2025-11-17T13:07:52.893 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:07:52.893 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:07:52.893 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:07:52.894 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:52.894 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:07:52.894 [INFO] [Thread-67853 (handle)] [driver.py] [get_status()] Telra = 19.283199, teldec = -24.256427
2025-11-17T13:07:52.894 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] UnCookCoordinates 19.283199 -24.256427
2025-11-17T13:07:52.894 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.283199 -24.256427
2025-11-17T13:07:52.894 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.283199 -24.256427
2025-11-17T13:07:52.895 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 17;19.283199;-24.256427;50.108315;89.992901;50.08601;90.12017;16.30295;2460996.96380666;13.13132611;1.3;_19.2571236026666 -24.3006118257653
2025-11-17T13:07:52.895 [INFO] [Thread-67853 (handle)] [driver.py] [get_status()] ra_j2k = 19.2571236026666     dec_j2k = -24.3006118257653
2025-11-17T13:07:52.895 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:07:52.895 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:07:52.895 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 140;0.104656430981325;171.162351965909;_
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response 140;0.104656430981325;171.162351965909;_
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:52.896 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:07:52.897 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:07:52.898 [DEBUG] [Thread-67853 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:52.898 [DEBUG] [Thread-67853 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:07:52.898 [DEBUG] [Thread-67853 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:07:52.901 [DEBUG] [Thread-67853 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38089)
2025-11-17T13:07:52.902 [DEBUG] [Thread-67853 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:07:52.902 [DEBUG] [Thread-67853 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:07:52.902 [DEBUG] [Thread-67853 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:07:52.902 [DEBUG] [Thread-67853 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:07:52.902 [DEBUG] [Thread-67853 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:07:52.910 [DEBUG] [Thread-67853 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:07:52.910 [INFO] [Thread-67853 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96380663, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656430981325, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.992901, telescope_ra=19.283199, telescope_dec=-24.256427, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.30295, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2571236026666, telescope_dec_j2k=-24.3006118257653, observability=1)
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.583 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:08:09.584 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:09.585 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:09.586 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:08:09.587 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:09.588 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Park
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:08:09.589 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:08:09.590 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 29;19.2878526;-24.256426;50.108315;89.992901;50.08601;90.12017;16.3076;2460996.96399988;13.13596694;1.3;_Park Command Successful
2025-11-17T13:08:10.590 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:08:10.590 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:08:10.590 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:08:10.591 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:08:10.591 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Status age = 18.046018838882446s
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:10.956 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:10.957 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:10.958 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 17;19.2882439;-24.256426;50.108315;89.992901;50.08601;90.12017;16.308;2460996.96401572;13.13635722;1.3;_
2025-11-17T13:08:10.958 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response 17;19.2882439;-24.256426;50.108315;89.992901;50.08601;90.12017;16.308;2460996.96401572;13.13635722;1.3;_
2025-11-17T13:08:10.958 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:10.958 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:10.958 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:10.959 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:10.959 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:10.959 [INFO] [Thread-67854 (handle)] [driver.py] [get_status()] Telra = 19.2882439, teldec = -24.256426
2025-11-17T13:08:10.959 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2882439 -24.256426
2025-11-17T13:08:10.959 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2882439 -24.256426
2025-11-17T13:08:10.959 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2882439 -24.256426
2025-11-17T13:08:10.960 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 17;19.2882439;-24.256426;50.108315;89.992901;50.08601;90.12017;16.308;2460996.96401574;13.13635722;1.3;_19.2621698458889 -24.3007906104945
2025-11-17T13:08:10.960 [INFO] [Thread-67854 (handle)] [driver.py] [get_status()] ra_j2k = 19.2621698458889     dec_j2k = -24.3007906104945
2025-11-17T13:08:10.960 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:10.960 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:10.960 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:10.962 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:10.963 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:10.964 [DEBUG] [Thread-67854 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:10.964 [DEBUG] [Thread-67854 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:10.964 [DEBUG] [Thread-67854 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50861)
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:10.966 [DEBUG] [Thread-67854 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:10.973 [DEBUG] [Thread-67854 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:10.973 [DEBUG] [Thread-67854 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:10.973 [DEBUG] [Thread-67854 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:10.974 [DEBUG] [Thread-67854 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:08:10.974 [INFO] [Thread-67854 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96401572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655267734984, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.992901, telescope_ra=19.2882439, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.308, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2621698458889, telescope_dec_j2k=-24.3007906104945, observability=1)
2025-11-17T13:08:11.591 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:08:11.591 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:08:11.591 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:08:11.592 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:08:11.592 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:08:11.899 [DEBUG] [Thread-67855 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:11.899 [DEBUG] [Thread-67855 (handle)] [server.py] [get_status()] Status age = 0.9255588054656982s
2025-11-17T13:08:11.899 [DEBUG] [Thread-67855 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9255588054656982
2025-11-17T13:08:12.592 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:08:12.593 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:08:12.593 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:08:12.594 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:08:12.594 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:08:13.594 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:08:13.594 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:08:13.594 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:08:13.596 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:13.597 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:08:13.598 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:08:13.600 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:14.600 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:14.600 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:14.600 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:14.600 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:14.601 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:08:14.602 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:08:14.603 [DEBUG] [ThreadPoolExecutor-2824_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:14.603 [INFO] [ThreadPoolExecutor-2824_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.984133243560791s
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2893559;-24.256426;50.108315;89.992901;50.08601;90.12017;16.30911;2460996.96406204;13.13746611;1.3;_
2025-11-17T13:08:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.2893559;-24.256426;50.108315;89.992901;50.08601;90.12017;16.30911;2460996.96406204;13.13746611;1.3;_
2025-11-17T13:08:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:14.961 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.2893559, teldec = -24.256426
2025-11-17T13:08:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2893559 -24.256426
2025-11-17T13:08:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2893559 -24.256426
2025-11-17T13:08:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2893559 -24.256426
2025-11-17T13:08:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.2893559;-24.256426;50.108315;89.992901;50.08601;90.12017;16.30911;2460996.96406206;13.13746611;1.3;_19.2632821428348 -24.3008302286301
2025-11-17T13:08:14.962 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2632821428348     dec_j2k = -24.3008302286301
2025-11-17T13:08:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10465506717527;171.162351965909;_
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10465506717527;171.162351965909;_
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59531)
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:14.976 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:14.976 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:14.977 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:08:14.977 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96406204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465506717527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.992901, telescope_ra=19.2893559, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.30911, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2632821428348, telescope_dec_j2k=-24.3008302286301, observability=1)
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.456380367279053s
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:28.433 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:28.434 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:28.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2930905;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31284;2460996.964218;13.14119056;1.3;_
2025-11-17T13:08:28.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.2930905;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31284;2460996.964218;13.14119056;1.3;_
2025-11-17T13:08:28.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:28.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:28.435 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:28.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:28.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:28.436 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.2930905, teldec = -24.256426
2025-11-17T13:08:28.436 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.2930905 -24.256426
2025-11-17T13:08:28.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.2930905 -24.256426
2025-11-17T13:08:28.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2930905 -24.256426
2025-11-17T13:08:28.437 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.2930905;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31284;2460996.96421802;13.14119056;1.3;_19.2670177425296 -24.3009632574898
2025-11-17T13:08:28.438 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.2670177425296     dec_j2k = -24.3009632574898
2025-11-17T13:08:28.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:28.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:28.438 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104655267734984;171.162362694745;_
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104655267734984;171.162362694745;_
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:28.439 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:28.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:28.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:28.440 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34273)
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:28.446 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:28.453 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:28.454 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:28.454 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:08:28.454 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.964218, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655267734984, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.9929, telescope_ra=19.2930905, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.31284, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2670177425296, telescope_dec_j2k=-24.3009632574898, observability=1)
2025-11-17T13:08:28.454 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07688498497009 seconds ago
2025-11-17T13:08:29.087 [DEBUG] [Thread-67856 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:29.087 [DEBUG] [Thread-67856 (handle)] [server.py] [get_status()] Status age = 0.6337177753448486s
2025-11-17T13:08:29.087 [DEBUG] [Thread-67856 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6337177753448486
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.199203491210938s
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:38.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:38.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:38.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2959564;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31571;2460996.96433628;13.14404861;1.3;_
2025-11-17T13:08:38.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.2959564;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31571;2460996.96433628;13.14404861;1.3;_
2025-11-17T13:08:38.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:38.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:38.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:38.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:38.656 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:38.656 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.2959564, teldec = -24.256426
2025-11-17T13:08:38.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2959564 -24.256426
2025-11-17T13:08:38.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2959564 -24.256426
2025-11-17T13:08:38.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2959564 -24.256426
2025-11-17T13:08:38.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.2959564;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31571;2460996.96433631;13.14404861;1.3;_19.2698844122112 -24.3010653146314
2025-11-17T13:08:38.658 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.2698844122112     dec_j2k = -24.3010653146314
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655508406641;171.162362694745;_
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655508406641;171.162362694745;_
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:38.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:38.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:38.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:38.659 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:38.660 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:38.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:38.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:38.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:38.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:38.661 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:38.661 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35201)
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:38.663 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:38.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:38.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:38.671 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:08:38.671 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96433628, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655508406641, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.9929, telescope_ra=19.2959564, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.31571, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2698844122112, telescope_dec_j2k=-24.3010653146314, observability=1)
2025-11-17T13:08:43.458 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:08:43
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.786861896514893s
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:43.458 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:43.459 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:43.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2973009;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31705;2460996.9643919;13.14538944;1.3;_
2025-11-17T13:08:43.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.2973009;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31705;2460996.9643919;13.14538944;1.3;_
2025-11-17T13:08:43.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:43.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:43.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:43.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:43.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:43.461 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.2973009, teldec = -24.256426
2025-11-17T13:08:43.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2973009 -24.256426
2025-11-17T13:08:43.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2973009 -24.256426
2025-11-17T13:08:43.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2973009 -24.256426
2025-11-17T13:08:43.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.2973009;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31705;2460996.96439192;13.14538944;1.3;_19.2712292740527 -24.3011131850056
2025-11-17T13:08:43.463 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.2712292740527     dec_j2k = -24.3011131850056
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655428182755;171.162357330327;_
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655428182755;171.162357330327;_
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:43.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:08:43.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51657)
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:43.467 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:43.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:43.475 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:43.475 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:43.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:08:43.475 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9643919, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655428182755, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.9929, telescope_ra=19.2973009, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.31705, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.2712292740527, telescope_dec_j2k=-24.3011131850056, observability=1)
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Status age = 3.6753156185150146s
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:47.150 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:47.151 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:47.151 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:47.151 [DEBUG] [Thread-67857 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:47.151 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:08:47.151 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 17;19.2983287;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31808;2460996.96443463;13.14641444;1.3;_
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response 17;19.2983287;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31808;2460996.96443463;13.14641444;1.3;_
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:08:47.152 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:08:47.153 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:08:47.153 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:47.153 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:08:47.153 [INFO] [Thread-67857 (handle)] [driver.py] [get_status()] Telra = 19.2983287, teldec = -24.256426
2025-11-17T13:08:47.154 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] UnCookCoordinates 19.2983287 -24.256426
2025-11-17T13:08:47.154 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.2983287 -24.256426
2025-11-17T13:08:47.154 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.2983287 -24.256426
2025-11-17T13:08:47.155 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 17;19.2983287;-24.256426;50.108315;89.9929;50.08601;90.12017;16.31808;2460996.96443465;13.14641444;1.3;_19.272257350987 -24.3011497757751
2025-11-17T13:08:47.155 [INFO] [Thread-67857 (handle)] [driver.py] [get_status()] ra_j2k = 19.272257350987     dec_j2k = -24.3011497757751
2025-11-17T13:08:47.155 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:08:47.155 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:08:47.155 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:08:47.155 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:08:47.156 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:08:47.156 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:08:47.156 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:47.156 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:47.156 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:08:47.157 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:08:47.158 [DEBUG] [Thread-67857 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:47.158 [DEBUG] [Thread-67857 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:08:47.158 [DEBUG] [Thread-67857 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48347)
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:47.163 [DEBUG] [Thread-67857 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:08:47.171 [DEBUG] [Thread-67857 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:08:47.171 [INFO] [Thread-67857 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96443463, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108315, telescope_az=89.9929, telescope_ra=19.2983287, telescope_dec=-24.256426, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.31808, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:07:48.703632', telescope_ra_j2k=19.272257350987, telescope_dec_j2k=-24.3011497757751, observability=1)
2025-11-17T13:08:48.845 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:48.846 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:48.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:48.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:48.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:48.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:48.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:48.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:48.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:48.848 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:48.848 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:08:48.849 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:08:48.850 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:49.850 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:49.850 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:49.850 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:49.850 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:49.850 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:08:49.851 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:08:49.852 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:08:49.853 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:08:49.853 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:08:49.853 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:08:49.853 [DEBUG] [ThreadPoolExecutor-2826_0] [payload.py] [to_registers()] [0]
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53517)
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:08:49.860 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:08:49.867 [DEBUG] [ThreadPoolExecutor-2826_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Status age = 18.105949878692627s
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:05.277 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:05.279 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:05.280 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 17;19.3033728;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32312;2460996.96464444;13.15144472;1.3;_
2025-11-17T13:09:05.280 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response 17;19.3033728;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32312;2460996.96464444;13.15144472;1.3;_
2025-11-17T13:09:05.280 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:05.280 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:05.280 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:05.281 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:05.281 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:05.281 [INFO] [Thread-67858 (handle)] [driver.py] [get_status()] Telra = 19.3033728, teldec = -24.256425
2025-11-17T13:09:05.281 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3033728 -24.256425
2025-11-17T13:09:05.281 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3033728 -24.256425
2025-11-17T13:09:05.281 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3033728 -24.256425
2025-11-17T13:09:05.282 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 17;19.3033728;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32312;2460996.96464447;13.15144472;1.3;_19.2773028143637 -24.3013283054694
2025-11-17T13:09:05.282 [INFO] [Thread-67858 (handle)] [driver.py] [get_status()] ra_j2k = 19.2773028143637     dec_j2k = -24.3013283054694
2025-11-17T13:09:05.282 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:05.282 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:05.282 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 140;0.104654866615556;171.162357330327;_
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response 140;0.104654866615556;171.162357330327;_
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:05.283 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:05.284 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:05.285 [DEBUG] [Thread-67858 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:05.285 [DEBUG] [Thread-67858 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:05.285 [DEBUG] [Thread-67858 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57967)
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:05.292 [DEBUG] [Thread-67858 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:05.299 [DEBUG] [Thread-67858 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:05.299 [DEBUG] [Thread-67858 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:05.299 [DEBUG] [Thread-67858 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:05.299 [DEBUG] [Thread-67858 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:05.299 [DEBUG] [Thread-67858 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:05.300 [DEBUG] [Thread-67858 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:05.300 [DEBUG] [Thread-67858 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:05.300 [DEBUG] [Thread-67858 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:05.300 [DEBUG] [Thread-67858 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:05.300 [INFO] [Thread-67858 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96464444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654866615556, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992899, telescope_ra=19.3033728, telescope_dec=-24.256425, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.32312, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2773028143637, telescope_dec_j2k=-24.3013283054694, observability=1)
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Status age = 6.634086608886719s
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:11.934 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:11.935 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:11.936 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 17;19.305212;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32496;2460996.96472148;13.15327889;1.3;_
2025-11-17T13:09:11.936 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response 17;19.305212;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32496;2460996.96472148;13.15327889;1.3;_
2025-11-17T13:09:11.936 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:11.936 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:11.936 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:11.937 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:11.937 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:11.937 [INFO] [Thread-67859 (handle)] [driver.py] [get_status()] Telra = 19.305212, teldec = -24.256425
2025-11-17T13:09:11.937 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] UnCookCoordinates 19.305212 -24.256425
2025-11-17T13:09:11.937 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.305212 -24.256425
2025-11-17T13:09:11.937 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.305212 -24.256425
2025-11-17T13:09:11.938 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 17;19.305212;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32496;2460996.9647215;13.15327889;1.3;_19.2791425131026 -24.3013937473487
2025-11-17T13:09:11.938 [INFO] [Thread-67859 (handle)] [driver.py] [get_status()] ra_j2k = 19.2791425131026     dec_j2k = -24.3013937473487
2025-11-17T13:09:11.938 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:11.938 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 140;0.104654946839442;171.162351965909;_
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response 140;0.104654946839442;171.162351965909;_
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:11.939 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:11.940 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:11.941 [DEBUG] [Thread-67859 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:11.941 [DEBUG] [Thread-67859 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:11.941 [DEBUG] [Thread-67859 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52071)
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:11.944 [DEBUG] [Thread-67859 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:11.951 [DEBUG] [Thread-67859 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:11.951 [DEBUG] [Thread-67859 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:11.951 [DEBUG] [Thread-67859 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:11.951 [DEBUG] [Thread-67859 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:11.951 [DEBUG] [Thread-67859 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:11.952 [DEBUG] [Thread-67859 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:11.952 [DEBUG] [Thread-67859 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:11.952 [DEBUG] [Thread-67859 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:11.952 [DEBUG] [Thread-67859 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:11.952 [INFO] [Thread-67859 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96472148, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654946839442, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992899, telescope_ra=19.305212, telescope_dec=-24.256425, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.32496, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2791425131026, telescope_dec_j2k=-24.3013937473487, observability=1)
2025-11-17T13:09:14.867 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:14.868 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:14.869 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:09:14.870 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:09:14.871 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.9963138103485107s
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.306071;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32582;2460996.96475637;13.15413556;1.3;_
2025-11-17T13:09:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.306071;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32582;2460996.96475637;13.15413556;1.3;_
2025-11-17T13:09:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:14.951 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.306071, teldec = -24.256425
2025-11-17T13:09:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.306071 -24.256425
2025-11-17T13:09:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.306071 -24.256425
2025-11-17T13:09:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.306071 -24.256425
2025-11-17T13:09:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.306071;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32582;2460996.96475639;13.15413556;1.3;_19.2800017463481 -24.301424308564
2025-11-17T13:09:14.952 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2800017463481     dec_j2k = -24.301424308564
2025-11-17T13:09:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104655307846927;171.162357330327;_
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104655307846927;171.162357330327;_
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45875)
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:14.957 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:14.964 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96475637, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655307846927, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992899, telescope_ra=19.306071, telescope_dec=-24.256425, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.32582, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2800017463481, telescope_dec_j2k=-24.301424308564, observability=1)
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Status age = 8.382818222045898s
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:23.347 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:23.348 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:23.349 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:23.350 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 17;19.3083879;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32814;2460996.96485359;13.15644611;1.3;_
2025-11-17T13:09:23.350 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response 17;19.3083879;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32814;2460996.96485359;13.15644611;1.3;_
2025-11-17T13:09:23.350 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:23.350 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:23.350 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:23.351 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:23.351 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:23.351 [INFO] [Thread-67860 (handle)] [driver.py] [get_status()] Telra = 19.3083879, teldec = -24.256425
2025-11-17T13:09:23.351 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3083879 -24.256425
2025-11-17T13:09:23.351 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3083879 -24.256425
2025-11-17T13:09:23.351 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3083879 -24.256425
2025-11-17T13:09:23.352 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 17;19.3083879;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32814;2460996.96485361;13.15644611;1.3;_19.2823192764403 -24.3015067274187
2025-11-17T13:09:23.352 [INFO] [Thread-67860 (handle)] [driver.py] [get_status()] ra_j2k = 19.2823192764403     dec_j2k = -24.3015067274187
2025-11-17T13:09:23.352 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:23.352 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:23.352 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 140;0.10465506717527;171.162351965909;_
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response 140;0.10465506717527;171.162351965909;_
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:23.353 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:23.354 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:23.355 [DEBUG] [Thread-67860 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:23.355 [DEBUG] [Thread-67860 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:23.355 [DEBUG] [Thread-67860 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51905)
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:23.360 [DEBUG] [Thread-67860 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:23.367 [DEBUG] [Thread-67860 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:23.368 [DEBUG] [Thread-67860 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:23.368 [DEBUG] [Thread-67860 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:23.368 [DEBUG] [Thread-67860 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:23.368 [INFO] [Thread-67860 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96485359, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465506717527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992899, telescope_ra=19.3083879, telescope_dec=-24.256425, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.32814, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2823192764403, telescope_dec_j2k=-24.3015067274187, observability=1)
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.146026849746704s
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:28.514 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3098349;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32959;2460996.96491337;13.15788917;1.3;_
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3098349;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32959;2460996.96491337;13.15788917;1.3;_
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:28.515 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:28.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:28.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:28.516 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3098349, teldec = -24.256425
2025-11-17T13:09:28.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3098349 -24.256425
2025-11-17T13:09:28.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3098349 -24.256425
2025-11-17T13:09:28.516 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3098349 -24.256425
2025-11-17T13:09:28.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3098349;-24.256425;50.108314;89.992899;50.08601;90.12017;16.32959;2460996.96491339;13.15788917;1.3;_19.2837666706851 -24.3015581932248
2025-11-17T13:09:28.517 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.2837666706851     dec_j2k = -24.3015581932248
2025-11-17T13:09:28.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:28.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:28.517 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104654866615556;171.162357330327;_
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104654866615556;171.162357330327;_
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:28.518 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:28.519 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:28.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:28.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:28.520 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44077)
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:28.524 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:28.531 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:09:28.532 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96491337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654866615556, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992899, telescope_ra=19.3098349, telescope_dec=-24.256425, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.32959, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2837666706851, telescope_dec_j2k=-24.3015581932248, observability=1)
2025-11-17T13:09:28.532 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.074166774749756 seconds ago
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.234390497207642s
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:37.766 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:37.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:37.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:37.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:37.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:37.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.312423;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33217;2460996.96502045;13.16047028;1.3;_
2025-11-17T13:09:37.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.312423;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33217;2460996.96502045;13.16047028;1.3;_
2025-11-17T13:09:37.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:37.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:37.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:37.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:37.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:37.769 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.312423, teldec = -24.256424
2025-11-17T13:09:37.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.312423 -24.256424
2025-11-17T13:09:37.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.312423 -24.256424
2025-11-17T13:09:37.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.312423 -24.256424
2025-11-17T13:09:37.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.312423;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33217;2460996.96502049;13.16047028;1.3;_19.2863554774124 -24.3016492291836
2025-11-17T13:09:37.770 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.2863554774124     dec_j2k = -24.3016492291836
2025-11-17T13:09:37.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:37.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:37.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655468294698;171.162357330327;_
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655468294698;171.162357330327;_
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:37.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:37.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:37.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:37.773 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:37.773 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46569)
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:37.778 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:37.785 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:37.785 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96502045, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655468294698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992898, telescope_ra=19.312423, telescope_dec=-24.256424, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.33217, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2863554774124, telescope_dec_j2k=-24.3016492291836, observability=1)
2025-11-17T13:09:41.415 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:41.415 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Status age = 3.6301064491271973s
2025-11-17T13:09:41.415 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:41.415 [DEBUG] [Thread-67861 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:41.415 [DEBUG] [Thread-67861 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:41.416 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:41.416 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:41.416 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:41.417 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:41.418 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 17;19.3134261;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33318;2460996.96506271;13.16147056;1.3;_
2025-11-17T13:09:41.418 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response 17;19.3134261;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33318;2460996.96506271;13.16147056;1.3;_
2025-11-17T13:09:41.418 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:41.418 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:41.418 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:41.419 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:41.419 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:41.419 [INFO] [Thread-67861 (handle)] [driver.py] [get_status()] Telra = 19.3134261, teldec = -24.256424
2025-11-17T13:09:41.419 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3134261 -24.256424
2025-11-17T13:09:41.419 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3134261 -24.256424
2025-11-17T13:09:41.419 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3134261 -24.256424
2025-11-17T13:09:41.420 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 17;19.3134261;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33318;2460996.96506273;13.16147056;1.3;_19.2873588517333 -24.3016848951695
2025-11-17T13:09:41.420 [INFO] [Thread-67861 (handle)] [driver.py] [get_status()] ra_j2k = 19.2873588517333     dec_j2k = -24.3016848951695
2025-11-17T13:09:41.420 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:41.420 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:41.420 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 140;0.104654545720014;171.162357330327;_
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response 140;0.104654545720014;171.162357330327;_
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:41.421 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:41.422 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:41.423 [DEBUG] [Thread-67861 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:41.423 [DEBUG] [Thread-67861 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:41.423 [DEBUG] [Thread-67861 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:41.427 [DEBUG] [Thread-67861 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43939)
2025-11-17T13:09:41.427 [DEBUG] [Thread-67861 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:41.427 [DEBUG] [Thread-67861 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:41.427 [DEBUG] [Thread-67861 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:41.428 [DEBUG] [Thread-67861 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:41.428 [DEBUG] [Thread-67861 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:41.435 [DEBUG] [Thread-67861 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:41.435 [INFO] [Thread-67861 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96506271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654545720014, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992898, telescope_ra=19.3134261, telescope_dec=-24.256424, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.33318, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2873588517333, telescope_dec_j2k=-24.3016848951695, observability=1)
2025-11-17T13:09:43.535 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:09:43
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.0999691486358643s
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:43.535 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:43.536 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:43.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3140149;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33377;2460996.96508723;13.16205778;1.3;_
2025-11-17T13:09:43.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3140149;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33377;2460996.96508723;13.16205778;1.3;_
2025-11-17T13:09:43.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:43.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:43.537 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:43.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:43.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:43.538 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3140149, teldec = -24.256424
2025-11-17T13:09:43.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3140149 -24.256424
2025-11-17T13:09:43.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3140149 -24.256424
2025-11-17T13:09:43.538 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3140149 -24.256424
2025-11-17T13:09:43.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3140149;-24.256424;50.108314;89.992898;50.08601;90.12017;16.33377;2460996.96508726;13.16205778;1.3;_19.2879478128792 -24.3017058289888
2025-11-17T13:09:43.539 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.2879478128792     dec_j2k = -24.3017058289888
2025-11-17T13:09:43.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:43.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:43.539 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:43.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104654826503613;171.162351965909;_
2025-11-17T13:09:43.540 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104654826503613;171.162351965909;_
2025-11-17T13:09:43.540 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:43.541 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:43.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:43.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:43.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37269)
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:43.549 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:43.556 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:43.557 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:43.557 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96508723, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654826503613, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108314, telescope_az=89.992898, telescope_ra=19.3140149, telescope_dec=-24.256424, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.33377, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:08:48.845621', telescope_ra_j2k=19.2879478128792, telescope_dec_j2k=-24.3017058289888, observability=1)
2025-11-17T13:09:48.988 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:48.988 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:48.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:48.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:48.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:48.989 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:48.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:48.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:48.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:48.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:48.990 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:09:48.990 [INFO] [ThreadPoolExecutor-2827_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:09:48.990 [INFO] [ThreadPoolExecutor-2827_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:09:59.520 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:09:59.520 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Status age = 15.963728904724121s
2025-11-17T13:09:59.520 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:09:59.520 [DEBUG] [Thread-67862 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:09:59.520 [DEBUG] [Thread-67862 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:09:59.521 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:09:59.521 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:09:59.521 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:09:59.522 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:09:59.523 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 17;19.3184715;-24.256424;50.108313;89.992898;50.08601;90.12017;16.33822;2460996.96527226;13.16650222;1.3;_
2025-11-17T13:09:59.523 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response 17;19.3184715;-24.256424;50.108313;89.992898;50.08601;90.12017;16.33822;2460996.96527226;13.16650222;1.3;_
2025-11-17T13:09:59.523 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:09:59.523 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:09:59.523 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:09:59.524 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:59.524 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:09:59.524 [INFO] [Thread-67862 (handle)] [driver.py] [get_status()] Telra = 19.3184715, teldec = -24.256424
2025-11-17T13:09:59.524 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3184715 -24.256424
2025-11-17T13:09:59.524 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3184715 -24.256424
2025-11-17T13:09:59.524 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3184715 -24.256424
2025-11-17T13:09:59.525 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 17;19.3184715;-24.256424;50.108313;89.992898;50.08601;90.12017;16.33822;2460996.96527228;13.16650222;1.3;_19.2924056355813 -24.3018642421232
2025-11-17T13:09:59.525 [INFO] [Thread-67862 (handle)] [driver.py] [get_status()] ra_j2k = 19.2924056355813     dec_j2k = -24.3018642421232
2025-11-17T13:09:59.525 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:09:59.525 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:09:59.526 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 140;0.104655027063327;171.162351965909;_
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response 140;0.104655027063327;171.162351965909;_
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:59.527 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:09:59.528 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:09:59.529 [DEBUG] [Thread-67862 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:59.529 [DEBUG] [Thread-67862 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:09:59.529 [DEBUG] [Thread-67862 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44095)
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:09:59.535 [DEBUG] [Thread-67862 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:09:59.542 [DEBUG] [Thread-67862 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:09:59.543 [INFO] [Thread-67862 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96527226, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655027063327, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992898, telescope_ra=19.3184715, telescope_dec=-24.256424, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.33822, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.2924056355813, telescope_dec_j2k=-24.3018642421232, observability=1)
2025-11-17T13:10:09.871 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.871 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.871 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:09.871 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:09.871 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:10:09.872 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:09.873 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:09.874 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:10:09.875 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:09.876 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Park
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:10:09.877 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:10:09.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 29;19.3213683;-24.256424;50.108313;89.992897;50.08601;90.12017;16.34112;2460996.96539211;13.16939111;1.3;_Park Command Successful
2025-11-17T13:10:10.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:10:10.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:10:10.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:10:10.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:10:10.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:10:11.878 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:10:11.879 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:10:11.879 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:10:11.880 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:10:11.880 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Status age = 12.44270133972168s
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:11.985 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:11.986 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:11.987 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 17;19.3219572;-24.256424;50.108313;89.992897;50.08601;90.12017;16.34171;2460996.96541652;13.16997833;1.3;_
2025-11-17T13:10:11.987 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response 17;19.3219572;-24.256424;50.108313;89.992897;50.08601;90.12017;16.34171;2460996.96541652;13.16997833;1.3;_
2025-11-17T13:10:11.987 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:11.987 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:11.987 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:11.988 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:11.988 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:11.988 [INFO] [Thread-67863 (handle)] [driver.py] [get_status()] Telra = 19.3219572, teldec = -24.256424
2025-11-17T13:10:11.988 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3219572 -24.256424
2025-11-17T13:10:11.988 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3219572 -24.256424
2025-11-17T13:10:11.988 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3219572 -24.256424
2025-11-17T13:10:11.989 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 17;19.3219572;-24.256424;50.108313;89.992897;50.08601;90.12017;16.34171;2460996.96541654;13.16997833;1.3;_19.2958922955979 -24.3019881019722
2025-11-17T13:10:11.989 [INFO] [Thread-67863 (handle)] [driver.py] [get_status()] ra_j2k = 19.2958922955979     dec_j2k = -24.3019881019722
2025-11-17T13:10:11.989 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:11.989 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:11.989 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 140;0.104654425384185;171.162362694745;_
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response 140;0.104654425384185;171.162362694745;_
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:11.990 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:11.991 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:11.992 [DEBUG] [Thread-67863 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:10:11.992 [DEBUG] [Thread-67863 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:10:11.992 [DEBUG] [Thread-67863 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56855)
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:11.995 [DEBUG] [Thread-67863 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:12.002 [DEBUG] [Thread-67863 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:12.002 [INFO] [Thread-67863 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96541652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654425384185, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992897, telescope_ra=19.3219572, telescope_dec=-24.256424, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34171, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.2958922955979, telescope_dec_j2k=-24.3019881019722, observability=1)
2025-11-17T13:10:12.880 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:10:12.880 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:10:12.880 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:10:12.881 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:10:12.881 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:10:13.881 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:10:13.881 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:10:13.881 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:13.882 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:13.883 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:13.883 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:13.883 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:13.883 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:10:13.884 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:14.885 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:14.888 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:14.888 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:14.888 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:14.888 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:14.889 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:14.889 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:14.889 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:14.889 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:14.889 [DEBUG] [ThreadPoolExecutor-2826_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:14.890 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:10:14.890 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:10:14.890 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:10:14.890 [DEBUG] [ThreadPoolExecutor-2826_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:14.890 [INFO] [ThreadPoolExecutor-2826_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.949458122253418s
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3227688;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34252;2460996.96545084;13.17078778;1.3;_
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.3227688;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34252;2460996.96545084;13.17078778;1.3;_
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:14.954 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.3227688, teldec = -24.256423
2025-11-17T13:10:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3227688 -24.256423
2025-11-17T13:10:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3227688 -24.256423
2025-11-17T13:10:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3227688 -24.256423
2025-11-17T13:10:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3227688;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34252;2460996.96545087;13.17078778;1.3;_19.2967041197799 -24.3020159359187
2025-11-17T13:10:14.956 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.2967041197799     dec_j2k = -24.3020159359187
2025-11-17T13:10:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104654666055842;171.162368059163;_
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104654666055842;171.162368059163;_
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:14.959 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42217)
2025-11-17T13:10:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:14.960 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:14.967 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:14.967 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96545084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654666055842, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992897, telescope_ra=19.3227688, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34252, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.2967041197799, telescope_dec_j2k=-24.3020159359187, observability=1)
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Status age = 2.62249755859375s
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:17.590 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:17.591 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:17.592 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 17;19.3235164;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34327;2460996.96548139;13.17153333;1.3;_
2025-11-17T13:10:17.592 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response 17;19.3235164;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34327;2460996.96548139;13.17153333;1.3;_
2025-11-17T13:10:17.592 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:17.592 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:17.592 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:17.593 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:17.593 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:17.593 [INFO] [Thread-67864 (handle)] [driver.py] [get_status()] Telra = 19.3235164, teldec = -24.256423
2025-11-17T13:10:17.593 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3235164 -24.256423
2025-11-17T13:10:17.593 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3235164 -24.256423
2025-11-17T13:10:17.593 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3235164 -24.256423
2025-11-17T13:10:17.594 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 17;19.3235164;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34327;2460996.96548141;13.17153333;1.3;_19.2974519262639 -24.3020424942705
2025-11-17T13:10:17.594 [INFO] [Thread-67864 (handle)] [driver.py] [get_status()] ra_j2k = 19.2974519262639     dec_j2k = -24.3020424942705
2025-11-17T13:10:17.594 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 140;0.10465478639167;171.162362694745;_
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response 140;0.10465478639167;171.162362694745;_
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:17.595 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:17.596 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:17.596 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:17.596 [DEBUG] [Thread-67864 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:17.596 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:17.597 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:17.597 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:17.597 [DEBUG] [Thread-67864 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:17.597 [DEBUG] [Thread-67864 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:17.597 [DEBUG] [Thread-67864 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33603)
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:17.604 [DEBUG] [Thread-67864 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:17.611 [DEBUG] [Thread-67864 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:17.611 [INFO] [Thread-67864 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96548139, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465478639167, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992897, telescope_ra=19.3235164, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34327, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.2974519262639, telescope_dec_j2k=-24.3020424942705, observability=1)
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.980493307113647s
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:28.592 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:28.593 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:28.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3265843;-24.256417;50.108313;89.992886;50.08601;90.12016;16.34634;2460996.96560873;13.17459306;1.3;_
2025-11-17T13:10:28.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3265843;-24.256417;50.108313;89.992886;50.08601;90.12016;16.34634;2460996.96560873;13.17459306;1.3;_
2025-11-17T13:10:28.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:28.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:28.594 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:28.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:28.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:28.595 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3265843, teldec = -24.256417
2025-11-17T13:10:28.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3265843 -24.256417
2025-11-17T13:10:28.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3265843 -24.256417
2025-11-17T13:10:28.595 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3265843 -24.256417
2025-11-17T13:10:28.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3265843;-24.256417;50.108313;89.992886;50.08601;90.12016;16.34634;2460996.96560875;13.17459306;1.3;_19.3005206763034 -24.3021454635327
2025-11-17T13:10:28.596 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3005206763034     dec_j2k = -24.3021454635327
2025-11-17T13:10:28.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:28.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:28.596 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104654666055842;171.162362694745;_
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104654666055842;171.162362694745;_
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:28.597 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:28.598 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39051)
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:28.604 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:28.612 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:10:28.612 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96560873, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654666055842, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992886, telescope_ra=19.3265843, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34634, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.3005206763034, telescope_dec_j2k=-24.3021454635327, observability=1)
2025-11-17T13:10:28.612 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.077258825302124 seconds ago
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Status age = 7.048207998275757s
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:35.660 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:35.661 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:35.662 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 17;19.3285298;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34828;2460996.96569053;13.17653306;1.3;_
2025-11-17T13:10:35.662 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response 17;19.3285298;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34828;2460996.96569053;13.17653306;1.3;_
2025-11-17T13:10:35.662 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:35.662 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:35.662 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:35.663 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:35.663 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:35.663 [INFO] [Thread-67865 (handle)] [driver.py] [get_status()] Telra = 19.3285298, teldec = -24.256423
2025-11-17T13:10:35.663 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3285298 -24.256423
2025-11-17T13:10:35.663 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3285298 -24.256423
2025-11-17T13:10:35.663 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3285298 -24.256423
2025-11-17T13:10:35.664 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 17;19.3285298;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34828;2460996.96569056;13.17653306;1.3;_19.3024667147897 -24.3022205503965
2025-11-17T13:10:35.664 [INFO] [Thread-67865 (handle)] [driver.py] [get_status()] ra_j2k = 19.3024667147897     dec_j2k = -24.3022205503965
2025-11-17T13:10:35.664 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:35.664 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:35.664 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 140;0.104653984152814;171.162357330327;_
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response 140;0.104653984152814;171.162357330327;_
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:35.665 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:35.666 [DEBUG] [Thread-67865 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49111)
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:35.670 [DEBUG] [Thread-67865 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:35.677 [DEBUG] [Thread-67865 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:35.677 [DEBUG] [Thread-67865 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:35.677 [DEBUG] [Thread-67865 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:35.677 [DEBUG] [Thread-67865 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:35.677 [DEBUG] [Thread-67865 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:35.678 [DEBUG] [Thread-67865 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:35.678 [DEBUG] [Thread-67865 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:35.678 [DEBUG] [Thread-67865 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:35.678 [DEBUG] [Thread-67865 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:35.678 [INFO] [Thread-67865 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96569053, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653984152814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992897, telescope_ra=19.3285298, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34828, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.3024667147897, telescope_dec_j2k=-24.3022205503965, observability=1)
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.2049837112426758s
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:36.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:36.884 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:36.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.328895;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34865;2460996.96570469;13.17689722;1.3;_
2025-11-17T13:10:36.885 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.328895;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34865;2460996.96570469;13.17689722;1.3;_
2025-11-17T13:10:36.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:36.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:36.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:36.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:36.886 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:36.886 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.328895, teldec = -24.256423
2025-11-17T13:10:36.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.328895 -24.256423
2025-11-17T13:10:36.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.328895 -24.256423
2025-11-17T13:10:36.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.328895 -24.256423
2025-11-17T13:10:36.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.328895;-24.256423;50.108313;89.992897;50.08601;90.12017;16.34865;2460996.96570471;13.17689722;1.3;_19.3028320161981 -24.3022335178591
2025-11-17T13:10:36.887 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.3028320161981     dec_j2k = -24.3022335178591
2025-11-17T13:10:36.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:36.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104654264936414;171.162351965909;_
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104654264936414;171.162351965909;_
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:36.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:36.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:36.889 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:36.889 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:36.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:36.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:36.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:36.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:36.891 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:36.891 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49685)
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:36.896 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:36.903 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:36.904 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96570469, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654264936414, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992897, telescope_ra=19.328895, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.34865, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.3028320161981, telescope_dec_j2k=-24.3022335178591, observability=1)
2025-11-17T13:10:43.618 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:10:43
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.7141947746276855s
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:43.618 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3307654;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35052;2460996.96578263;13.1787625;1.3;_
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3307654;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35052;2460996.96578263;13.1787625;1.3;_
2025-11-17T13:10:43.619 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:43.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:43.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:43.620 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:43.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:43.621 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3307654, teldec = -24.256423
2025-11-17T13:10:43.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3307654 -24.256423
2025-11-17T13:10:43.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3307654 -24.256423
2025-11-17T13:10:43.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3307654 -24.256423
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3307654;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35052;2460996.96578266;13.1787625;1.3;_19.3047029361257 -24.3022999253296
2025-11-17T13:10:43.622 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.3047029361257     dec_j2k = -24.3022999253296
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104654144600586;171.162357330327;_
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104654144600586;171.162357330327;_
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:43.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:43.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:43.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:43.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:43.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59863)
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:43.629 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:43.636 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:43.636 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96578263, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654144600586, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992896, telescope_ra=19.3307654, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.35052, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:09:48.988126', telescope_ra_j2k=19.3047029361257, telescope_dec_j2k=-24.3022999253296, observability=1)
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:49.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:49.131 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:49.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:49.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:49.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:49.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:49.132 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:10:49.132 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:49.132 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:49.132 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:49.132 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:49.132 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:10:49.133 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:10:49.134 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:50.134 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:50.134 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:50.134 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:50.134 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:50.134 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:10:50.135 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:50.136 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:50.137 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:50.137 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:50.137 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:50.137 [DEBUG] [ThreadPoolExecutor-2828_0] [payload.py] [to_registers()] [0]
2025-11-17T13:10:50.141 [DEBUG] [ThreadPoolExecutor-2828_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36603)
2025-11-17T13:10:50.141 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:50.141 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:50.142 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:10:50.142 [DEBUG] [ThreadPoolExecutor-2828_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:50.142 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:50.149 [DEBUG] [ThreadPoolExecutor-2828_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Status age = 10.13145399093628s
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:10:53.768 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:10:53.769 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 17;19.33358;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35333;2460996.9659001;13.18156944;1.3;_
2025-11-17T13:10:53.769 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response 17;19.33358;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35333;2460996.9659001;13.18156944;1.3;_
2025-11-17T13:10:53.769 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:10:53.769 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:10:53.769 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:10:53.770 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:53.770 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:10:53.770 [INFO] [Thread-67866 (handle)] [driver.py] [get_status()] Telra = 19.33358, teldec = -24.256423
2025-11-17T13:10:53.770 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] UnCookCoordinates 19.33358 -24.256423
2025-11-17T13:10:53.770 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.33358 -24.256423
2025-11-17T13:10:53.771 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.33358 -24.256423
2025-11-17T13:10:53.771 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 17;19.33358;-24.256423;50.108313;89.992896;50.08601;90.12017;16.35333;2460996.96590013;13.18156944;1.3;_19.307518320274 -24.3023998358963
2025-11-17T13:10:53.771 [INFO] [Thread-67866 (handle)] [driver.py] [get_status()] ra_j2k = 19.307518320274     dec_j2k = -24.3023998358963
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 140;0.104654706167785;171.162351965909;_
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response 140;0.104654706167785;171.162351965909;_
2025-11-17T13:10:53.772 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:53.773 [DEBUG] [Thread-67866 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:53.774 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:10:53.774 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:10:53.774 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:10:53.775 [DEBUG] [Thread-67866 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:53.775 [DEBUG] [Thread-67866 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:10:53.775 [DEBUG] [Thread-67866 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40947)
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:10:53.781 [DEBUG] [Thread-67866 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:10:53.788 [DEBUG] [Thread-67866 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:10:53.789 [INFO] [Thread-67866 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9659001, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654706167785, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108313, telescope_az=89.992896, telescope_ra=19.33358, telescope_dec=-24.256423, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.35333, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.307518320274, telescope_dec_j2k=-24.3023998358963, observability=1)
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Status age = 18.040196418762207s
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:11.829 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:11.830 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:11.831 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 17;19.3386232;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35838;2460996.96610916;13.18659889;1.3;_
2025-11-17T13:11:11.831 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response 17;19.3386232;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35838;2460996.96610916;13.18659889;1.3;_
2025-11-17T13:11:11.831 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:11.831 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:11.831 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:11.832 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:11.832 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:11.832 [INFO] [Thread-67867 (handle)] [driver.py] [get_status()] Telra = 19.3386232, teldec = -24.256422
2025-11-17T13:11:11.832 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3386232 -24.256422
2025-11-17T13:11:11.832 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3386232 -24.256422
2025-11-17T13:11:11.832 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3386232 -24.256422
2025-11-17T13:11:11.833 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 17;19.3386232;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35838;2460996.96610918;13.18659889;1.3;_19.3125629307742 -24.3025777949238
2025-11-17T13:11:11.833 [INFO] [Thread-67867 (handle)] [driver.py] [get_status()] ra_j2k = 19.3125629307742     dec_j2k = -24.3025777949238
2025-11-17T13:11:11.833 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:11.833 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:11.833 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 140;0.104653703369215;171.162357330327;_
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response 140;0.104653703369215;171.162357330327;_
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:11.834 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:11.835 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:11.836 [DEBUG] [Thread-67867 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:11.836 [DEBUG] [Thread-67867 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:11.836 [DEBUG] [Thread-67867 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50061)
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:11.840 [DEBUG] [Thread-67867 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:11.847 [DEBUG] [Thread-67867 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:11.848 [DEBUG] [Thread-67867 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:11.848 [INFO] [Thread-67867 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96610916, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653703369215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3386232, telescope_dec=-24.256422, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.35838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3125629307742, telescope_dec_j2k=-24.3025777949238, observability=1)
2025-11-17T13:11:12.048 [DEBUG] [Thread-67868 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:12.048 [DEBUG] [Thread-67868 (handle)] [server.py] [get_status()] Status age = 0.2005443572998047s
2025-11-17T13:11:12.048 [DEBUG] [Thread-67868 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2005443572998047
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1043732166290283s
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3394842;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35924;2460996.9661453;13.1874575;1.3;_
2025-11-17T13:11:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.3394842;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35924;2460996.9661453;13.1874575;1.3;_
2025-11-17T13:11:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:14.955 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.3394842, teldec = -24.256422
2025-11-17T13:11:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3394842 -24.256422
2025-11-17T13:11:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3394842 -24.256422
2025-11-17T13:11:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3394842 -24.256422
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3394842;-24.256422;50.108312;89.992895;50.08601;90.12017;16.35924;2460996.96614532;13.1874575;1.3;_19.3134241722258 -24.302608339861
2025-11-17T13:11:14.957 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.3134241722258     dec_j2k = -24.302608339861
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104653984152814;171.162357330327;_
2025-11-17T13:11:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104653984152814;171.162357330327;_
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57301)
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:14.969 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:14.970 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:14.970 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9661453, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653984152814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3394842, telescope_dec=-24.256422, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.35924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3134241722258, telescope_dec_j2k=-24.302608339861, observability=1)
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:15.149 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:15.150 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:11:15.151 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:11:15.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.702354431152344s
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:28.672 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:28.673 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:28.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3433033;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36306;2460996.9663041;13.19126611;1.3;_
2025-11-17T13:11:28.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3433033;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36306;2460996.9663041;13.19126611;1.3;_
2025-11-17T13:11:28.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:28.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:28.674 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:28.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:28.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:28.675 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3433033, teldec = -24.256422
2025-11-17T13:11:28.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3433033 -24.256422
2025-11-17T13:11:28.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3433033 -24.256422
2025-11-17T13:11:28.675 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3433033 -24.256422
2025-11-17T13:11:28.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3433033;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36306;2460996.96630412;13.19126611;1.3;_19.3172443455993 -24.302743799145
2025-11-17T13:11:28.676 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3172443455993     dec_j2k = -24.302743799145
2025-11-17T13:11:28.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:28.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:28.676 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653623145329;171.162362694745;_
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653623145329;171.162362694745;_
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:28.677 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:28.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:28.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:28.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:28.678 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:28.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:28.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:28.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:28.679 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:28.680 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42001)
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:28.682 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:28.689 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:28.690 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:28.690 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:11:28.690 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9663041, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653623145329, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3433033, telescope_dec=-24.256422, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.36306, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3172443455993, telescope_dec_j2k=-24.302743799145, observability=1)
2025-11-17T13:11:28.690 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07220721244812 seconds ago
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Status age = 1.2116572856903076s
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:29.901 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:29.902 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:29.903 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 17;19.3436392;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36339;2460996.96631832;13.19160111;1.3;_
2025-11-17T13:11:29.903 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response 17;19.3436392;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36339;2460996.96631832;13.19160111;1.3;_
2025-11-17T13:11:29.903 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:29.903 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:29.903 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:29.904 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:29.904 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:29.904 [INFO] [Thread-67869 (handle)] [driver.py] [get_status()] Telra = 19.3436392, teldec = -24.256422
2025-11-17T13:11:29.904 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3436392 -24.256422
2025-11-17T13:11:29.904 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3436392 -24.256422
2025-11-17T13:11:29.904 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3436392 -24.256422
2025-11-17T13:11:29.905 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 17;19.3436392;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36339;2460996.96631834;13.19160111;1.3;_19.317580340191 -24.3027557109947
2025-11-17T13:11:29.905 [INFO] [Thread-67869 (handle)] [driver.py] [get_status()] ra_j2k = 19.317580340191     dec_j2k = -24.3027557109947
2025-11-17T13:11:29.905 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:29.905 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:29.905 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:29.906 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 140;0.104653863816986;171.162351965909;_
2025-11-17T13:11:29.907 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response 140;0.104653863816986;171.162351965909;_
2025-11-17T13:11:29.907 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:29.907 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:29.907 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:29.907 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:29.908 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:29.909 [DEBUG] [Thread-67869 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:29.909 [DEBUG] [Thread-67869 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:29.909 [DEBUG] [Thread-67869 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57081)
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:29.915 [DEBUG] [Thread-67869 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:29.922 [DEBUG] [Thread-67869 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:29.922 [INFO] [Thread-67869 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96631832, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653863816986, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3436392, telescope_dec=-24.256422, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.36339, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.317580340191, telescope_dec_j2k=-24.3027557109947, observability=1)
2025-11-17T13:11:35.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:35.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.069974422454834s
2025-11-17T13:11:35.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:35.992 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:35.992 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:35.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:35.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3453385;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36509;2460996.96638882;13.19329583;1.3;_
2025-11-17T13:11:35.994 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.3453385;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36509;2460996.96638882;13.19329583;1.3;_
2025-11-17T13:11:35.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:35.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:35.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:35.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:35.995 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:35.995 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.3453385, teldec = -24.256422
2025-11-17T13:11:35.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3453385 -24.256422
2025-11-17T13:11:35.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3453385 -24.256422
2025-11-17T13:11:35.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3453385 -24.256422
2025-11-17T13:11:35.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3453385;-24.256422;50.108312;89.992895;50.08601;90.12017;16.36509;2460996.96638884;13.19329583;1.3;_19.3192801191851 -24.3028159670532
2025-11-17T13:11:35.996 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.3192801191851     dec_j2k = -24.3028159670532
2025-11-17T13:11:35.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:35.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:35.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104653462697558;171.162357330327;_
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104653462697558;171.162357330327;_
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:35.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:35.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:35.999 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:35.999 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:35.999 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38327)
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:36.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:36.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:36.009 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:36.009 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:36.009 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96638882, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653462697558, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3453385, telescope_dec=-24.256422, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.36509, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3192801191851, telescope_dec_j2k=-24.3028159670532, observability=1)
2025-11-17T13:11:43.697 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:11:43
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.688582420349121s
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:43.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:43.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:43.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3475042;-24.256421;50.108312;89.992895;50.08601;90.12017;16.36726;2460996.966478;13.19545556;1.3;_
2025-11-17T13:11:43.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3475042;-24.256421;50.108312;89.992895;50.08601;90.12017;16.36726;2460996.966478;13.19545556;1.3;_
2025-11-17T13:11:43.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:43.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:43.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:43.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:43.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:43.700 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3475042, teldec = -24.256421
2025-11-17T13:11:43.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3475042 -24.256421
2025-11-17T13:11:43.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3475042 -24.256421
2025-11-17T13:11:43.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3475042 -24.256421
2025-11-17T13:11:43.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3475042;-24.256421;50.108312;89.992895;50.08601;90.12017;16.36726;2460996.96647802;13.19545556;1.3;_19.3214464309496 -24.3028917484757
2025-11-17T13:11:43.701 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.3214464309496     dec_j2k = -24.3028917484757
2025-11-17T13:11:43.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:43.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:43.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:43.702 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.1046543451603;171.162362694745;_
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.1046543451603;171.162362694745;_
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:43.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:43.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:43.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:43.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:43.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:43.707 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35053)
2025-11-17T13:11:43.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:43.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:43.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:43.708 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:43.708 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:43.715 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:43.715 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.966478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046543451603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992895, telescope_ra=19.3475042, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.36726, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3214464309496, telescope_dec_j2k=-24.3028917484757, observability=1)
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Status age = 4.317054033279419s
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:48.032 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:11:48.033 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:11:48.034 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 17;19.3487086;-24.256421;50.108312;89.992894;50.08601;90.12017;16.36846;2460996.96652817;13.19665667;1.3;_
2025-11-17T13:11:48.034 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response 17;19.3487086;-24.256421;50.108312;89.992894;50.08601;90.12017;16.36846;2460996.96652817;13.19665667;1.3;_
2025-11-17T13:11:48.034 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:11:48.034 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:11:48.034 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:11:48.035 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:48.035 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:11:48.035 [INFO] [Thread-67870 (handle)] [driver.py] [get_status()] Telra = 19.3487086, teldec = -24.256421
2025-11-17T13:11:48.035 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3487086 -24.256421
2025-11-17T13:11:48.035 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3487086 -24.256421
2025-11-17T13:11:48.035 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3487086 -24.256421
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 17;19.3487086;-24.256421;50.108312;89.992894;50.08601;90.12017;16.36846;2460996.96652819;13.19665667;1.3;_19.3226511716013 -24.3029344422102
2025-11-17T13:11:48.036 [INFO] [Thread-67870 (handle)] [driver.py] [get_status()] ra_j2k = 19.3226511716013     dec_j2k = -24.3029344422102
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 140;0.104653863816986;171.162351965909;_
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response 140;0.104653863816986;171.162351965909;_
2025-11-17T13:11:48.036 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:11:48.037 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:11:48.038 [DEBUG] [Thread-67870 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:48.038 [DEBUG] [Thread-67870 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:11:48.038 [DEBUG] [Thread-67870 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41641)
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:11:48.045 [DEBUG] [Thread-67870 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:11:48.052 [DEBUG] [Thread-67870 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:11:48.053 [DEBUG] [Thread-67870 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:11:48.053 [DEBUG] [Thread-67870 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:11:48.053 [INFO] [Thread-67870 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96652817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653863816986, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992894, telescope_ra=19.3487086, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.36846, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:10:49.129973', telescope_ra_j2k=19.3226511716013, telescope_dec_j2k=-24.3029344422102, observability=1)
2025-11-17T13:11:49.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:49.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:49.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:49.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:49.273 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:11:49.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:11:49.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:11:49.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:11:49.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:11:49.274 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:11:49.274 [INFO] [ThreadPoolExecutor-2829_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:11:49.275 [INFO] [ThreadPoolExecutor-2829_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Status age = 18.049021005630493s
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:06.102 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:06.103 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:06.104 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 17;19.3537457;-24.256421;50.108312;89.992894;50.08601;90.12017;16.3735;2460996.96673731;13.20168;1.3;_
2025-11-17T13:12:06.104 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response 17;19.3537457;-24.256421;50.108312;89.992894;50.08601;90.12017;16.3735;2460996.96673731;13.20168;1.3;_
2025-11-17T13:12:06.104 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:06.104 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:06.104 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:06.105 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:06.105 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:06.105 [INFO] [Thread-67871 (handle)] [driver.py] [get_status()] Telra = 19.3537457, teldec = -24.256421
2025-11-17T13:12:06.106 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3537457 -24.256421
2025-11-17T13:12:06.106 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3537457 -24.256421
2025-11-17T13:12:06.106 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3537457 -24.256421
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 17;19.3537457;-24.256421;50.108312;89.992894;50.08601;90.12017;16.3735;2460996.96673734;13.20168;1.3;_19.3276897004707 -24.3031129491799
2025-11-17T13:12:06.107 [INFO] [Thread-67871 (handle)] [driver.py] [get_status()] ra_j2k = 19.3276897004707     dec_j2k = -24.3031129491799
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 140;0.104654024264757;171.162362694745;_
2025-11-17T13:12:06.107 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response 140;0.104654024264757;171.162362694745;_
2025-11-17T13:12:06.108 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:06.108 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:06.108 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:06.108 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:06.108 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:06.109 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:06.109 [DEBUG] [Thread-67871 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:12:06.109 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:06.109 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:06.109 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:06.110 [DEBUG] [Thread-67871 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:06.110 [DEBUG] [Thread-67871 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:06.110 [DEBUG] [Thread-67871 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59429)
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:06.111 [DEBUG] [Thread-67871 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:06.118 [DEBUG] [Thread-67871 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:06.119 [INFO] [Thread-67871 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96673731, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654024264757, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108312, telescope_az=89.992894, telescope_ra=19.3537457, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.3735, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3276897004707, telescope_dec_j2k=-24.3031129491799, observability=1)
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:12:10.152 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:12:10.153 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.153 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.153 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.153 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:10.154 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:10.154 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:10.154 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.154 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:10.155 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:12:10.156 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:10.157 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Park
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:12:10.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 29;19.3548682;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37462;2460996.96678424;13.20279944;1.3;_Park Command Successful
2025-11-17T13:12:11.158 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:12:11.159 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:12:11.159 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:12:11.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:12:11.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Status age = 5.968761205673218s
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:12.087 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:12.088 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:12.089 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 17;19.3553921;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37514;2460996.96680659;13.20332194;1.3;_
2025-11-17T13:12:12.089 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response 17;19.3553921;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37514;2460996.96680659;13.20332194;1.3;_
2025-11-17T13:12:12.089 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:12.089 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:12.089 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:12.090 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:12.090 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:12.090 [INFO] [Thread-67872 (handle)] [driver.py] [get_status()] Telra = 19.3553921, teldec = -24.256421
2025-11-17T13:12:12.090 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3553921 -24.256421
2025-11-17T13:12:12.090 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3553921 -24.256421
2025-11-17T13:12:12.090 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3553921 -24.256421
2025-11-17T13:12:12.091 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 17;19.3553921;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37514;2460996.96680661;13.20332194;1.3;_19.3293365689659 -24.3031712779016
2025-11-17T13:12:12.091 [INFO] [Thread-67872 (handle)] [driver.py] [get_status()] ra_j2k = 19.3293365689659     dec_j2k = -24.3031712779016
2025-11-17T13:12:12.091 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:12.091 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:12.091 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 140;0.104653823705043;171.162351965909;_
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response 140;0.104653823705043;171.162351965909;_
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:12.092 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:12.093 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:12.094 [DEBUG] [Thread-67872 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:12.094 [DEBUG] [Thread-67872 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:12.094 [DEBUG] [Thread-67872 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:12:12.098 [DEBUG] [Thread-67872 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48841)
2025-11-17T13:12:12.099 [DEBUG] [Thread-67872 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:12.099 [DEBUG] [Thread-67872 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:12.099 [DEBUG] [Thread-67872 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:12.099 [DEBUG] [Thread-67872 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:12.099 [DEBUG] [Thread-67872 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:12.106 [DEBUG] [Thread-67872 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:12.106 [INFO] [Thread-67872 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96680659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653823705043, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992894, telescope_ra=19.3553921, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.37514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3293365689659, telescope_dec_j2k=-24.3031712779016, observability=1)
2025-11-17T13:12:12.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:12:12.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:12:12.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:12:12.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:12:12.160 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:12:13.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:12:13.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:12:13.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:12:13.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:12:13.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:12:14.161 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:14.162 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:12:14.163 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:12:14.164 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.867849588394165s
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3562057;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37596;2460996.96684;13.20413333;1.3;_
2025-11-17T13:12:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.3562057;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37596;2460996.96684;13.20413333;1.3;_
2025-11-17T13:12:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:14.977 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.3562057, teldec = -24.256421
2025-11-17T13:12:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3562057 -24.256421
2025-11-17T13:12:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3562057 -24.256421
2025-11-17T13:12:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3562057 -24.256421
2025-11-17T13:12:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3562057;-24.256421;50.108311;89.992894;50.08601;90.12017;16.37596;2460996.96684002;13.20413333;1.3;_19.3301504007477 -24.303200099032
2025-11-17T13:12:14.978 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.3301504007477     dec_j2k = -24.303200099032
2025-11-17T13:12:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104653382473672;171.162357330327;_
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104653382473672;171.162357330327;_
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:14.982 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53477)
2025-11-17T13:12:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:14.990 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:14.990 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:14.990 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:14.990 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:14.991 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:14.991 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:14.991 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96684, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653382473672, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992894, telescope_ra=19.3562057, telescope_dec=-24.256421, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.37596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3301504007477, telescope_dec_j2k=-24.303200099032, observability=1)
2025-11-17T13:12:15.164 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:15.164 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:15.164 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:15.164 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:15.165 [DEBUG] [ThreadPoolExecutor-2828_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:15.166 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:12:15.166 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:12:15.166 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:12:15.166 [DEBUG] [ThreadPoolExecutor-2828_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:15.166 [INFO] [ThreadPoolExecutor-2828_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Status age = 9.17680811882019s
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:24.168 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:24.169 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 17;19.3587655;-24.25642;50.108311;89.992893;50.08601;90.12017;16.37852;2460996.9669464;13.20668611;1.3;_
2025-11-17T13:12:24.169 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response 17;19.3587655;-24.25642;50.108311;89.992893;50.08601;90.12017;16.37852;2460996.9669464;13.20668611;1.3;_
2025-11-17T13:12:24.169 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:24.169 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:24.169 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:24.170 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:24.170 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:24.170 [INFO] [Thread-67873 (handle)] [driver.py] [get_status()] Telra = 19.3587655, teldec = -24.25642
2025-11-17T13:12:24.170 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3587655 -24.25642
2025-11-17T13:12:24.170 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3587655 -24.25642
2025-11-17T13:12:24.170 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3587655 -24.25642
2025-11-17T13:12:24.171 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 17;19.3587655;-24.25642;50.108311;89.992893;50.08601;90.12017;16.37852;2460996.96694642;13.20668611;1.3;_19.3327109313311 -24.3032897645021
2025-11-17T13:12:24.171 [INFO] [Thread-67873 (handle)] [driver.py] [get_status()] ra_j2k = 19.3327109313311     dec_j2k = -24.3032897645021
2025-11-17T13:12:24.171 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 140;0.104653542921443;171.162368059163;_
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response 140;0.104653542921443;171.162368059163;_
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:24.172 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:24.173 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:24.173 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:24.173 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:24.173 [DEBUG] [Thread-67873 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:24.173 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:24.174 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:24.174 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:24.174 [DEBUG] [Thread-67873 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:24.174 [DEBUG] [Thread-67873 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:24.175 [DEBUG] [Thread-67873 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40253)
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:24.179 [DEBUG] [Thread-67873 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:24.186 [DEBUG] [Thread-67873 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:24.186 [DEBUG] [Thread-67873 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:24.186 [DEBUG] [Thread-67873 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:24.187 [DEBUG] [Thread-67873 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:24.187 [INFO] [Thread-67873 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9669464, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653542921443, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992893, telescope_ra=19.3587655, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.37852, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3327109313311, telescope_dec_j2k=-24.3032897645021, observability=1)
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.562910318374634s
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:28.750 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3600437;-24.25642;50.108311;89.992893;50.08601;90.12017;16.3798;2460996.96699943;13.20796083;1.3;_
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3600437;-24.25642;50.108311;89.992893;50.08601;90.12017;16.3798;2460996.96699943;13.20796083;1.3;_
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:28.751 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:28.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:28.752 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:28.752 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3600437, teldec = -24.25642
2025-11-17T13:12:28.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3600437 -24.25642
2025-11-17T13:12:28.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3600437 -24.25642
2025-11-17T13:12:28.753 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3600437 -24.25642
2025-11-17T13:12:28.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3600437;-24.25642;50.108311;89.992893;50.08601;90.12017;16.3798;2460996.96699946;13.20796083;1.3;_19.3339894966947 -24.3033350293134
2025-11-17T13:12:28.754 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3339894966947     dec_j2k = -24.3033350293134
2025-11-17T13:12:28.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:28.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:28.754 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653262137844;171.162351965909;_
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653262137844;171.162351965909;_
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:28.755 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:28.756 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:28.757 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:28.757 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:28.757 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42185)
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:28.764 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:28.771 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:12:28.771 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96699943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653262137844, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992893, telescope_ra=19.3600437, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.3798, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3339894966947, telescope_dec_j2k=-24.3033350293134, observability=1)
2025-11-17T13:12:28.772 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07450294494629 seconds ago
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.330328941345215s
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:35.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3617993;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38155;2460996.96707295;13.20971167;1.3;_
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.3617993;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38155;2460996.96707295;13.20971167;1.3;_
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:35.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:35.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:35.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:35.104 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:35.104 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.3617993, teldec = -24.25642
2025-11-17T13:12:35.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3617993 -24.25642
2025-11-17T13:12:35.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3617993 -24.25642
2025-11-17T13:12:35.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3617993 -24.25642
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3617993;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38155;2460996.96707297;13.20971167;1.3;_19.335745599227 -24.3033971919199
2025-11-17T13:12:35.106 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.335745599227     dec_j2k = -24.3033971919199
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104653703369215;171.162357330327;_
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104653703369215;171.162357330327;_
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:35.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:35.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:35.108 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:35.108 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:35.108 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48293)
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:35.115 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:35.122 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:35.123 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:35.123 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96707295, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653703369215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992893, telescope_ra=19.3617993, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.38155, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.335745599227, telescope_dec_j2k=-24.3033971919199, observability=1)
2025-11-17T13:12:42.302 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Status age = 7.179919242858887s
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:42.303 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:42.304 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:42.305 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 17;19.3638071;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38356;2460996.96715631;13.21171389;1.3;_
2025-11-17T13:12:42.305 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response 17;19.3638071;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38356;2460996.96715631;13.21171389;1.3;_
2025-11-17T13:12:42.305 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:42.305 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:42.305 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:42.306 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:42.306 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:42.306 [INFO] [Thread-67874 (handle)] [driver.py] [get_status()] Telra = 19.3638071, teldec = -24.25642
2025-11-17T13:12:42.306 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3638071 -24.25642
2025-11-17T13:12:42.306 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3638071 -24.25642
2025-11-17T13:12:42.306 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3638071 -24.25642
2025-11-17T13:12:42.307 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 17;19.3638071;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38356;2460996.96715633;13.21171389;1.3;_19.337753974954 -24.303468272624
2025-11-17T13:12:42.307 [INFO] [Thread-67874 (handle)] [driver.py] [get_status()] ra_j2k = 19.337753974954     dec_j2k = -24.303468272624
2025-11-17T13:12:42.307 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:42.307 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:42.308 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:42.309 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:42.310 [DEBUG] [Thread-67874 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:42.310 [DEBUG] [Thread-67874 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:12:42.310 [DEBUG] [Thread-67874 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:12:42.311 [DEBUG] [Thread-67874 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54119)
2025-11-17T13:12:42.312 [DEBUG] [Thread-67874 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:42.312 [DEBUG] [Thread-67874 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:42.312 [DEBUG] [Thread-67874 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:42.312 [DEBUG] [Thread-67874 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:42.312 [DEBUG] [Thread-67874 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:42.319 [DEBUG] [Thread-67874 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:42.320 [INFO] [Thread-67874 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96715631, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653542921443, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992893, telescope_ra=19.3638071, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.38356, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.337753974954, telescope_dec_j2k=-24.303468272624, observability=1)
2025-11-17T13:12:43.776 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:12:43
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.4564766883850098s
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:43.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:12:43.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:12:43.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3642274;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38398;2460996.96717334;13.21213306;1.3;_
2025-11-17T13:12:43.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3642274;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38398;2460996.96717334;13.21213306;1.3;_
2025-11-17T13:12:43.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:12:43.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:12:43.778 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:12:43.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:43.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:12:43.779 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3642274, teldec = -24.25642
2025-11-17T13:12:43.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3642274 -24.25642
2025-11-17T13:12:43.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3642274 -24.25642
2025-11-17T13:12:43.779 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3642274 -24.25642
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3642274;-24.25642;50.108311;89.992893;50.08601;90.12017;16.38398;2460996.96717338;13.21213306;1.3;_19.3381743956085 -24.303483150602
2025-11-17T13:12:43.780 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.3381743956085     dec_j2k = -24.303483150602
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104653542921443;171.162362694745;_
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:43.780 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:12:43.781 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:12:43.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:43.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:12:43.782 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38691)
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:43.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:43.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:43.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:43.790 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:12:43.790 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:12:43.791 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:43.791 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:43.791 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:12:43.791 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:12:43.791 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:12:43.791 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96717334, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653542921443, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992893, telescope_ra=19.3642274, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.38398, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:11:49.272247', telescope_ra_j2k=19.3381743956085, telescope_dec_j2k=-24.303483150602, observability=1)
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:49.415 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:49.416 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:12:49.416 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:12:49.417 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:12:49.418 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:50.418 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:50.419 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:50.419 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:50.419 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:50.419 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:12:50.420 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:12:50.421 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:12:50.422 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:12:50.422 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:12:50.422 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:12:50.422 [DEBUG] [ThreadPoolExecutor-2830_0] [payload.py] [to_registers()] [0]
2025-11-17T13:12:50.428 [DEBUG] [ThreadPoolExecutor-2830_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52053)
2025-11-17T13:12:50.428 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:12:50.428 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:12:50.429 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:12:50.429 [DEBUG] [ThreadPoolExecutor-2830_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:12:50.429 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:12:50.436 [DEBUG] [ThreadPoolExecutor-2830_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:00.357 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Status age = 16.566765785217285s
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:00.358 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:00.359 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 17;19.3688489;-24.25642;50.108311;89.992892;50.08601;90.12017;16.3886;2460996.96736527;13.21674194;1.3;_
2025-11-17T13:13:00.359 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response 17;19.3688489;-24.25642;50.108311;89.992892;50.08601;90.12017;16.3886;2460996.96736527;13.21674194;1.3;_
2025-11-17T13:13:00.359 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:00.359 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:00.359 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:00.360 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:00.360 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:00.360 [INFO] [Thread-67875 (handle)] [driver.py] [get_status()] Telra = 19.3688489, teldec = -24.25642
2025-11-17T13:13:00.360 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3688489 -24.25642
2025-11-17T13:13:00.360 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3688489 -24.25642
2025-11-17T13:13:00.361 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3688489 -24.25642
2025-11-17T13:13:00.361 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 17;19.3688489;-24.25642;50.108311;89.992892;50.08601;90.12017;16.3886;2460996.96736529;13.21674194;1.3;_19.3427972253856 -24.3036467080067
2025-11-17T13:13:00.361 [INFO] [Thread-67875 (handle)] [driver.py] [get_status()] ra_j2k = 19.3427972253856     dec_j2k = -24.3036467080067
2025-11-17T13:13:00.362 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:00.362 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:00.362 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:00.362 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 140;0.104653141802015;171.162351965909;_
2025-11-17T13:13:00.363 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response 140;0.104653141802015;171.162351965909;_
2025-11-17T13:13:00.363 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:00.363 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:00.363 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:00.363 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:00.364 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:00.365 [DEBUG] [Thread-67875 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:00.365 [DEBUG] [Thread-67875 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:00.365 [DEBUG] [Thread-67875 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:00.367 [DEBUG] [Thread-67875 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60025)
2025-11-17T13:13:00.367 [DEBUG] [Thread-67875 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:00.368 [DEBUG] [Thread-67875 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:00.368 [DEBUG] [Thread-67875 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:00.368 [DEBUG] [Thread-67875 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:00.368 [DEBUG] [Thread-67875 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:00.375 [DEBUG] [Thread-67875 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:00.375 [INFO] [Thread-67875 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96736527, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653141802015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108311, telescope_az=89.992892, telescope_ra=19.3688489, telescope_dec=-24.25642, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.3886, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3427972253856, telescope_dec_j2k=-24.3036467080067, observability=1)
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Status age = 11.764353275299072s
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:12.140 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:12.141 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:12.143 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 17;19.3721348;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39189;2460996.96750163;13.22001889;1.3;_
2025-11-17T13:13:12.143 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response 17;19.3721348;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39189;2460996.96750163;13.22001889;1.3;_
2025-11-17T13:13:12.143 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:12.143 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:12.143 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:12.144 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:12.144 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:12.144 [INFO] [Thread-67876 (handle)] [driver.py] [get_status()] Telra = 19.3721348, teldec = -24.256419
2025-11-17T13:13:12.144 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3721348 -24.256419
2025-11-17T13:13:12.144 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3721348 -24.256419
2025-11-17T13:13:12.145 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3721348 -24.256419
2025-11-17T13:13:12.145 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 17;19.3721348;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39189;2460996.96750168;13.22001889;1.3;_19.3460840744996 -24.3037619569423
2025-11-17T13:13:12.145 [INFO] [Thread-67876 (handle)] [driver.py] [get_status()] ra_j2k = 19.3460840744996     dec_j2k = -24.3037619569423
2025-11-17T13:13:12.145 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:12.145 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:12.146 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:12.146 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 140;0.104653342361729;171.162357330327;_
2025-11-17T13:13:12.146 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response 140;0.104653342361729;171.162357330327;_
2025-11-17T13:13:12.147 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:12.147 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:12.147 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:12.147 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:12.147 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:12.148 [DEBUG] [Thread-67876 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:12.149 [DEBUG] [Thread-67876 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41603)
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:12.150 [DEBUG] [Thread-67876 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:12.157 [DEBUG] [Thread-67876 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:12.158 [DEBUG] [Thread-67876 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:12.158 [DEBUG] [Thread-67876 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:12.158 [DEBUG] [Thread-67876 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:12.158 [INFO] [Thread-67876 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96750163, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653342361729, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992892, telescope_ra=19.3721348, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3460840744996, telescope_dec_j2k=-24.3037619569423, observability=1)
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.7872605323791504s
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.37292;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39267;2460996.96753411;13.22080194;1.3;_
2025-11-17T13:13:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.37292;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39267;2460996.96753411;13.22080194;1.3;_
2025-11-17T13:13:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:14.948 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.37292, teldec = -24.256419
2025-11-17T13:13:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.37292 -24.256419
2025-11-17T13:13:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.37292 -24.256419
2025-11-17T13:13:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.37292 -24.256419
2025-11-17T13:13:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.37292;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39267;2460996.96753413;13.22080194;1.3;_19.3468695016794 -24.3037897307672
2025-11-17T13:13:14.950 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.3468695016794     dec_j2k = -24.3037897307672
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104653262137844;171.162357330327;_
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104653262137844;171.162357330327;_
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45259)
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:14.962 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96753411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653262137844, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992892, telescope_ra=19.37292, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39267, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3468695016794, telescope_dec_j2k=-24.3037897307672, observability=1)
2025-11-17T13:13:15.436 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:15.436 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:15.436 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:15.436 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:15.437 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:13:15.438 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:13:15.439 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Status age = 3.46089768409729s
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:18.423 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:18.424 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:18.425 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 17;19.3738648;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39362;2460996.96757436;13.22174417;1.3;_
2025-11-17T13:13:18.425 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response 17;19.3738648;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39362;2460996.96757436;13.22174417;1.3;_
2025-11-17T13:13:18.425 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:18.425 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:18.425 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:18.426 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:18.426 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:18.426 [INFO] [Thread-67877 (handle)] [driver.py] [get_status()] Telra = 19.3738648, teldec = -24.256419
2025-11-17T13:13:18.426 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3738648 -24.256419
2025-11-17T13:13:18.426 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3738648 -24.256419
2025-11-17T13:13:18.426 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3738648 -24.256419
2025-11-17T13:13:18.427 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 17;19.3738648;-24.256419;50.10831;89.992892;50.08601;90.12017;16.39362;2460996.96757439;13.22174417;1.3;_19.3478145752527 -24.3038231473241
2025-11-17T13:13:18.427 [INFO] [Thread-67877 (handle)] [driver.py] [get_status()] ra_j2k = 19.3478145752527     dec_j2k = -24.3038231473241
2025-11-17T13:13:18.427 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:18.427 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:18.427 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 140;0.104653141802015;171.162351965909;_
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response 140;0.104653141802015;171.162351965909;_
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:18.428 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:18.429 [DEBUG] [Thread-67877 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47317)
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:18.434 [DEBUG] [Thread-67877 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:18.441 [DEBUG] [Thread-67877 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:18.442 [DEBUG] [Thread-67877 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:18.442 [DEBUG] [Thread-67877 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:18.442 [INFO] [Thread-67877 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96757436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653141802015, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992892, telescope_ra=19.3738648, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3478145752527, telescope_dec_j2k=-24.3038231473241, observability=1)
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.39008903503418s
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:28.832 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:28.833 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:28.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3767641;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39652;2460996.96769484;13.22463556;1.3;_
2025-11-17T13:13:28.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3767641;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39652;2460996.96769484;13.22463556;1.3;_
2025-11-17T13:13:28.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:28.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:28.834 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:28.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:28.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:28.835 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3767641, teldec = -24.256419
2025-11-17T13:13:28.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3767641 -24.256419
2025-11-17T13:13:28.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3767641 -24.256419
2025-11-17T13:13:28.835 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3767641 -24.256419
2025-11-17T13:13:28.836 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3767641;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39652;2460996.96769486;13.22463556;1.3;_19.3507147162437 -24.3039256747937
2025-11-17T13:13:28.836 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3507147162437     dec_j2k = -24.3039256747937
2025-11-17T13:13:28.837 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:28.837 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:28.837 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653703369215;171.162351965909;_
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653703369215;171.162351965909;_
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:28.838 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:28.839 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:13:28.844 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53777)
2025-11-17T13:13:28.844 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:28.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:28.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:28.845 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:28.845 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:28.852 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:13:28.852 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96769484, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653703369215, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992891, telescope_ra=19.3767641, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39652, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3507147162437, telescope_dec_j2k=-24.3039256747937, observability=1)
2025-11-17T13:13:28.852 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.07654809951782 seconds ago
2025-11-17T13:13:34.218 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:34.218 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.366090536117554s
2025-11-17T13:13:34.218 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:34.218 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:34.219 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3782682;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39802;2460996.96775718;13.22613556;1.3;_
2025-11-17T13:13:34.220 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.3782682;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39802;2460996.96775718;13.22613556;1.3;_
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:34.221 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.3782682, teldec = -24.256419
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3782682 -24.256419
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3782682 -24.256419
2025-11-17T13:13:34.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3782682 -24.256419
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3782682;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39802;2460996.9677572;13.22613556;1.3;_19.3522192534122 -24.3039788535356
2025-11-17T13:13:34.222 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.3522192534122     dec_j2k = -24.3039788535356
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10465278079453;171.162357330327;_
2025-11-17T13:13:34.222 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10465278079453;171.162357330327;_
2025-11-17T13:13:34.223 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:34.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:34.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:34.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:34.224 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51405)
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:34.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:34.238 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:34.238 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96775718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465278079453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992891, telescope_ra=19.3782682, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39802, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3522192534122, telescope_dec_j2k=-24.3039788535356, observability=1)
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Status age = 2.3419346809387207s
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:36.580 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:36.581 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 17;19.3789406;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39869;2460996.96778451;13.22680611;1.3;_
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response 17;19.3789406;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39869;2460996.96778451;13.22680611;1.3;_
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:36.582 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:36.583 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:36.583 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:36.583 [INFO] [Thread-67878 (handle)] [driver.py] [get_status()] Telra = 19.3789406, teldec = -24.256419
2025-11-17T13:13:36.583 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3789406 -24.256419
2025-11-17T13:13:36.583 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3789406 -24.256419
2025-11-17T13:13:36.583 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3789406 -24.256419
2025-11-17T13:13:36.584 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 17;19.3789406;-24.256419;50.10831;89.992891;50.08601;90.12017;16.39869;2460996.96778454;13.22680611;1.3;_19.3528918490402 -24.3040026244896
2025-11-17T13:13:36.584 [INFO] [Thread-67878 (handle)] [driver.py] [get_status()] ra_j2k = 19.3528918490402     dec_j2k = -24.3040026244896
2025-11-17T13:13:36.584 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:36.584 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:36.584 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 140;0.104653181913958;171.162351965909;_
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response 140;0.104653181913958;171.162351965909;_
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:36.585 [DEBUG] [Thread-67878 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:36.586 [DEBUG] [Thread-67878 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42485)
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:36.588 [DEBUG] [Thread-67878 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:36.595 [DEBUG] [Thread-67878 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:36.595 [INFO] [Thread-67878 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96778451, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653181913958, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992891, telescope_ra=19.3789406, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.39869, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3528918490402, telescope_dec_j2k=-24.3040026244896, observability=1)
2025-11-17T13:13:43.852 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:13:43
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.256463527679443s
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:43.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3809481;-24.256419;50.10831;89.992891;50.08601;90.12017;16.4007;2460996.96786867;13.22880806;1.3;_
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3809481;-24.256419;50.10831;89.992891;50.08601;90.12017;16.4007;2460996.96786867;13.22880806;1.3;_
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:43.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:43.854 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3809481, teldec = -24.256419
2025-11-17T13:13:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3809481 -24.256419
2025-11-17T13:13:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3809481 -24.256419
2025-11-17T13:13:43.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3809481 -24.256419
2025-11-17T13:13:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3809481;-24.256419;50.10831;89.992891;50.08601;90.12017;16.4007;2460996.96786869;13.22880806;1.3;_19.3548999338158 -24.304073585885
2025-11-17T13:13:43.855 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.3548999338158     dec_j2k = -24.304073585885
2025-11-17T13:13:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:43.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104653101690073;171.162346601491;_
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104653101690073;171.162346601491;_
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:43.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:13:43.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:13:43.860 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49849)
2025-11-17T13:13:43.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:43.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:43.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:43.861 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:43.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:43.868 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:43.868 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96786867, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653101690073, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992891, telescope_ra=19.3809481, telescope_dec=-24.256419, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.4007, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:12:49.414517', telescope_ra_j2k=19.3548999338158, telescope_dec_j2k=-24.304073585885, observability=1)
2025-11-17T13:13:49.557 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:49.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:49.559 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:49.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:49.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:49.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:49.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:49.560 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:13:49.560 [INFO] [ThreadPoolExecutor-2831_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:13:49.560 [INFO] [ThreadPoolExecutor-2831_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Status age = 10.76914381980896s
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:13:54.637 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:13:54.638 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:13:54.638 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:13:54.638 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:13:54.638 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 17;19.3839546;-24.256418;50.10831;89.992891;50.08601;90.12017;16.40371;2460996.96799351;13.23180639;1.3;_
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response 17;19.3839546;-24.256418;50.10831;89.992891;50.08601;90.12017;16.40371;2460996.96799351;13.23180639;1.3;_
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:13:54.639 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:13:54.640 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:54.640 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:13:54.640 [INFO] [Thread-67879 (handle)] [driver.py] [get_status()] Telra = 19.3839546, teldec = -24.256418
2025-11-17T13:13:54.640 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3839546 -24.256418
2025-11-17T13:13:54.640 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3839546 -24.256418
2025-11-17T13:13:54.640 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3839546 -24.256418
2025-11-17T13:13:54.641 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 17;19.3839546;-24.256418;50.10831;89.992891;50.08601;90.12017;16.40371;2460996.96799353;13.23180639;1.3;_19.3579073117839 -24.30417883617
2025-11-17T13:13:54.641 [INFO] [Thread-67879 (handle)] [driver.py] [get_status()] ra_j2k = 19.3579073117839     dec_j2k = -24.30417883617
2025-11-17T13:13:54.641 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:13:54.641 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 140;0.104652660458702;171.162357330327;_
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response 140;0.104652660458702;171.162357330327;_
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:54.642 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:13:54.643 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:13:54.644 [DEBUG] [Thread-67879 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:54.644 [DEBUG] [Thread-67879 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:13:54.644 [DEBUG] [Thread-67879 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38581)
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:13:54.645 [DEBUG] [Thread-67879 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:13:54.652 [DEBUG] [Thread-67879 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:13:54.653 [INFO] [Thread-67879 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96799351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652660458702, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.992891, telescope_ra=19.3839546, telescope_dec=-24.256418, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.40371, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3579073117839, telescope_dec_j2k=-24.30417883617, observability=1)
2025-11-17T13:14:10.439 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.439 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.439 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:10.439 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:10.439 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:10.440 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.440 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:14:10.441 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.442 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.442 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.442 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:10.442 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:10.442 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:10.443 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:14:10.444 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:10.445 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Park
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:14:10.446 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:14:10.447 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 29;19.3883611;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40811;2460996.96817647;13.23620083;1.3;_Park Command Successful
2025-11-17T13:14:11.447 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:14:11.447 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:14:11.447 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:14:11.448 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:14:11.448 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Status age = 17.54679799079895s
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:12.199 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:12.200 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:12.200 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:12.200 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:12.201 [DEBUG] [Thread-67880 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:12.201 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:12.201 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:12.201 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:12.201 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:12.202 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 17;19.3888561;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40861;2460996.96819678;13.23669444;1.3;_
2025-11-17T13:14:12.202 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response 17;19.3888561;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40861;2460996.96819678;13.23669444;1.3;_
2025-11-17T13:14:12.202 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:12.202 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:12.202 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:12.203 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:12.203 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:12.203 [INFO] [Thread-67880 (handle)] [driver.py] [get_status()] Telra = 19.3888561, teldec = -24.256418
2025-11-17T13:14:12.203 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3888561 -24.256418
2025-11-17T13:14:12.203 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3888561 -24.256418
2025-11-17T13:14:12.203 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3888561 -24.256418
2025-11-17T13:14:12.204 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 17;19.3888561;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40861;2460996.96819681;13.23669444;1.3;_19.3628102479679 -24.3043519941455
2025-11-17T13:14:12.204 [INFO] [Thread-67880 (handle)] [driver.py] [get_status()] ra_j2k = 19.3628102479679     dec_j2k = -24.3043519941455
2025-11-17T13:14:12.204 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:12.204 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:12.204 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 140;0.104652901130359;171.162368059163;_
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response 140;0.104652901130359;171.162368059163;_
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:12.205 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:12.206 [DEBUG] [Thread-67880 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44331)
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:12.208 [DEBUG] [Thread-67880 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:12.215 [DEBUG] [Thread-67880 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:12.215 [DEBUG] [Thread-67880 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:12.216 [DEBUG] [Thread-67880 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:12.216 [INFO] [Thread-67880 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96819678, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652901130359, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.99289, telescope_ra=19.3888561, telescope_dec=-24.256418, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.40861, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3628102479679, telescope_dec_j2k=-24.3043519941455, observability=1)
2025-11-17T13:14:12.448 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:14:12.448 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:14:12.448 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:14:12.449 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:14:12.449 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:14:12.758 [DEBUG] [Thread-67881 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:12.758 [DEBUG] [Thread-67881 (handle)] [server.py] [get_status()] Status age = 0.5420806407928467s
2025-11-17T13:14:12.758 [DEBUG] [Thread-67881 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5420806407928467
2025-11-17T13:14:13.450 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:14:13.450 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:14:13.450 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:14:13.450 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:14:13.451 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:14:14.451 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:14:14.451 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:14:14.451 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:14.452 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:14:14.453 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:14:14.454 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:14:14.454 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.7323145866394043s
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3896128;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40936;2460996.96822859;13.23744917;1.3;_
2025-11-17T13:14:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.3896128;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40936;2460996.96822859;13.23744917;1.3;_
2025-11-17T13:14:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:14.951 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.3896128, teldec = -24.256418
2025-11-17T13:14:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3896128 -24.256418
2025-11-17T13:14:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3896128 -24.256418
2025-11-17T13:14:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3896128 -24.256418
2025-11-17T13:14:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.3896128;-24.256418;50.10831;89.99289;50.08601;90.12017;16.40936;2460996.96822861;13.23744917;1.3;_19.3635671702555 -24.3043787196556
2025-11-17T13:14:14.952 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.3635671702555     dec_j2k = -24.3043787196556
2025-11-17T13:14:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104652901130359;171.162357330327;_
2025-11-17T13:14:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104652901130359;171.162357330327;_
2025-11-17T13:14:14.954 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38893)
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:14.966 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:14.967 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:14.967 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96822859, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652901130359, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10831, telescope_az=89.99289, telescope_ra=19.3896128, telescope_dec=-24.256418, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.40936, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3635671702555, telescope_dec_j2k=-24.3043787196556, observability=1)
2025-11-17T13:14:15.454 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:15.455 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:15.455 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:15.455 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:15.455 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:14:15.456 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:14:15.457 [DEBUG] [ThreadPoolExecutor-2830_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:15.457 [INFO] [ThreadPoolExecutor-2830_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:14:28.912 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:14:28.912 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.945842981338501s
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:28.913 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:28.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3935076;-24.256418;50.108309;89.99289;50.08601;90.12017;16.41326;2460996.96839021;13.24133333;1.3;_
2025-11-17T13:14:28.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.3935076;-24.256418;50.108309;89.99289;50.08601;90.12017;16.41326;2460996.96839021;13.24133333;1.3;_
2025-11-17T13:14:28.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:28.914 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:28.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:28.915 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:28.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:28.916 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.3935076, teldec = -24.256418
2025-11-17T13:14:28.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.3935076 -24.256418
2025-11-17T13:14:28.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.3935076 -24.256418
2025-11-17T13:14:28.916 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3935076 -24.256418
2025-11-17T13:14:28.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.3935076;-24.256418;50.108309;89.99289;50.08601;90.12017;16.41326;2460996.96839024;13.24133333;1.3;_19.3674631167901 -24.3045162491202
2025-11-17T13:14:28.917 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3674631167901     dec_j2k = -24.3045162491202
2025-11-17T13:14:28.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:28.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:28.917 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10465306157813;171.162368059163;_
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10465306157813;171.162368059163;_
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:28.918 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:28.919 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:28.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:28.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:28.920 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36881)
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:28.927 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:28.934 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:14:28.934 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96839021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465306157813, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.99289, telescope_ra=19.3935076, telescope_dec=-24.256418, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.41326, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3674631167901, telescope_dec_j2k=-24.3045162491202, observability=1)
2025-11-17T13:14:28.935 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08296608924866 seconds ago
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Status age = 1.8963794708251953s
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:30.831 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:30.832 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:30.833 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 17;19.3940394;-24.256417;50.108309;89.99289;50.08601;90.12017;16.41379;2460996.96841242;13.24186361;1.3;_
2025-11-17T13:14:30.833 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response 17;19.3940394;-24.256417;50.108309;89.99289;50.08601;90.12017;16.41379;2460996.96841242;13.24186361;1.3;_
2025-11-17T13:14:30.833 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:30.833 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:30.833 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:30.834 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:30.834 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:30.834 [INFO] [Thread-67882 (handle)] [driver.py] [get_status()] Telra = 19.3940394, teldec = -24.256417
2025-11-17T13:14:30.834 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3940394 -24.256417
2025-11-17T13:14:30.834 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3940394 -24.256417
2025-11-17T13:14:30.834 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3940394 -24.256417
2025-11-17T13:14:30.835 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 17;19.3940394;-24.256417;50.108309;89.99289;50.08601;90.12017;16.41379;2460996.96841244;13.24186361;1.3;_19.3679950738399 -24.304534023841
2025-11-17T13:14:30.835 [INFO] [Thread-67882 (handle)] [driver.py] [get_status()] ra_j2k = 19.3679950738399     dec_j2k = -24.304534023841
2025-11-17T13:14:30.835 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:30.835 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:30.835 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 140;0.104652459898988;171.162357330327;_
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response 140;0.104652459898988;171.162357330327;_
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:30.836 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:30.837 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:30.838 [DEBUG] [Thread-67882 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:30.838 [DEBUG] [Thread-67882 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:30.838 [DEBUG] [Thread-67882 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:30.842 [DEBUG] [Thread-67882 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46485)
2025-11-17T13:14:30.843 [DEBUG] [Thread-67882 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:30.843 [DEBUG] [Thread-67882 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:30.843 [DEBUG] [Thread-67882 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:30.843 [DEBUG] [Thread-67882 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:30.843 [DEBUG] [Thread-67882 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:30.850 [DEBUG] [Thread-67882 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:30.850 [INFO] [Thread-67882 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96841242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652459898988, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.99289, telescope_ra=19.3940394, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.41379, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3679950738399, telescope_dec_j2k=-24.304534023841, observability=1)
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.4835400581359863s
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:33.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:33.335 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:33.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3947402;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41449;2460996.96844139;13.2425625;1.3;_
2025-11-17T13:14:33.336 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.3947402;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41449;2460996.96844139;13.2425625;1.3;_
2025-11-17T13:14:33.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:33.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:33.336 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:33.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:33.337 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:33.337 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.3947402, teldec = -24.256417
2025-11-17T13:14:33.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3947402 -24.256417
2025-11-17T13:14:33.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3947402 -24.256417
2025-11-17T13:14:33.337 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3947402 -24.256417
2025-11-17T13:14:33.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.3947402;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41449;2460996.96844141;13.2425625;1.3;_19.368696080664 -24.3045587634564
2025-11-17T13:14:33.338 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.368696080664     dec_j2k = -24.3045587634564
2025-11-17T13:14:33.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:33.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:33.338 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104652500010931;171.162357330327;_
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104652500010931;171.162357330327;_
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:33.339 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:33.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:33.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:33.341 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:33.341 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38391)
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:33.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:33.355 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:33.355 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96844139, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652500010931, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992889, telescope_ra=19.3947402, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.41449, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.368696080664, telescope_dec_j2k=-24.3045587634564, observability=1)
2025-11-17T13:14:43.929 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:14:43
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.574049711227417s
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:43.929 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:43.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:43.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3976921;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41744;2460996.96856402;13.24550639;1.3;_
2025-11-17T13:14:43.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.3976921;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41744;2460996.96856402;13.24550639;1.3;_
2025-11-17T13:14:43.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:43.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:43.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:43.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:43.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:43.933 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.3976921, teldec = -24.256417
2025-11-17T13:14:43.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3976921 -24.256417
2025-11-17T13:14:43.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3976921 -24.256417
2025-11-17T13:14:43.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3976921 -24.256417
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.3976921;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41744;2460996.96856405;13.24550639;1.3;_19.3716488532741 -24.304662953976
2025-11-17T13:14:43.934 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.3716488532741     dec_j2k = -24.304662953976
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10465278079453;171.162351965909;_
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10465278079453;171.162351965909;_
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:43.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:43.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:43.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:43.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:14:43.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46797)
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:43.941 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:43.948 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:43.948 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:43.948 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:43.948 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:43.948 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:43.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:43.949 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:43.949 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:43.949 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:43.949 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96856402, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465278079453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992889, telescope_ra=19.3976921, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.41744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3716488532741, telescope_dec_j2k=-24.304662953976, observability=1)
2025-11-17T13:14:48.897 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Status age = 4.9487693309783936s
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:48.898 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 17;19.3990898;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41884;2460996.96862152;13.24690028;1.3;_
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response 17;19.3990898;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41884;2460996.96862152;13.24690028;1.3;_
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:14:48.899 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:14:48.900 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:48.900 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:14:48.900 [INFO] [Thread-67883 (handle)] [driver.py] [get_status()] Telra = 19.3990898, teldec = -24.256417
2025-11-17T13:14:48.900 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] UnCookCoordinates 19.3990898 -24.256417
2025-11-17T13:14:48.900 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.3990898 -24.256417
2025-11-17T13:14:48.900 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.3990898 -24.256417
2025-11-17T13:14:48.901 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 17;19.3990898;-24.256417;50.108309;89.992889;50.08601;90.12017;16.41884;2460996.96862154;13.24690028;1.3;_19.3730469672532 -24.3047122775257
2025-11-17T13:14:48.901 [INFO] [Thread-67883 (handle)] [driver.py] [get_status()] ra_j2k = 19.3730469672532     dec_j2k = -24.3047122775257
2025-11-17T13:14:48.901 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:14:48.901 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:14:48.901 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 140;0.10465205877956;171.162357330327;_
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response 140;0.10465205877956;171.162357330327;_
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:48.902 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:14:48.903 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:14:48.904 [DEBUG] [Thread-67883 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:48.904 [DEBUG] [Thread-67883 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:14:48.904 [DEBUG] [Thread-67883 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60365)
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:48.907 [DEBUG] [Thread-67883 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:48.914 [DEBUG] [Thread-67883 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:48.914 [DEBUG] [Thread-67883 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:48.914 [DEBUG] [Thread-67883 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:14:48.915 [DEBUG] [Thread-67883 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:14:48.915 [INFO] [Thread-67883 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96862152, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465205877956, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992889, telescope_ra=19.3990898, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.41884, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:13:49.557308', telescope_ra_j2k=19.3730469672532, telescope_dec_j2k=-24.3047122775257, observability=1)
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:49.700 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:49.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:49.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:49.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:49.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:49.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:49.701 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:49.702 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:14:49.703 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:14:49.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:50.704 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:14:50.705 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:14:50.706 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:14:50.706 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:14:50.706 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:14:50.706 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:14:50.707 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:14:50.707 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:14:50.707 [DEBUG] [ThreadPoolExecutor-2832_0] [payload.py] [to_registers()] [0]
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56835)
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:14:50.711 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:14:50.718 [DEBUG] [ThreadPoolExecutor-2832_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Status age = 18.094411611557007s
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:07.009 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:07.010 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:07.011 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 17;19.4041322;-24.256417;50.108309;89.992888;50.08601;90.12017;16.42388;2460996.96883115;13.25192889;1.3;_
2025-11-17T13:15:07.011 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response 17;19.4041322;-24.256417;50.108309;89.992888;50.08601;90.12017;16.42388;2460996.96883115;13.25192889;1.3;_
2025-11-17T13:15:07.011 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:07.011 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:07.011 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:07.012 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:07.012 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:07.012 [INFO] [Thread-67884 (handle)] [driver.py] [get_status()] Telra = 19.4041322, teldec = -24.256417
2025-11-17T13:15:07.012 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4041322 -24.256417
2025-11-17T13:15:07.012 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4041322 -24.256417
2025-11-17T13:15:07.012 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4041322 -24.256417
2025-11-17T13:15:07.013 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 17;19.4041322;-24.256417;50.108309;89.992888;50.08601;90.12017;16.42388;2460996.96883117;13.25192889;1.3;_19.378090865042 -24.3048901667687
2025-11-17T13:15:07.013 [INFO] [Thread-67884 (handle)] [driver.py] [get_status()] ra_j2k = 19.378090865042     dec_j2k = -24.3048901667687
2025-11-17T13:15:07.013 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:07.013 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:07.013 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:07.014 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 140;0.104652299451216;171.162351965909;_
2025-11-17T13:15:07.014 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response 140;0.104652299451216;171.162351965909;_
2025-11-17T13:15:07.014 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:07.014 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:07.014 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:07.015 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:07.016 [DEBUG] [Thread-67884 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57439)
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:07.023 [DEBUG] [Thread-67884 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:07.030 [DEBUG] [Thread-67884 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:07.030 [INFO] [Thread-67884 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96883115, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652299451216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992888, telescope_ra=19.4041322, telescope_dec=-24.256417, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.42388, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.378090865042, telescope_dec_j2k=-24.3048901667687, observability=1)
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Status age = 5.2267327308654785s
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:12.257 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:12.258 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:12.259 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 17;19.4055812;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42533;2460996.96889189;13.25337389;1.3;_
2025-11-17T13:15:12.259 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response 17;19.4055812;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42533;2460996.96889189;13.25337389;1.3;_
2025-11-17T13:15:12.259 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:12.259 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:12.259 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:12.260 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:12.260 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:12.260 [INFO] [Thread-67885 (handle)] [driver.py] [get_status()] Telra = 19.4055812, teldec = -24.256416
2025-11-17T13:15:12.260 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4055812 -24.256416
2025-11-17T13:15:12.260 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4055812 -24.256416
2025-11-17T13:15:12.260 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4055812 -24.256416
2025-11-17T13:15:12.261 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 17;19.4055812;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42533;2460996.96889191;13.25337389;1.3;_19.3795402968856 -24.3049402704533
2025-11-17T13:15:12.261 [INFO] [Thread-67885 (handle)] [driver.py] [get_status()] ra_j2k = 19.3795402968856     dec_j2k = -24.3049402704533
2025-11-17T13:15:12.261 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 140;0.104652339563159;171.162351965909;_
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response 140;0.104652339563159;171.162351965909;_
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:12.262 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:12.263 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:12.263 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:12.263 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:12.263 [DEBUG] [Thread-67885 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:12.264 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:12.264 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:12.264 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:12.265 [DEBUG] [Thread-67885 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:12.265 [DEBUG] [Thread-67885 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:12.265 [DEBUG] [Thread-67885 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42621)
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:12.267 [DEBUG] [Thread-67885 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:12.274 [DEBUG] [Thread-67885 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:12.275 [DEBUG] [Thread-67885 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:12.275 [INFO] [Thread-67885 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96889189, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652339563159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992888, telescope_ra=19.4055812, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.42533, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.3795402968856, telescope_dec_j2k=-24.3049402704533, observability=1)
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.69362735748291s
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4063299;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42608;2460996.96892326;13.25412056;1.3;_
2025-11-17T13:15:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.4063299;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42608;2460996.96892326;13.25412056;1.3;_
2025-11-17T13:15:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:14.971 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.4063299, teldec = -24.256416
2025-11-17T13:15:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4063299 -24.256416
2025-11-17T13:15:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4063299 -24.256416
2025-11-17T13:15:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4063299 -24.256416
2025-11-17T13:15:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4063299;-24.256416;50.108309;89.992888;50.08601;90.12017;16.42608;2460996.96892329;13.25412056;1.3;_19.38028922014 -24.3049666730774
2025-11-17T13:15:14.972 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.38028922014     dec_j2k = -24.3049666730774
2025-11-17T13:15:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104652179115388;171.162346601491;_
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104652179115388;171.162346601491;_
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45593)
2025-11-17T13:15:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:14.982 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:14.989 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96892326, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652179115388, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108309, telescope_az=89.992888, telescope_ra=19.4063299, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.42608, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.38028922014, telescope_dec_j2k=-24.3049666730774, observability=1)
2025-11-17T13:15:15.719 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:15.719 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:15.719 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:15.719 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:15.719 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:15.720 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:15:15.721 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:15:15.722 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Status age = 10.087103128433228s
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:25.076 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:25.077 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:25.077 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:25.077 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 17;19.4091457;-24.256416;50.108308;89.992888;50.08601;90.12017;16.4289;2460996.96904025;13.25692861;1.3;_
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response 17;19.4091457;-24.256416;50.108308;89.992888;50.08601;90.12017;16.4289;2460996.96904025;13.25692861;1.3;_
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:25.078 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:25.079 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:25.079 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:25.079 [INFO] [Thread-67886 (handle)] [driver.py] [get_status()] Telra = 19.4091457, teldec = -24.256416
2025-11-17T13:15:25.079 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4091457 -24.256416
2025-11-17T13:15:25.080 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4091457 -24.256416
2025-11-17T13:15:25.080 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4091457 -24.256416
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 17;19.4091457;-24.256416;50.108308;89.992888;50.08601;90.12017;16.4289;2460996.96904028;13.25692861;1.3;_19.3831058611106 -24.3050659549214
2025-11-17T13:15:25.081 [INFO] [Thread-67886 (handle)] [driver.py] [get_status()] ra_j2k = 19.3831058611106     dec_j2k = -24.3050659549214
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 140;0.104652339563159;171.162351965909;_
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response 140;0.104652339563159;171.162351965909;_
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:25.081 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:25.082 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:25.083 [DEBUG] [Thread-67886 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:25.083 [DEBUG] [Thread-67886 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:25.083 [DEBUG] [Thread-67886 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33667)
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:25.085 [DEBUG] [Thread-67886 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:25.092 [DEBUG] [Thread-67886 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:25.093 [INFO] [Thread-67886 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96904025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652339563159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992888, telescope_ra=19.4091457, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.4289, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.3831058611106, telescope_dec_j2k=-24.3050659549214, observability=1)
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.9021921157836914s
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:28.995 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:28.996 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:28.997 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4102581;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43001;2460996.96908561;13.25803806;1.3;_
2025-11-17T13:15:28.997 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.4102581;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43001;2460996.96908561;13.25803806;1.3;_
2025-11-17T13:15:28.997 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:28.997 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:28.997 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:28.998 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:28.998 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:28.998 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.4102581, teldec = -24.256416
2025-11-17T13:15:28.998 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.4102581 -24.256416
2025-11-17T13:15:28.998 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.4102581 -24.256416
2025-11-17T13:15:28.998 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4102581 -24.256416
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4102581;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43001;2460996.96908564;13.25803806;1.3;_19.3842185939199 -24.305105169758
2025-11-17T13:15:28.999 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.3842185939199     dec_j2k = -24.305105169758
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104651898331788;171.162357330327;_
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104651898331788;171.162357330327;_
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:28.999 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:29.000 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:29.000 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:15:29.000 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:29.001 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40279)
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:29.007 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:29.015 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:15:29.015 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96908561, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651898331788, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992888, telescope_ra=19.4102581, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.43001, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.3842185939199, telescope_dec_j2k=-24.305105169758, observability=1)
2025-11-17T13:15:29.015 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.086164712905884 seconds ago
2025-11-17T13:15:32.490 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.475388288497925s
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:32.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:32.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4112305;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43098;2460996.96912606;13.25900778;1.3;_
2025-11-17T13:15:32.492 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.4112305;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43098;2460996.96912606;13.25900778;1.3;_
2025-11-17T13:15:32.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:32.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:32.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:32.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:32.493 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:32.493 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.4112305, teldec = -24.256416
2025-11-17T13:15:32.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4112305 -24.256416
2025-11-17T13:15:32.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4112305 -24.256416
2025-11-17T13:15:32.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4112305 -24.256416
2025-11-17T13:15:32.494 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4112305;-24.256416;50.108308;89.992888;50.08601;90.12017;16.43098;2460996.96912609;13.25900778;1.3;_19.3851912851121 -24.3051394459531
2025-11-17T13:15:32.495 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.3851912851121     dec_j2k = -24.3051394459531
2025-11-17T13:15:32.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:32.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:32.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:32.495 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104652540122873;171.162368059163;_
2025-11-17T13:15:32.496 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104652540122873;171.162368059163;_
2025-11-17T13:15:32.496 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:32.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:32.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:32.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:32.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:32.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:32.498 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:32.498 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35753)
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:32.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:32.509 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:32.510 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:32.510 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:32.510 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:32.510 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96912606, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652540122873, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992888, telescope_ra=19.4112305, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.43098, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.3851912851121, telescope_dec_j2k=-24.3051394459531, observability=1)
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Status age = 10.637208938598633s
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:43.147 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:15:43.148 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:15:43.149 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 17;19.4141886;-24.256416;50.108308;89.992887;50.08601;90.12017;16.43394;2460996.96924941;13.26195778;1.3;_
2025-11-17T13:15:43.149 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response 17;19.4141886;-24.256416;50.108308;89.992887;50.08601;90.12017;16.43394;2460996.96924941;13.26195778;1.3;_
2025-11-17T13:15:43.149 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:15:43.149 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:15:43.149 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:15:43.150 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:43.150 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:15:43.150 [INFO] [Thread-67887 (handle)] [driver.py] [get_status()] Telra = 19.4141886, teldec = -24.256416
2025-11-17T13:15:43.150 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4141886 -24.256416
2025-11-17T13:15:43.150 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4141886 -24.256416
2025-11-17T13:15:43.150 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4141886 -24.256416
2025-11-17T13:15:43.151 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 17;19.4141886;-24.256416;50.108308;89.992887;50.08601;90.12017;16.43394;2460996.96924943;13.26195778;1.3;_19.3881502724751 -24.3052436972929
2025-11-17T13:15:43.151 [INFO] [Thread-67887 (handle)] [driver.py] [get_status()] ra_j2k = 19.3881502724751     dec_j2k = -24.3052436972929
2025-11-17T13:15:43.151 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:15:43.151 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 140;0.104652700570645;171.162351965909;_
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response 140;0.104652700570645;171.162351965909;_
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:43.152 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:15:43.153 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:15:43.154 [DEBUG] [Thread-67887 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:43.154 [DEBUG] [Thread-67887 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:15:43.154 [DEBUG] [Thread-67887 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42947)
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:15:43.158 [DEBUG] [Thread-67887 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:15:43.165 [DEBUG] [Thread-67887 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:15:43.166 [INFO] [Thread-67887 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96924941, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652700570645, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992887, telescope_ra=19.4141886, telescope_dec=-24.256416, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.43394, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:14:49.699753', telescope_ra_j2k=19.3881502724751, telescope_dec_j2k=-24.3052436972929, observability=1)
2025-11-17T13:15:44.010 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:15:44
2025-11-17T13:15:44.010 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:15:44.010 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.844304084777832s
2025-11-17T13:15:44.010 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.844304084777832
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:49.840 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:15:49.840 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:15:49.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:15:49.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:15:49.842 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:15:49.842 [INFO] [ThreadPoolExecutor-2833_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:15:49.842 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T13:16:01.250 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:01.250 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Status age = 18.084911108016968s
2025-11-17T13:16:01.250 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:01.251 [DEBUG] [Thread-67888 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:01.251 [DEBUG] [Thread-67888 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:01.251 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:01.251 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:01.251 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:01.252 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:01.253 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 17;19.4192315;-24.256415;50.108308;89.992887;50.08601;90.12017;16.43898;2460996.96945895;13.26698694;1.3;_
2025-11-17T13:16:01.253 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response 17;19.4192315;-24.256415;50.108308;89.992887;50.08601;90.12017;16.43898;2460996.96945895;13.26698694;1.3;_
2025-11-17T13:16:01.253 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:01.253 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:01.253 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:01.254 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:01.254 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:01.254 [INFO] [Thread-67888 (handle)] [driver.py] [get_status()] Telra = 19.4192315, teldec = -24.256415
2025-11-17T13:16:01.254 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4192315 -24.256415
2025-11-17T13:16:01.254 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4192315 -24.256415
2025-11-17T13:16:01.254 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4192315 -24.256415
2025-11-17T13:16:01.255 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 17;19.4192315;-24.256415;50.108308;89.992887;50.08601;90.12017;16.43898;2460996.96945897;13.26698694;1.3;_19.3931946907577 -24.3054203567862
2025-11-17T13:16:01.255 [INFO] [Thread-67888 (handle)] [driver.py] [get_status()] ra_j2k = 19.3931946907577     dec_j2k = -24.3054203567862
2025-11-17T13:16:01.255 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:01.255 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:01.255 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:01.256 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 140;0.104651938443731;171.162346601491;_
2025-11-17T13:16:01.256 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response 140;0.104651938443731;171.162346601491;_
2025-11-17T13:16:01.256 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:01.256 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:01.256 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:01.257 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:01.258 [DEBUG] [Thread-67888 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:01.258 [DEBUG] [Thread-67888 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:01.258 [DEBUG] [Thread-67888 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:01.261 [DEBUG] [Thread-67888 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60793)
2025-11-17T13:16:01.262 [DEBUG] [Thread-67888 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:01.262 [DEBUG] [Thread-67888 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:01.262 [DEBUG] [Thread-67888 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:01.262 [DEBUG] [Thread-67888 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:01.262 [DEBUG] [Thread-67888 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:01.269 [DEBUG] [Thread-67888 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:01.269 [INFO] [Thread-67888 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96945895, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651938443731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992887, telescope_ra=19.4192315, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.43898, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.3931946907577, telescope_dec_j2k=-24.3054203567862, observability=1)
2025-11-17T13:16:10.722 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.722 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.722 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:10.722 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:10.722 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:16:10.723 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:10.724 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:10.725 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:16:10.726 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:10.727 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Park
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:16:10.728 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:16:10.729 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 29;19.4218749;-24.256415;50.108308;89.992887;50.08601;90.12017;16.44163;2460996.96956861;13.26962306;1.3;_Park Command Successful
2025-11-17T13:16:11.729 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:16:11.729 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:16:11.729 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:16:11.730 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:16:11.730 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:16:12.304 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:12.304 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Status age = 11.035148620605469s
2025-11-17T13:16:12.304 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:12.304 [DEBUG] [Thread-67889 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:12.305 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:12.306 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 17;19.4223233;-24.256415;50.108308;89.992887;50.08601;90.12017;16.44207;2460996.96958687;13.27007028;1.3;_
2025-11-17T13:16:12.307 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response 17;19.4223233;-24.256415;50.108308;89.992887;50.08601;90.12017;16.44207;2460996.96958687;13.27007028;1.3;_
2025-11-17T13:16:12.307 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:12.307 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:12.307 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:12.308 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:12.308 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:12.308 [INFO] [Thread-67889 (handle)] [driver.py] [get_status()] Telra = 19.4223233, teldec = -24.256415
2025-11-17T13:16:12.308 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4223233 -24.256415
2025-11-17T13:16:12.308 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4223233 -24.256415
2025-11-17T13:16:12.308 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4223233 -24.256415
2025-11-17T13:16:12.309 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 17;19.4223233;-24.256415;50.108308;89.992887;50.08601;90.12017;16.44207;2460996.96958691;13.27007028;1.3;_19.3962874248272 -24.3055292385417
2025-11-17T13:16:12.309 [INFO] [Thread-67889 (handle)] [driver.py] [get_status()] ra_j2k = 19.3962874248272     dec_j2k = -24.3055292385417
2025-11-17T13:16:12.309 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:12.309 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:12.309 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 140;0.104652339563159;171.162357330327;_
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response 140;0.104652339563159;171.162357330327;_
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:12.310 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:12.311 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:12.312 [DEBUG] [Thread-67889 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:12.312 [DEBUG] [Thread-67889 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:12.312 [DEBUG] [Thread-67889 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:12.316 [DEBUG] [Thread-67889 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44265)
2025-11-17T13:16:12.316 [DEBUG] [Thread-67889 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:12.316 [DEBUG] [Thread-67889 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:12.317 [DEBUG] [Thread-67889 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:12.317 [DEBUG] [Thread-67889 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:12.317 [DEBUG] [Thread-67889 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:12.324 [DEBUG] [Thread-67889 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:12.324 [INFO] [Thread-67889 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96958687, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652339563159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992887, telescope_ra=19.4223233, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.44207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.3962874248272, telescope_dec_j2k=-24.3055292385417, observability=1)
2025-11-17T13:16:12.730 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:16:12.730 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:16:12.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:16:12.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:16:12.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:16:13.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:16:13.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:16:13.731 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:16:13.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:16:13.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:14.732 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:16:14.733 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:16:14.734 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.6146914958953857s
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:14.939 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:14.940 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4230517;-24.256415;50.108308;89.992886;50.08601;90.12017;16.4428;2460996.96961737;13.27079667;1.3;_
2025-11-17T13:16:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.4230517;-24.256415;50.108308;89.992886;50.08601;90.12017;16.4428;2460996.96961737;13.27079667;1.3;_
2025-11-17T13:16:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:14.941 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:14.942 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.4230517, teldec = -24.256415
2025-11-17T13:16:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4230517 -24.256415
2025-11-17T13:16:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4230517 -24.256415
2025-11-17T13:16:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4230517 -24.256415
2025-11-17T13:16:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4230517;-24.256415;50.108308;89.992886;50.08601;90.12017;16.4428;2460996.9696174;13.27079667;1.3;_19.3970160452535 -24.3055548855309
2025-11-17T13:16:14.944 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.3970160452535     dec_j2k = -24.3055548855309
2025-11-17T13:16:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104653021466187;171.162346601491;_
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104653021466187;171.162346601491;_
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:14.951 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44441)
2025-11-17T13:16:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:14.952 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:14.952 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:14.959 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:14.960 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.96961737, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653021466187, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992886, telescope_ra=19.4230517, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.4428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.3970160452535, telescope_dec_j2k=-24.3055548855309, observability=1)
2025-11-17T13:16:15.734 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:15.734 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:15.734 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:15.735 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:15.735 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:15.735 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:15.735 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:15.735 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:16:15.736 [DEBUG] [ThreadPoolExecutor-2832_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:15.736 [INFO] [ThreadPoolExecutor-2832_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Status age = 4.361939430236816s
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:19.322 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:19.323 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:19.324 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 17;19.4242767;-24.256415;50.108308;89.992886;50.08601;90.12017;16.44403;2460996.9696681;13.27201833;1.3;_
2025-11-17T13:16:19.324 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response 17;19.4242767;-24.256415;50.108308;89.992886;50.08601;90.12017;16.44403;2460996.9696681;13.27201833;1.3;_
2025-11-17T13:16:19.324 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:19.324 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:19.324 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:19.325 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:19.325 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:19.325 [INFO] [Thread-67890 (handle)] [driver.py] [get_status()] Telra = 19.4242767, teldec = -24.256415
2025-11-17T13:16:19.325 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4242767 -24.256415
2025-11-17T13:16:19.325 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4242767 -24.256415
2025-11-17T13:16:19.325 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4242767 -24.256415
2025-11-17T13:16:19.326 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 17;19.4242767;-24.256415;50.108308;89.992886;50.08601;90.12017;16.44403;2460996.96966812;13.27201833;1.3;_19.3982414162758 -24.3055980138939
2025-11-17T13:16:19.326 [INFO] [Thread-67890 (handle)] [driver.py] [get_status()] ra_j2k = 19.3982414162758     dec_j2k = -24.3055980138939
2025-11-17T13:16:19.326 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:19.326 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:19.326 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 140;0.104652098891502;171.162346601491;_
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response 140;0.104652098891502;171.162346601491;_
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:19.327 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:19.328 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:19.329 [DEBUG] [Thread-67890 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:19.329 [DEBUG] [Thread-67890 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:19.329 [DEBUG] [Thread-67890 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43483)
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:19.333 [DEBUG] [Thread-67890 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:19.341 [DEBUG] [Thread-67890 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:19.342 [INFO] [Thread-67890 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9696681, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652098891502, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108308, telescope_az=89.992886, telescope_ra=19.4242767, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.44403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.3982414162758, telescope_dec_j2k=-24.3055980138939, observability=1)
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.733274698257446s
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:29.075 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:29.076 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:29.077 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4269791;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44673;2460996.96978098;13.27471333;1.3;_
2025-11-17T13:16:29.077 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.4269791;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44673;2460996.96978098;13.27471333;1.3;_
2025-11-17T13:16:29.077 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:29.077 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:29.077 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:29.078 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:29.078 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:29.078 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.4269791, teldec = -24.256415
2025-11-17T13:16:29.078 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.4269791 -24.256415
2025-11-17T13:16:29.078 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.4269791 -24.256415
2025-11-17T13:16:29.078 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4269791 -24.256415
2025-11-17T13:16:29.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4269791;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44673;2460996.96978101;13.27471333;1.3;_19.4009446361693 -24.3056931393754
2025-11-17T13:16:29.080 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.4009446361693     dec_j2k = -24.3056931393754
2025-11-17T13:16:29.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:29.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:29.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104652620346759;171.162357330327;_
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104652620346759;171.162357330327;_
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:29.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:29.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:29.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:29.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:29.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49713)
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:29.090 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:29.097 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:16:29.098 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96978098, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652620346759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992886, telescope_ra=19.4269791, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.44673, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.4009446361693, telescope_dec_j2k=-24.3056931393754, observability=1)
2025-11-17T13:16:29.098 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0880401134491 seconds ago
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5054473876953125s
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:31.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:31.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:31.604 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:31.604 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:31.604 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:31.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:31.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:31.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:31.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4276969;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44745;2460996.96981024;13.27542917;1.3;_
2025-11-17T13:16:31.606 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.4276969;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44745;2460996.96981024;13.27542917;1.3;_
2025-11-17T13:16:31.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:31.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:31.606 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:31.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:31.607 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:31.607 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.4276969, teldec = -24.256415
2025-11-17T13:16:31.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4276969 -24.256415
2025-11-17T13:16:31.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4276969 -24.256415
2025-11-17T13:16:31.607 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4276969 -24.256415
2025-11-17T13:16:31.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4276969;-24.256415;50.108307;89.992886;50.08601;90.12017;16.44745;2460996.96981028;13.27542917;1.3;_19.4016626542704 -24.305718402161
2025-11-17T13:16:31.608 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.4016626542704     dec_j2k = -24.305718402161
2025-11-17T13:16:31.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:31.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:31.608 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104652580234816;171.162357330327;_
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104652580234816;171.162357330327;_
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:31.609 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:31.610 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:31.611 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:31.611 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:31.611 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44167)
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:31.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:31.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:31.623 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:31.623 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:31.623 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:31.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:31.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:31.624 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:31.624 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:31.624 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:31.624 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96981024, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652580234816, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992886, telescope_ra=19.4276969, telescope_dec=-24.256415, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.44745, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.4016626542704, telescope_dec_j2k=-24.305718402161, observability=1)
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Status age = 5.768800735473633s
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:37.393 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:37.394 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:37.395 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 17;19.4292868;-24.256414;50.108307;89.992886;50.08601;90.12017;16.44904;2460996.96987726;13.27701472;1.3;_
2025-11-17T13:16:37.395 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response 17;19.4292868;-24.256414;50.108307;89.992886;50.08601;90.12017;16.44904;2460996.96987726;13.27701472;1.3;_
2025-11-17T13:16:37.395 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:37.395 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:37.395 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:37.396 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:37.396 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:37.396 [INFO] [Thread-67891 (handle)] [driver.py] [get_status()] Telra = 19.4292868, teldec = -24.256414
2025-11-17T13:16:37.396 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4292868 -24.256414
2025-11-17T13:16:37.396 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4292868 -24.256414
2025-11-17T13:16:37.396 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4292868 -24.256414
2025-11-17T13:16:37.397 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 17;19.4292868;-24.256414;50.108307;89.992886;50.08601;90.12017;16.44904;2460996.96987728;13.27701472;1.3;_19.4032530380295 -24.3057733523194
2025-11-17T13:16:37.397 [INFO] [Thread-67891 (handle)] [driver.py] [get_status()] ra_j2k = 19.4032530380295     dec_j2k = -24.3057733523194
2025-11-17T13:16:37.397 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:37.397 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:37.397 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 140;0.104652379675102;171.162357330327;_
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response 140;0.104652379675102;171.162357330327;_
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:37.398 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:37.399 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:37.400 [DEBUG] [Thread-67891 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:37.400 [DEBUG] [Thread-67891 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:37.400 [DEBUG] [Thread-67891 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44071)
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:37.407 [DEBUG] [Thread-67891 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:37.414 [DEBUG] [Thread-67891 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:37.415 [DEBUG] [Thread-67891 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:37.415 [DEBUG] [Thread-67891 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:37.415 [INFO] [Thread-67891 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96987726, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652379675102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992886, telescope_ra=19.4292868, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.44904, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.4032530380295, telescope_dec_j2k=-24.3057733523194, observability=1)
2025-11-17T13:16:44.071 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:16:44
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.656128644943237s
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:44.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:44.072 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:44.073 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4311575;-24.256414;50.108307;89.992886;50.08601;90.12017;16.45091;2460996.96995455;13.27888028;1.3;_
2025-11-17T13:16:44.073 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.4311575;-24.256414;50.108307;89.992886;50.08601;90.12017;16.45091;2460996.96995455;13.27888028;1.3;_
2025-11-17T13:16:44.073 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:44.073 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:44.073 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:44.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:44.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:44.074 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.4311575, teldec = -24.256414
2025-11-17T13:16:44.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4311575 -24.256414
2025-11-17T13:16:44.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4311575 -24.256414
2025-11-17T13:16:44.074 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4311575 -24.256414
2025-11-17T13:16:44.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4311575;-24.256414;50.108307;89.992886;50.08601;90.12017;16.45091;2460996.96995457;13.27888028;1.3;_19.4051243078616 -24.3058391733306
2025-11-17T13:16:44.075 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.4051243078616     dec_j2k = -24.3058391733306
2025-11-17T13:16:44.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:44.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:44.075 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104652459898988;171.162351965909;_
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104652459898988;171.162351965909;_
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:44.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:44.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:44.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:44.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:44.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57785)
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:44.084 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:44.091 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:44.091 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.96995455, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652459898988, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992886, telescope_ra=19.4311575, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.45091, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:15:49.839673', telescope_ra_j2k=19.4051243078616, telescope_dec_j2k=-24.3058391733306, observability=1)
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:49.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:49.982 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:49.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:49.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:49.984 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:16:49.984 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:49.984 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:49.984 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:49.984 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:49.984 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:16:49.985 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:16:49.986 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:50.986 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:50.986 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:50.986 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:50.986 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:50.986 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:16:50.987 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:50.988 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:50.989 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:50.989 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:50.989 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:50.989 [DEBUG] [ThreadPoolExecutor-2834_0] [payload.py] [to_registers()] [0]
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60235)
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:50.994 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:51.001 [DEBUG] [ThreadPoolExecutor-2834_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Status age = 11.410369396209717s
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:16:55.502 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:16:55.503 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:16:55.504 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 17;19.4343311;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45408;2460996.97008685;13.28204528;1.3;_
2025-11-17T13:16:55.504 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response 17;19.4343311;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45408;2460996.97008685;13.28204528;1.3;_
2025-11-17T13:16:55.504 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:16:55.504 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:16:55.504 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:16:55.505 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:55.505 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:16:55.505 [INFO] [Thread-67892 (handle)] [driver.py] [get_status()] Telra = 19.4343311, teldec = -24.256414
2025-11-17T13:16:55.505 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4343311 -24.256414
2025-11-17T13:16:55.505 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4343311 -24.256414
2025-11-17T13:16:55.505 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4343311 -24.256414
2025-11-17T13:16:55.506 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 17;19.4343311;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45408;2460996.97008688;13.28204528;1.3;_19.4082988766842 -24.3059508107302
2025-11-17T13:16:55.506 [INFO] [Thread-67892 (handle)] [driver.py] [get_status()] ra_j2k = 19.4082988766842     dec_j2k = -24.3059508107302
2025-11-17T13:16:55.506 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:16:55.506 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:16:55.506 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:55.507 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:16:55.508 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:16:55.509 [DEBUG] [Thread-67892 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:55.509 [DEBUG] [Thread-67892 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:16:55.509 [DEBUG] [Thread-67892 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40663)
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:16:55.514 [DEBUG] [Thread-67892 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:16:55.521 [DEBUG] [Thread-67892 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:16:55.522 [DEBUG] [Thread-67892 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:16:55.522 [INFO] [Thread-67892 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97008685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465205877956, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992885, telescope_ra=19.4343311, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.45408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4082988766842, telescope_dec_j2k=-24.3059508107302, observability=1)
2025-11-17T13:17:12.357 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Status age = 16.83595848083496s
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:12.358 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:12.359 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:12.360 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 17;19.4390373;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45879;2460996.97028194;13.28673861;1.3;_
2025-11-17T13:17:12.360 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response 17;19.4390373;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45879;2460996.97028194;13.28673861;1.3;_
2025-11-17T13:17:12.360 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:12.360 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:12.360 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:12.361 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:12.361 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:12.361 [INFO] [Thread-67893 (handle)] [driver.py] [get_status()] Telra = 19.4390373, teldec = -24.256414
2025-11-17T13:17:12.361 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4390373 -24.256414
2025-11-17T13:17:12.361 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4390373 -24.256414
2025-11-17T13:17:12.361 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4390373 -24.256414
2025-11-17T13:17:12.362 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 17;19.4390373;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45879;2460996.97028197;13.28673861;1.3;_19.4130065182711 -24.3061162988277
2025-11-17T13:17:12.362 [INFO] [Thread-67893 (handle)] [driver.py] [get_status()] ra_j2k = 19.4130065182711     dec_j2k = -24.3061162988277
2025-11-17T13:17:12.362 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:12.362 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:12.362 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:12.363 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:12.364 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:12.365 [DEBUG] [Thread-67893 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:12.365 [DEBUG] [Thread-67893 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:12.365 [DEBUG] [Thread-67893 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:12.371 [DEBUG] [Thread-67893 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52777)
2025-11-17T13:17:12.371 [DEBUG] [Thread-67893 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:12.371 [DEBUG] [Thread-67893 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:12.371 [DEBUG] [Thread-67893 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:12.372 [DEBUG] [Thread-67893 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:12.372 [DEBUG] [Thread-67893 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:12.379 [DEBUG] [Thread-67893 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:12.379 [INFO] [Thread-67893 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97028194, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651818107903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992885, telescope_ra=19.4390373, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.45879, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4130065182711, telescope_dec_j2k=-24.3061162988277, observability=1)
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Status age = 1.1877567768096924s
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:13.567 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:13.568 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:13.569 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 17;19.4393738;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45913;2460996.97029594;13.28707417;1.3;_
2025-11-17T13:17:13.569 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response 17;19.4393738;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45913;2460996.97029594;13.28707417;1.3;_
2025-11-17T13:17:13.569 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:13.569 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:13.569 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:13.570 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:13.570 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:13.570 [INFO] [Thread-67894 (handle)] [driver.py] [get_status()] Telra = 19.4393738, teldec = -24.256414
2025-11-17T13:17:13.570 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4393738 -24.256414
2025-11-17T13:17:13.570 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4393738 -24.256414
2025-11-17T13:17:13.570 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4393738 -24.256414
2025-11-17T13:17:13.571 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 17;19.4393738;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45913;2460996.97029596;13.28707417;1.3;_19.4133431215707 -24.3061281286465
2025-11-17T13:17:13.571 [INFO] [Thread-67894 (handle)] [driver.py] [get_status()] ra_j2k = 19.4133431215707     dec_j2k = -24.3061281286465
2025-11-17T13:17:13.571 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:13.571 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:13.571 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:13.572 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 140;0.10465177799596;171.162351965909;_
2025-11-17T13:17:13.572 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response 140;0.10465177799596;171.162351965909;_
2025-11-17T13:17:13.572 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:13.573 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:13.574 [DEBUG] [Thread-67894 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:13.575 [DEBUG] [Thread-67894 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:13.575 [DEBUG] [Thread-67894 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:13.576 [DEBUG] [Thread-67894 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52789)
2025-11-17T13:17:13.577 [DEBUG] [Thread-67894 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:13.577 [DEBUG] [Thread-67894 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:13.577 [DEBUG] [Thread-67894 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:13.577 [DEBUG] [Thread-67894 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:13.577 [DEBUG] [Thread-67894 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:13.584 [DEBUG] [Thread-67894 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:13.584 [INFO] [Thread-67894 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97029594, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465177799596, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992885, telescope_ra=19.4393738, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.45913, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4133431215707, telescope_dec_j2k=-24.3061281286465, observability=1)
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3577625751495361s
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:14.942 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:14.943 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:14.943 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4397665;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45952;2460996.97031185;13.28746583;1.3;_
2025-11-17T13:17:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.4397665;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45952;2460996.97031185;13.28746583;1.3;_
2025-11-17T13:17:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:14.945 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.4397665, teldec = -24.256414
2025-11-17T13:17:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4397665 -24.256414
2025-11-17T13:17:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4397665 -24.256414
2025-11-17T13:17:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4397665 -24.256414
2025-11-17T13:17:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4397665;-24.256414;50.108307;89.992885;50.08601;90.12017;16.45952;2460996.97031188;13.28746583;1.3;_19.4137359421606 -24.3061419337275
2025-11-17T13:17:14.946 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.4137359421606     dec_j2k = -24.3061419337275
2025-11-17T13:17:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49301)
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:14.955 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:14.962 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:14.963 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:14.963 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97031185, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651978555674, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992885, telescope_ra=19.4397665, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.45952, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4137359421606, telescope_dec_j2k=-24.3061419337275, observability=1)
2025-11-17T13:17:16.001 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:16.002 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:16.002 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:16.002 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:16.002 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:16.003 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:17:16.004 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:17:16.005 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.195058345794678s
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:29.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:29.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:29.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4437251;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46348;2460996.97047639;13.29141361;1.3;_
2025-11-17T13:17:29.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.4437251;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46348;2460996.97047639;13.29141361;1.3;_
2025-11-17T13:17:29.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:29.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:29.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:29.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:29.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:29.161 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.4437251, teldec = -24.256413
2025-11-17T13:17:29.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.4437251 -24.256413
2025-11-17T13:17:29.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.4437251 -24.256413
2025-11-17T13:17:29.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4437251 -24.256413
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4437251;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46348;2460996.97047642;13.29141361;1.3;_19.4176957602254 -24.3062800668431
2025-11-17T13:17:29.163 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.4176957602254     dec_j2k = -24.3062800668431
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653222025901;171.162351965909;_
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653222025901;171.162351965909;_
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:29.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:29.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:29.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42047)
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:29.169 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:29.177 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:17:29.177 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97047639, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653222025901, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992884, telescope_ra=19.4437251, telescope_dec=-24.256413, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.46348, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4176957602254, telescope_dec_j2k=-24.3062800668431, observability=1)
2025-11-17T13:17:29.177 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.1065788269043 seconds ago
2025-11-17T13:17:30.720 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.5434415340423584s
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:30.721 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:30.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4441636;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46392;2460996.97049447;13.29185083;1.3;_
2025-11-17T13:17:30.722 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.4441636;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46392;2460996.97049447;13.29185083;1.3;_
2025-11-17T13:17:30.722 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:30.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:30.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:30.723 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:30.723 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:30.724 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.4441636, teldec = -24.256413
2025-11-17T13:17:30.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4441636 -24.256413
2025-11-17T13:17:30.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4441636 -24.256413
2025-11-17T13:17:30.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4441636 -24.256413
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4441636;-24.256413;50.108307;89.992884;50.08601;90.12017;16.46392;2460996.9704945;13.29185083;1.3;_19.418134395386 -24.3062954756045
2025-11-17T13:17:30.725 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.418134395386     dec_j2k = -24.3062954756045
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104652299451216;171.162351965909;_
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104652299451216;171.162351965909;_
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:30.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:30.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:30.726 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:30.726 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:30.727 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:30.732 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56647)
2025-11-17T13:17:30.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:30.732 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:30.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:30.733 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:30.733 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:30.740 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:30.740 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97049447, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652299451216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108307, telescope_az=89.992884, telescope_ra=19.4441636, telescope_dec=-24.256413, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.46392, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.418134395386, telescope_dec_j2k=-24.3062954756045, observability=1)
2025-11-17T13:17:31.634 [DEBUG] [Thread-67895 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:31.634 [DEBUG] [Thread-67895 (handle)] [server.py] [get_status()] Status age = 0.8941969871520996s
2025-11-17T13:17:31.634 [DEBUG] [Thread-67895 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8941969871520996
2025-11-17T13:17:44.152 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:17:44
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.411999225616455s
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:44.152 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:44.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:44.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4478982;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46765;2460996.97064993;13.29557528;1.3;_
2025-11-17T13:17:44.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.4478982;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46765;2460996.97064993;13.29557528;1.3;_
2025-11-17T13:17:44.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:44.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:44.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:44.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:44.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:44.155 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.4478982, teldec = -24.256413
2025-11-17T13:17:44.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4478982 -24.256413
2025-11-17T13:17:44.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4478982 -24.256413
2025-11-17T13:17:44.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4478982 -24.256413
2025-11-17T13:17:44.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4478982;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46765;2460996.97064995;13.29557528;1.3;_19.4218701485736 -24.3064266823473
2025-11-17T13:17:44.156 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.4218701485736     dec_j2k = -24.3064266823473
2025-11-17T13:17:44.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:44.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:44.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104652379675102;171.162357330327;_
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104652379675102;171.162357330327;_
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:44.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:44.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:44.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:44.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:17:44.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:17:44.160 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50843)
2025-11-17T13:17:44.160 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:44.160 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:44.160 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:44.160 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:44.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:44.168 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:44.168 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97064993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652379675102, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992884, telescope_ra=19.4478982, telescope_dec=-24.256413, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.46765, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4218701485736, telescope_dec_j2k=-24.3064266823473, observability=1)
2025-11-17T13:17:49.745 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Status age = 5.577507019042969s
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:49.746 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:17:49.747 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:17:49.748 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 17;19.4494385;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46919;2460996.97071468;13.29711139;1.3;_
2025-11-17T13:17:49.748 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response 17;19.4494385;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46919;2460996.97071468;13.29711139;1.3;_
2025-11-17T13:17:49.748 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:17:49.748 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:17:49.748 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:17:49.749 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:49.749 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:17:49.750 [INFO] [Thread-67896 (handle)] [driver.py] [get_status()] Telra = 19.4494385, teldec = -24.256413
2025-11-17T13:17:49.750 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4494385 -24.256413
2025-11-17T13:17:49.750 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4494385 -24.256413
2025-11-17T13:17:49.750 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4494385 -24.256413
2025-11-17T13:17:49.750 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 17;19.4494385;-24.256413;50.108306;89.992884;50.08601;90.12017;16.46919;2460996.9707147;13.29711139;1.3;_19.4234109252671 -24.3064807837353
2025-11-17T13:17:49.751 [INFO] [Thread-67896 (handle)] [driver.py] [get_status()] ra_j2k = 19.4234109252671     dec_j2k = -24.3064807837353
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 140;0.104651697772074;171.162351965909;_
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response 140;0.104651697772074;171.162351965909;_
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:49.751 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:17:49.752 [DEBUG] [Thread-67896 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57307)
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:17:49.758 [DEBUG] [Thread-67896 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:17:49.766 [DEBUG] [Thread-67896 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:17:49.767 [DEBUG] [Thread-67896 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:17:49.767 [INFO] [Thread-67896 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97071468, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651697772074, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992884, telescope_ra=19.4494385, telescope_dec=-24.256413, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.46919, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:16:49.981766', telescope_ra_j2k=19.4234109252671, telescope_dec_j2k=-24.3064807837353, observability=1)
2025-11-17T13:17:50.133 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:50.134 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:17:50.134 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:17:50.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:17:50.135 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:17:50.136 [INFO] [ThreadPoolExecutor-2835_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:17:50.136 [INFO] [ThreadPoolExecutor-2835_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Status age = 18.052194833755493s
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:07.819 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 17;19.4544817;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47423;2460996.97092384;13.30214083;1.3;_
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response 17;19.4544817;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47423;2460996.97092384;13.30214083;1.3;_
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:07.820 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:07.821 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:07.821 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:07.822 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:07.822 [INFO] [Thread-67897 (handle)] [driver.py] [get_status()] Telra = 19.4544817, teldec = -24.256412
2025-11-17T13:18:07.822 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4544817 -24.256412
2025-11-17T13:18:07.822 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4544817 -24.256412
2025-11-17T13:18:07.822 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4544817 -24.256412
2025-11-17T13:18:07.823 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 17;19.4544817;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47423;2460996.97092388;13.30214083;1.3;_19.42845569061 -24.306656865203
2025-11-17T13:18:07.823 [INFO] [Thread-67897 (handle)] [driver.py] [get_status()] ra_j2k = 19.42845569061     dec_j2k = -24.306656865203
2025-11-17T13:18:07.823 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:07.823 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:07.823 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:07.823 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 140;0.104651858219846;171.162357330327;_
2025-11-17T13:18:07.824 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response 140;0.104651858219846;171.162357330327;_
2025-11-17T13:18:07.824 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:07.824 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:07.824 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:07.824 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:07.825 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:07.826 [DEBUG] [Thread-67897 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:18:07.826 [DEBUG] [Thread-67897 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:18:07.826 [DEBUG] [Thread-67897 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33117)
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:07.830 [DEBUG] [Thread-67897 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:07.837 [DEBUG] [Thread-67897 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:07.838 [DEBUG] [Thread-67897 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:07.838 [DEBUG] [Thread-67897 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:18:07.838 [INFO] [Thread-67897 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97092384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651858219846, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992883, telescope_ra=19.4544817, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.47423, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.42845569061, telescope_dec_j2k=-24.306656865203, observability=1)
2025-11-17T13:18:11.005 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.005 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.005 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:11.005 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:11.006 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:11.006 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:18:11.007 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:11.008 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:11.009 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:18:11.010 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:11.011 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Park
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:18:11.012 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:18:11.013 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 29;19.4553689;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47512;2460996.9709608;13.30302556;1.3;_Park Command Successful
2025-11-17T13:18:12.013 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:18:12.013 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:18:12.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:18:12.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:18:12.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Status age = 4.57817268371582s
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:12.416 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:12.417 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:12.418 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 17;19.4557611;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47551;2460996.97097706;13.30341667;1.3;_
2025-11-17T13:18:12.418 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response 17;19.4557611;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47551;2460996.97097706;13.30341667;1.3;_
2025-11-17T13:18:12.418 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:12.418 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:12.418 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:12.419 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:12.419 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:12.419 [INFO] [Thread-67898 (handle)] [driver.py] [get_status()] Telra = 19.4557611, teldec = -24.256412
2025-11-17T13:18:12.419 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4557611 -24.256412
2025-11-17T13:18:12.420 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4557611 -24.256412
2025-11-17T13:18:12.420 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4557611 -24.256412
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 17;19.4557611;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47551;2460996.97097708;13.30341667;1.3;_19.4297354887384 -24.3067017750731
2025-11-17T13:18:12.421 [INFO] [Thread-67898 (handle)] [driver.py] [get_status()] ra_j2k = 19.4297354887384     dec_j2k = -24.3067017750731
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 140;0.104651898331788;171.162368059163;_
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response 140;0.104651898331788;171.162368059163;_
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:12.421 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:12.422 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:12.422 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:18:12.422 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:18:12.422 [DEBUG] [Thread-67898 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:18:12.423 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:12.423 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:12.423 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:12.424 [DEBUG] [Thread-67898 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:12.424 [DEBUG] [Thread-67898 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:12.424 [DEBUG] [Thread-67898 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43223)
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:12.425 [DEBUG] [Thread-67898 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:12.432 [DEBUG] [Thread-67898 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:18:12.433 [INFO] [Thread-67898 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97097706, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651898331788, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992883, telescope_ra=19.4557611, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.47551, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.4297354887384, telescope_dec_j2k=-24.3067017750731, observability=1)
2025-11-17T13:18:13.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:18:13.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:18:13.014 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:18:13.015 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:18:13.015 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:18:14.015 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:18:14.015 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:18:14.015 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:18:14.016 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:18:14.016 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:18:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.528862476348877s
2025-11-17T13:18:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:14.962 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4564808;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47623;2460996.97100652;13.30413444;1.3;_
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.4564808;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47623;2460996.97100652;13.30413444;1.3;_
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:14.964 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.4564808, teldec = -24.256412
2025-11-17T13:18:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4564808 -24.256412
2025-11-17T13:18:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4564808 -24.256412
2025-11-17T13:18:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4564808 -24.256412
2025-11-17T13:18:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4564808;-24.256412;50.108306;89.992883;50.08601;90.12017;16.47623;2460996.97100654;13.30413444;1.3;_19.430455412887 -24.3067270357727
2025-11-17T13:18:14.966 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.430455412887     dec_j2k = -24.3067270357727
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38321)
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:14.970 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:14.978 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:14.978 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:18:14.978 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97100652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465205877956, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992883, telescope_ra=19.4564808, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.47623, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.430455412887, telescope_dec_j2k=-24.3067270357727, observability=1)
2025-11-17T13:18:15.016 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:18:15.016 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:18:15.016 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:15.017 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:18:15.018 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:18:15.019 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:16.019 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:16.019 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:16.019 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:16.019 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:16.019 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:18:16.020 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:18:16.021 [DEBUG] [ThreadPoolExecutor-2834_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:16.021 [INFO] [ThreadPoolExecutor-2834_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:18:25.885 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:25.885 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Status age = 10.90770149230957s
2025-11-17T13:18:25.885 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:25.885 [DEBUG] [Thread-67899 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:25.885 [DEBUG] [Thread-67899 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:25.886 [DEBUG] [Thread-67899 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 17;19.4595239;-24.256412;50.108306;89.992882;50.08601;90.12017;16.47928;2460996.97113295;13.30716917;1.3;_
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response 17;19.4595239;-24.256412;50.108306;89.992882;50.08601;90.12017;16.47928;2460996.97113295;13.30716917;1.3;_
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:25.887 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:25.888 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:25.888 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:25.888 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:25.889 [INFO] [Thread-67899 (handle)] [driver.py] [get_status()] Telra = 19.4595239, teldec = -24.256412
2025-11-17T13:18:25.889 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4595239 -24.256412
2025-11-17T13:18:25.889 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4595239 -24.256412
2025-11-17T13:18:25.889 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4595239 -24.256412
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 17;19.4595239;-24.256412;50.108306;89.992882;50.08601;90.12017;16.47928;2460996.97113297;13.30716917;1.3;_19.4334994621623 -24.3068338260528
2025-11-17T13:18:25.890 [INFO] [Thread-67899 (handle)] [driver.py] [get_status()] ra_j2k = 19.4334994621623     dec_j2k = -24.3068338260528
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 140;0.104651938443731;171.162351965909;_
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response 140;0.104651938443731;171.162351965909;_
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:25.890 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:25.891 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:25.892 [DEBUG] [Thread-67899 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:25.892 [DEBUG] [Thread-67899 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:25.892 [DEBUG] [Thread-67899 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49123)
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:25.894 [DEBUG] [Thread-67899 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:25.901 [DEBUG] [Thread-67899 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:18:25.902 [INFO] [Thread-67899 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97113295, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651938443731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992882, telescope_ra=19.4595239, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.47928, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.4334994621623, telescope_dec_j2k=-24.3068338260528, observability=1)
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.33579421043396s
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:29.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:29.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:29.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:29.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:29.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4604428;-24.256412;50.108306;89.992882;50.08601;90.12017;16.48019;2460996.97117175;13.30808556;1.3;_
2025-11-17T13:18:29.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.4604428;-24.256412;50.108306;89.992882;50.08601;90.12017;16.48019;2460996.97117175;13.30808556;1.3;_
2025-11-17T13:18:29.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:29.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:29.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:29.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:29.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:29.241 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.4604428, teldec = -24.256412
2025-11-17T13:18:29.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.4604428 -24.256412
2025-11-17T13:18:29.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.4604428 -24.256412
2025-11-17T13:18:29.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4604428 -24.256412
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4604428;-24.256412;50.108306;89.992882;50.08601;90.12017;16.48019;2460996.97117178;13.30808556;1.3;_19.4344186492873 -24.3068660665052
2025-11-17T13:18:29.242 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.4344186492873     dec_j2k = -24.3068660665052
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104651978555674;171.162357330327;_
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:29.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:29.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:29.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:29.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:29.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:29.249 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49653)
2025-11-17T13:18:29.250 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:29.250 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:29.250 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:29.250 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:29.250 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:29.257 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:18:29.258 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97117175, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651978555674, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108306, telescope_az=89.992882, telescope_ra=19.4604428, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.48019, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.4344186492873, telescope_dec_j2k=-24.3068660665052, observability=1)
2025-11-17T13:18:29.258 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.105764865875244 seconds ago
2025-11-17T13:18:29.834 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:29.834 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5764040946960449s
2025-11-17T13:18:29.834 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5764040946960449
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Status age = 14.744221687316895s
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:44.002 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:44.003 [DEBUG] [Thread-67900 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:44.003 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:18:44.003 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:18:44.003 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:18:44.003 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:18:44.004 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 17;19.4645629;-24.256412;50.108305;89.992882;50.08601;90.12017;16.48431;2460996.97134264;13.31219444;1.3;_
2025-11-17T13:18:44.004 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response 17;19.4645629;-24.256412;50.108305;89.992882;50.08601;90.12017;16.48431;2460996.97134264;13.31219444;1.3;_
2025-11-17T13:18:44.004 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:18:44.004 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:18:44.004 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:18:44.005 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:44.005 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:18:44.005 [INFO] [Thread-67900 (handle)] [driver.py] [get_status()] Telra = 19.4645629, teldec = -24.256412
2025-11-17T13:18:44.005 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4645629 -24.256412
2025-11-17T13:18:44.005 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4645629 -24.256412
2025-11-17T13:18:44.005 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4645629 -24.256412
2025-11-17T13:18:44.006 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 17;19.4645629;-24.256412;50.108305;89.992882;50.08601;90.12017;16.48431;2460996.97134266;13.31219444;1.3;_19.4385400394152 -24.3070105889566
2025-11-17T13:18:44.006 [INFO] [Thread-67900 (handle)] [driver.py] [get_status()] ra_j2k = 19.4385400394152     dec_j2k = -24.3070105889566
2025-11-17T13:18:44.006 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:18:44.006 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:18:44.006 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 140;0.104651537324303;171.162357330327;_
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response 140;0.104651537324303;171.162357330327;_
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:18:44.007 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:18:44.008 [DEBUG] [Thread-67900 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:44.008 [DEBUG] [Thread-67900 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:18:44.008 [DEBUG] [Thread-67900 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37027)
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:44.013 [DEBUG] [Thread-67900 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:44.020 [DEBUG] [Thread-67900 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:44.020 [DEBUG] [Thread-67900 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:44.020 [DEBUG] [Thread-67900 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:18:44.021 [DEBUG] [Thread-67900 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:18:44.021 [INFO] [Thread-67900 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97134264, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651537324303, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992882, telescope_ra=19.4645629, telescope_dec=-24.256412, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.48431, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:17:50.133044', telescope_ra_j2k=19.4385400394152, telescope_dec_j2k=-24.3070105889566, observability=1)
2025-11-17T13:18:44.229 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:18:44
2025-11-17T13:18:44.229 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:18:44.229 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.20826220512390137s
2025-11-17T13:18:44.229 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.20826220512390137
2025-11-17T13:18:50.276 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:50.276 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:50.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:50.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:50.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:50.277 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:50.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:50.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:50.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:50.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:50.278 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:18:50.278 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:50.278 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:50.278 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:50.278 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:50.278 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:18:50.279 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:18:50.280 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:51.280 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:51.280 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:51.280 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:51.280 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:51.280 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:51.281 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:51.281 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:51.281 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:51.281 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:18:51.282 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:18:51.283 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:18:51.283 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:18:51.283 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:18:51.284 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:18:51.284 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:18:51.284 [DEBUG] [ThreadPoolExecutor-2836_0] [payload.py] [to_registers()] [0]
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42559)
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:18:51.290 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:18:51.298 [DEBUG] [ThreadPoolExecutor-2836_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:02.070 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Status age = 18.04990243911743s
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:02.071 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 17;19.4696047;-24.256411;50.108305;89.992881;50.08601;90.12017;16.48936;2460996.97155176;13.3172225;1.3;_
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response 17;19.4696047;-24.256411;50.108305;89.992881;50.08601;90.12017;16.48936;2460996.97155176;13.3172225;1.3;_
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:02.072 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:02.073 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:02.073 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:02.073 [INFO] [Thread-67901 (handle)] [driver.py] [get_status()] Telra = 19.4696047, teldec = -24.256411
2025-11-17T13:19:02.073 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4696047 -24.256411
2025-11-17T13:19:02.073 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4696047 -24.256411
2025-11-17T13:19:02.073 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4696047 -24.256411
2025-11-17T13:19:02.074 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 17;19.4696047;-24.256411;50.108305;89.992881;50.08601;90.12017;16.48936;2460996.97155178;13.3172225;1.3;_19.4435834244307 -24.3071863641749
2025-11-17T13:19:02.074 [INFO] [Thread-67901 (handle)] [driver.py] [get_status()] ra_j2k = 19.4435834244307     dec_j2k = -24.3071863641749
2025-11-17T13:19:02.074 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:02.074 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 140;0.104651858219846;171.162351965909;_
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response 140;0.104651858219846;171.162351965909;_
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:02.075 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:02.076 [DEBUG] [Thread-67901 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:02.080 [DEBUG] [Thread-67901 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36833)
2025-11-17T13:19:02.080 [DEBUG] [Thread-67901 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:02.080 [DEBUG] [Thread-67901 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:02.080 [DEBUG] [Thread-67901 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:02.080 [DEBUG] [Thread-67901 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:02.081 [DEBUG] [Thread-67901 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:02.087 [DEBUG] [Thread-67901 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:02.088 [DEBUG] [Thread-67901 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:02.088 [INFO] [Thread-67901 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97155176, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651858219846, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992881, telescope_ra=19.4696047, telescope_dec=-24.256411, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.48936, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4435834244307, telescope_dec_j2k=-24.3071863641749, observability=1)
2025-11-17T13:19:12.466 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:12.466 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Status age = 10.37831711769104s
2025-11-17T13:19:12.466 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:12.466 [DEBUG] [Thread-67902 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:12.466 [DEBUG] [Thread-67902 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:12.467 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:12.468 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 17;19.4724806;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49223;2460996.97167208;13.32009056;1.3;_
2025-11-17T13:19:12.468 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response 17;19.4724806;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49223;2460996.97167208;13.32009056;1.3;_
2025-11-17T13:19:12.468 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:12.468 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:12.468 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:12.469 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:12.469 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:12.469 [INFO] [Thread-67902 (handle)] [driver.py] [get_status()] Telra = 19.4724806, teldec = -24.256411
2025-11-17T13:19:12.469 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4724806 -24.256411
2025-11-17T13:19:12.469 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4724806 -24.256411
2025-11-17T13:19:12.469 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4724806 -24.256411
2025-11-17T13:19:12.470 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 17;19.4724806;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49223;2460996.97167211;13.32009056;1.3;_19.4464602314347 -24.3072871600755
2025-11-17T13:19:12.470 [INFO] [Thread-67902 (handle)] [driver.py] [get_status()] ra_j2k = 19.4464602314347     dec_j2k = -24.3072871600755
2025-11-17T13:19:12.470 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:12.470 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 140;0.104651136204875;171.162346601491;_
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response 140;0.104651136204875;171.162346601491;_
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:12.471 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:12.472 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:12.473 [DEBUG] [Thread-67902 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:12.473 [DEBUG] [Thread-67902 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:12.473 [DEBUG] [Thread-67902 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:12.479 [DEBUG] [Thread-67902 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51839)
2025-11-17T13:19:12.479 [DEBUG] [Thread-67902 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:12.479 [DEBUG] [Thread-67902 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:12.480 [DEBUG] [Thread-67902 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:12.480 [DEBUG] [Thread-67902 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:12.480 [DEBUG] [Thread-67902 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:12.487 [DEBUG] [Thread-67902 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:12.487 [INFO] [Thread-67902 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97167208, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651136204875, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992881, telescope_ra=19.4724806, telescope_dec=-24.256411, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.49223, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4464602314347, telescope_dec_j2k=-24.3072871600755, observability=1)
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.483086109161377s
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4731993;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49295;2460996.97170106;13.32080722;1.3;_
2025-11-17T13:19:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.4731993;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49295;2460996.97170106;13.32080722;1.3;_
2025-11-17T13:19:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:14.973 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.4731993, teldec = -24.256411
2025-11-17T13:19:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4731993 -24.256411
2025-11-17T13:19:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4731993 -24.256411
2025-11-17T13:19:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4731993 -24.256411
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.4731993;-24.256411;50.108305;89.992881;50.08601;90.12017;16.49295;2460996.97170109;13.32080722;1.3;_19.4471791584393 -24.3073123450191
2025-11-17T13:19:14.974 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.4471791584393     dec_j2k = -24.3073123450191
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104651216428761;171.162357330327;_
2025-11-17T13:19:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104651216428761;171.162357330327;_
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51891)
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:14.990 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:14.990 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:14.990 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:14.990 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:14.990 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:14.991 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:14.991 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:14.991 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97170106, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651216428761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992881, telescope_ra=19.4731993, telescope_dec=-24.256411, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.49295, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4471791584393, telescope_dec_j2k=-24.3073123450191, observability=1)
2025-11-17T13:19:16.298 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:16.299 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:16.299 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:16.299 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:16.299 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:16.300 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:19:16.301 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:19:16.302 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:20.173 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:20.173 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Status age = 5.1826722621917725s
2025-11-17T13:19:20.173 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:20.173 [DEBUG] [Thread-67903 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:20.174 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 17;19.4746491;-24.256411;50.108305;89.992881;50.08601;90.12017;16.4944;2460996.97176127;13.32225306;1.3;_
2025-11-17T13:19:20.175 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response 17;19.4746491;-24.256411;50.108305;89.992881;50.08601;90.12017;16.4944;2460996.97176127;13.32225306;1.3;_
2025-11-17T13:19:20.175 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:20.175 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:20.175 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:20.176 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:20.176 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:20.176 [INFO] [Thread-67903 (handle)] [driver.py] [get_status()] Telra = 19.4746491, teldec = -24.256411
2025-11-17T13:19:20.176 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4746491 -24.256411
2025-11-17T13:19:20.176 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4746491 -24.256411
2025-11-17T13:19:20.176 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4746491 -24.256411
2025-11-17T13:19:20.177 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 17;19.4746491;-24.256411;50.108305;89.992881;50.08601;90.12017;16.4944;2460996.97176131;13.32225306;1.3;_19.448629416779 -24.3073631440787
2025-11-17T13:19:20.177 [INFO] [Thread-67903 (handle)] [driver.py] [get_status()] ra_j2k = 19.448629416779     dec_j2k = -24.3073631440787
2025-11-17T13:19:20.177 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:20.177 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:20.177 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 140;0.104651296652646;171.162351965909;_
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response 140;0.104651296652646;171.162351965909;_
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:20.178 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:20.179 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:20.180 [DEBUG] [Thread-67903 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:20.180 [DEBUG] [Thread-67903 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:20.180 [DEBUG] [Thread-67903 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33929)
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:20.181 [DEBUG] [Thread-67903 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:20.188 [DEBUG] [Thread-67903 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:20.188 [INFO] [Thread-67903 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97176127, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651296652646, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992881, telescope_ra=19.4746491, telescope_dec=-24.256411, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.4944, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.448629416779, telescope_dec_j2k=-24.3073631440787, observability=1)
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.736954689025879s
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:28.925 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:28.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:28.926 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:28.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:28.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4770768;-24.25641;50.108305;89.992881;50.08601;90.12017;16.49683;2460996.97186259;13.32467417;1.3;_
2025-11-17T13:19:28.928 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.4770768;-24.25641;50.108305;89.992881;50.08601;90.12017;16.49683;2460996.97186259;13.32467417;1.3;_
2025-11-17T13:19:28.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:28.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:28.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:28.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:28.929 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:28.929 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.4770768, teldec = -24.25641
2025-11-17T13:19:28.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4770768 -24.25641
2025-11-17T13:19:28.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4770768 -24.25641
2025-11-17T13:19:28.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4770768 -24.25641
2025-11-17T13:19:28.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4770768;-24.25641;50.108305;89.992881;50.08601;90.12017;16.49683;2460996.97186262;13.32467417;1.3;_19.4510578856992 -24.3074471914914
2025-11-17T13:19:28.930 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.4510578856992     dec_j2k = -24.3074471914914
2025-11-17T13:19:28.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:28.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:28.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104651096092932;171.162351965909;_
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104651096092932;171.162351965909;_
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:28.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:28.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:28.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:28.933 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:28.933 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38583)
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:28.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:28.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:28.944 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:28.944 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:28.944 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:28.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:28.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:28.945 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:28.945 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:28.945 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:28.945 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97186259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651096092932, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.992881, telescope_ra=19.4770768, telescope_dec=-24.25641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.49683, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4510578856992, telescope_dec_j2k=-24.3074471914914, observability=1)
2025-11-17T13:19:29.318 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:19:29.318 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3729512691497803s
2025-11-17T13:19:29.318 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3729512691497803
2025-11-17T13:19:29.318 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08894944190979 seconds ago
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Status age = 9.29306674003601s
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:38.238 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:38.239 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:38.239 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:38.239 [DEBUG] [Thread-67904 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:38.239 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:38.239 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:38.240 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:38.240 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:38.241 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 17;19.4796711;-24.25641;50.108305;89.99288;50.08601;90.12017;16.49942;2460996.97197037;13.32726139;1.3;_
2025-11-17T13:19:38.241 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response 17;19.4796711;-24.25641;50.108305;89.99288;50.08601;90.12017;16.49942;2460996.97197037;13.32726139;1.3;_
2025-11-17T13:19:38.241 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:38.241 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:38.241 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:38.243 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:38.243 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:38.243 [INFO] [Thread-67904 (handle)] [driver.py] [get_status()] Telra = 19.4796711, teldec = -24.25641
2025-11-17T13:19:38.243 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4796711 -24.25641
2025-11-17T13:19:38.243 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4796711 -24.25641
2025-11-17T13:19:38.243 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4796711 -24.25641
2025-11-17T13:19:38.244 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 17;19.4796711;-24.25641;50.108305;89.99288;50.08601;90.12017;16.49942;2460996.97197042;13.32726139;1.3;_19.4536530089013 -24.3075380529201
2025-11-17T13:19:38.244 [INFO] [Thread-67904 (handle)] [driver.py] [get_status()] ra_j2k = 19.4536530089013     dec_j2k = -24.3075380529201
2025-11-17T13:19:38.244 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:38.244 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:38.244 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 140;0.104651296652646;171.162357330327;_
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response 140;0.104651296652646;171.162357330327;_
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:38.245 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:38.246 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:38.247 [DEBUG] [Thread-67904 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:38.247 [DEBUG] [Thread-67904 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:38.247 [DEBUG] [Thread-67904 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:38.253 [DEBUG] [Thread-67904 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48675)
2025-11-17T13:19:38.253 [DEBUG] [Thread-67904 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:38.253 [DEBUG] [Thread-67904 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:38.253 [DEBUG] [Thread-67904 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:38.253 [DEBUG] [Thread-67904 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:38.254 [DEBUG] [Thread-67904 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:38.261 [DEBUG] [Thread-67904 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:38.261 [INFO] [Thread-67904 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97197037, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651296652646, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.99288, telescope_ra=19.4796711, telescope_dec=-24.25641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.49942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4536530089013, telescope_dec_j2k=-24.3075380529201, observability=1)
2025-11-17T13:19:44.290 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:19:44
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.028729438781738s
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:44.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:44.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:44.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4813705;-24.25641;50.108305;89.99288;50.08601;90.12017;16.50112;2460996.97204042;13.32895611;1.3;_
2025-11-17T13:19:44.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.4813705;-24.25641;50.108305;89.99288;50.08601;90.12017;16.50112;2460996.97204042;13.32895611;1.3;_
2025-11-17T13:19:44.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:44.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:44.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:44.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:44.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:44.293 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.4813705, teldec = -24.25641
2025-11-17T13:19:44.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4813705 -24.25641
2025-11-17T13:19:44.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4813705 -24.25641
2025-11-17T13:19:44.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4813705 -24.25641
2025-11-17T13:19:44.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4813705;-24.25641;50.108305;89.99288;50.08601;90.12017;16.50112;2460996.97204044;13.32895611;1.3;_19.4553529491016 -24.3075975593563
2025-11-17T13:19:44.294 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.4553529491016     dec_j2k = -24.3075975593563
2025-11-17T13:19:44.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:44.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:44.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10465049441379;171.162362694745;_
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10465049441379;171.162362694745;_
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:44.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:44.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:44.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:44.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:44.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57697)
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:44.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:44.309 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:44.309 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97204042, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465049441379, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108305, telescope_az=89.99288, telescope_ra=19.4813705, telescope_dec=-24.25641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.50112, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:18:50.276048', telescope_ra_j2k=19.4553529491016, telescope_dec_j2k=-24.3075975593563, observability=1)
2025-11-17T13:19:50.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:50.416 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:50.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:50.417 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:50.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:50.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:50.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:50.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:50.418 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:19:50.419 [INFO] [ThreadPoolExecutor-2837_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:19:50.419 [INFO] [ThreadPoolExecutor-2837_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Status age = 12.003659725189209s
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:19:56.313 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 17;19.4847127;-24.25641;50.108304;89.99288;50.08601;90.12017;16.50446;2460996.97217956;13.33228917;1.3;_
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response 17;19.4847127;-24.25641;50.108304;89.99288;50.08601;90.12017;16.50446;2460996.97217956;13.33228917;1.3;_
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:19:56.314 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:19:56.315 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:19:56.315 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:56.315 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:19:56.316 [INFO] [Thread-67905 (handle)] [driver.py] [get_status()] Telra = 19.4847127, teldec = -24.25641
2025-11-17T13:19:56.316 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4847127 -24.25641
2025-11-17T13:19:56.316 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4847127 -24.25641
2025-11-17T13:19:56.316 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4847127 -24.25641
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 17;19.4847127;-24.25641;50.108304;89.99288;50.08601;90.12017;16.50446;2460996.9721796;13.33228917;1.3;_19.4586962137282 -24.3077145614546
2025-11-17T13:19:56.317 [INFO] [Thread-67905 (handle)] [driver.py] [get_status()] ra_j2k = 19.4586962137282     dec_j2k = -24.3077145614546
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 140;0.104651296652646;171.162351965909;_
2025-11-17T13:19:56.317 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response 140;0.104651296652646;171.162351965909;_
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:19:56.318 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:19:56.319 [DEBUG] [Thread-67905 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:56.319 [DEBUG] [Thread-67905 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:19:56.319 [DEBUG] [Thread-67905 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50625)
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:19:56.326 [DEBUG] [Thread-67905 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:19:56.333 [DEBUG] [Thread-67905 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:19:56.333 [INFO] [Thread-67905 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97217956, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651296652646, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.99288, telescope_ra=19.4847127, telescope_dec=-24.25641, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.50446, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4586962137282, telescope_dec_j2k=-24.3077145614546, observability=1)
2025-11-17T13:20:11.302 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.302 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.302 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:11.302 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:11.302 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:20:11.303 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:11.304 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:11.305 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:20:11.306 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:11.307 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:11.308 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:11.308 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:11.308 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:11.308 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Park
2025-11-17T13:20:11.308 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:20:11.309 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:20:11.309 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 29;19.488893;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50864;2460996.97235311;13.33645806;1.3;_Park Command Successful
2025-11-17T13:20:12.309 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:20:12.310 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:20:12.310 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:20:12.310 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:20:12.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Status age = 16.186702966690063s
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:12.520 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 17;19.4892203;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50897;2460996.97236714;13.33678444;1.3;_
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response 17;19.4892203;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50897;2460996.97236714;13.33678444;1.3;_
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:12.521 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:12.522 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:12.522 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:12.522 [INFO] [Thread-67906 (handle)] [driver.py] [get_status()] Telra = 19.4892203, teldec = -24.256409
2025-11-17T13:20:12.522 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4892203 -24.256409
2025-11-17T13:20:12.523 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4892203 -24.256409
2025-11-17T13:20:12.523 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4892203 -24.256409
2025-11-17T13:20:12.524 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 17;19.4892203;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50897;2460996.97236716;13.33678444;1.3;_19.4632052544251 -24.3078713006502
2025-11-17T13:20:12.524 [INFO] [Thread-67906 (handle)] [driver.py] [get_status()] ra_j2k = 19.4632052544251     dec_j2k = -24.3078713006502
2025-11-17T13:20:12.524 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:12.524 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:12.524 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:12.525 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:12.526 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:12.527 [DEBUG] [Thread-67906 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:12.527 [DEBUG] [Thread-67906 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:12.527 [DEBUG] [Thread-67906 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43787)
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:12.530 [DEBUG] [Thread-67906 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:12.538 [DEBUG] [Thread-67906 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:12.538 [INFO] [Thread-67906 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97236714, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651818107903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992879, telescope_ra=19.4892203, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.50897, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4632052544251, telescope_dec_j2k=-24.3078713006502, observability=1)
2025-11-17T13:20:13.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:20:13.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:20:13.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:20:13.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:20:13.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:20:14.311 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:20:14.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:20:14.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:20:14.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:20:14.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Status age = 1.908092737197876s
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:14.446 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:14.447 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:14.448 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 17;19.4897537;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50951;2460996.97238944;13.33731639;1.3;_
2025-11-17T13:20:14.448 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response 17;19.4897537;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50951;2460996.97238944;13.33731639;1.3;_
2025-11-17T13:20:14.448 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:14.448 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:14.448 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:14.449 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:14.449 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:14.449 [INFO] [Thread-67907 (handle)] [driver.py] [get_status()] Telra = 19.4897537, teldec = -24.256409
2025-11-17T13:20:14.449 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4897537 -24.256409
2025-11-17T13:20:14.449 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4897537 -24.256409
2025-11-17T13:20:14.449 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4897537 -24.256409
2025-11-17T13:20:14.450 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 17;19.4897537;-24.256409;50.108304;89.992879;50.08601;90.12017;16.50951;2460996.97238947;13.33731639;1.3;_19.4637388252394 -24.3078899618436
2025-11-17T13:20:14.450 [INFO] [Thread-67907 (handle)] [driver.py] [get_status()] ra_j2k = 19.4637388252394     dec_j2k = -24.3078899618436
2025-11-17T13:20:14.450 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:14.450 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:14.450 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:14.451 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:20:14.451 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response 140;0.104651818107903;171.162362694745;_
2025-11-17T13:20:14.451 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:14.451 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:14.451 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:14.452 [DEBUG] [Thread-67907 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40687)
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:14.459 [DEBUG] [Thread-67907 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:14.466 [DEBUG] [Thread-67907 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:14.466 [INFO] [Thread-67907 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97238944, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651818107903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992879, telescope_ra=19.4897537, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.50951, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4637388252394, telescope_dec_j2k=-24.3078899618436, observability=1)
2025-11-17T13:20:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5069715976715088s
2025-11-17T13:20:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5069715976715088
2025-11-17T13:20:15.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:20:15.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:20:15.312 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:15.313 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:20:15.314 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:20:15.315 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:16.315 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:16.315 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:16.315 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:16.315 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:16.315 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:20:16.316 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:20:16.317 [DEBUG] [ThreadPoolExecutor-2836_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:16.317 [INFO] [ThreadPoolExecutor-2836_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:20:28.035 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.569279193878174s
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:28.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:28.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:28.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4935449;-24.256409;50.108304;89.992879;50.08601;90.12017;16.5133;2460996.97254672;13.34109722;1.3;_
2025-11-17T13:20:28.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.4935449;-24.256409;50.108304;89.992879;50.08601;90.12017;16.5133;2460996.97254672;13.34109722;1.3;_
2025-11-17T13:20:28.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:28.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:28.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:28.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:28.039 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:28.039 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.4935449, teldec = -24.256409
2025-11-17T13:20:28.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4935449 -24.256409
2025-11-17T13:20:28.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4935449 -24.256409
2025-11-17T13:20:28.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4935449 -24.256409
2025-11-17T13:20:28.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.4935449;-24.256409;50.108304;89.992879;50.08601;90.12017;16.5133;2460996.97254676;13.34109722;1.3;_19.4675312414771 -24.3080225700999
2025-11-17T13:20:28.040 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.4675312414771     dec_j2k = -24.3080225700999
2025-11-17T13:20:28.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:28.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:28.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104651697772074;171.162351965909;_
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104651697772074;171.162351965909;_
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:28.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:28.042 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39177)
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:28.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:28.054 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:28.054 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97254672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651697772074, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992879, telescope_ra=19.4935449, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5133, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4675312414771, telescope_dec_j2k=-24.3080225700999, observability=1)
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.3233764171600342s
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:29.378 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:29.379 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:29.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4939089;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51366;2460996.97256227;13.34146028;1.3;_
2025-11-17T13:20:29.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.4939089;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51366;2460996.97256227;13.34146028;1.3;_
2025-11-17T13:20:29.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:29.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:29.380 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:29.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:29.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:29.381 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.4939089, teldec = -24.256409
2025-11-17T13:20:29.381 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.4939089 -24.256409
2025-11-17T13:20:29.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.4939089 -24.256409
2025-11-17T13:20:29.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4939089 -24.256409
2025-11-17T13:20:29.382 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.4939089;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51366;2460996.97256229;13.34146028;1.3;_19.4678953584492 -24.3080352994499
2025-11-17T13:20:29.382 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.4678953584492     dec_j2k = -24.3080352994499
2025-11-17T13:20:29.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:29.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:29.383 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10465177799596;171.162346601491;_
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10465177799596;171.162346601491;_
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:29.384 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:29.385 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:29.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:29.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:29.386 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58287)
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:29.389 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:29.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:20:29.397 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97256227, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465177799596, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992879, telescope_ra=19.4939089, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.51366, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4678953584492, telescope_dec_j2k=-24.3080352994499, observability=1)
2025-11-17T13:20:29.397 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10676670074463 seconds ago
2025-11-17T13:20:32.513 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:32.513 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Status age = 3.116957426071167s
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:32.514 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:32.515 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:32.516 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 17;19.494798;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51455;2460996.97259856;13.34234694;1.3;_
2025-11-17T13:20:32.516 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response 17;19.494798;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51455;2460996.97259856;13.34234694;1.3;_
2025-11-17T13:20:32.516 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:32.516 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:32.516 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:32.517 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:32.517 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:32.517 [INFO] [Thread-67908 (handle)] [driver.py] [get_status()] Telra = 19.494798, teldec = -24.256409
2025-11-17T13:20:32.517 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] UnCookCoordinates 19.494798 -24.256409
2025-11-17T13:20:32.517 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.494798 -24.256409
2025-11-17T13:20:32.517 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.494798 -24.256409
2025-11-17T13:20:32.518 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 17;19.494798;-24.256409;50.108304;89.992879;50.08601;90.12017;16.51455;2460996.97259859;13.34234694;1.3;_19.4687847443097 -24.3080663900119
2025-11-17T13:20:32.518 [INFO] [Thread-67908 (handle)] [driver.py] [get_status()] ra_j2k = 19.4687847443097     dec_j2k = -24.3080663900119
2025-11-17T13:20:32.518 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:32.518 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:32.518 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 140;0.104652419787045;171.162357330327;_
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response 140;0.104652419787045;171.162357330327;_
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:32.519 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:32.520 [DEBUG] [Thread-67908 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42751)
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:32.521 [DEBUG] [Thread-67908 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:32.529 [DEBUG] [Thread-67908 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:32.529 [INFO] [Thread-67908 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97259856, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652419787045, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992879, telescope_ra=19.494798, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.51455, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4687847443097, telescope_dec_j2k=-24.3080663900119, observability=1)
2025-11-17T13:20:44.370 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:20:44
2025-11-17T13:20:44.370 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:44.370 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.841311931610107s
2025-11-17T13:20:44.370 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:44.370 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:44.370 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:44.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4980806;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51783;2460996.97273579;13.34562056;1.3;_
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.4980806;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51783;2460996.97273579;13.34562056;1.3;_
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:44.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:44.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:44.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:44.373 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.4980806, teldec = -24.256409
2025-11-17T13:20:44.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4980806 -24.256409
2025-11-17T13:20:44.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4980806 -24.256409
2025-11-17T13:20:44.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4980806 -24.256409
2025-11-17T13:20:44.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.4980806;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51783;2460996.97273581;13.34562056;1.3;_19.4720684015207 -24.308181154184
2025-11-17T13:20:44.374 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.4720684015207     dec_j2k = -24.308181154184
2025-11-17T13:20:44.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:44.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:44.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:44.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104651938443731;171.162351965909;_
2025-11-17T13:20:44.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104651938443731;171.162351965909;_
2025-11-17T13:20:44.375 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:44.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:44.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:44.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:44.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:44.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:44.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:44.377 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41081)
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:44.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:44.386 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:44.387 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:44.387 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:44.387 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97273579, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651938443731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992878, telescope_ra=19.4980806, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.51783, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:19:50.416320', telescope_ra_j2k=19.4720684015207, telescope_dec_j2k=-24.308181154184, observability=1)
2025-11-17T13:20:50.558 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:50.559 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:50.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:50.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:50.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:50.560 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:50.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:50.560 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:50.561 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:20:50.562 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:20:50.562 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:20:50.562 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Status age = 6.190999984741211s
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:50.578 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 17;19.4998109;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51956;2460996.97280763;13.34734611;1.3;_
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response 17;19.4998109;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51956;2460996.97280763;13.34734611;1.3;_
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:20:50.579 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:20:50.580 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:50.580 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:20:50.580 [INFO] [Thread-67909 (handle)] [driver.py] [get_status()] Telra = 19.4998109, teldec = -24.256409
2025-11-17T13:20:50.580 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] UnCookCoordinates 19.4998109 -24.256409
2025-11-17T13:20:50.580 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.4998109 -24.256409
2025-11-17T13:20:50.580 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.4998109 -24.256409
2025-11-17T13:20:50.581 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 17;19.4998109;-24.256409;50.108304;89.992878;50.08601;90.12017;16.51956;2460996.97280765;13.34734611;1.3;_19.4737992599302 -24.3082416328123
2025-11-17T13:20:50.581 [INFO] [Thread-67909 (handle)] [driver.py] [get_status()] ra_j2k = 19.4737992599302     dec_j2k = -24.3082416328123
2025-11-17T13:20:50.581 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:20:50.581 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:20:50.581 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 140;0.104652299451216;171.162357330327;_
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response 140;0.104652299451216;171.162357330327;_
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:50.582 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:20:50.583 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:20:50.584 [DEBUG] [Thread-67909 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:50.584 [DEBUG] [Thread-67909 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:20:50.584 [DEBUG] [Thread-67909 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38581)
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:50.589 [DEBUG] [Thread-67909 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:50.597 [DEBUG] [Thread-67909 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:20:50.598 [DEBUG] [Thread-67909 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:20:50.598 [DEBUG] [Thread-67909 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:20:50.598 [INFO] [Thread-67909 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97280763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652299451216, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108304, telescope_az=89.992878, telescope_ra=19.4998109, telescope_dec=-24.256409, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.51956, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4737992599302, telescope_dec_j2k=-24.3082416328123, observability=1)
2025-11-17T13:20:51.562 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:51.563 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:51.563 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:51.563 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:51.563 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:51.563 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:20:51.564 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:20:51.565 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:20:51.566 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:20:51.566 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:20:51.566 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:20:51.566 [DEBUG] [ThreadPoolExecutor-2838_0] [payload.py] [to_registers()] [0]
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59869)
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:20:51.567 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:20:51.574 [DEBUG] [ThreadPoolExecutor-2838_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Status age = 18.09711480140686s
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:08.695 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:08.696 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 17;19.5048583;-24.256408;50.108303;89.992878;50.08601;90.12017;16.52461;2460996.97301732;13.35237972;1.3;_
2025-11-17T13:21:08.696 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response 17;19.5048583;-24.256408;50.108303;89.992878;50.08601;90.12017;16.52461;2460996.97301732;13.35237972;1.3;_
2025-11-17T13:21:08.696 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:08.697 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:08.697 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:08.697 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:08.698 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:08.698 [INFO] [Thread-67910 (handle)] [driver.py] [get_status()] Telra = 19.5048583, teldec = -24.256408
2025-11-17T13:21:08.698 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5048583 -24.256408
2025-11-17T13:21:08.698 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5048583 -24.256408
2025-11-17T13:21:08.698 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5048583 -24.256408
2025-11-17T13:21:08.699 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 17;19.5048583;-24.256408;50.108303;89.992878;50.08601;90.12017;16.52461;2460996.97301735;13.35237972;1.3;_19.4788482935302 -24.308416993699
2025-11-17T13:21:08.699 [INFO] [Thread-67910 (handle)] [driver.py] [get_status()] ra_j2k = 19.4788482935302     dec_j2k = -24.308416993699
2025-11-17T13:21:08.699 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:08.699 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:08.699 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 140;0.104651938443731;171.162357330327;_
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response 140;0.104651938443731;171.162357330327;_
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:08.700 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:08.701 [DEBUG] [Thread-67910 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49575)
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:08.703 [DEBUG] [Thread-67910 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:08.710 [DEBUG] [Thread-67910 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:21:08.711 [INFO] [Thread-67910 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97301732, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651938443731, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992878, telescope_ra=19.5048583, telescope_dec=-24.256408, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.52461, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4788482935302, telescope_dec_j2k=-24.308416993699, observability=1)
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Status age = 3.8607289791107178s
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:12.571 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:12.572 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:12.572 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:12.572 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:12.572 [DEBUG] [Thread-67911 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:12.572 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:12.573 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:12.573 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:12.573 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:12.574 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 17;19.5059409;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52569;2460996.9730622;13.35345944;1.3;_
2025-11-17T13:21:12.574 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response 17;19.5059409;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52569;2460996.9730622;13.35345944;1.3;_
2025-11-17T13:21:12.574 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:12.574 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:12.574 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:12.575 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:12.575 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:12.575 [INFO] [Thread-67911 (handle)] [driver.py] [get_status()] Telra = 19.5059409, teldec = -24.256408
2025-11-17T13:21:12.575 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5059409 -24.256408
2025-11-17T13:21:12.575 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5059409 -24.256408
2025-11-17T13:21:12.575 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5059409 -24.256408
2025-11-17T13:21:12.576 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 17;19.5059409;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52569;2460996.97306222;13.35345944;1.3;_19.4799312447474 -24.3084548092007
2025-11-17T13:21:12.576 [INFO] [Thread-67911 (handle)] [driver.py] [get_status()] ra_j2k = 19.4799312447474     dec_j2k = -24.3084548092007
2025-11-17T13:21:12.576 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:12.576 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:12.576 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 140;0.104651818107903;171.162346601491;_
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response 140;0.104651818107903;171.162346601491;_
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:12.577 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:12.578 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:12.579 [DEBUG] [Thread-67911 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:12.579 [DEBUG] [Thread-67911 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:12.579 [DEBUG] [Thread-67911 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:12.581 [DEBUG] [Thread-67911 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49311)
2025-11-17T13:21:12.582 [DEBUG] [Thread-67911 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:12.582 [DEBUG] [Thread-67911 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:12.582 [DEBUG] [Thread-67911 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:12.582 [DEBUG] [Thread-67911 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:12.582 [DEBUG] [Thread-67911 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:12.589 [DEBUG] [Thread-67911 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:21:12.589 [INFO] [Thread-67911 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9730622, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651818107903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992877, telescope_ra=19.5059409, telescope_dec=-24.256408, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.52569, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4799312447474, telescope_dec_j2k=-24.3084548092007, observability=1)
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.3550479412078857s
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:14.944 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:14.945 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5066133;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52636;2460996.97308965;13.35413;1.3;_
2025-11-17T13:21:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.5066133;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52636;2460996.97308965;13.35413;1.3;_
2025-11-17T13:21:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:14.946 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:14.947 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.5066133, teldec = -24.256408
2025-11-17T13:21:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5066133 -24.256408
2025-11-17T13:21:14.947 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5066133 -24.256408
2025-11-17T13:21:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5066133 -24.256408
2025-11-17T13:21:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5066133;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52636;2460996.97308968;13.35413;1.3;_19.4806038630426 -24.3084782942539
2025-11-17T13:21:14.949 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.4806038630426     dec_j2k = -24.3084782942539
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104652179115388;171.162357330327;_
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104652179115388;171.162357330327;_
2025-11-17T13:21:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34231)
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:14.953 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:21:14.961 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97308965, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652179115388, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992877, telescope_ra=19.5066133, telescope_dec=-24.256408, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.52636, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4806038630426, telescope_dec_j2k=-24.3084782942539, observability=1)
2025-11-17T13:21:16.575 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:16.575 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:16.575 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:16.575 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:16.575 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:16.576 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:21:16.577 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:21:16.578 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Status age = 11.796593189239502s
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:26.758 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:26.759 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:26.759 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:26.759 [DEBUG] [Thread-67912 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:26.759 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:26.760 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:26.760 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:26.760 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:26.760 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 17;19.5098984;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52965;2460996.97322639;13.35740611;1.3;_
2025-11-17T13:21:26.761 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response 17;19.5098984;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52965;2460996.97322639;13.35740611;1.3;_
2025-11-17T13:21:26.761 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:26.761 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:26.761 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:26.762 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:26.762 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:26.762 [INFO] [Thread-67912 (handle)] [driver.py] [get_status()] Telra = 19.5098984, teldec = -24.256408
2025-11-17T13:21:26.762 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5098984 -24.256408
2025-11-17T13:21:26.762 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5098984 -24.256408
2025-11-17T13:21:26.762 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5098984 -24.256408
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 17;19.5098984;-24.256408;50.108303;89.992877;50.08601;90.12017;16.52965;2460996.97322642;13.35740611;1.3;_19.4838900312601 -24.3085930109517
2025-11-17T13:21:26.763 [INFO] [Thread-67912 (handle)] [driver.py] [get_status()] ra_j2k = 19.4838900312601     dec_j2k = -24.3085930109517
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 140;0.104651577436246;171.162357330327;_
2025-11-17T13:21:26.763 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response 140;0.104651577436246;171.162357330327;_
2025-11-17T13:21:26.764 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:26.764 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:26.764 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:26.764 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:26.765 [DEBUG] [Thread-67912 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:21:26.768 [DEBUG] [Thread-67912 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58653)
2025-11-17T13:21:26.768 [DEBUG] [Thread-67912 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:26.769 [DEBUG] [Thread-67912 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:26.769 [DEBUG] [Thread-67912 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:26.769 [DEBUG] [Thread-67912 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:26.769 [DEBUG] [Thread-67912 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:26.776 [DEBUG] [Thread-67912 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:21:26.776 [INFO] [Thread-67912 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97322639, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651577436246, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992877, telescope_ra=19.5098984, telescope_dec=-24.256408, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.52965, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4838900312601, telescope_dec_j2k=-24.3085930109517, observability=1)
2025-11-17T13:21:27.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:27.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.3675565719604492s
2025-11-17T13:21:27.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3675565719604492
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.6806302070617676s
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:29.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:29.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5106548;-24.256414;50.108303;89.992888;50.08601;90.12018;16.53041;2460996.97325762;13.35816028;1.3;_
2025-11-17T13:21:29.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.5106548;-24.256414;50.108303;89.992888;50.08601;90.12018;16.53041;2460996.97325762;13.35816028;1.3;_
2025-11-17T13:21:29.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:29.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:29.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:29.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:29.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:29.459 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.5106548, teldec = -24.256414
2025-11-17T13:21:29.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.5106548 -24.256414
2025-11-17T13:21:29.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.5106548 -24.256414
2025-11-17T13:21:29.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5106548 -24.256414
2025-11-17T13:21:29.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5106548;-24.256414;50.108303;89.992888;50.08601;90.12018;16.53041;2460996.97325765;13.35816028;1.3;_19.4846466765 -24.308625418823
2025-11-17T13:21:29.462 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.4846466765     dec_j2k = -24.308625418823
2025-11-17T13:21:29.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:29.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:29.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:29.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104651336764589;171.162351965909;_
2025-11-17T13:21:29.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104651336764589;171.162351965909;_
2025-11-17T13:21:29.463 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:29.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:29.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:29.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:29.463 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:29.464 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:29.467 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39641)
2025-11-17T13:21:29.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:29.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:29.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:29.468 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:29.468 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:29.475 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:29.476 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:21:29.476 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97325762, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651336764589, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992888, telescope_ra=19.5106548, telescope_dec=-24.256414, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.53041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4846466765, telescope_dec_j2k=-24.308625418823, observability=1)
2025-11-17T13:21:29.476 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.1058235168457 seconds ago
2025-11-17T13:21:44.447 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:21:44
2025-11-17T13:21:44.447 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.97165846824646s
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:21:44.448 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:21:44.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5148322;-24.256407;50.108303;89.992876;50.08601;90.12017;16.53458;2460996.97343112;13.36232639;1.3;_
2025-11-17T13:21:44.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5148322;-24.256407;50.108303;89.992876;50.08601;90.12017;16.53458;2460996.97343112;13.36232639;1.3;_
2025-11-17T13:21:44.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:21:44.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:21:44.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:21:44.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:44.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:21:44.451 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5148322, teldec = -24.256407
2025-11-17T13:21:44.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5148322 -24.256407
2025-11-17T13:21:44.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5148322 -24.256407
2025-11-17T13:21:44.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5148322 -24.256407
2025-11-17T13:21:44.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5148322;-24.256407;50.108303;89.992876;50.08601;90.12017;16.53458;2460996.97343115;13.36232639;1.3;_19.4888254410976 -24.3087642300024
2025-11-17T13:21:44.452 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.4888254410976     dec_j2k = -24.3087642300024
2025-11-17T13:21:44.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:21:44.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:21:44.452 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104651898331788;171.162362694745;_
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104651898331788;171.162362694745;_
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:44.453 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:21:44.454 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:21:44.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:44.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:21:44.455 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47223)
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:21:44.456 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:21:44.464 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:21:44.465 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97343112, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651898331788, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108303, telescope_az=89.992876, telescope_ra=19.5148322, telescope_dec=-24.256407, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.53458, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:20:50.558503', telescope_ra_j2k=19.4888254410976, telescope_dec_j2k=-24.3087642300024, observability=1)
2025-11-17T13:21:44.832 [DEBUG] [Thread-67913 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:21:44.833 [DEBUG] [Thread-67913 (handle)] [server.py] [get_status()] Status age = 0.3680453300476074s
2025-11-17T13:21:44.833 [DEBUG] [Thread-67913 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3680453300476074
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:50.700 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:21:50.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:21:50.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:21:50.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:21:50.701 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:21:50.701 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:21:50.701 [INFO] [ThreadPoolExecutor-2839_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:21:50.701 [INFO] [ThreadPoolExecutor-2839_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Status age = 18.492834329605103s
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:02.957 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:02.958 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:02.959 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 17;19.5199821;-24.256407;50.108302;89.992876;50.08601;90.12017;16.53973;2460996.97364536;13.36746222;1.3;_
2025-11-17T13:22:02.959 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response 17;19.5199821;-24.256407;50.108302;89.992876;50.08601;90.12017;16.53973;2460996.97364536;13.36746222;1.3;_
2025-11-17T13:22:02.959 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:02.959 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:02.959 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:02.960 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:02.960 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:02.960 [INFO] [Thread-67914 (handle)] [driver.py] [get_status()] Telra = 19.5199821, teldec = -24.256407
2025-11-17T13:22:02.960 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5199821 -24.256407
2025-11-17T13:22:02.960 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5199821 -24.256407
2025-11-17T13:22:02.961 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5199821 -24.256407
2025-11-17T13:22:02.961 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 17;19.5199821;-24.256407;50.108302;89.992876;50.08601;90.12017;16.53973;2460996.97364538;13.36746222;1.3;_19.4939770280674 -24.3089439011443
2025-11-17T13:22:02.961 [INFO] [Thread-67914 (handle)] [driver.py] [get_status()] ra_j2k = 19.4939770280674     dec_j2k = -24.3089439011443
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 140;0.104651617548189;171.162351965909;_
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response 140;0.104651617548189;171.162351965909;_
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:02.962 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:02.963 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:02.964 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:02.965 [DEBUG] [Thread-67914 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:02.965 [DEBUG] [Thread-67914 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:02.965 [DEBUG] [Thread-67914 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:02.971 [DEBUG] [Thread-67914 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54409)
2025-11-17T13:22:02.971 [DEBUG] [Thread-67914 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:02.971 [DEBUG] [Thread-67914 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:02.971 [DEBUG] [Thread-67914 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:02.971 [DEBUG] [Thread-67914 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:02.972 [DEBUG] [Thread-67914 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:02.979 [DEBUG] [Thread-67914 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:02.979 [INFO] [Thread-67914 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97364536, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651617548189, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992876, telescope_ra=19.5199821, telescope_dec=-24.256407, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.53973, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.4939770280674, telescope_dec_j2k=-24.3089439011443, observability=1)
2025-11-17T13:22:11.578 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.579 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.579 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:11.579 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:11.579 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:22:11.580 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:11.581 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:11.582 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:22:11.583 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:11.584 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Park
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:22:11.585 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:22:11.586 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 29;19.5223839;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54214;2460996.97374521;13.3698575;1.3;_Park Command Successful
2025-11-17T13:22:12.586 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:22:12.586 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:22:12.586 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:22:12.587 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:22:12.587 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Status age = 9.645014524459839s
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:12.624 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:12.625 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:12.626 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 17;19.5226639;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54242;2460996.97375725;13.37013667;1.3;_
2025-11-17T13:22:12.626 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response 17;19.5226639;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54242;2460996.97375725;13.37013667;1.3;_
2025-11-17T13:22:12.626 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:12.626 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:12.626 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:12.627 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:12.627 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:12.627 [INFO] [Thread-67915 (handle)] [driver.py] [get_status()] Telra = 19.5226639, teldec = -24.256407
2025-11-17T13:22:12.627 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5226639 -24.256407
2025-11-17T13:22:12.627 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5226639 -24.256407
2025-11-17T13:22:12.627 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5226639 -24.256407
2025-11-17T13:22:12.628 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 17;19.5226639;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54242;2460996.97375727;13.37013667;1.3;_19.4966597093094 -24.3090374276164
2025-11-17T13:22:12.628 [INFO] [Thread-67915 (handle)] [driver.py] [get_status()] ra_j2k = 19.4966597093094     dec_j2k = -24.3090374276164
2025-11-17T13:22:12.628 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:12.628 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:12.628 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 140;0.104651015869047;171.162351965909;_
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response 140;0.104651015869047;171.162351965909;_
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:12.629 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:12.630 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:12.631 [DEBUG] [Thread-67915 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:12.631 [DEBUG] [Thread-67915 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:12.631 [DEBUG] [Thread-67915 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33821)
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:12.636 [DEBUG] [Thread-67915 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:12.643 [DEBUG] [Thread-67915 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:12.644 [DEBUG] [Thread-67915 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:12.644 [DEBUG] [Thread-67915 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:12.644 [INFO] [Thread-67915 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97375725, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651015869047, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992876, telescope_ra=19.5226639, telescope_dec=-24.256407, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54242, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.4966597093094, telescope_dec_j2k=-24.3090374276164, observability=1)
2025-11-17T13:22:13.588 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:22:13.588 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:22:13.588 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:22:13.588 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:22:13.588 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:22:14.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:22:14.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:22:14.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:22:14.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:22:14.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.320704221725464s
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5233279;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54308;2460996.97378433;13.37079889;1.3;_
2025-11-17T13:22:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.5233279;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54308;2460996.97378433;13.37079889;1.3;_
2025-11-17T13:22:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:14.968 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.5233279, teldec = -24.256407
2025-11-17T13:22:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5233279 -24.256407
2025-11-17T13:22:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5233279 -24.256407
2025-11-17T13:22:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5233279 -24.256407
2025-11-17T13:22:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5233279;-24.256407;50.108302;89.992876;50.08601;90.12017;16.54308;2460996.97378436;13.37079889;1.3;_19.4973239277919 -24.309060580382
2025-11-17T13:22:14.969 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.4973239277919     dec_j2k = -24.309060580382
2025-11-17T13:22:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104651898331788;171.162351965909;_
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104651898331788;171.162351965909;_
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38701)
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:14.975 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:14.982 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:14.982 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:14.982 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:14.983 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:14.983 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:14.983 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97378433, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651898331788, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992876, telescope_ra=19.5233279, telescope_dec=-24.256407, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54308, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.4973239277919, telescope_dec_j2k=-24.309060580382, observability=1)
2025-11-17T13:22:15.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:22:15.589 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:22:15.590 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:15.591 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:22:15.592 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:22:15.593 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:16.593 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:16.593 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:16.593 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:16.593 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:16.593 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:22:16.594 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:22:16.595 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:22:16.595 [DEBUG] [ThreadPoolExecutor-2838_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:16.595 [INFO] [ThreadPoolExecutor-2838_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:22:21.024 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:21.024 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Status age = 6.04163932800293s
2025-11-17T13:22:21.024 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:21.024 [DEBUG] [Thread-67916 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:21.024 [DEBUG] [Thread-67916 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:21.025 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:21.025 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:21.025 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:21.026 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:21.028 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 17;19.5250275;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54478;2460996.97385449;13.37249389;1.3;_
2025-11-17T13:22:21.028 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response 17;19.5250275;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54478;2460996.97385449;13.37249389;1.3;_
2025-11-17T13:22:21.028 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:21.029 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:21.029 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:21.029 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:21.030 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:21.030 [INFO] [Thread-67916 (handle)] [driver.py] [get_status()] Telra = 19.5250275, teldec = -24.256406
2025-11-17T13:22:21.030 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5250275 -24.256406
2025-11-17T13:22:21.030 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5250275 -24.256406
2025-11-17T13:22:21.030 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5250275 -24.256406
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 17;19.5250275;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54478;2460996.97385453;13.37249389;1.3;_19.4990240877415 -24.3091188360975
2025-11-17T13:22:21.031 [INFO] [Thread-67916 (handle)] [driver.py] [get_status()] ra_j2k = 19.4990240877415     dec_j2k = -24.3091188360975
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 140;0.104651537324303;171.162346601491;_
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response 140;0.104651537324303;171.162346601491;_
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:21.031 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:21.032 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:21.032 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:21.032 [DEBUG] [Thread-67916 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:21.033 [DEBUG] [Thread-67916 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:21.038 [DEBUG] [Thread-67916 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49573)
2025-11-17T13:22:21.038 [DEBUG] [Thread-67916 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:21.039 [DEBUG] [Thread-67916 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:21.039 [DEBUG] [Thread-67916 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:21.039 [DEBUG] [Thread-67916 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:21.039 [DEBUG] [Thread-67916 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:21.046 [DEBUG] [Thread-67916 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:21.046 [INFO] [Thread-67916 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97385449, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651537324303, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992875, telescope_ra=19.5250275, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54478, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.4990240877415, telescope_dec_j2k=-24.3091188360975, observability=1)
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.188684940338135s
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:26.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:26.236 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:26.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5264745;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54623;2460996.97391478;13.37393694;1.3;_
2025-11-17T13:22:26.237 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.5264745;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54623;2460996.97391478;13.37393694;1.3;_
2025-11-17T13:22:26.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:26.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:26.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:26.238 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:26.238 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:26.238 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.5264745, teldec = -24.256406
2025-11-17T13:22:26.238 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5264745 -24.256406
2025-11-17T13:22:26.238 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5264745 -24.256406
2025-11-17T13:22:26.239 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5264745 -24.256406
2025-11-17T13:22:26.239 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5264745;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54623;2460996.9739148;13.37393694;1.3;_19.5004715649079 -24.3091692769324
2025-11-17T13:22:26.240 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5004715649079     dec_j2k = -24.3091692769324
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104651858219846;171.162362694745;_
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104651858219846;171.162362694745;_
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:26.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:26.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:26.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:26.242 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:26.242 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53235)
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:26.243 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:26.250 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:26.251 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:26.251 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:26.251 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97391478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651858219846, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992875, telescope_ra=19.5264745, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54623, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.5004715649079, telescope_dec_j2k=-24.3091692769324, observability=1)
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.285033941268921s
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:29.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:29.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:29.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.527399;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54715;2460996.97395299;13.37485889;1.3;_
2025-11-17T13:22:29.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.527399;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54715;2460996.97395299;13.37485889;1.3;_
2025-11-17T13:22:29.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:29.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:29.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:29.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:29.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:29.539 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.527399, teldec = -24.256406
2025-11-17T13:22:29.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.527399 -24.256406
2025-11-17T13:22:29.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.527399 -24.256406
2025-11-17T13:22:29.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.527399 -24.256406
2025-11-17T13:22:29.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.527399;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54715;2460996.97395301;13.37485889;1.3;_19.5013963700609 -24.3092015001178
2025-11-17T13:22:29.540 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5013963700609     dec_j2k = -24.3092015001178
2025-11-17T13:22:29.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:29.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:29.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:29.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104651617548189;171.162357330327;_
2025-11-17T13:22:29.541 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104651617548189;171.162357330327;_
2025-11-17T13:22:29.541 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:29.542 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:29.543 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:29.543 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:29.543 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:29.543 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:29.543 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33037)
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:29.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:29.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:22:29.557 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97395299, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104651617548189, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992875, telescope_ra=19.527399, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54715, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.5013963700609, telescope_dec_j2k=-24.3092015001178, observability=1)
2025-11-17T13:22:29.557 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.109294176101685 seconds ago
2025-11-17T13:22:39.099 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:39.099 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Status age = 9.542915344238281s
2025-11-17T13:22:39.099 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:39.100 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:39.101 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 17;19.5300421;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54979;2460996.97406367;13.37749472;1.3;_
2025-11-17T13:22:39.101 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response 17;19.5300421;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54979;2460996.97406367;13.37749472;1.3;_
2025-11-17T13:22:39.101 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:39.101 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:39.101 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:39.102 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:39.102 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:39.102 [INFO] [Thread-67917 (handle)] [driver.py] [get_status()] Telra = 19.5300421, teldec = -24.256406
2025-11-17T13:22:39.102 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5300421 -24.256406
2025-11-17T13:22:39.102 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5300421 -24.256406
2025-11-17T13:22:39.102 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5300421 -24.256406
2025-11-17T13:22:39.103 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 17;19.5300421;-24.256406;50.108302;89.992875;50.08601;90.12017;16.54979;2460996.97406369;13.37749472;1.3;_19.5040403437148 -24.309293607948
2025-11-17T13:22:39.103 [INFO] [Thread-67917 (handle)] [driver.py] [get_status()] ra_j2k = 19.5040403437148     dec_j2k = -24.309293607948
2025-11-17T13:22:39.103 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:39.103 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:39.103 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:39.104 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:22:39.104 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response 140;0.10465205877956;171.162362694745;_
2025-11-17T13:22:39.104 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:39.104 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:39.105 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:39.105 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:39.106 [DEBUG] [Thread-67917 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:39.109 [DEBUG] [Thread-67917 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36789)
2025-11-17T13:22:39.109 [DEBUG] [Thread-67917 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:39.109 [DEBUG] [Thread-67917 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:39.110 [DEBUG] [Thread-67917 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:39.110 [DEBUG] [Thread-67917 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:39.110 [DEBUG] [Thread-67917 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:39.117 [DEBUG] [Thread-67917 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:39.118 [DEBUG] [Thread-67917 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:39.118 [DEBUG] [Thread-67917 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:39.118 [DEBUG] [Thread-67917 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:39.118 [INFO] [Thread-67917 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97406367, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465205877956, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992875, telescope_ra=19.5300421, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.54979, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.5040403437148, telescope_dec_j2k=-24.309293607948, observability=1)
2025-11-17T13:22:44.525 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:22:44
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.407436847686768s
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:44.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:44.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:44.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5315481;-24.256406;50.108302;89.992875;50.08601;90.12017;16.5513;2460996.97412647;13.37899667;1.3;_
2025-11-17T13:22:44.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5315481;-24.256406;50.108302;89.992875;50.08601;90.12017;16.5513;2460996.97412647;13.37899667;1.3;_
2025-11-17T13:22:44.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:44.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:44.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:44.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:44.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:44.528 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5315481, teldec = -24.256406
2025-11-17T13:22:44.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5315481 -24.256406
2025-11-17T13:22:44.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5315481 -24.256406
2025-11-17T13:22:44.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5315481 -24.256406
2025-11-17T13:22:44.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5315481;-24.256406;50.108302;89.992875;50.08601;90.12017;16.5513;2460996.97412649;13.37899667;1.3;_19.5055468423293 -24.3093460785923
2025-11-17T13:22:44.529 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.5055468423293     dec_j2k = -24.3093460785923
2025-11-17T13:22:44.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:44.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:44.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104652419787045;171.162362694745;_
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104652419787045;171.162362694745;_
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:44.530 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:44.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:44.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:22:44.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:22:44.531 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:44.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:44.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:44.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:44.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:44.532 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:44.536 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43215)
2025-11-17T13:22:44.536 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:44.536 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:44.536 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:44.537 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:44.537 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:44.543 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:44.543 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:44.544 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:44.544 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97412647, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652419787045, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992875, telescope_ra=19.5315481, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5513, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:21:50.699502', telescope_ra_j2k=19.5055468423293, telescope_dec_j2k=-24.3093460785923, observability=1)
2025-11-17T13:22:50.842 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:50.842 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:50.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:50.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:50.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:50.843 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:50.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:50.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:50.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:50.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:50.844 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:22:50.844 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:50.844 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:50.844 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:50.844 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:22:50.845 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:22:50.846 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:51.846 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:51.846 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:51.846 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:51.846 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:51.846 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:51.847 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:51.847 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:22:51.848 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:51.849 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:51.850 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:51.850 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:51.850 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:51.850 [DEBUG] [ThreadPoolExecutor-2840_0] [payload.py] [to_registers()] [0]
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35903)
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:51.853 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:51.860 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:51.860 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:22:51.860 [DEBUG] [ThreadPoolExecutor-2840_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:22:51.860 [DEBUG] [ThreadPoolExecutor-2840_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:22:51.860 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:51.861 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:51.861 [DEBUG] [ThreadPoolExecutor-2840_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Status age = 12.682196140289307s
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:22:57.226 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:22:57.227 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:22:57.227 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:22:57.227 [DEBUG] [Thread-67918 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:22:57.228 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:22:57.228 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:22:57.228 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:22:57.228 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:22:57.229 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 17;19.5351115;-24.256406;50.108302;89.992874;50.08601;90.12017;16.55486;2460996.97427347;13.38255028;1.3;_
2025-11-17T13:22:57.229 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response 17;19.5351115;-24.256406;50.108302;89.992874;50.08601;90.12017;16.55486;2460996.97427347;13.38255028;1.3;_
2025-11-17T13:22:57.229 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:22:57.229 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:22:57.229 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:22:57.230 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:57.230 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:22:57.230 [INFO] [Thread-67918 (handle)] [driver.py] [get_status()] Telra = 19.5351115, teldec = -24.256406
2025-11-17T13:22:57.230 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5351115 -24.256406
2025-11-17T13:22:57.230 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5351115 -24.256406
2025-11-17T13:22:57.230 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5351115 -24.256406
2025-11-17T13:22:57.231 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 17;19.5351115;-24.256406;50.108302;89.992874;50.08601;90.12017;16.55486;2460996.97427351;13.38255028;1.3;_19.5091114244864 -24.3094701992151
2025-11-17T13:22:57.231 [INFO] [Thread-67918 (handle)] [driver.py] [get_status()] ra_j2k = 19.5091114244864     dec_j2k = -24.3094701992151
2025-11-17T13:22:57.231 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:22:57.231 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:22:57.231 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 140;0.104652861018416;171.162357330327;_
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response 140;0.104652861018416;171.162357330327;_
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:22:57.232 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:22:57.233 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:22:57.233 [DEBUG] [Thread-67918 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:57.233 [DEBUG] [Thread-67918 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:22:57.233 [DEBUG] [Thread-67918 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:22:57.238 [DEBUG] [Thread-67918 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43151)
2025-11-17T13:22:57.238 [DEBUG] [Thread-67918 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:22:57.238 [DEBUG] [Thread-67918 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:22:57.239 [DEBUG] [Thread-67918 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:22:57.239 [DEBUG] [Thread-67918 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:22:57.239 [DEBUG] [Thread-67918 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:22:57.246 [DEBUG] [Thread-67918 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:22:57.246 [INFO] [Thread-67918 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97427347, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652861018416, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108302, telescope_az=89.992874, telescope_ra=19.5351115, telescope_dec=-24.256406, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.55486, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5091114244864, telescope_dec_j2k=-24.3094701992151, observability=1)
2025-11-17T13:23:12.678 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:12.678 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Status age = 15.432127475738525s
2025-11-17T13:23:12.678 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:12.678 [DEBUG] [Thread-67919 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:12.678 [DEBUG] [Thread-67919 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:12.679 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:12.679 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:12.679 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 17;19.5394077;-24.256405;50.108301;89.992874;50.08601;90.12017;16.55916;2460996.97445232;13.38683472;1.3;_
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response 17;19.5394077;-24.256405;50.108301;89.992874;50.08601;90.12017;16.55916;2460996.97445232;13.38683472;1.3;_
2025-11-17T13:23:12.680 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:12.681 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:12.681 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:12.682 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:12.682 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:12.682 [INFO] [Thread-67919 (handle)] [driver.py] [get_status()] Telra = 19.5394077, teldec = -24.256405
2025-11-17T13:23:12.682 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5394077 -24.256405
2025-11-17T13:23:12.682 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5394077 -24.256405
2025-11-17T13:23:12.682 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5394077 -24.256405
2025-11-17T13:23:12.683 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 17;19.5394077;-24.256405;50.108301;89.992874;50.08601;90.12017;16.55916;2460996.97445235;13.38683472;1.3;_19.5134090543607 -24.3096187848737
2025-11-17T13:23:12.683 [INFO] [Thread-67919 (handle)] [driver.py] [get_status()] ra_j2k = 19.5134090543607     dec_j2k = -24.3096187848737
2025-11-17T13:23:12.683 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:12.683 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:12.683 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 140;0.104652339563159;171.162362694745;_
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response 140;0.104652339563159;171.162362694745;_
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:12.684 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:12.685 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:12.686 [DEBUG] [Thread-67919 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:12.686 [DEBUG] [Thread-67919 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:12.686 [DEBUG] [Thread-67919 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:12.687 [DEBUG] [Thread-67919 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44529)
2025-11-17T13:23:12.687 [DEBUG] [Thread-67919 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:12.687 [DEBUG] [Thread-67919 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:12.688 [DEBUG] [Thread-67919 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:12.688 [DEBUG] [Thread-67919 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:12.688 [DEBUG] [Thread-67919 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:12.695 [DEBUG] [Thread-67919 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:12.695 [INFO] [Thread-67919 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97445232, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104652339563159, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992874, telescope_ra=19.5394077, telescope_dec=-24.256405, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.55916, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5134090543607, telescope_dec_j2k=-24.3096187848737, observability=1)
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.273137092590332s
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5400514;-24.256405;50.108301;89.992874;50.08601;90.12017;16.5598;2460996.97447881;13.38747667;1.3;_
2025-11-17T13:23:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.5400514;-24.256405;50.108301;89.992874;50.08601;90.12017;16.5598;2460996.97447881;13.38747667;1.3;_
2025-11-17T13:23:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:14.971 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.5400514, teldec = -24.256405
2025-11-17T13:23:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5400514 -24.256405
2025-11-17T13:23:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5400514 -24.256405
2025-11-17T13:23:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5400514 -24.256405
2025-11-17T13:23:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5400514;-24.256405;50.108301;89.992874;50.08601;90.12017;16.5598;2460996.97447884;13.38747667;1.3;_19.5140529689875 -24.3096411916317
2025-11-17T13:23:14.972 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5140529689875     dec_j2k = -24.3096411916317
2025-11-17T13:23:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104653302249787;171.162357330327;_
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104653302249787;171.162357330327;_
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37105)
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:14.988 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:14.989 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97447881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653302249787, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992874, telescope_ra=19.5400514, telescope_dec=-24.256405, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5598, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5140529689875, telescope_dec_j2k=-24.3096411916317, observability=1)
2025-11-17T13:23:15.299 [DEBUG] [Thread-67920 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:15.299 [DEBUG] [Thread-67920 (handle)] [server.py] [get_status()] Status age = 0.3102152347564697s
2025-11-17T13:23:15.299 [DEBUG] [Thread-67920 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3102152347564697
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:16.861 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:16.862 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:23:16.863 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:23:16.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:25.346 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:25.346 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.35778522491455s
2025-11-17T13:23:25.346 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:25.346 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:25.347 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:25.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:25.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:25.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:25.348 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:25.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.54292;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56267;2460996.97459895;13.3903375;1.3;_
2025-11-17T13:23:25.349 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.54292;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56267;2460996.97459895;13.3903375;1.3;_
2025-11-17T13:23:25.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:25.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:25.349 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:25.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:25.350 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:25.350 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.54292, teldec = -24.256405
2025-11-17T13:23:25.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.54292 -24.256405
2025-11-17T13:23:25.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.54292 -24.256405
2025-11-17T13:23:25.350 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.54292 -24.256405
2025-11-17T13:23:25.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.54292;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56267;2460996.97459897;13.3903375;1.3;_19.5169225267753 -24.3097410276742
2025-11-17T13:23:25.351 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5169225267753     dec_j2k = -24.3097410276742
2025-11-17T13:23:25.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:25.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:25.351 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104653101690073;171.162351965909;_
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104653101690073;171.162351965909;_
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:25.352 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:25.353 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:25.354 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:25.354 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:25.354 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53279)
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:25.358 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:25.366 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:25.366 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97459895, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653101690073, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992873, telescope_ra=19.54292, telescope_dec=-24.256405, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.56267, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5169225267753, telescope_dec_j2k=-24.3097410276742, observability=1)
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.250465393066406s
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:29.617 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5441172;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56387;2460996.97464836;13.39153139;1.3;_
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.5441172;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56387;2460996.97464836;13.39153139;1.3;_
2025-11-17T13:23:29.618 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:29.619 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:29.619 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:29.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:29.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:29.620 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.5441172, teldec = -24.256405
2025-11-17T13:23:29.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.5441172 -24.256405
2025-11-17T13:23:29.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.5441172 -24.256405
2025-11-17T13:23:29.620 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5441172 -24.256405
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5441172;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56387;2460996.97464839;13.39153139;1.3;_19.5181201271421 -24.3097826852017
2025-11-17T13:23:29.621 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5181201271421     dec_j2k = -24.3097826852017
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653542921443;171.162351965909;_
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653542921443;171.162351965909;_
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:29.621 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:29.622 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:29.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:29.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:29.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39569)
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:29.629 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:29.636 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:23:29.636 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97464836, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653542921443, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992873, telescope_ra=19.5441172, telescope_dec=-24.256405, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.56387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5181201271421, telescope_dec_j2k=-24.3097826852017, observability=1)
2025-11-17T13:23:29.636 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11149287223816 seconds ago
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Status age = 3.734254837036133s
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:33.371 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:33.372 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:33.372 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 17;19.545174;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56493;2460996.97469181;13.39258528;1.3;_
2025-11-17T13:23:33.373 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response 17;19.545174;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56493;2460996.97469181;13.39258528;1.3;_
2025-11-17T13:23:33.373 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:33.373 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:33.373 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:33.374 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:33.374 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:33.374 [INFO] [Thread-67921 (handle)] [driver.py] [get_status()] Telra = 19.545174, teldec = -24.256405
2025-11-17T13:23:33.374 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] UnCookCoordinates 19.545174 -24.256405
2025-11-17T13:23:33.374 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.545174 -24.256405
2025-11-17T13:23:33.374 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.545174 -24.256405
2025-11-17T13:23:33.375 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 17;19.545174;-24.256405;50.108301;89.992873;50.08601;90.12017;16.56493;2460996.97469184;13.39258528;1.3;_19.5191772808684 -24.3098194531423
2025-11-17T13:23:33.375 [INFO] [Thread-67921 (handle)] [driver.py] [get_status()] ra_j2k = 19.5191772808684     dec_j2k = -24.3098194531423
2025-11-17T13:23:33.375 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:33.375 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:33.375 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 140;0.104653422585615;171.162351965909;_
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response 140;0.104653422585615;171.162351965909;_
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:33.376 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:33.377 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:33.377 [DEBUG] [Thread-67921 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:33.377 [DEBUG] [Thread-67921 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:33.377 [DEBUG] [Thread-67921 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37495)
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:33.382 [DEBUG] [Thread-67921 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:33.389 [DEBUG] [Thread-67921 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:33.389 [INFO] [Thread-67921 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97469181, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653422585615, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992873, telescope_ra=19.545174, telescope_dec=-24.256405, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.56493, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.5191772808684, telescope_dec_j2k=-24.3098194531423, observability=1)
2025-11-17T13:23:44.605 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:23:44
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.21543574333191s
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:44.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:44.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:44.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5482983;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56805;2460996.97482184;13.39570111;1.3;_
2025-11-17T13:23:44.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5482983;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56805;2460996.97482184;13.39570111;1.3;_
2025-11-17T13:23:44.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:44.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:44.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:44.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:44.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:44.608 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5482983, teldec = -24.256404
2025-11-17T13:23:44.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5482983 -24.256404
2025-11-17T13:23:44.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5482983 -24.256404
2025-11-17T13:23:44.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5482983 -24.256404
2025-11-17T13:23:44.609 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5482983;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56805;2460996.97482186;13.39570111;1.3;_19.522302628513 -24.3099271297751
2025-11-17T13:23:44.609 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.522302628513     dec_j2k = -24.3099271297751
2025-11-17T13:23:44.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:44.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:44.610 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104653663257272;171.162351965909;_
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104653663257272;171.162351965909;_
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:44.611 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:44.612 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:44.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:44.613 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58003)
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:44.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:44.626 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:44.627 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:44.627 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:44.627 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97482184, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653663257272, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992873, telescope_ra=19.5482983, telescope_dec=-24.256404, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.56805, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:22:50.841978', telescope_ra_j2k=19.522302628513, telescope_dec_j2k=-24.3099271297751, observability=1)
2025-11-17T13:23:50.985 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:50.985 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:50.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:50.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:50.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:50.986 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:50.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:50.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:50.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:50.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:50.987 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:23:50.987 [INFO] [ThreadPoolExecutor-2841_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:23:50.987 [INFO] [ThreadPoolExecutor-2841_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:23:51.494 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:23:51.494 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Status age = 6.8678297996521s
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:23:51.495 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:23:51.496 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 17;19.5502155;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56997;2460996.97490157;13.39761306;1.3;_
2025-11-17T13:23:51.496 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response 17;19.5502155;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56997;2460996.97490157;13.39761306;1.3;_
2025-11-17T13:23:51.496 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:23:51.496 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:23:51.496 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:23:51.497 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:51.497 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:23:51.497 [INFO] [Thread-67922 (handle)] [driver.py] [get_status()] Telra = 19.5502155, teldec = -24.256404
2025-11-17T13:23:51.497 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5502155 -24.256404
2025-11-17T13:23:51.497 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5502155 -24.256404
2025-11-17T13:23:51.497 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5502155 -24.256404
2025-11-17T13:23:51.498 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 17;19.5502155;-24.256404;50.108301;89.992873;50.08601;90.12017;16.56997;2460996.9749016;13.39761306;1.3;_19.5242204725422 -24.3099938008911
2025-11-17T13:23:51.498 [INFO] [Thread-67922 (handle)] [driver.py] [get_status()] ra_j2k = 19.5242204725422     dec_j2k = -24.3099938008911
2025-11-17T13:23:51.498 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:23:51.498 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:23:51.499 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 140;0.104653422585615;171.162357330327;_
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response 140;0.104653422585615;171.162357330327;_
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:51.500 [DEBUG] [Thread-67922 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:51.501 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:23:51.501 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:23:51.501 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:23:51.502 [DEBUG] [Thread-67922 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:51.502 [DEBUG] [Thread-67922 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:23:51.502 [DEBUG] [Thread-67922 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44887)
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:23:51.506 [DEBUG] [Thread-67922 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:23:51.513 [DEBUG] [Thread-67922 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:23:51.514 [DEBUG] [Thread-67922 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:23:51.514 [INFO] [Thread-67922 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97490157, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653422585615, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992873, telescope_ra=19.5502155, telescope_dec=-24.256404, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.56997, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5242204725422, telescope_dec_j2k=-24.3099938008911, observability=1)
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Status age = 18.045032024383545s
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:09.559 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:09.560 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 17;19.5552345;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57499;2460996.97511066;13.40261833;1.3;_
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response 17;19.5552345;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57499;2460996.97511066;13.40261833;1.3;_
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:09.561 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:09.562 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:09.562 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:09.562 [INFO] [Thread-67923 (handle)] [driver.py] [get_status()] Telra = 19.5552345, teldec = -24.256404
2025-11-17T13:24:09.562 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5552345 -24.256404
2025-11-17T13:24:09.563 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5552345 -24.256404
2025-11-17T13:24:09.563 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5552345 -24.256404
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 17;19.5552345;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57499;2460996.97511068;13.40261833;1.3;_19.5292411630892 -24.3101682753725
2025-11-17T13:24:09.564 [INFO] [Thread-67923 (handle)] [driver.py] [get_status()] ra_j2k = 19.5292411630892     dec_j2k = -24.3101682753725
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 140;0.104653984152814;171.162351965909;_
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response 140;0.104653984152814;171.162351965909;_
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:09.564 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:09.565 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:09.566 [DEBUG] [Thread-67923 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:24:09.566 [DEBUG] [Thread-67923 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:24:09.566 [DEBUG] [Thread-67923 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49581)
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:09.573 [DEBUG] [Thread-67923 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:09.580 [DEBUG] [Thread-67923 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:09.581 [INFO] [Thread-67923 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97511066, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653984152814, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992872, telescope_ra=19.5552345, telescope_dec=-24.256404, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.57499, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5292411630892, telescope_dec_j2k=-24.3101682753725, observability=1)
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:11.864 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:24:11.865 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.866 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.866 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.866 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:11.866 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:11.866 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:11.867 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:24:11.868 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:11.869 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Park
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:24:11.870 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:24:11.871 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 29;19.5558779;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57563;2460996.9751374;13.40326;1.3;_Park Command Successful
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Status age = 3.1477155685424805s
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:12.728 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:12.729 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:12.730 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:12.730 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 17;19.5561208;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57587;2460996.97514734;13.40350222;1.3;_
2025-11-17T13:24:12.730 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response 17;19.5561208;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57587;2460996.97514734;13.40350222;1.3;_
2025-11-17T13:24:12.730 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:12.730 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:12.731 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:12.731 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:12.732 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:12.732 [INFO] [Thread-67924 (handle)] [driver.py] [get_status()] Telra = 19.5561208, teldec = -24.256404
2025-11-17T13:24:12.732 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5561208 -24.256404
2025-11-17T13:24:12.732 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5561208 -24.256404
2025-11-17T13:24:12.732 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5561208 -24.256404
2025-11-17T13:24:12.733 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 17;19.5561208;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57587;2460996.97514737;13.40350222;1.3;_19.5301277623059 -24.3101990762249
2025-11-17T13:24:12.733 [INFO] [Thread-67924 (handle)] [driver.py] [get_status()] ra_j2k = 19.5301277623059     dec_j2k = -24.3101990762249
2025-11-17T13:24:12.733 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:12.733 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:12.733 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 140;0.1046537835931;171.162362694745;_
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response 140;0.1046537835931;171.162362694745;_
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:12.734 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:12.735 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:12.736 [DEBUG] [Thread-67924 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:12.736 [DEBUG] [Thread-67924 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:12.736 [DEBUG] [Thread-67924 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:12.737 [DEBUG] [Thread-67924 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50833)
2025-11-17T13:24:12.737 [DEBUG] [Thread-67924 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:12.737 [DEBUG] [Thread-67924 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:12.737 [DEBUG] [Thread-67924 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:12.737 [DEBUG] [Thread-67924 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:12.738 [DEBUG] [Thread-67924 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:12.745 [DEBUG] [Thread-67924 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:12.745 [INFO] [Thread-67924 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97514734, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046537835931, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992872, telescope_ra=19.5561208, telescope_dec=-24.256404, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.57587, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5301277623059, telescope_dec_j2k=-24.3101990762249, observability=1)
2025-11-17T13:24:12.871 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:24:12.871 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:24:12.871 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:24:12.872 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:24:12.872 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:24:13.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:24:13.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:24:13.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:24:13.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:24:13.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:24:14.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:24:14.873 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:24:14.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:24:14.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:24:14.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.225416660308838s
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5567375;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57649;2460996.9751733;13.40411722;1.3;_
2025-11-17T13:24:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.5567375;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57649;2460996.9751733;13.40411722;1.3;_
2025-11-17T13:24:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:14.974 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.5567375, teldec = -24.256404
2025-11-17T13:24:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5567375 -24.256404
2025-11-17T13:24:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5567375 -24.256404
2025-11-17T13:24:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5567375 -24.256404
2025-11-17T13:24:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5567375;-24.256404;50.108301;89.992872;50.08601;90.12017;16.57649;2460996.97517332;13.40411722;1.3;_19.5307446706264 -24.3102205062212
2025-11-17T13:24:14.975 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5307446706264     dec_j2k = -24.3102205062212
2025-11-17T13:24:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104654024264757;171.162357330327;_
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104654024264757;171.162357330327;_
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55011)
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:14.992 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:14.992 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9751733, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654024264757, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108301, telescope_az=89.992872, telescope_ra=19.5567375, telescope_dec=-24.256404, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.57649, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5307446706264, telescope_dec_j2k=-24.3102205062212, observability=1)
2025-11-17T13:24:15.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:24:15.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:24:15.874 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:24:15.875 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:24:15.875 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:24:15.875 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:15.875 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:15.875 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:15.876 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:24:15.877 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:24:15.877 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:24:15.877 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:16.878 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:24:16.879 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:24:16.880 [DEBUG] [ThreadPoolExecutor-2840_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:16.880 [INFO] [ThreadPoolExecutor-2840_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.46946907043457s
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:24.461 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:24.462 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:24.463 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5593886;-24.256403;50.1083;89.992872;50.08601;90.12017;16.57914;2460996.97528314;13.40676111;1.3;_
2025-11-17T13:24:24.463 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.5593886;-24.256403;50.1083;89.992872;50.08601;90.12017;16.57914;2460996.97528314;13.40676111;1.3;_
2025-11-17T13:24:24.463 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:24.463 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:24.463 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:24.464 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:24.464 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:24.464 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.5593886, teldec = -24.256403
2025-11-17T13:24:24.464 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5593886 -24.256403
2025-11-17T13:24:24.464 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5593886 -24.256403
2025-11-17T13:24:24.464 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5593886 -24.256403
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5593886;-24.256403;50.1083;89.992872;50.08601;90.12017;16.57914;2460996.97528316;13.40676111;1.3;_19.5333966674833 -24.3103116149985
2025-11-17T13:24:24.465 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5333966674833     dec_j2k = -24.3103116149985
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.1046540643767;171.162357330327;_
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.1046540643767;171.162357330327;_
2025-11-17T13:24:24.465 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:24.466 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:24.466 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:24.466 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:24.466 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:24.466 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:24.467 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39561)
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:24.472 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:24.480 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:24.480 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97528314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046540643767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.992872, telescope_ra=19.5593886, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.57914, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5333966674833, telescope_dec_j2k=-24.3103116149985, observability=1)
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Status age = 3.1996984481811523s
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:27.680 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 17;19.5602758;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58003;2460996.97532038;13.40767389;1.3;_
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response 17;19.5602758;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58003;2460996.97532038;13.40767389;1.3;_
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:27.681 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:27.682 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:27.682 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:27.683 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:27.683 [INFO] [Thread-67925 (handle)] [driver.py] [get_status()] Telra = 19.5602758, teldec = -24.256403
2025-11-17T13:24:27.683 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5602758 -24.256403
2025-11-17T13:24:27.683 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5602758 -24.256403
2025-11-17T13:24:27.683 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5602758 -24.256403
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 17;19.5603039;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58006;2460996.97532042;13.40767389;1.3;_19.534284167968 -24.3103424338325
2025-11-17T13:24:27.684 [INFO] [Thread-67925 (handle)] [driver.py] [get_status()] ra_j2k = 19.534284167968     dec_j2k = -24.3103424338325
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 140;0.104654305048357;171.162357330327;_
2025-11-17T13:24:27.684 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response 140;0.104654305048357;171.162357330327;_
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:27.685 [DEBUG] [Thread-67925 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:27.686 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:27.686 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:27.686 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:27.686 [DEBUG] [Thread-67925 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:27.687 [DEBUG] [Thread-67925 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:27.687 [DEBUG] [Thread-67925 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59337)
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:27.691 [DEBUG] [Thread-67925 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:27.699 [DEBUG] [Thread-67925 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:27.699 [INFO] [Thread-67925 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97532038, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654305048357, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.992871, telescope_ra=19.5602758, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.58003, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.534284167968, telescope_dec_j2k=-24.3103424338325, observability=1)
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.9967045783996582s
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:29.696 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:29.697 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:29.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5608641;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58062;2460996.97534373;13.4082325;1.3;_
2025-11-17T13:24:29.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.5608641;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58062;2460996.97534373;13.4082325;1.3;_
2025-11-17T13:24:29.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:29.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:29.698 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:29.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:29.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:29.699 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.5608641, teldec = -24.256403
2025-11-17T13:24:29.699 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.5608641 -24.256403
2025-11-17T13:24:29.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.5608641 -24.256403
2025-11-17T13:24:29.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5608641 -24.256403
2025-11-17T13:24:29.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5608641;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58062;2460996.97534375;13.4082325;1.3;_19.5348726673321 -24.3103628681527
2025-11-17T13:24:29.701 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5348726673321     dec_j2k = -24.3103628681527
2025-11-17T13:24:29.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:29.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:29.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:29.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104653863816986;171.162362694745;_
2025-11-17T13:24:29.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104653863816986;171.162362694745;_
2025-11-17T13:24:29.702 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:29.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:29.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:29.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:29.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:29.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:29.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:29.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34521)
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:29.708 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:29.716 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:24:29.716 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97534373, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104653863816986, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.992871, telescope_ra=19.5608641, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.58062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5348726673321, telescope_dec_j2k=-24.3103628681527, observability=1)
2025-11-17T13:24:29.716 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.11143612861633 seconds ago
2025-11-17T13:24:44.687 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:24:44
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.971081495285034s
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:44.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5650368;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58479;2460996.97551722;13.41239389;1.3;_
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5650368;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58479;2460996.97551722;13.41239389;1.3;_
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:44.688 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:44.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:44.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:44.689 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5650368, teldec = -24.256403
2025-11-17T13:24:44.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5650368 -24.256403
2025-11-17T13:24:44.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5650368 -24.256403
2025-11-17T13:24:44.689 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5650368 -24.256403
2025-11-17T13:24:44.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5650368;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58479;2460996.97551725;13.41239389;1.3;_19.5390467839811 -24.310507768968
2025-11-17T13:24:44.690 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.5390467839811     dec_j2k = -24.310507768968
2025-11-17T13:24:44.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:44.690 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:44.691 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104654385272242;171.162351965909;_
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104654385272242;171.162351965909;_
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:44.692 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:44.693 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:44.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:44.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:44.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48657)
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:44.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:44.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:44.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:44.707 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:44.707 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:44.707 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:44.708 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:44.708 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:44.708 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:44.708 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:44.708 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97551722, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654385272242, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.992871, telescope_ra=19.5650368, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.58479, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5390467839811, telescope_dec_j2k=-24.310507768968, observability=1)
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Status age = 1.0330932140350342s
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:45.741 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:24:45.742 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:24:45.743 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 17;19.5653173;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58507;2460996.97552943;13.41267361;1.3;_
2025-11-17T13:24:45.743 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response 17;19.5653173;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58507;2460996.97552943;13.41267361;1.3;_
2025-11-17T13:24:45.743 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:24:45.743 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:24:45.743 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:24:45.744 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:45.744 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:24:45.744 [INFO] [Thread-67926 (handle)] [driver.py] [get_status()] Telra = 19.5653173, teldec = -24.256403
2025-11-17T13:24:45.744 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5653173 -24.256403
2025-11-17T13:24:45.744 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5653173 -24.256403
2025-11-17T13:24:45.744 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5653173 -24.256403
2025-11-17T13:24:45.745 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 17;19.5653173;-24.256403;50.1083;89.992871;50.08601;90.12017;16.58507;2460996.97552946;13.41267361;1.3;_19.5393273793753 -24.3105175073247
2025-11-17T13:24:45.745 [INFO] [Thread-67926 (handle)] [driver.py] [get_status()] ra_j2k = 19.5393273793753     dec_j2k = -24.3105175073247
2025-11-17T13:24:45.745 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:24:45.745 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:24:45.745 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 140;0.1046543451603;171.162351965909;_
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response 140;0.1046543451603;171.162351965909;_
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:45.746 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:45.747 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:45.747 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:45.747 [DEBUG] [Thread-67926 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:45.747 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:24:45.747 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:24:45.748 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:24:45.748 [DEBUG] [Thread-67926 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:45.748 [DEBUG] [Thread-67926 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:24:45.749 [DEBUG] [Thread-67926 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39895)
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:45.752 [DEBUG] [Thread-67926 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:24:45.759 [DEBUG] [Thread-67926 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:24:45.759 [INFO] [Thread-67926 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97552943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046543451603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.992871, telescope_ra=19.5653173, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.58507, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:23:50.984505', telescope_ra_j2k=19.5393273793753, telescope_dec_j2k=-24.3105175073247, observability=1)
2025-11-17T13:24:51.125 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:51.126 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:51.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:51.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:51.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:51.127 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:51.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:51.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:51.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:51.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:51.128 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:24:51.128 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:51.128 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:51.128 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:51.128 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:24:51.129 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:24:51.130 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:52.130 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:52.130 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:52.130 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:24:52.131 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:24:52.132 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:24:52.133 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:24:52.133 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:24:52.133 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:24:52.133 [DEBUG] [ThreadPoolExecutor-2842_0] [payload.py] [to_registers()] [0]
2025-11-17T13:24:52.137 [DEBUG] [ThreadPoolExecutor-2842_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38243)
2025-11-17T13:24:52.137 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:24:52.137 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:24:52.138 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:24:52.138 [DEBUG] [ThreadPoolExecutor-2842_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:24:52.138 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:24:52.144 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:24:52.145 [DEBUG] [ThreadPoolExecutor-2842_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Status age = 18.04938244819641s
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:03.809 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:03.810 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:03.811 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 17;19.5703617;-24.256403;50.1083;89.99287;50.08601;90.12017;16.59011;2460996.97573855;13.41770417;1.3;_
2025-11-17T13:25:03.811 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response 17;19.5703617;-24.256403;50.1083;89.99287;50.08601;90.12017;16.59011;2460996.97573855;13.41770417;1.3;_
2025-11-17T13:25:03.811 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:03.811 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:03.811 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:03.812 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:03.812 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:03.812 [INFO] [Thread-67927 (handle)] [driver.py] [get_status()] Telra = 19.5703617, teldec = -24.256403
2025-11-17T13:25:03.812 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5703617 -24.256403
2025-11-17T13:25:03.812 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5703617 -24.256403
2025-11-17T13:25:03.812 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5703617 -24.256403
2025-11-17T13:25:03.813 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 17;19.5703617;-24.256403;50.1083;89.99287;50.08601;90.12017;16.59011;2460996.97573858;13.41770417;1.3;_19.5443734984168 -24.3106925893062
2025-11-17T13:25:03.813 [INFO] [Thread-67927 (handle)] [driver.py] [get_status()] ra_j2k = 19.5443734984168     dec_j2k = -24.3106925893062
2025-11-17T13:25:03.813 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:03.813 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:03.813 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 140;0.104654625943899;171.162351965909;_
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response 140;0.104654625943899;171.162351965909;_
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:03.814 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:03.815 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:03.816 [DEBUG] [Thread-67927 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:03.816 [DEBUG] [Thread-67927 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:03.816 [DEBUG] [Thread-67927 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42823)
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:03.820 [DEBUG] [Thread-67927 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:03.827 [DEBUG] [Thread-67927 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:03.828 [INFO] [Thread-67927 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97573855, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654625943899, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.99287, telescope_ra=19.5703617, telescope_dec=-24.256403, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.59011, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5443734984168, telescope_dec_j2k=-24.3106925893062, observability=1)
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Status age = 8.946672439575195s
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:12.774 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:12.775 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:12.776 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 17;19.5728448;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5926;2460996.97584231;13.42018056;1.3;_
2025-11-17T13:25:12.776 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response 17;19.5728448;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5926;2460996.97584231;13.42018056;1.3;_
2025-11-17T13:25:12.776 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:12.776 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:12.776 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:12.777 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:12.777 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:12.777 [INFO] [Thread-67928 (handle)] [driver.py] [get_status()] Telra = 19.5728448, teldec = -24.256402
2025-11-17T13:25:12.777 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5728448 -24.256402
2025-11-17T13:25:12.777 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5728448 -24.256402
2025-11-17T13:25:12.778 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5728448 -24.256402
2025-11-17T13:25:12.778 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 17;19.5728448;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5926;2460996.97584234;13.42018056;1.3;_19.5468574472407 -24.3107777393205
2025-11-17T13:25:12.778 [INFO] [Thread-67928 (handle)] [driver.py] [get_status()] ra_j2k = 19.5468574472407     dec_j2k = -24.3107777393205
2025-11-17T13:25:12.778 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 140;0.104655147399156;171.162357330327;_
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response 140;0.104655147399156;171.162357330327;_
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:12.779 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:12.780 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:12.780 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:12.780 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:12.780 [DEBUG] [Thread-67928 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:12.780 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:12.781 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:12.781 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:12.781 [DEBUG] [Thread-67928 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:12.781 [DEBUG] [Thread-67928 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:12.781 [DEBUG] [Thread-67928 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45999)
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:12.785 [DEBUG] [Thread-67928 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:12.792 [DEBUG] [Thread-67928 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:12.793 [DEBUG] [Thread-67928 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:12.793 [DEBUG] [Thread-67928 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:12.793 [DEBUG] [Thread-67928 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:12.793 [INFO] [Thread-67928 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97584231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655147399156, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.99287, telescope_ra=19.5728448, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5926, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5468574472407, telescope_dec_j2k=-24.3107777393205, observability=1)
2025-11-17T13:25:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.154737710952759s
2025-11-17T13:25:14.947 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:14.948 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:14.948 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5734515;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5932;2460996.97586748;13.42078556;1.3;_
2025-11-17T13:25:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.5734515;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5932;2460996.97586748;13.42078556;1.3;_
2025-11-17T13:25:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:14.951 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.5734515, teldec = -24.256402
2025-11-17T13:25:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5734515 -24.256402
2025-11-17T13:25:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5734515 -24.256402
2025-11-17T13:25:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5734515 -24.256402
2025-11-17T13:25:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.5734515;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5932;2460996.9758675;13.42078556;1.3;_19.5474643548348 -24.3107987850642
2025-11-17T13:25:14.952 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5474643548348     dec_j2k = -24.3107987850642
2025-11-17T13:25:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104654706167785;171.162357330327;_
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104654706167785;171.162357330327;_
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54935)
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:14.964 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:14.972 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:14.972 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97586748, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104654706167785, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.99287, telescope_ra=19.5734515, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5932, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5474643548348, telescope_dec_j2k=-24.3107987850642, observability=1)
2025-11-17T13:25:17.145 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:17.145 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:17.145 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:17.145 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:17.145 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:17.146 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:25:17.147 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:25:17.148 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:21.917 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:21.917 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Status age = 6.945714473724365s
2025-11-17T13:25:21.917 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:21.917 [DEBUG] [Thread-67929 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:21.918 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:21.919 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 17;19.5754027;-24.256402;50.1083;89.99287;50.08601;90.12017;16.59515;2460996.97594814;13.42273139;1.3;_
2025-11-17T13:25:21.919 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response 17;19.5754027;-24.256402;50.1083;89.99287;50.08601;90.12017;16.59515;2460996.97594814;13.42273139;1.3;_
2025-11-17T13:25:21.919 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:21.919 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:21.919 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:21.921 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:21.921 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:21.921 [INFO] [Thread-67929 (handle)] [driver.py] [get_status()] Telra = 19.5754027, teldec = -24.256402
2025-11-17T13:25:21.921 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5754027 -24.256402
2025-11-17T13:25:21.921 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5754027 -24.256402
2025-11-17T13:25:21.921 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5754027 -24.256402
2025-11-17T13:25:21.922 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 17;19.5754027;-24.256402;50.1083;89.99287;50.08601;90.12017;16.59515;2460996.97594817;13.42273139;1.3;_19.5494162231273 -24.31086646091
2025-11-17T13:25:21.922 [INFO] [Thread-67929 (handle)] [driver.py] [get_status()] ra_j2k = 19.5494162231273     dec_j2k = -24.31086646091
2025-11-17T13:25:21.922 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:21.922 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:21.922 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:21.923 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 140;0.104655187511098;171.162362694745;_
2025-11-17T13:25:21.923 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response 140;0.104655187511098;171.162362694745;_
2025-11-17T13:25:21.923 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:21.923 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:21.923 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:21.924 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:21.924 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:21.924 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:21.924 [DEBUG] [Thread-67929 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:21.925 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:21.925 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:21.925 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:21.925 [DEBUG] [Thread-67929 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:25:21.925 [DEBUG] [Thread-67929 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:25:21.926 [DEBUG] [Thread-67929 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52599)
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:21.929 [DEBUG] [Thread-67929 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:21.936 [DEBUG] [Thread-67929 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:21.936 [INFO] [Thread-67929 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97594814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655187511098, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.99287, telescope_ra=19.5754027, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.59515, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5494162231273, telescope_dec_j2k=-24.31086646091, observability=1)
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.6375460624694824s
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:23.574 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:23.575 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:23.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5758511;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5956;2460996.97596732;13.42317861;1.3;_
2025-11-17T13:25:23.576 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.5758511;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5956;2460996.97596732;13.42317861;1.3;_
2025-11-17T13:25:23.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:23.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:23.576 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:23.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:23.577 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:23.577 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.5758511, teldec = -24.256402
2025-11-17T13:25:23.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5758511 -24.256402
2025-11-17T13:25:23.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5758511 -24.256402
2025-11-17T13:25:23.577 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5758511 -24.256402
2025-11-17T13:25:23.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5758511;-24.256402;50.1083;89.99287;50.08601;90.12017;16.5956;2460996.97596734;13.42317861;1.3;_19.5498647768463 -24.3108820113508
2025-11-17T13:25:23.578 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5498647768463     dec_j2k = -24.3108820113508
2025-11-17T13:25:23.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:23.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:23.578 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:23.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:23.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:23.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:23.581 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:23.581 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52703)
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:23.585 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:23.592 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:23.593 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:23.593 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97596732, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465534795887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.1083, telescope_az=89.99287, telescope_ra=19.5758511, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.5956, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5498647768463, telescope_dec_j2k=-24.3108820113508, observability=1)
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.183642148971558s
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:29.776 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:29.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:29.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5775794;-24.256402;50.108299;89.99287;50.08601;90.12017;16.59733;2460996.9760391;13.42490222;1.3;_
2025-11-17T13:25:29.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.5775794;-24.256402;50.108299;89.99287;50.08601;90.12017;16.59733;2460996.9760391;13.42490222;1.3;_
2025-11-17T13:25:29.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:29.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:29.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:29.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:29.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:29.779 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.5775794, teldec = -24.256402
2025-11-17T13:25:29.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.5775794 -24.256402
2025-11-17T13:25:29.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.5775794 -24.256402
2025-11-17T13:25:29.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5775794 -24.256402
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5775794;-24.256402;50.108299;89.99287;50.08601;90.12017;16.59733;2460996.97603912;13.42490222;1.3;_19.5515936698276 -24.3109419416522
2025-11-17T13:25:29.781 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5515936698276     dec_j2k = -24.3109419416522
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:25:29.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104655267734984;171.162357330327;_
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:29.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:29.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:25:29.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:25:29.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54291)
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:29.788 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:29.795 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:29.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:29.796 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:29.796 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:25:29.796 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9760391, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655267734984, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.99287, telescope_ra=19.5775794, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.59733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5515936698276, telescope_dec_j2k=-24.3109419416522, observability=1)
2025-11-17T13:25:29.796 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10900521278381 seconds ago
2025-11-17T13:25:39.982 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:39.982 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Status age = 10.186631917953491s
2025-11-17T13:25:39.982 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:39.982 [DEBUG] [Thread-67930 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:39.983 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:39.984 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 17;19.5804453;-24.256402;50.108299;89.992869;50.08601;90.12017;16.6002;2460996.97615722;13.42776028;1.3;_
2025-11-17T13:25:39.984 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response 17;19.5804453;-24.256402;50.108299;89.992869;50.08601;90.12017;16.6002;2460996.97615722;13.42776028;1.3;_
2025-11-17T13:25:39.984 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:39.984 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:39.984 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:39.985 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:39.985 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:39.985 [INFO] [Thread-67930 (handle)] [driver.py] [get_status()] Telra = 19.5804453, teldec = -24.256402
2025-11-17T13:25:39.985 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5804453 -24.256402
2025-11-17T13:25:39.985 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5804453 -24.256402
2025-11-17T13:25:39.985 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5804453 -24.256402
2025-11-17T13:25:39.986 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 17;19.5804453;-24.256402;50.108299;89.992869;50.08601;90.12017;16.6002;2460996.97615725;13.42776028;1.3;_19.5544605548396 -24.3110412951572
2025-11-17T13:25:39.986 [INFO] [Thread-67930 (handle)] [driver.py] [get_status()] ra_j2k = 19.5544605548396     dec_j2k = -24.3110412951572
2025-11-17T13:25:39.986 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:39.986 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:39.987 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:39.988 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:39.989 [DEBUG] [Thread-67930 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:39.989 [DEBUG] [Thread-67930 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:39.989 [DEBUG] [Thread-67930 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:39.990 [DEBUG] [Thread-67930 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34541)
2025-11-17T13:25:39.991 [DEBUG] [Thread-67930 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:39.991 [DEBUG] [Thread-67930 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:39.991 [DEBUG] [Thread-67930 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:39.991 [DEBUG] [Thread-67930 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:39.991 [DEBUG] [Thread-67930 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:39.998 [DEBUG] [Thread-67930 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:39.999 [INFO] [Thread-67930 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97615722, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992869, telescope_ra=19.5804453, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.6002, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5544605548396, telescope_dec_j2k=-24.3110412951572, observability=1)
2025-11-17T13:25:44.768 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:25:44
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.769567966461182s
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:44.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:44.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:44.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:44.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:44.769 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5817639;-24.256402;50.108299;89.992869;50.08601;90.12017;16.60152;2460996.97621262;13.42907528;1.3;_
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5817639;-24.256402;50.108299;89.992869;50.08601;90.12017;16.60152;2460996.97621262;13.42907528;1.3;_
2025-11-17T13:25:44.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:44.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:44.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:44.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:44.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:44.772 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5817639, teldec = -24.256402
2025-11-17T13:25:44.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5817639 -24.256402
2025-11-17T13:25:44.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5817639 -24.256402
2025-11-17T13:25:44.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5817639 -24.256402
2025-11-17T13:25:44.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5817639;-24.256402;50.108299;89.992869;50.08601;90.12017;16.60152;2460996.97621265;13.42907528;1.3;_19.5557796087637 -24.3110869975874
2025-11-17T13:25:44.773 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.5557796087637     dec_j2k = -24.3110869975874
2025-11-17T13:25:44.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:44.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:44.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655187511098;171.162357330327;_
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655187511098;171.162357330327;_
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:44.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:44.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:44.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:44.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:44.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:44.780 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49357)
2025-11-17T13:25:44.780 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:44.780 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:44.780 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:44.781 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:44.781 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:44.787 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:44.788 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:44.788 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97621262, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655187511098, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992869, telescope_ra=19.5817639, telescope_dec=-24.256402, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.60152, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:24:51.125474', telescope_ra_j2k=19.5557796087637, telescope_dec_j2k=-24.3110869975874, observability=1)
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:51.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:51.272 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:51.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:51.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:51.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:51.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:51.273 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:25:51.273 [INFO] [ThreadPoolExecutor-2843_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:25:51.273 [INFO] [ThreadPoolExecutor-2843_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:25:58.049 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:25:58.049 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Status age = 13.261324167251587s
2025-11-17T13:25:58.049 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:25:58.049 [DEBUG] [Thread-67931 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:25:58.049 [DEBUG] [Thread-67931 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:25:58.050 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:25:58.051 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 17;19.5854615;-24.256401;50.108299;89.992869;50.08601;90.12017;16.60521;2460996.97636633;13.43276278;1.3;_
2025-11-17T13:25:58.051 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response 17;19.5854615;-24.256401;50.108299;89.992869;50.08601;90.12017;16.60521;2460996.97636633;13.43276278;1.3;_
2025-11-17T13:25:58.051 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:25:58.051 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:25:58.051 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:25:58.052 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:58.052 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:25:58.052 [INFO] [Thread-67931 (handle)] [driver.py] [get_status()] Telra = 19.5854615, teldec = -24.256401
2025-11-17T13:25:58.052 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5854615 -24.256401
2025-11-17T13:25:58.052 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5854615 -24.256401
2025-11-17T13:25:58.052 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5854615 -24.256401
2025-11-17T13:25:58.053 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 17;19.5854615;-24.256401;50.108299;89.992869;50.08601;90.12017;16.60521;2460996.97636635;13.43276278;1.3;_19.5594784842572 -24.3112141218009
2025-11-17T13:25:58.053 [INFO] [Thread-67931 (handle)] [driver.py] [get_status()] ra_j2k = 19.5594784842572     dec_j2k = -24.3112141218009
2025-11-17T13:25:58.053 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:25:58.053 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:25:58.053 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 140;0.104655628742469;171.162357330327;_
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response 140;0.104655628742469;171.162357330327;_
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:58.054 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:25:58.055 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:25:58.056 [DEBUG] [Thread-67931 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:58.056 [DEBUG] [Thread-67931 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:25:58.056 [DEBUG] [Thread-67931 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32851)
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:25:58.061 [DEBUG] [Thread-67931 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:25:58.069 [DEBUG] [Thread-67931 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:25:58.070 [DEBUG] [Thread-67931 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:25:58.070 [DEBUG] [Thread-67931 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:25:58.070 [DEBUG] [Thread-67931 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:25:58.070 [INFO] [Thread-67931 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97636633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655628742469, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992869, telescope_ra=19.5854615, telescope_dec=-24.256401, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.60521, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5594784842572, telescope_dec_j2k=-24.3112141218009, observability=1)
2025-11-17T13:26:12.148 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.148 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.148 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:12.148 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:12.148 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:26:12.149 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:12.150 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:12.151 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:26:12.152 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:12.153 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:12.154 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.154 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:12.154 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:12.154 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Park
2025-11-17T13:26:12.155 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:26:12.155 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:26:12.155 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 29;19.5893945;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60915;2460996.97652957;13.436685;1.3;_Park Command Successful
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Status age = 14.757242918014526s
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:12.827 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 17;19.5895906;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60934;2460996.97653736;13.43688056;1.3;_
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response 17;19.5895906;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60934;2460996.97653736;13.43688056;1.3;_
2025-11-17T13:26:12.828 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:12.829 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:12.829 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:12.829 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:12.830 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:12.830 [INFO] [Thread-67932 (handle)] [driver.py] [get_status()] Telra = 19.5895906, teldec = -24.256401
2025-11-17T13:26:12.830 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5895906 -24.256401
2025-11-17T13:26:12.830 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5895906 -24.256401
2025-11-17T13:26:12.830 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5895906 -24.256401
2025-11-17T13:26:12.831 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 17;19.5895906;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60934;2460996.9765374;13.43688056;1.3;_19.5636090126069 -24.3113571383133
2025-11-17T13:26:12.831 [INFO] [Thread-67932 (handle)] [driver.py] [get_status()] ra_j2k = 19.5636090126069     dec_j2k = -24.3113571383133
2025-11-17T13:26:12.831 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:12.831 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:12.831 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162351965909;_
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:12.832 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:12.833 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:12.834 [DEBUG] [Thread-67932 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T13:26:12.834 [DEBUG] [Thread-67932 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T13:26:12.834 [DEBUG] [Thread-67932 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T13:26:12.841 [DEBUG] [Thread-67932 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32963)
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:12.842 [DEBUG] [Thread-67932 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:12.843 [DEBUG] [Thread-67932 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:12.843 [INFO] [Thread-67932 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97653736, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.5895906, telescope_dec=-24.256401, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.60934, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5636090126069, telescope_dec_j2k=-24.3113571383133, observability=1)
2025-11-17T13:26:13.155 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:26:13.155 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:26:13.156 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:26:13.156 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:26:13.156 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:26:14.156 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:26:14.156 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:26:14.157 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:26:14.157 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:26:14.157 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:26:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.1234982013702393s
2025-11-17T13:26:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.590178;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60993;2460996.97656213;13.43746639;1.3;_
2025-11-17T13:26:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.590178;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60993;2460996.97656213;13.43746639;1.3;_
2025-11-17T13:26:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:14.969 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.590178, teldec = -24.256401
2025-11-17T13:26:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.590178 -24.256401
2025-11-17T13:26:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.590178 -24.256401
2025-11-17T13:26:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.590178 -24.256401
2025-11-17T13:26:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.590178;-24.256401;50.108299;89.992868;50.08601;90.12017;16.60993;2460996.97656215;13.43746639;1.3;_19.5641966161633 -24.3113774785449
2025-11-17T13:26:14.970 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5641966161633     dec_j2k = -24.3113774785449
2025-11-17T13:26:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104655949638012;171.162351965909;_
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44761)
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:14.976 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:14.983 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:14.984 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97656213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655949638012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.590178, telescope_dec=-24.256401, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.60993, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5641966161633, telescope_dec_j2k=-24.3113774785449, observability=1)
2025-11-17T13:26:15.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:26:15.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:26:15.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:26:15.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:26:15.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:26:16.158 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:26:16.159 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:26:16.159 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:16.160 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:26:16.161 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:26:16.162 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Status age = 1.2231976985931396s
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:16.207 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 17;19.5905329;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61028;2460996.97657648;13.43782028;1.3;_
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response 17;19.5905329;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61028;2460996.97657648;13.43782028;1.3;_
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:16.208 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:16.209 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:16.209 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:16.210 [INFO] [Thread-67933 (handle)] [driver.py] [get_status()] Telra = 19.5905329, teldec = -24.256401
2025-11-17T13:26:16.210 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5905329 -24.256401
2025-11-17T13:26:16.210 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5905329 -24.256401
2025-11-17T13:26:16.210 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5905329 -24.256401
2025-11-17T13:26:16.211 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 17;19.5905329;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61028;2460996.9765765;13.43782028;1.3;_19.5645516391932 -24.3113897672517
2025-11-17T13:26:16.211 [INFO] [Thread-67933 (handle)] [driver.py] [get_status()] ra_j2k = 19.5645516391932     dec_j2k = -24.3113897672517
2025-11-17T13:26:16.211 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:16.211 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:16.211 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:16.211 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:16.212 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:16.213 [DEBUG] [Thread-67933 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:16.213 [DEBUG] [Thread-67933 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:16.213 [DEBUG] [Thread-67933 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57811)
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:16.220 [DEBUG] [Thread-67933 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:16.227 [DEBUG] [Thread-67933 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:16.228 [DEBUG] [Thread-67933 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:16.228 [INFO] [Thread-67933 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97657648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465534795887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.5905329, telescope_dec=-24.256401, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.61028, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5645516391932, telescope_dec_j2k=-24.3113897672517, observability=1)
2025-11-17T13:26:17.162 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:17.162 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:17.162 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:17.163 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:17.163 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:17.163 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:17.163 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:26:17.164 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:26:17.165 [DEBUG] [ThreadPoolExecutor-2842_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:17.165 [INFO] [ThreadPoolExecutor-2842_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.456955671310425s
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:22.685 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5923167;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61207;2460996.97665146;13.43959917;1.3;_
2025-11-17T13:26:22.686 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.5923167;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61207;2460996.97665146;13.43959917;1.3;_
2025-11-17T13:26:22.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:22.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:22.687 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:22.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:22.688 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:22.688 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.5923167, teldec = -24.256401
2025-11-17T13:26:22.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5923167 -24.256401
2025-11-17T13:26:22.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5923167 -24.256401
2025-11-17T13:26:22.688 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5923167 -24.256401
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.5923167;-24.256401;50.108299;89.992868;50.08601;90.12017;16.61207;2460996.97665149;13.43959917;1.3;_19.5663360580644 -24.3114515257742
2025-11-17T13:26:22.689 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5663360580644     dec_j2k = -24.3114515257742
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104655989749955;171.162351965909;_
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104655989749955;171.162351965909;_
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:22.689 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:22.690 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:22.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:22.691 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:22.691 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46815)
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:22.698 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:22.705 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:22.705 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:22.705 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:22.705 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:22.706 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:22.706 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:22.706 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:22.706 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:22.706 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:22.706 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97665146, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655989749955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.5923167, telescope_dec=-24.256401, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.61207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5663360580644, telescope_dec_j2k=-24.3114515257742, observability=1)
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.15018367767334s
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:29.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:29.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:29.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5943249;-24.2564;50.108299;89.992868;50.08601;90.12017;16.61408;2460996.97673447;13.44160194;1.3;_
2025-11-17T13:26:29.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.5943249;-24.2564;50.108299;89.992868;50.08601;90.12017;16.61408;2460996.97673447;13.44160194;1.3;_
2025-11-17T13:26:29.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:29.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:29.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:29.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:29.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:29.859 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.5943249, teldec = -24.2564
2025-11-17T13:26:29.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.5943249 -24.2564
2025-11-17T13:26:29.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.5943249 -24.2564
2025-11-17T13:26:29.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5943249 -24.2564
2025-11-17T13:26:29.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.5943249;-24.2564;50.108299;89.992868;50.08601;90.12017;16.61408;2460996.97673449;13.44160194;1.3;_19.5683449559669 -24.3115200394867
2025-11-17T13:26:29.860 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5683449559669     dec_j2k = -24.3115200394867
2025-11-17T13:26:29.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:29.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:29.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104656110085783;171.162357330327;_
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104656110085783;171.162357330327;_
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:29.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:29.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41789)
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:29.867 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:29.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:29.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:29.874 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:29.874 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:29.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:29.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:29.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:29.875 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:29.875 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:26:29.875 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97673447, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656110085783, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.5943249, telescope_dec=-24.2564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.61408, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5683449559669, telescope_dec_j2k=-24.3115200394867, observability=1)
2025-11-17T13:26:29.875 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10696744918823 seconds ago
2025-11-17T13:26:34.273 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:34.273 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Status age = 4.398735284805298s
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:34.274 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:34.275 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:34.276 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 17;19.5955474;-24.2564;50.108299;89.992868;50.08601;90.12017;16.6153;2460996.97678559;13.44282111;1.3;_
2025-11-17T13:26:34.276 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response 17;19.5955474;-24.2564;50.108299;89.992868;50.08601;90.12017;16.6153;2460996.97678559;13.44282111;1.3;_
2025-11-17T13:26:34.276 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:34.276 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:34.276 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:34.277 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:34.277 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:34.277 [INFO] [Thread-67934 (handle)] [driver.py] [get_status()] Telra = 19.5955474, teldec = -24.2564
2025-11-17T13:26:34.277 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5955474 -24.2564
2025-11-17T13:26:34.277 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5955474 -24.2564
2025-11-17T13:26:34.277 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5955474 -24.2564
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 17;19.5955474;-24.2564;50.108299;89.992868;50.08601;90.12017;16.6153;2460996.97678562;13.44282111;1.3;_19.5695678812201 -24.3115623488983
2025-11-17T13:26:34.278 [INFO] [Thread-67934 (handle)] [driver.py] [get_status()] ra_j2k = 19.5695678812201     dec_j2k = -24.3115623488983
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response 140;0.10465534795887;171.162357330327;_
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:34.278 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:34.279 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:34.279 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:34.279 [DEBUG] [Thread-67934 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:34.279 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:34.280 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:34.280 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:34.280 [DEBUG] [Thread-67934 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:34.280 [DEBUG] [Thread-67934 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:34.280 [DEBUG] [Thread-67934 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36725)
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:34.282 [DEBUG] [Thread-67934 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:34.289 [DEBUG] [Thread-67934 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:34.290 [INFO] [Thread-67934 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97678559, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465534795887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108299, telescope_az=89.992868, telescope_ra=19.5955474, telescope_dec=-24.2564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.6153, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5695678812201, telescope_dec_j2k=-24.3115623488983, observability=1)
2025-11-17T13:26:44.849 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:26:44
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.559560298919678s
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:44.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:44.850 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:44.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5985075;-24.2564;50.108298;89.992867;50.08601;90.12017;16.61826;2460996.97690801;13.44577306;1.3;_
2025-11-17T13:26:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.5985075;-24.2564;50.108298;89.992867;50.08601;90.12017;16.61826;2460996.97690801;13.44577306;1.3;_
2025-11-17T13:26:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:44.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:44.853 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.5985075, teldec = -24.2564
2025-11-17T13:26:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.5985075 -24.2564
2025-11-17T13:26:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.5985075 -24.2564
2025-11-17T13:26:44.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.5985075 -24.2564
2025-11-17T13:26:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.5985075;-24.2564;50.108298;89.992867;50.08601;90.12017;16.61826;2460996.97690803;13.44577306;1.3;_19.5725290125207 -24.3116647718846
2025-11-17T13:26:44.854 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.5725290125207     dec_j2k = -24.3116647718846
2025-11-17T13:26:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:44.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:44.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104655909526069;171.162346601491;_
2025-11-17T13:26:44.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104655909526069;171.162346601491;_
2025-11-17T13:26:44.855 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:44.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58479)
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:44.860 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:44.867 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:44.868 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:44.868 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97690801, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655909526069, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992867, telescope_ra=19.5985075, telescope_dec=-24.2564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.61826, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:25:51.270650', telescope_ra_j2k=19.5725290125207, telescope_dec_j2k=-24.3116647718846, observability=1)
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:51.413 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:51.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:51.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:51.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:51.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:51.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:51.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:51.414 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:51.415 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:26:51.416 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:26:51.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Status age = 7.457543611526489s
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:52.325 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:26:52.326 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:26:52.327 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 17;19.6005703;-24.2564;50.108298;89.992867;50.08601;90.12017;16.62032;2460996.97699453;13.44783028;1.3;_
2025-11-17T13:26:52.327 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response 17;19.6005703;-24.2564;50.108298;89.992867;50.08601;90.12017;16.62032;2460996.97699453;13.44783028;1.3;_
2025-11-17T13:26:52.327 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:26:52.327 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:26:52.327 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:26:52.328 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:52.328 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:26:52.328 [INFO] [Thread-67935 (handle)] [driver.py] [get_status()] Telra = 19.6005703, teldec = -24.2564
2025-11-17T13:26:52.328 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6005703 -24.2564
2025-11-17T13:26:52.328 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6005703 -24.2564
2025-11-17T13:26:52.328 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6005703 -24.2564
2025-11-17T13:26:52.329 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 17;19.6005703;-24.2564;50.108298;89.992867;50.08601;90.12017;16.62032;2460996.97699455;13.44783028;1.3;_19.5745925325518 -24.3117361280364
2025-11-17T13:26:52.329 [INFO] [Thread-67935 (handle)] [driver.py] [get_status()] ra_j2k = 19.5745925325518     dec_j2k = -24.3117361280364
2025-11-17T13:26:52.329 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:26:52.329 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:26:52.329 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 140;0.104655468294698;171.162351965909;_
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response 140;0.104655468294698;171.162351965909;_
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:52.330 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:26:52.331 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:26:52.332 [DEBUG] [Thread-67935 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:52.332 [DEBUG] [Thread-67935 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:26:52.332 [DEBUG] [Thread-67935 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39163)
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:52.335 [DEBUG] [Thread-67935 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:26:52.342 [DEBUG] [Thread-67935 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:26:52.343 [INFO] [Thread-67935 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97699453, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655468294698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992867, telescope_ra=19.6005703, telescope_dec=-24.2564, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.62032, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5745925325518, telescope_dec_j2k=-24.3117361280364, observability=1)
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:52.417 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:26:52.418 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:26:52.419 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:26:52.419 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:26:52.419 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:26:52.419 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:26:52.420 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:26:52.420 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:26:52.420 [DEBUG] [ThreadPoolExecutor-2844_0] [payload.py] [to_registers()] [0]
2025-11-17T13:26:52.421 [DEBUG] [ThreadPoolExecutor-2844_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56089)
2025-11-17T13:26:52.421 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:26:52.421 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:26:52.421 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:26:52.421 [DEBUG] [ThreadPoolExecutor-2844_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:26:52.422 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:26:52.428 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:26:52.428 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:26:52.428 [DEBUG] [ThreadPoolExecutor-2844_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:26:52.428 [DEBUG] [ThreadPoolExecutor-2844_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:26:52.429 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:26:52.429 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:26:52.429 [DEBUG] [ThreadPoolExecutor-2844_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Status age = 18.11334753036499s
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:10.456 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:10.457 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 17;19.6056414;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62539;2460996.97720436;13.4528875;1.3;_
2025-11-17T13:27:10.457 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response 17;19.6056414;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62539;2460996.97720436;13.4528875;1.3;_
2025-11-17T13:27:10.457 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:10.457 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:10.457 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:10.458 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:10.458 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:10.458 [INFO] [Thread-67936 (handle)] [driver.py] [get_status()] Telra = 19.6056414, teldec = -24.256399
2025-11-17T13:27:10.458 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6056414 -24.256399
2025-11-17T13:27:10.458 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6056414 -24.256399
2025-11-17T13:27:10.458 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6056414 -24.256399
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 17;19.6056414;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62539;2460996.97720439;13.4528875;1.3;_19.5796654075439 -24.3119104799276
2025-11-17T13:27:10.459 [INFO] [Thread-67936 (handle)] [driver.py] [get_status()] ra_j2k = 19.5796654075439     dec_j2k = -24.3119104799276
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 140;0.104656631541039;171.162362694745;_
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response 140;0.104656631541039;171.162362694745;_
2025-11-17T13:27:10.459 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:10.460 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:10.460 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:10.460 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:10.460 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:10.460 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:10.461 [DEBUG] [Thread-67936 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:10.462 [DEBUG] [Thread-67936 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58729)
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:10.467 [DEBUG] [Thread-67936 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:10.474 [DEBUG] [Thread-67936 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:10.474 [INFO] [Thread-67936 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97720436, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656631541039, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.6056414, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.62539, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5796654075439, telescope_dec_j2k=-24.3119104799276, observability=1)
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Status age = 2.408822774887085s
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:12.883 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:12.884 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:12.884 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:12.884 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:12.884 [DEBUG] [Thread-67937 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:12.884 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:12.885 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:12.885 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:12.885 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:12.885 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 17;19.606304;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62606;2460996.97723246;13.45354833;1.3;_
2025-11-17T13:27:12.886 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response 17;19.606304;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62606;2460996.97723246;13.45354833;1.3;_
2025-11-17T13:27:12.886 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:12.886 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:12.886 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:12.887 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:12.887 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:12.887 [INFO] [Thread-67937 (handle)] [driver.py] [get_status()] Telra = 19.606304, teldec = -24.256399
2025-11-17T13:27:12.887 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] UnCookCoordinates 19.606304 -24.256399
2025-11-17T13:27:12.887 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.606304 -24.256399
2025-11-17T13:27:12.887 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.606304 -24.256399
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 17;19.606304;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62606;2460996.9772325;13.45354833;1.3;_19.5803282399385 -24.3119333846812
2025-11-17T13:27:12.888 [INFO] [Thread-67937 (handle)] [driver.py] [get_status()] ra_j2k = 19.5803282399385     dec_j2k = -24.3119333846812
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 140;0.104655869414126;171.162362694745;_
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response 140;0.104655869414126;171.162362694745;_
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:12.888 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:12.889 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:12.890 [DEBUG] [Thread-67937 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:12.890 [DEBUG] [Thread-67937 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:12.890 [DEBUG] [Thread-67937 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49579)
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:12.892 [DEBUG] [Thread-67937 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:12.899 [DEBUG] [Thread-67937 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:12.899 [DEBUG] [Thread-67937 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:12.900 [DEBUG] [Thread-67937 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:12.900 [INFO] [Thread-67937 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97723246, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104655869414126, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.606304, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.62606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5803282399385, telescope_dec_j2k=-24.3119333846812, observability=1)
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0753328800201416s
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6068929;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62664;2460996.97725668;13.45413556;1.3;_
2025-11-17T13:27:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6068929;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62664;2460996.97725668;13.45413556;1.3;_
2025-11-17T13:27:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:14.978 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6068929, teldec = -24.256399
2025-11-17T13:27:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6068929 -24.256399
2025-11-17T13:27:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6068929 -24.256399
2025-11-17T13:27:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6068929 -24.256399
2025-11-17T13:27:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6068929;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62664;2460996.9772567;13.45413556;1.3;_19.5809173465803 -24.3119537404017
2025-11-17T13:27:14.979 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5809173465803     dec_j2k = -24.3119537404017
2025-11-17T13:27:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104656511205211;171.162357330327;_
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104656511205211;171.162357330327;_
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:14.983 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59651)
2025-11-17T13:27:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:14.984 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:14.991 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:14.991 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97725668, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656511205211, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.6068929, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.62664, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5809173465803, telescope_dec_j2k=-24.3119537404017, observability=1)
2025-11-17T13:27:17.429 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:17.429 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:17.429 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:17.429 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:17.429 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:17.430 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:27:17.431 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:27:17.432 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:21.800 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.8091583251953125s
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:21.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:21.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6087883;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62854;2460996.97733568;13.45602583;1.3;_
2025-11-17T13:27:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.6087883;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62854;2460996.97733568;13.45602583;1.3;_
2025-11-17T13:27:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:21.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:21.804 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.6087883, teldec = -24.256399
2025-11-17T13:27:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6087883 -24.256399
2025-11-17T13:27:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6087883 -24.256399
2025-11-17T13:27:21.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6087883 -24.256399
2025-11-17T13:27:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6087883;-24.256399;50.108298;89.992866;50.08601;90.12017;16.62854;2460996.97733571;13.45602583;1.3;_19.5828134122788 -24.3120192473945
2025-11-17T13:27:21.805 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.5828134122788     dec_j2k = -24.3120192473945
2025-11-17T13:27:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:21.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104656671652982;171.162351965909;_
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104656671652982;171.162351965909;_
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:21.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:21.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:21.808 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49085)
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:21.810 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:21.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:21.818 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:21.818 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97733568, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656671652982, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.6087883, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.62854, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5828134122788, telescope_dec_j2k=-24.3120192473945, observability=1)
2025-11-17T13:27:28.508 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:28.508 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Status age = 6.690493583679199s
2025-11-17T13:27:28.508 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:28.509 [DEBUG] [Thread-67938 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:28.509 [DEBUG] [Thread-67938 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:28.509 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:28.509 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:28.509 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:28.510 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:28.511 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 17;19.6106556;-24.256399;50.108298;89.992866;50.08601;90.12017;16.63041;2460996.97741332;13.45788806;1.3;_
2025-11-17T13:27:28.511 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response 17;19.6106556;-24.256399;50.108298;89.992866;50.08601;90.12017;16.63041;2460996.97741332;13.45788806;1.3;_
2025-11-17T13:27:28.511 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:28.511 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:28.511 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:28.512 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:28.512 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:28.512 [INFO] [Thread-67938 (handle)] [driver.py] [get_status()] Telra = 19.6106556, teldec = -24.256399
2025-11-17T13:27:28.512 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6106556 -24.256399
2025-11-17T13:27:28.512 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6106556 -24.256399
2025-11-17T13:27:28.512 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6106556 -24.256399
2025-11-17T13:27:28.513 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 17;19.6106556;-24.256399;50.108298;89.992866;50.08601;90.12017;16.63041;2460996.97741334;13.45788806;1.3;_19.5846813690229 -24.312083770124
2025-11-17T13:27:28.513 [INFO] [Thread-67938 (handle)] [driver.py] [get_status()] ra_j2k = 19.5846813690229     dec_j2k = -24.312083770124
2025-11-17T13:27:28.513 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:28.513 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 140;0.104656711764925;171.162351965909;_
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response 140;0.104656711764925;171.162351965909;_
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:28.514 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:28.515 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:28.515 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:28.515 [DEBUG] [Thread-67938 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:28.515 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:28.515 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:28.516 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:28.516 [DEBUG] [Thread-67938 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:28.516 [DEBUG] [Thread-67938 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:28.516 [DEBUG] [Thread-67938 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57409)
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:28.519 [DEBUG] [Thread-67938 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:28.527 [DEBUG] [Thread-67938 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:28.528 [DEBUG] [Thread-67938 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:28.528 [INFO] [Thread-67938 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97741332, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656711764925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.6106556, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.63041, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5846813690229, telescope_dec_j2k=-24.312083770124, observability=1)
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.4071073532104492s
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:29.935 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:29.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6110473;-24.256399;50.108298;89.992866;50.08601;90.12017;16.6308;2460996.97742981;13.45827861;1.3;_
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.6110473;-24.256399;50.108298;89.992866;50.08601;90.12017;16.6308;2460996.97742981;13.45827861;1.3;_
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:29.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:29.938 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.6110473, teldec = -24.256399
2025-11-17T13:27:29.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.6110473 -24.256399
2025-11-17T13:27:29.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.6110473 -24.256399
2025-11-17T13:27:29.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6110473 -24.256399
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6110473;-24.256399;50.108298;89.992866;50.08601;90.12017;16.6308;2460996.97742985;13.45827861;1.3;_19.5850732069021 -24.3120973032843
2025-11-17T13:27:29.939 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.5850732069021     dec_j2k = -24.3120973032843
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104657032660468;171.162357330327;_
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104657032660468;171.162357330327;_
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:29.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:29.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:29.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:29.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44109)
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:29.945 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:29.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:27:29.953 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97742981, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657032660468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108298, telescope_az=89.992866, telescope_ra=19.6110473, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.6308, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5850732069021, telescope_dec_j2k=-24.3120973032843, observability=1)
2025-11-17T13:27:29.953 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.1045081615448 seconds ago
2025-11-17T13:27:44.928 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:27:44
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 14.975343942642212s
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:44.929 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:44.930 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:44.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6152201;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63497;2460996.97760337;13.46244;1.3;_
2025-11-17T13:27:44.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6152201;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63497;2460996.97760337;13.46244;1.3;_
2025-11-17T13:27:44.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:44.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:44.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:44.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:44.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:44.932 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6152201, teldec = -24.256399
2025-11-17T13:27:44.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6152201 -24.256399
2025-11-17T13:27:44.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6152201 -24.256399
2025-11-17T13:27:44.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6152201 -24.256399
2025-11-17T13:27:44.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6152201;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63497;2460996.97760339;13.46244;1.3;_19.589247478215 -24.3122414371419
2025-11-17T13:27:44.933 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.589247478215     dec_j2k = -24.3122414371419
2025-11-17T13:27:44.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:44.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:44.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104657152996296;171.162351965909;_
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104657152996296;171.162351965909;_
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:44.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:44.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:44.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:44.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:44.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47023)
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:44.943 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:44.950 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:44.951 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:44.951 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97760337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657152996296, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992865, telescope_ra=19.6152201, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.63497, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.589247478215, telescope_dec_j2k=-24.3122414371419, observability=1)
2025-11-17T13:27:46.583 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Status age = 1.6329057216644287s
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:46.584 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:27:46.585 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:27:46.586 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 17;19.6156966;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63545;2460996.97762252;13.46291528;1.3;_
2025-11-17T13:27:46.586 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response 17;19.6156966;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63545;2460996.97762252;13.46291528;1.3;_
2025-11-17T13:27:46.586 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:27:46.586 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:27:46.586 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:27:46.587 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:46.587 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:27:46.587 [INFO] [Thread-67939 (handle)] [driver.py] [get_status()] Telra = 19.6156966, teldec = -24.256399
2025-11-17T13:27:46.587 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6156966 -24.256399
2025-11-17T13:27:46.587 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6156966 -24.256399
2025-11-17T13:27:46.587 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6156966 -24.256399
2025-11-17T13:27:46.588 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 17;19.6156966;-24.256399;50.108297;89.992865;50.08601;90.12017;16.63545;2460996.97762255;13.46291528;1.3;_19.5897241465153 -24.3122578919187
2025-11-17T13:27:46.588 [INFO] [Thread-67939 (handle)] [driver.py] [get_status()] ra_j2k = 19.5897241465153     dec_j2k = -24.3122578919187
2025-11-17T13:27:46.588 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:27:46.588 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:27:46.588 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 140;0.104656711764925;171.162357330327;_
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response 140;0.104656711764925;171.162357330327;_
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:46.589 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:27:46.590 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:27:46.591 [DEBUG] [Thread-67939 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:46.591 [DEBUG] [Thread-67939 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:27:46.591 [DEBUG] [Thread-67939 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:27:46.593 [DEBUG] [Thread-67939 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35685)
2025-11-17T13:27:46.593 [DEBUG] [Thread-67939 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:27:46.593 [DEBUG] [Thread-67939 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:27:46.594 [DEBUG] [Thread-67939 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:27:46.594 [DEBUG] [Thread-67939 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:27:46.594 [DEBUG] [Thread-67939 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:27:46.601 [DEBUG] [Thread-67939 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:27:46.601 [INFO] [Thread-67939 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97762252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656711764925, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992865, telescope_ra=19.6156966, telescope_dec=-24.256399, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.63545, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:26:51.412600', telescope_ra_j2k=19.5897241465153, telescope_dec_j2k=-24.3122578919187, observability=1)
2025-11-17T13:27:51.553 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:51.553 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:51.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:51.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:51.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:51.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:51.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:51.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:51.554 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:27:51.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:27:51.556 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:27:51.556 [INFO] [ThreadPoolExecutor-2845_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:27:51.556 [INFO] [ThreadPoolExecutor-2845_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Status age = 18.093658924102783s
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:04.695 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 17;19.6207385;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64049;2460996.97783213;13.46794333;1.3;_
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response 17;19.6207385;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64049;2460996.97783213;13.46794333;1.3;_
2025-11-17T13:28:04.696 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:04.697 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:04.697 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:04.698 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:04.698 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:04.698 [INFO] [Thread-67940 (handle)] [driver.py] [get_status()] Telra = 19.6207385, teldec = -24.256398
2025-11-17T13:28:04.698 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6207385 -24.256398
2025-11-17T13:28:04.698 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6207385 -24.256398
2025-11-17T13:28:04.698 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6207385 -24.256398
2025-11-17T13:28:04.699 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 17;19.6207385;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64049;2460996.97783216;13.46794333;1.3;_19.5947678311245 -24.3124309496998
2025-11-17T13:28:04.699 [INFO] [Thread-67940 (handle)] [driver.py] [get_status()] ra_j2k = 19.5947678311245     dec_j2k = -24.3124309496998
2025-11-17T13:28:04.699 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:04.699 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:04.699 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 140;0.104657433779896;171.162368059163;_
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response 140;0.104657433779896;171.162368059163;_
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:04.700 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:04.701 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:04.702 [DEBUG] [Thread-67940 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:04.702 [DEBUG] [Thread-67940 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:04.702 [DEBUG] [Thread-67940 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:04.704 [DEBUG] [Thread-67940 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43351)
2025-11-17T13:28:04.704 [DEBUG] [Thread-67940 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:04.705 [DEBUG] [Thread-67940 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:04.705 [DEBUG] [Thread-67940 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:04.705 [DEBUG] [Thread-67940 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:04.705 [DEBUG] [Thread-67940 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:04.712 [DEBUG] [Thread-67940 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:04.712 [INFO] [Thread-67940 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97783213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657433779896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992865, telescope_ra=19.6207385, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64049, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.5947678311245, telescope_dec_j2k=-24.3124309496998, observability=1)
2025-11-17T13:28:12.432 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.432 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.432 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:12.432 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:12.432 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:12.433 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.433 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:28:12.434 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:12.435 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:12.436 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:28:12.437 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:12.438 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Park
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:28:12.439 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:28:12.440 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 29;19.622886;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64264;2460996.97792176;13.470085;1.3;_Park Command Successful
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Status age = 8.221673727035522s
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:12.934 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:12.935 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 17;19.6230261;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64278;2460996.97792749;13.47022472;1.3;_
2025-11-17T13:28:12.935 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response 17;19.6230261;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64278;2460996.97792749;13.47022472;1.3;_
2025-11-17T13:28:12.935 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:12.935 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:12.935 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:12.936 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:12.936 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:12.936 [INFO] [Thread-67941 (handle)] [driver.py] [get_status()] Telra = 19.6230261, teldec = -24.256398
2025-11-17T13:28:12.936 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6230261 -24.256398
2025-11-17T13:28:12.936 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6230261 -24.256398
2025-11-17T13:28:12.936 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6230261 -24.256398
2025-11-17T13:28:12.937 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 17;19.6230261;-24.256398;50.108297;89.992865;50.08601;90.12017;16.64278;2460996.97792751;13.47022472;1.3;_19.5970562429307 -24.3125098913052
2025-11-17T13:28:12.937 [INFO] [Thread-67941 (handle)] [driver.py] [get_status()] ra_j2k = 19.5970562429307     dec_j2k = -24.3125098913052
2025-11-17T13:28:12.937 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:12.937 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:12.937 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 140;0.104657233220182;171.162351965909;_
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response 140;0.104657233220182;171.162351965909;_
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:12.938 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:12.939 [DEBUG] [Thread-67941 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:12.939 [DEBUG] [Thread-67941 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:12.939 [DEBUG] [Thread-67941 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41611)
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:12.945 [DEBUG] [Thread-67941 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:12.953 [DEBUG] [Thread-67941 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:12.954 [INFO] [Thread-67941 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97792749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657233220182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992865, telescope_ra=19.6230261, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.5970562429307, telescope_dec_j2k=-24.3125098913052, observability=1)
2025-11-17T13:28:13.440 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:28:13.440 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:28:13.440 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:28:13.440 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:28:13.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:28:14.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:28:14.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:28:14.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:28:14.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:28:14.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:28:14.978 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.025045871734619s
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6236144;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64337;2460996.97795116;13.47081139;1.3;_
2025-11-17T13:28:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6236144;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64337;2460996.97795116;13.47081139;1.3;_
2025-11-17T13:28:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:14.981 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6236144, teldec = -24.256398
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6236144 -24.256398
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6236144 -24.256398
2025-11-17T13:28:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6236144 -24.256398
2025-11-17T13:28:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6236144;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64337;2460996.97795118;13.47081139;1.3;_19.5976447519222 -24.3125301894642
2025-11-17T13:28:14.982 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.5976447519222     dec_j2k = -24.3125301894642
2025-11-17T13:28:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104656952436582;171.162362694745;_
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104656952436582;171.162362694745;_
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60567)
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:14.998 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:14.999 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97795116, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104656952436582, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.6236144, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64337, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.5976447519222, telescope_dec_j2k=-24.3125301894642, observability=1)
2025-11-17T13:28:15.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:28:15.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:28:15.441 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:28:15.442 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:28:15.442 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:28:16.442 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:28:16.442 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:28:16.442 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:16.443 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:28:16.444 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:28:16.445 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:17.445 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:17.445 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:17.445 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:17.445 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:17.445 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:28:17.446 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:28:17.447 [DEBUG] [ThreadPoolExecutor-2844_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:17.447 [INFO] [ThreadPoolExecutor-2844_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:28:20.910 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.911998510360718s
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:20.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:20.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6252578;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64501;2460996.97801983;13.47245028;1.3;_
2025-11-17T13:28:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.6252578;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64501;2460996.97801983;13.47245028;1.3;_
2025-11-17T13:28:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:20.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:20.914 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.6252578, teldec = -24.256398
2025-11-17T13:28:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6252578 -24.256398
2025-11-17T13:28:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6252578 -24.256398
2025-11-17T13:28:20.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6252578 -24.256398
2025-11-17T13:28:20.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6252578;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64501;2460996.97801985;13.47245028;1.3;_19.599288736211 -24.3125868849145
2025-11-17T13:28:20.915 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.599288736211     dec_j2k = -24.3125868849145
2025-11-17T13:28:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:20.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104657955235152;171.162357330327;_
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104657955235152;171.162357330327;_
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:20.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:20.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:20.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:20.919 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:20.919 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:20.924 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54497)
2025-11-17T13:28:20.924 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:20.924 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:20.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:20.925 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:20.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:20.932 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:20.932 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97801983, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657955235152, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.6252578, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64501, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.599288736211, telescope_dec_j2k=-24.3125868849145, observability=1)
2025-11-17T13:28:22.772 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:22.772 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Status age = 1.840303897857666s
2025-11-17T13:28:22.772 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:22.772 [DEBUG] [Thread-67942 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:22.773 [DEBUG] [Thread-67942 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:22.773 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:22.773 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:22.773 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:22.774 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:22.775 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 17;19.6257616;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64551;2460996.97804138;13.47295278;1.3;_
2025-11-17T13:28:22.775 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response 17;19.6257616;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64551;2460996.97804138;13.47295278;1.3;_
2025-11-17T13:28:22.775 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:22.775 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:22.775 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:22.776 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:22.776 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:22.776 [INFO] [Thread-67942 (handle)] [driver.py] [get_status()] Telra = 19.6257616, teldec = -24.256398
2025-11-17T13:28:22.776 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6257616 -24.256398
2025-11-17T13:28:22.776 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6257616 -24.256398
2025-11-17T13:28:22.776 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6257616 -24.256398
2025-11-17T13:28:22.777 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 17;19.6257898;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64554;2460996.9780414;13.47298083;1.3;_19.5997927154709 -24.3126042634102
2025-11-17T13:28:22.777 [INFO] [Thread-67942 (handle)] [driver.py] [get_status()] ra_j2k = 19.5997927154709     dec_j2k = -24.3126042634102
2025-11-17T13:28:22.777 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:22.777 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 140;0.104657594227667;171.162341237072;_
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response 140;0.104657594227667;171.162341237072;_
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:22.778 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:22.779 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:22.779 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:22.779 [DEBUG] [Thread-67942 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:22.779 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:22.779 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:22.780 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:22.780 [DEBUG] [Thread-67942 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:22.780 [DEBUG] [Thread-67942 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:22.780 [DEBUG] [Thread-67942 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33707)
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:22.785 [DEBUG] [Thread-67942 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:22.793 [DEBUG] [Thread-67942 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:22.794 [DEBUG] [Thread-67942 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:22.794 [DEBUG] [Thread-67942 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:22.794 [INFO] [Thread-67942 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97804138, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657594227667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.6257616, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64551, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.5997927154709, telescope_dec_j2k=-24.3126042634102, observability=1)
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.219536542892456s
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:30.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:30.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:30.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:30.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6277969;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64755;2460996.97812517;13.4749825;1.3;_
2025-11-17T13:28:30.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.6277969;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64755;2460996.97812517;13.4749825;1.3;_
2025-11-17T13:28:30.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:30.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:30.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:30.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:30.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:30.017 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.6277969, teldec = -24.256398
2025-11-17T13:28:30.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.6277969 -24.256398
2025-11-17T13:28:30.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.6277969 -24.256398
2025-11-17T13:28:30.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6277969 -24.256398
2025-11-17T13:28:30.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6277969;-24.256398;50.108297;89.992864;50.08601;90.12017;16.64755;2460996.97812521;13.4749825;1.3;_19.6018287403345 -24.312674460998
2025-11-17T13:28:30.018 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.6018287403345     dec_j2k = -24.312674460998
2025-11-17T13:28:30.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:30.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:30.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104657313444067;171.162357330327;_
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104657313444067;171.162357330327;_
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:30.019 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:30.020 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:30.021 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:30.021 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:28:30.021 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:28:30.025 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59103)
2025-11-17T13:28:30.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:30.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:30.025 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:30.025 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:30.026 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:30.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:28:30.033 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97812517, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657313444067, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.6277969, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.64755, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.6018287403345, telescope_dec_j2k=-24.312674460998, observability=1)
2025-11-17T13:28:30.033 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10474705696106 seconds ago
2025-11-17T13:28:40.827 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:40.827 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Status age = 10.794368505477905s
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:40.828 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:40.829 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:40.830 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 17;19.630804;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65056;2460996.97825035;13.47798139;1.3;_
2025-11-17T13:28:40.830 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response 17;19.630804;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65056;2460996.97825035;13.47798139;1.3;_
2025-11-17T13:28:40.830 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:40.830 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:40.830 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:40.831 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:40.831 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:40.831 [INFO] [Thread-67943 (handle)] [driver.py] [get_status()] Telra = 19.630804, teldec = -24.256397
2025-11-17T13:28:40.831 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] UnCookCoordinates 19.630804 -24.256397
2025-11-17T13:28:40.831 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.630804 -24.256397
2025-11-17T13:28:40.832 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.630804 -24.256397
2025-11-17T13:28:40.832 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 17;19.630804;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65056;2460996.97825037;13.47798139;1.3;_19.6048369134557 -24.3127771474839
2025-11-17T13:28:40.832 [INFO] [Thread-67943 (handle)] [driver.py] [get_status()] ra_j2k = 19.6048369134557     dec_j2k = -24.3127771474839
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 140;0.104657554115724;171.162368059163;_
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response 140;0.104657554115724;171.162368059163;_
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:40.833 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:40.834 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:40.835 [DEBUG] [Thread-67943 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:40.836 [DEBUG] [Thread-67943 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42211)
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:40.842 [DEBUG] [Thread-67943 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:40.849 [DEBUG] [Thread-67943 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:40.850 [DEBUG] [Thread-67943 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:40.850 [DEBUG] [Thread-67943 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:40.850 [INFO] [Thread-67943 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97825035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657554115724, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.630804, telescope_dec=-24.256397, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.65056, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.6048369134557, telescope_dec_j2k=-24.3127771474839, observability=1)
2025-11-17T13:28:45.014 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:28:45
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.164409637451172s
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:45.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:45.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:45.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6319708;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65172;2460996.9782988;13.479145;1.3;_
2025-11-17T13:28:45.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6319708;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65172;2460996.9782988;13.479145;1.3;_
2025-11-17T13:28:45.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:45.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:45.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:45.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:45.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:45.017 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6319708, teldec = -24.256397
2025-11-17T13:28:45.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6319708 -24.256397
2025-11-17T13:28:45.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6319708 -24.256397
2025-11-17T13:28:45.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6319708 -24.256397
2025-11-17T13:28:45.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6319708;-24.256397;50.108297;89.992864;50.08601;90.12017;16.65172;2460996.97829882;13.479145;1.3;_19.6060041304042 -24.3128173701628
2025-11-17T13:28:45.018 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.6060041304042     dec_j2k = -24.3128173701628
2025-11-17T13:28:45.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:45.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:45.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104657594227667;171.162368059163;_
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104657594227667;171.162368059163;_
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:45.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:45.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:45.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:45.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:45.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41179)
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:45.023 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:45.030 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:45.031 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:45.031 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9782988, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657594227667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108297, telescope_az=89.992864, telescope_ra=19.6319708, telescope_dec=-24.256397, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.65172, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:27:51.553011', telescope_ra_j2k=19.6060041304042, telescope_dec_j2k=-24.3128173701628, observability=1)
2025-11-17T13:28:51.696 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:51.696 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:51.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:51.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:51.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:51.698 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:51.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:51.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:51.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:51.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:51.699 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:28:51.699 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:51.699 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:51.699 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:51.699 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:51.699 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:28:51.700 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:28:51.701 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:52.701 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:52.701 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:52.701 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:52.701 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:52.701 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:28:52.702 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:52.703 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:52.704 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:52.704 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:52.704 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:52.704 [DEBUG] [ThreadPoolExecutor-2846_0] [payload.py] [to_registers()] [0]
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42989)
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:52.707 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:52.714 [DEBUG] [ThreadPoolExecutor-2846_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Status age = 13.934028625488281s
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:28:58.965 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 17;19.6358456;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6556;2460996.97846025;13.48300917;1.3;_
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response 17;19.6358456;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6556;2460996.97846025;13.48300917;1.3;_
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:28:58.966 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:28:58.967 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:28:58.967 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:58.967 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:28:58.967 [INFO] [Thread-67944 (handle)] [driver.py] [get_status()] Telra = 19.6358456, teldec = -24.256397
2025-11-17T13:28:58.968 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6358456 -24.256397
2025-11-17T13:28:58.968 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6358456 -24.256397
2025-11-17T13:28:58.968 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6358456 -24.256397
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 17;19.6358456;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6556;2460996.97846028;13.48300917;1.3;_19.6098803175769 -24.3129509077817
2025-11-17T13:28:58.969 [INFO] [Thread-67944 (handle)] [driver.py] [get_status()] ra_j2k = 19.6098803175769     dec_j2k = -24.3129509077817
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 140;0.104657514003781;171.162362694745;_
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response 140;0.104657514003781;171.162362694745;_
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:58.969 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:28:58.970 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:28:58.971 [DEBUG] [Thread-67944 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:58.971 [DEBUG] [Thread-67944 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:28:58.971 [DEBUG] [Thread-67944 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46545)
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:28:58.976 [DEBUG] [Thread-67944 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:28:58.983 [DEBUG] [Thread-67944 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:28:58.983 [INFO] [Thread-67944 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97846025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657514003781, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992863, telescope_ra=19.6358456, telescope_dec=-24.256397, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.6556, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6098803175769, telescope_dec_j2k=-24.3129509077817, observability=1)
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Status age = 14.005860805511475s
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:12.989 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:12.990 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:12.991 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 17;19.6397496;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6595;2460996.97862258;13.4869025;1.3;_
2025-11-17T13:29:12.991 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response 17;19.6397496;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6595;2460996.97862258;13.4869025;1.3;_
2025-11-17T13:29:12.991 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:12.992 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:12.992 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:12.992 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:12.993 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:12.993 [INFO] [Thread-67945 (handle)] [driver.py] [get_status()] Telra = 19.6397496, teldec = -24.256397
2025-11-17T13:29:12.993 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6397496 -24.256397
2025-11-17T13:29:12.993 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6397496 -24.256397
2025-11-17T13:29:12.993 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6397496 -24.256397
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 17;19.6397496;-24.256397;50.108296;89.992863;50.08601;90.12017;16.6595;2460996.97862262;13.4869025;1.3;_19.6137857191474 -24.3130853941363
2025-11-17T13:29:12.994 [INFO] [Thread-67945 (handle)] [driver.py] [get_status()] ra_j2k = 19.6137857191474     dec_j2k = -24.3130853941363
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 140;0.104657594227667;171.162362694745;_
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response 140;0.104657594227667;171.162362694745;_
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:12.994 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:12.995 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:12.995 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:12.995 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:12.996 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:12.996 [DEBUG] [Thread-67945 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:12.996 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:12.996 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:12.996 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:12.997 [DEBUG] [Thread-67945 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:12.997 [DEBUG] [Thread-67945 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:12.997 [DEBUG] [Thread-67945 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38213)
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:13.001 [DEBUG] [Thread-67945 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:13.008 [DEBUG] [Thread-67945 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:13.008 [INFO] [Thread-67945 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97862258, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657594227667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992863, telescope_ra=19.6397496, telescope_dec=-24.256397, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.6595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6137857191474, telescope_dec_j2k=-24.3130853941363, observability=1)
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.9408316612243652s
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:14.949 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:14.950 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6403006;-24.25639;50.108296;89.992852;50.08601;90.12016;16.66005;2460996.97864527;13.48745222;1.3;_
2025-11-17T13:29:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6403006;-24.25639;50.108296;89.992852;50.08601;90.12016;16.66005;2460996.97864527;13.48745222;1.3;_
2025-11-17T13:29:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:14.951 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:14.952 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:14.953 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6403006, teldec = -24.25639
2025-11-17T13:29:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6403006 -24.25639
2025-11-17T13:29:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6403006 -24.25639
2025-11-17T13:29:14.953 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6403006 -24.25639
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6403006;-24.25639;50.108296;89.992852;50.08601;90.12016;16.66005;2460996.9786453;13.48745222;1.3;_19.6143369185696 -24.3130973711233
2025-11-17T13:29:14.954 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.6143369185696     dec_j2k = -24.3130973711233
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104657273332124;171.162362694745;_
2025-11-17T13:29:14.954 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104657273332124;171.162362694745;_
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39503)
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:14.958 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:14.965 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:14.965 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:14.965 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:14.966 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:14.966 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:14.966 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97864527, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657273332124, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992852, telescope_ra=19.6403006, telescope_dec=-24.25639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6143369185696, telescope_dec_j2k=-24.3130973711233, observability=1)
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Status age = 2.06646990776062s
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:17.032 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:17.033 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:17.034 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 17;19.6408899;-24.256396;50.108296;89.992863;50.08601;90.12017;16.66064;2460996.97866938;13.48803972;1.3;_
2025-11-17T13:29:17.034 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response 17;19.6408899;-24.256396;50.108296;89.992863;50.08601;90.12017;16.66064;2460996.97866938;13.48803972;1.3;_
2025-11-17T13:29:17.034 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:17.034 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:17.034 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:17.035 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:17.035 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:17.035 [INFO] [Thread-67946 (handle)] [driver.py] [get_status()] Telra = 19.6408899, teldec = -24.256396
2025-11-17T13:29:17.035 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6408899 -24.256396
2025-11-17T13:29:17.035 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6408899 -24.256396
2025-11-17T13:29:17.035 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6408899 -24.256396
2025-11-17T13:29:17.036 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 17;19.6408899;-24.256396;50.108296;89.992863;50.08601;90.12017;16.66064;2460996.9786694;13.48803972;1.3;_19.6149264294563 -24.3131236647483
2025-11-17T13:29:17.036 [INFO] [Thread-67946 (handle)] [driver.py] [get_status()] ra_j2k = 19.6149264294563     dec_j2k = -24.3131236647483
2025-11-17T13:29:17.036 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:17.036 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:17.036 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:17.037 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 140;0.104657834899324;171.162357330327;_
2025-11-17T13:29:17.037 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response 140;0.104657834899324;171.162357330327;_
2025-11-17T13:29:17.037 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:17.037 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:17.037 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:17.038 [DEBUG] [Thread-67946 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:17.045 [DEBUG] [Thread-67946 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44003)
2025-11-17T13:29:17.045 [DEBUG] [Thread-67946 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:17.045 [DEBUG] [Thread-67946 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:17.046 [DEBUG] [Thread-67946 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:17.046 [DEBUG] [Thread-67946 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:17.046 [DEBUG] [Thread-67946 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:17.053 [DEBUG] [Thread-67946 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:17.053 [INFO] [Thread-67946 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97866938, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657834899324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992863, telescope_ra=19.6408899, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66064, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6149264294563, telescope_dec_j2k=-24.3131236647483, observability=1)
2025-11-17T13:29:17.714 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:17.715 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:17.715 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:17.715 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:17.715 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:17.716 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:29:17.717 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:29:17.718 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.9612739086151123s
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:20.014 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:20.015 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:20.016 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6417213;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66147;2460996.97870389;13.48886889;1.3;_
2025-11-17T13:29:20.016 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.6417213;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66147;2460996.97870389;13.48886889;1.3;_
2025-11-17T13:29:20.016 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:20.016 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:20.016 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:20.017 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:20.017 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:20.017 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.6417213, teldec = -24.256396
2025-11-17T13:29:20.017 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6417213 -24.256396
2025-11-17T13:29:20.017 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6417213 -24.256396
2025-11-17T13:29:20.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6417213 -24.256396
2025-11-17T13:29:20.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6417213;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66147;2460996.97870391;13.48886889;1.3;_19.6157581286936 -24.3131522940202
2025-11-17T13:29:20.018 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.6157581286936     dec_j2k = -24.3131522940202
2025-11-17T13:29:20.018 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104657794787381;171.162357330327;_
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104657794787381;171.162357330327;_
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:20.019 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:20.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:20.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:20.021 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:20.022 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59455)
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:20.024 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:20.031 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:20.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:20.032 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97870389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657794787381, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992862, telescope_ra=19.6417213, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66147, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6157581286936, telescope_dec_j2k=-24.3131522940202, observability=1)
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.061326265335083s
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:30.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:30.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6445357;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66429;2460996.97882054;13.49167556;1.3;_
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.6445357;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66429;2460996.97882054;13.49167556;1.3;_
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:30.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:30.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:30.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:30.096 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.6445357, teldec = -24.256396
2025-11-17T13:29:30.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.6445357 -24.256396
2025-11-17T13:29:30.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.6445357 -24.256396
2025-11-17T13:29:30.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6445357 -24.256396
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6445357;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66429;2460996.97882057;13.49167556;1.3;_19.6185735429837 -24.3132491883919
2025-11-17T13:29:30.097 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.6185735429837     dec_j2k = -24.3132491883919
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104657955235152;171.162362694745;_
2025-11-17T13:29:30.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104657955235152;171.162362694745;_
2025-11-17T13:29:30.098 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:30.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:30.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:30.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:30.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:30.100 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:29:30.100 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:29:30.100 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49849)
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:30.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:30.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:30.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:30.114 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:30.114 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:30.115 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:30.115 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:30.115 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:30.115 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:30.115 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:29:30.115 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97882054, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657955235152, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992862, telescope_ra=19.6445357, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66429, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6185735429837, telescope_dec_j2k=-24.3132491883919, observability=1)
2025-11-17T13:29:30.115 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.10096073150635 seconds ago
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Status age = 5.032038688659668s
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:35.147 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:35.148 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:35.148 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:35.148 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:35.149 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 17;19.6459287;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66568;2460996.97887904;13.49306472;1.3;_
2025-11-17T13:29:35.150 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response 17;19.6459287;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66568;2460996.97887904;13.49306472;1.3;_
2025-11-17T13:29:35.150 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:35.150 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:35.150 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:35.151 [INFO] [Thread-67947 (handle)] [driver.py] [get_status()] Telra = 19.6459287, teldec = -24.256396
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6459287 -24.256396
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6459287 -24.256396
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6459287 -24.256396
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 17;19.6459287;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66568;2460996.97887906;13.49306472;1.3;_19.6199670457717 -24.3132971355284
2025-11-17T13:29:35.151 [INFO] [Thread-67947 (handle)] [driver.py] [get_status()] ra_j2k = 19.6199670457717     dec_j2k = -24.3132971355284
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:35.151 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 140;0.104657955235152;171.162351965909;_
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response 140;0.104657955235152;171.162351965909;_
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:35.152 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:35.153 [DEBUG] [Thread-67947 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:35.153 [DEBUG] [Thread-67947 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:35.153 [DEBUG] [Thread-67947 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:35.154 [DEBUG] [Thread-67947 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50371)
2025-11-17T13:29:35.154 [DEBUG] [Thread-67947 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:35.154 [DEBUG] [Thread-67947 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:35.155 [DEBUG] [Thread-67947 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:35.155 [DEBUG] [Thread-67947 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:35.155 [DEBUG] [Thread-67947 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:35.162 [DEBUG] [Thread-67947 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:35.162 [INFO] [Thread-67947 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97887904, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657955235152, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992862, telescope_ra=19.6459287, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6199670457717, telescope_dec_j2k=-24.3132971355284, observability=1)
2025-11-17T13:29:45.091 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:29:45
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.929535388946533s
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:45.092 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:45.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6486935;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66844;2460996.97899413;13.49582194;1.3;_
2025-11-17T13:29:45.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6486935;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66844;2460996.97899413;13.49582194;1.3;_
2025-11-17T13:29:45.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:45.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:45.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:45.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:45.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:45.095 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6486935, teldec = -24.256396
2025-11-17T13:29:45.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6486935 -24.256396
2025-11-17T13:29:45.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6486935 -24.256396
2025-11-17T13:29:45.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6486935 -24.256396
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6486935;-24.256396;50.108296;89.992862;50.08601;90.12017;16.66844;2460996.97899417;13.49582194;1.3;_19.6227328451876 -24.3133922781546
2025-11-17T13:29:45.096 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.6227328451876     dec_j2k = -24.3133922781546
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:45.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:45.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:45.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:45.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:45.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:45.104 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53679)
2025-11-17T13:29:45.104 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:45.104 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:45.104 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:45.105 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:45.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:45.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:45.112 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97899413, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658236018752, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992862, telescope_ra=19.6486935, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.66844, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:28:51.696204', telescope_ra_j2k=19.6227328451876, telescope_dec_j2k=-24.3133922781546, observability=1)
2025-11-17T13:29:51.844 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:51.845 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:29:51.845 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:51.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:51.846 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:29:51.847 [INFO] [ThreadPoolExecutor-2847_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:29:51.847 [INFO] [ThreadPoolExecutor-2847_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Status age = 8.105698108673096s
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:29:53.218 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 17;19.6509803;-24.256396;50.108296;89.992861;50.08601;90.12017;16.67073;2460996.97908818;13.4981025;1.3;_
2025-11-17T13:29:53.219 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response 17;19.6509803;-24.256396;50.108296;89.992861;50.08601;90.12017;16.67073;2460996.97908818;13.4981025;1.3;_
2025-11-17T13:29:53.220 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:29:53.220 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:29:53.220 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:29:53.221 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:53.221 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:29:53.221 [INFO] [Thread-67948 (handle)] [driver.py] [get_status()] Telra = 19.6509803, teldec = -24.256396
2025-11-17T13:29:53.221 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6509803 -24.256396
2025-11-17T13:29:53.221 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6509803 -24.256396
2025-11-17T13:29:53.221 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6509803 -24.256396
2025-11-17T13:29:53.222 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 17;19.6509803;-24.256396;50.108296;89.992861;50.08601;90.12017;16.67073;2460996.97908822;13.4981025;1.3;_19.6250204733153 -24.3134709497093
2025-11-17T13:29:53.222 [INFO] [Thread-67948 (handle)] [driver.py] [get_status()] ra_j2k = 19.6250204733153     dec_j2k = -24.3134709497093
2025-11-17T13:29:53.222 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:29:53.222 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:29:53.222 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 140;0.104657995347095;171.162357330327;_
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response 140;0.104657995347095;171.162357330327;_
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:53.223 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:29:53.224 [DEBUG] [Thread-67948 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43991)
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:29:53.225 [DEBUG] [Thread-67948 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:29:53.233 [DEBUG] [Thread-67948 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:29:53.233 [INFO] [Thread-67948 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97908818, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657995347095, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108296, telescope_az=89.992861, telescope_ra=19.6509803, telescope_dec=-24.256396, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.67073, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6250204733153, telescope_dec_j2k=-24.3134709497093, observability=1)
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Status age = 18.085423707962036s
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:11.319 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:11.320 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:11.320 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 17;19.6560193;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67577;2460996.97929768;13.50312778;1.3;_
2025-11-17T13:30:11.320 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response 17;19.6560193;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67577;2460996.97929768;13.50312778;1.3;_
2025-11-17T13:30:11.320 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:11.320 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:11.321 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:11.321 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:11.321 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:11.322 [INFO] [Thread-67949 (handle)] [driver.py] [get_status()] Telra = 19.6560193, teldec = -24.256395
2025-11-17T13:30:11.322 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6560193 -24.256395
2025-11-17T13:30:11.322 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6560193 -24.256395
2025-11-17T13:30:11.322 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6560193 -24.256395
2025-11-17T13:30:11.323 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 17;19.6560193;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67577;2460996.97929772;13.50312778;1.3;_19.6300613030791 -24.3136432331127
2025-11-17T13:30:11.323 [INFO] [Thread-67949 (handle)] [driver.py] [get_status()] ra_j2k = 19.6300613030791     dec_j2k = -24.3136432331127
2025-11-17T13:30:11.323 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:11.323 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:11.323 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 140;0.104657233220182;171.162357330327;_
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response 140;0.104657233220182;171.162357330327;_
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:11.324 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:11.325 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:11.326 [DEBUG] [Thread-67949 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:11.326 [DEBUG] [Thread-67949 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:11.326 [DEBUG] [Thread-67949 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33213)
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:11.332 [DEBUG] [Thread-67949 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:11.339 [DEBUG] [Thread-67949 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:11.340 [DEBUG] [Thread-67949 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:11.340 [DEBUG] [Thread-67949 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:11.340 [DEBUG] [Thread-67949 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:11.340 [INFO] [Thread-67949 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97929768, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657233220182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.992861, telescope_ra=19.6560193, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.67577, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6300613030791, telescope_dec_j2k=-24.3136432331127, observability=1)
2025-11-17T13:30:12.718 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.718 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.718 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:12.718 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:12.718 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:30:12.719 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:12.720 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:12.721 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:12.722 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:12.722 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.722 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:12.722 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:12.723 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:12.724 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:12.724 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:12.724 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:12.724 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:12.724 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:12.725 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:12.725 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Park
2025-11-17T13:30:12.725 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:30:12.725 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:30:12.725 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 29;19.656412;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67616;2460996.97931395;13.50351944;1.3;_Park Command Successful
2025-11-17T13:30:13.042 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:13.042 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Status age = 1.7026417255401611s
2025-11-17T13:30:13.042 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:13.042 [DEBUG] [Thread-67950 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:13.042 [DEBUG] [Thread-67950 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:13.043 [DEBUG] [Thread-67950 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:13.044 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:13.044 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:13.044 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:13.044 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:13.044 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 17;19.6564962;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67625;2460996.97931764;13.50360333;1.3;_
2025-11-17T13:30:13.045 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response 17;19.6564962;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67625;2460996.97931764;13.50360333;1.3;_
2025-11-17T13:30:13.045 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:13.045 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:13.045 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:13.046 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:13.046 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:13.046 [INFO] [Thread-67950 (handle)] [driver.py] [get_status()] Telra = 19.6564962, teldec = -24.256395
2025-11-17T13:30:13.046 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6564962 -24.256395
2025-11-17T13:30:13.046 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6564962 -24.256395
2025-11-17T13:30:13.046 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6564962 -24.256395
2025-11-17T13:30:13.047 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 17;19.6564962;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67625;2460996.97931767;13.50360333;1.3;_19.6305383765749 -24.3136596279105
2025-11-17T13:30:13.047 [INFO] [Thread-67950 (handle)] [driver.py] [get_status()] ra_j2k = 19.6305383765749     dec_j2k = -24.3136596279105
2025-11-17T13:30:13.047 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:13.047 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:13.047 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 140;0.104657554115724;171.162362694745;_
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response 140;0.104657554115724;171.162362694745;_
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:13.048 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:13.049 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:13.050 [DEBUG] [Thread-67950 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:13.050 [DEBUG] [Thread-67950 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:13.050 [DEBUG] [Thread-67950 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45843)
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:13.054 [DEBUG] [Thread-67950 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:13.061 [DEBUG] [Thread-67950 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:13.061 [INFO] [Thread-67950 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97931764, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657554115724, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.992861, telescope_ra=19.6564962, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.67625, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6305383765749, telescope_dec_j2k=-24.3136596279105, observability=1)
2025-11-17T13:30:13.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:30:13.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:30:13.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:30:13.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:30:13.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:30:14.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:30:14.726 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:30:14.727 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:30:14.727 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:30:14.727 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.9076809883117676s
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6570198;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67677;2460996.97933994;13.50412556;1.3;_
2025-11-17T13:30:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6570198;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67677;2460996.97933994;13.50412556;1.3;_
2025-11-17T13:30:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:14.972 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6570198, teldec = -24.256395
2025-11-17T13:30:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6570198 -24.256395
2025-11-17T13:30:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6570198 -24.256395
2025-11-17T13:30:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6570198 -24.256395
2025-11-17T13:30:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6570198;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67677;2460996.97933996;13.50412556;1.3;_19.631062167128 -24.3136776271479
2025-11-17T13:30:14.973 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.631062167128     dec_j2k = -24.3136776271479
2025-11-17T13:30:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104658035459038;171.162351965909;_
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104658035459038;171.162351965909;_
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48593)
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:14.989 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97933994, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658035459038, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.992861, telescope_ra=19.6570198, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.67677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.631062167128, telescope_dec_j2k=-24.3136776271479, observability=1)
2025-11-17T13:30:15.727 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:30:15.728 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:30:15.728 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:30:15.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:30:15.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:30:16.729 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:16.730 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:30:16.731 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:30:16.731 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:30:16.731 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:30:17.732 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:30:17.733 [DEBUG] [ThreadPoolExecutor-2846_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:17.733 [INFO] [ThreadPoolExecutor-2846_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:30:19.119 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:19.119 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.130190849304199s
2025-11-17T13:30:19.119 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:19.119 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:19.120 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:19.121 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6581682;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67792;2460996.97938797;13.50527083;1.3;_
2025-11-17T13:30:19.121 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.6581682;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67792;2460996.97938797;13.50527083;1.3;_
2025-11-17T13:30:19.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:19.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:19.122 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:19.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:19.123 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:19.123 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.6581682, teldec = -24.256395
2025-11-17T13:30:19.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6581682 -24.256395
2025-11-17T13:30:19.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6581682 -24.256395
2025-11-17T13:30:19.123 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6581682 -24.256395
2025-11-17T13:30:19.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6581682;-24.256395;50.108295;89.992861;50.08601;90.12017;16.67792;2460996.97938801;13.50527083;1.3;_19.6322109853127 -24.3137171007772
2025-11-17T13:30:19.124 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.6322109853127     dec_j2k = -24.3137171007772
2025-11-17T13:30:19.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:19.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:19.124 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104657834899324;171.162362694745;_
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104657834899324;171.162362694745;_
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:19.125 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:19.126 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:19.127 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:19.127 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:19.127 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:19.131 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53241)
2025-11-17T13:30:19.131 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:19.131 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:19.132 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:19.132 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:19.132 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:19.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:19.139 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97938797, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657834899324, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.992861, telescope_ra=19.6581682, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.67792, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6322109853127, telescope_dec_j2k=-24.3137171007772, observability=1)
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Status age = 10.263446569442749s
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:29.403 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:29.404 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 17;19.6610355;-24.256395;50.108295;89.99286;50.08601;90.12017;16.68079;2460996.97950699;13.50813028;1.3;_
2025-11-17T13:30:29.405 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response 17;19.6610355;-24.256395;50.108295;89.99286;50.08601;90.12017;16.68079;2460996.97950699;13.50813028;1.3;_
2025-11-17T13:30:29.405 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:29.405 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:29.405 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:29.406 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:29.406 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:29.406 [INFO] [Thread-67951 (handle)] [driver.py] [get_status()] Telra = 19.6610355, teldec = -24.256395
2025-11-17T13:30:29.406 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6610355 -24.256395
2025-11-17T13:30:29.406 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6610355 -24.256395
2025-11-17T13:30:29.406 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6610355 -24.256395
2025-11-17T13:30:29.407 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 17;19.6610355;-24.256395;50.108295;89.99286;50.08601;90.12017;16.68079;2460996.97950703;13.50813028;1.3;_19.6350793309193 -24.3138156355263
2025-11-17T13:30:29.407 [INFO] [Thread-67951 (handle)] [driver.py] [get_status()] ra_j2k = 19.6350793309193     dec_j2k = -24.3138156355263
2025-11-17T13:30:29.407 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:29.407 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:29.407 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 140;0.104658115682923;171.162357330327;_
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response 140;0.104658115682923;171.162357330327;_
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:29.408 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:29.409 [DEBUG] [Thread-67951 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:29.414 [DEBUG] [Thread-67951 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53859)
2025-11-17T13:30:29.414 [DEBUG] [Thread-67951 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:29.414 [DEBUG] [Thread-67951 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:29.414 [DEBUG] [Thread-67951 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:29.415 [DEBUG] [Thread-67951 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:29.415 [DEBUG] [Thread-67951 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:29.422 [DEBUG] [Thread-67951 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:29.422 [INFO] [Thread-67951 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97950699, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658115682923, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.99286, telescope_ra=19.6610355, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.68079, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6350793309193, telescope_dec_j2k=-24.3138156355263, observability=1)
2025-11-17T13:30:30.176 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:30:30.176 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.7537341117858887s
2025-11-17T13:30:30.176 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.7537341117858887
2025-11-17T13:30:30.176 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.08432745933533 seconds ago
2025-11-17T13:30:45.173 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:30:45
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.751372337341309s
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:45.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6654367;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68519;2460996.97968951;13.51251944;1.3;_
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6654367;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68519;2460996.97968951;13.51251944;1.3;_
2025-11-17T13:30:45.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:45.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:45.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:45.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:45.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:45.176 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6654367, teldec = -24.256394
2025-11-17T13:30:45.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6654367 -24.256394
2025-11-17T13:30:45.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6654367 -24.256394
2025-11-17T13:30:45.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6654367 -24.256394
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6654367;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68519;2460996.97968955;13.51251944;1.3;_19.6394821402158 -24.3139658211957
2025-11-17T13:30:45.177 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.6394821402158     dec_j2k = -24.3139658211957
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104658195906809;171.162362694745;_
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104658195906809;171.162362694745;_
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:45.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:45.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:45.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:45.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:45.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:45.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58261)
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:45.186 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:45.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:45.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:45.193 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:45.193 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:45.193 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:45.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:45.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:45.194 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:45.194 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:45.194 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97968951, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658195906809, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.99286, telescope_ra=19.6654367, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.68519, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6394821402158, telescope_dec_j2k=-24.3139658211957, observability=1)
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Status age = 2.272878885269165s
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:30:47.467 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:30:47.468 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 17;19.6660804;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68583;2460996.97971606;13.51316139;1.3;_
2025-11-17T13:30:47.468 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response 17;19.6660804;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68583;2460996.97971606;13.51316139;1.3;_
2025-11-17T13:30:47.468 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:30:47.468 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:30:47.468 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:30:47.469 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:47.469 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:30:47.469 [INFO] [Thread-67952 (handle)] [driver.py] [get_status()] Telra = 19.6660804, teldec = -24.256394
2025-11-17T13:30:47.470 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6660804 -24.256394
2025-11-17T13:30:47.470 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6660804 -24.256394
2025-11-17T13:30:47.470 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6660804 -24.256394
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 17;19.6660804;-24.256394;50.108295;89.99286;50.08601;90.12017;16.68583;2460996.97971609;13.51316139;1.3;_19.6401260759781 -24.3139879266621
2025-11-17T13:30:47.471 [INFO] [Thread-67952 (handle)] [driver.py] [get_status()] ra_j2k = 19.6401260759781     dec_j2k = -24.3139879266621
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 140;0.104658115682923;171.162351965909;_
2025-11-17T13:30:47.471 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response 140;0.104658115682923;171.162351965909;_
2025-11-17T13:30:47.472 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:30:47.472 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:47.472 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:47.472 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:47.472 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:30:47.473 [DEBUG] [Thread-67952 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52917)
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:47.475 [DEBUG] [Thread-67952 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:30:47.483 [DEBUG] [Thread-67952 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:30:47.483 [INFO] [Thread-67952 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.97971606, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658115682923, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.99286, telescope_ra=19.6660804, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.68583, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:29:51.844606', telescope_ra_j2k=19.6401260759781, telescope_dec_j2k=-24.3139879266621, observability=1)
2025-11-17T13:30:51.987 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:51.987 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:51.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:51.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:51.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:51.988 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:51.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:51.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:51.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:51.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:51.989 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:30:51.989 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:51.989 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:51.989 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:30:51.990 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:30:51.991 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:52.991 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:52.991 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:52.991 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:30:52.992 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:30:52.993 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:30:52.994 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:30:52.994 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:30:52.994 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:30:52.994 [DEBUG] [ThreadPoolExecutor-2848_0] [payload.py] [to_registers()] [0]
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60833)
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:30:52.997 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:30:53.004 [DEBUG] [ThreadPoolExecutor-2848_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Status age = 18.05666184425354s
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:05.540 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:05.541 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:05.542 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 17;19.6711178;-24.256394;50.108295;89.992859;50.08601;90.12017;16.69087;2460996.97992525;13.518185;1.3;_
2025-11-17T13:31:05.542 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response 17;19.6711178;-24.256394;50.108295;89.992859;50.08601;90.12017;16.69087;2460996.97992525;13.518185;1.3;_
2025-11-17T13:31:05.542 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:05.542 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:05.542 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:05.543 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:05.543 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:05.543 [INFO] [Thread-67953 (handle)] [driver.py] [get_status()] Telra = 19.6711178, teldec = -24.256394
2025-11-17T13:31:05.543 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6711178 -24.256394
2025-11-17T13:31:05.543 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6711178 -24.256394
2025-11-17T13:31:05.543 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6711178 -24.256394
2025-11-17T13:31:05.544 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 17;19.6711178;-24.256394;50.108295;89.992859;50.08601;90.12017;16.69087;2460996.97992528;13.518185;1.3;_19.6451653246882 -24.3141608619667
2025-11-17T13:31:05.544 [INFO] [Thread-67953 (handle)] [driver.py] [get_status()] ra_j2k = 19.6451653246882     dec_j2k = -24.3141608619667
2025-11-17T13:31:05.544 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:05.544 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:05.544 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 140;0.104657554115724;171.162346601491;_
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response 140;0.104657554115724;171.162346601491;_
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:05.545 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:05.546 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:05.547 [DEBUG] [Thread-67953 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:05.547 [DEBUG] [Thread-67953 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:05.547 [DEBUG] [Thread-67953 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58517)
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:05.549 [DEBUG] [Thread-67953 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:05.556 [DEBUG] [Thread-67953 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:05.557 [INFO] [Thread-67953 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.97992525, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657554115724, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108295, telescope_az=89.992859, telescope_ra=19.6711178, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69087, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6451653246882, telescope_dec_j2k=-24.3141608619667, observability=1)
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Status age = 7.539445161819458s
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:13.096 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:13.097 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:13.097 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:13.097 [DEBUG] [Thread-67954 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:13.097 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:13.098 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:13.098 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:13.098 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:13.098 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 17;19.6732135;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69296;2460996.98001271;13.520275;1.3;_
2025-11-17T13:31:13.098 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response 17;19.6732135;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69296;2460996.98001271;13.520275;1.3;_
2025-11-17T13:31:13.099 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:13.099 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:13.099 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:13.100 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:13.100 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:13.100 [INFO] [Thread-67954 (handle)] [driver.py] [get_status()] Telra = 19.6732135, teldec = -24.256394
2025-11-17T13:31:13.100 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6732135 -24.256394
2025-11-17T13:31:13.100 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6732135 -24.256394
2025-11-17T13:31:13.100 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6732135 -24.256394
2025-11-17T13:31:13.101 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 17;19.6732135;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69296;2460996.98001274;13.520275;1.3;_19.6472617957389 -24.3142327789628
2025-11-17T13:31:13.101 [INFO] [Thread-67954 (handle)] [driver.py] [get_status()] ra_j2k = 19.6472617957389     dec_j2k = -24.3142327789628
2025-11-17T13:31:13.101 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:13.101 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:13.101 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 140;0.10465863713818;171.162357330327;_
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response 140;0.10465863713818;171.162357330327;_
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:13.102 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:13.103 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:13.104 [DEBUG] [Thread-67954 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:13.104 [DEBUG] [Thread-67954 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:13.104 [DEBUG] [Thread-67954 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:13.109 [DEBUG] [Thread-67954 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55077)
2025-11-17T13:31:13.109 [DEBUG] [Thread-67954 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:13.109 [DEBUG] [Thread-67954 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:13.109 [DEBUG] [Thread-67954 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:13.110 [DEBUG] [Thread-67954 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:13.110 [DEBUG] [Thread-67954 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:13.117 [DEBUG] [Thread-67954 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:13.117 [INFO] [Thread-67954 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98001271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465863713818, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992859, telescope_ra=19.6732135, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6472617957389, telescope_dec_j2k=-24.3142327789628, observability=1)
2025-11-17T13:31:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.8552556037902832s
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6737366;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69349;2460996.98003442;13.52079667;1.3;_
2025-11-17T13:31:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6737366;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69349;2460996.98003442;13.52079667;1.3;_
2025-11-17T13:31:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:14.975 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6737366, teldec = -24.256394
2025-11-17T13:31:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6737366 -24.256394
2025-11-17T13:31:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6737366 -24.256394
2025-11-17T13:31:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6737366 -24.256394
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6737366;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69349;2460996.98003444;13.52079667;1.3;_19.6477850883753 -24.3142507272435
2025-11-17T13:31:14.977 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.6477850883753     dec_j2k = -24.3142507272435
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104658677250123;171.162373423581;_
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104658677250123;171.162373423581;_
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:14.984 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35975)
2025-11-17T13:31:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:14.985 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:14.992 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98003442, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658677250123, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992859, telescope_ra=19.6737366, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6477850883753, telescope_dec_j2k=-24.3142507272435, observability=1)
2025-11-17T13:31:18.004 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:18.005 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:18.005 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:18.005 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:18.005 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:18.006 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:31:18.007 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:31:18.008 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:18.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:18.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.2385125160217285s
2025-11-17T13:31:18.230 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:18.231 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.674634;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69439;2460996.98007213;13.52169167;1.3;_
2025-11-17T13:31:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.674634;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69439;2460996.98007213;13.52169167;1.3;_
2025-11-17T13:31:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:18.232 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:18.233 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.674634, teldec = -24.256394
2025-11-17T13:31:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.674634 -24.256394
2025-11-17T13:31:18.233 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.674634 -24.256394
2025-11-17T13:31:18.234 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.674634 -24.256394
2025-11-17T13:31:18.234 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.674634;-24.256394;50.108294;89.992859;50.08601;90.12017;16.69439;2460996.98007215;13.52169167;1.3;_19.6486828190162 -24.3142815157977
2025-11-17T13:31:18.235 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.6486828190162     dec_j2k = -24.3142815157977
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10465835635458;171.162351965909;_
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10465835635458;171.162351965909;_
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:18.235 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:18.236 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:18.236 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:18.236 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:18.237 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33079)
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:18.241 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:18.248 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:18.248 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98007213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465835635458, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992859, telescope_ra=19.674634, telescope_dec=-24.256394, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69439, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6486828190162, telescope_dec_j2k=-24.3142815157977, observability=1)
2025-11-17T13:31:23.675 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:23.675 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Status age = 5.427238464355469s
2025-11-17T13:31:23.675 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:23.676 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:23.677 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:23.677 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:23.678 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 17;19.6761677;-24.256393;50.108294;89.992859;50.08601;90.12017;16.69592;2460996.98013516;13.52322111;1.3;_
2025-11-17T13:31:23.678 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response 17;19.6761677;-24.256393;50.108294;89.992859;50.08601;90.12017;16.69592;2460996.98013516;13.52322111;1.3;_
2025-11-17T13:31:23.678 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:23.678 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:23.678 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:23.679 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:23.679 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:23.679 [INFO] [Thread-67955 (handle)] [driver.py] [get_status()] Telra = 19.6761677, teldec = -24.256393
2025-11-17T13:31:23.679 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6761677 -24.256393
2025-11-17T13:31:23.679 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6761677 -24.256393
2025-11-17T13:31:23.679 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6761677 -24.256393
2025-11-17T13:31:23.680 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 17;19.6761677;-24.256393;50.108294;89.992859;50.08601;90.12017;16.69592;2460996.98013519;13.52322111;1.3;_19.6502170847635 -24.3143331277715
2025-11-17T13:31:23.680 [INFO] [Thread-67955 (handle)] [driver.py] [get_status()] ra_j2k = 19.6502170847635     dec_j2k = -24.3143331277715
2025-11-17T13:31:23.680 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:23.680 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:23.680 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:23.680 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 140;0.10465807557098;171.162351965909;_
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response 140;0.10465807557098;171.162351965909;_
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:23.681 [DEBUG] [Thread-67955 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:23.682 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:23.682 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:23.682 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:23.683 [DEBUG] [Thread-67955 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:23.683 [DEBUG] [Thread-67955 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:23.683 [DEBUG] [Thread-67955 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50879)
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:23.684 [DEBUG] [Thread-67955 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:23.691 [DEBUG] [Thread-67955 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:23.691 [DEBUG] [Thread-67955 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:23.691 [DEBUG] [Thread-67955 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:23.691 [DEBUG] [Thread-67955 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:23.691 [DEBUG] [Thread-67955 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:23.692 [DEBUG] [Thread-67955 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:23.692 [DEBUG] [Thread-67955 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:23.692 [DEBUG] [Thread-67955 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:23.692 [DEBUG] [Thread-67955 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:23.692 [INFO] [Thread-67955 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98013516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465807557098, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992859, telescope_ra=19.6761677, telescope_dec=-24.256393, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69592, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6502170847635, telescope_dec_j2k=-24.3143331277715, observability=1)
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.5439839363098145s
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:30.236 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:30.237 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:30.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6780002;-24.256393;50.108294;89.992858;50.08601;90.12017;16.69775;2460996.98021109;13.52504861;1.3;_
2025-11-17T13:31:30.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.6780002;-24.256393;50.108294;89.992858;50.08601;90.12017;16.69775;2460996.98021109;13.52504861;1.3;_
2025-11-17T13:31:30.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:30.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:30.238 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:30.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:30.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:30.239 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.6780002, teldec = -24.256393
2025-11-17T13:31:30.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.6780002 -24.256393
2025-11-17T13:31:30.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.6780002 -24.256393
2025-11-17T13:31:30.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6780002 -24.256393
2025-11-17T13:31:30.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6780002;-24.256393;50.108294;89.992858;50.08601;90.12017;16.69775;2460996.98021111;13.52504861;1.3;_19.6520502613102 -24.3143959776708
2025-11-17T13:31:30.240 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.6520502613102     dec_j2k = -24.3143959776708
2025-11-17T13:31:30.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:30.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:30.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:30.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:30.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:30.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:30.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:30.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:30.245 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53887)
2025-11-17T13:31:30.245 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:30.245 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:30.246 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:30.246 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:30.246 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:30.253 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:30.253 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:30.253 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:30.254 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:31:30.254 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98021109, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658236018752, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992858, telescope_ra=19.6780002, telescope_dec=-24.256393, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.69775, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6520502613102, telescope_dec_j2k=-24.3143959776708, observability=1)
2025-11-17T13:31:30.254 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.080864667892456 seconds ago
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Status age = 11.471746921539307s
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:41.726 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:41.727 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:41.728 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 17;19.681183;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70093;2460996.98034407;13.52822278;1.3;_
2025-11-17T13:31:41.728 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response 17;19.681183;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70093;2460996.98034407;13.52822278;1.3;_
2025-11-17T13:31:41.728 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:41.728 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:41.728 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:41.729 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:41.729 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:41.729 [INFO] [Thread-67956 (handle)] [driver.py] [get_status()] Telra = 19.681183, teldec = -24.256393
2025-11-17T13:31:41.729 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] UnCookCoordinates 19.681183 -24.256393
2025-11-17T13:31:41.729 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.681183 -24.256393
2025-11-17T13:31:41.729 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.681183 -24.256393
2025-11-17T13:31:41.730 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 17;19.681183;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70093;2460996.9803441;13.52822278;1.3;_19.6552342384435 -24.3145051082141
2025-11-17T13:31:41.730 [INFO] [Thread-67956 (handle)] [driver.py] [get_status()] ra_j2k = 19.6552342384435     dec_j2k = -24.3145051082141
2025-11-17T13:31:41.730 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:41.730 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:41.730 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 140;0.104657955235152;171.162357330327;_
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response 140;0.104657955235152;171.162357330327;_
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:41.731 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:41.732 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:41.733 [DEBUG] [Thread-67956 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:41.733 [DEBUG] [Thread-67956 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:41.733 [DEBUG] [Thread-67956 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:41.739 [DEBUG] [Thread-67956 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33531)
2025-11-17T13:31:41.740 [DEBUG] [Thread-67956 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:41.740 [DEBUG] [Thread-67956 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:41.740 [DEBUG] [Thread-67956 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:41.740 [DEBUG] [Thread-67956 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:41.740 [DEBUG] [Thread-67956 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:41.747 [DEBUG] [Thread-67956 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:41.747 [INFO] [Thread-67956 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98034407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104657955235152, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992858, telescope_ra=19.681183, telescope_dec=-24.256393, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.70093, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6552342384435, telescope_dec_j2k=-24.3145051082141, observability=1)
2025-11-17T13:31:45.254 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:31:45
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.5070507526397705s
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:45.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:45.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:45.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6821827;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70193;2460996.98038491;13.52921972;1.3;_
2025-11-17T13:31:45.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6821827;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70193;2460996.98038491;13.52921972;1.3;_
2025-11-17T13:31:45.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:45.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:45.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:45.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:45.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:45.257 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6821827, teldec = -24.256393
2025-11-17T13:31:45.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6821827 -24.256393
2025-11-17T13:31:45.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6821827 -24.256393
2025-11-17T13:31:45.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6821827 -24.256393
2025-11-17T13:31:45.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6821827;-24.256393;50.108294;89.992858;50.08601;90.12017;16.70193;2460996.98038493;13.52921972;1.3;_19.6562343087154 -24.3145393773697
2025-11-17T13:31:45.258 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.6562343087154     dec_j2k = -24.3145393773697
2025-11-17T13:31:45.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:45.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:45.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104658316242637;171.162351965909;_
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104658316242637;171.162351965909;_
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:45.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:45.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:31:45.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:31:45.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:31:45.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:45.260 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:45.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:45.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:45.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:45.261 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37471)
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:45.263 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:45.270 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:45.270 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98038491, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658316242637, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992858, telescope_ra=19.6821827, telescope_dec=-24.256393, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.70193, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:30:51.987106', telescope_ra_j2k=19.6562343087154, telescope_dec_j2k=-24.3145393773697, observability=1)
2025-11-17T13:31:52.128 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:52.128 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:52.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:52.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:52.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:52.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:52.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:52.130 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:52.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:52.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:52.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:52.131 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:31:52.131 [INFO] [ThreadPoolExecutor-2849_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:31:52.131 [INFO] [ThreadPoolExecutor-2849_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:31:59.792 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:31:59.792 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Status age = 14.521948099136353s
2025-11-17T13:31:59.792 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:31:59.792 [DEBUG] [Thread-67957 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:31:59.792 [DEBUG] [Thread-67957 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:31:59.793 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:31:59.795 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 17;19.6862252;-24.256393;50.108294;89.992857;50.08601;90.12017;16.70598;2460996.98055317;13.53325111;1.3;_
2025-11-17T13:31:59.795 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response 17;19.6862252;-24.256393;50.108294;89.992857;50.08601;90.12017;16.70598;2460996.98055317;13.53325111;1.3;_
2025-11-17T13:31:59.795 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:31:59.795 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:31:59.795 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:31:59.796 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:59.796 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:31:59.796 [INFO] [Thread-67957 (handle)] [driver.py] [get_status()] Telra = 19.6862252, teldec = -24.256393
2025-11-17T13:31:59.796 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6862252 -24.256393
2025-11-17T13:31:59.796 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6862252 -24.256393
2025-11-17T13:31:59.796 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6862252 -24.256393
2025-11-17T13:31:59.797 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 17;19.6862252;-24.256393;50.108294;89.992857;50.08601;90.12017;16.70598;2460996.98055321;13.53325111;1.3;_19.6602783086244 -24.3146779122137
2025-11-17T13:31:59.797 [INFO] [Thread-67957 (handle)] [driver.py] [get_status()] ra_j2k = 19.6602783086244     dec_j2k = -24.3146779122137
2025-11-17T13:31:59.797 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:31:59.797 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:31:59.797 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 140;0.10465863713818;171.162357330327;_
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response 140;0.10465863713818;171.162357330327;_
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:59.798 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:31:59.799 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:31:59.800 [DEBUG] [Thread-67957 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:59.800 [DEBUG] [Thread-67957 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:31:59.800 [DEBUG] [Thread-67957 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45385)
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:31:59.803 [DEBUG] [Thread-67957 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:31:59.810 [DEBUG] [Thread-67957 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:31:59.811 [DEBUG] [Thread-67957 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:31:59.811 [DEBUG] [Thread-67957 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:31:59.811 [DEBUG] [Thread-67957 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:31:59.811 [INFO] [Thread-67957 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98055317, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465863713818, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992857, telescope_ra=19.6862252, telescope_dec=-24.256393, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.70598, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.6602783086244, telescope_dec_j2k=-24.3146779122137, observability=1)
2025-11-17T13:32:13.008 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.008 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.008 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:13.008 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:13.009 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:13.009 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.009 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:13.009 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:13.009 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.010 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.011 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.011 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:13.011 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:13.011 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:13.011 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:13.012 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:32:13.013 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:13.014 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Park
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:32:13.015 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:32:13.016 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 29;19.6899002;-24.256392;50.108294;89.992857;50.08601;90.12017;16.70965;2460996.9807062;13.53691611;1.3;_Park Command Successful
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Status age = 13.342251539230347s
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:13.153 [DEBUG] [Thread-67958 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:13.154 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:13.154 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:13.154 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:13.154 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:13.154 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 21;19.6899283;-24.256392;50.108294;89.992857;50.08601;90.12017;16.70968;2460996.9807078;13.53694417;1.3;_
2025-11-17T13:32:13.155 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response 21;19.6899283;-24.256392;50.108294;89.992857;50.08601;90.12017;16.70968;2460996.9807078;13.53694417;1.3;_
2025-11-17T13:32:13.155 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:13.155 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:13.155 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:13.156 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:13.156 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:13.156 [INFO] [Thread-67958 (handle)] [driver.py] [get_status()] Telra = 19.6899283, teldec = -24.256392
2025-11-17T13:32:13.156 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6899283 -24.256392
2025-11-17T13:32:13.156 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6899283 -24.256392
2025-11-17T13:32:13.156 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6899283 -24.256392
2025-11-17T13:32:13.157 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 17;19.6899562;-24.256392;50.108294;89.992857;50.08601;90.12017;16.70971;2460996.98070784;13.53697194;1.3;_19.663982786495 -24.3148037599544
2025-11-17T13:32:13.157 [INFO] [Thread-67958 (handle)] [driver.py] [get_status()] ra_j2k = 19.663982786495     dec_j2k = -24.3148037599544
2025-11-17T13:32:13.157 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:13.157 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:13.157 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 140;0.104658717362065;171.162351965909;_
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response 140;0.104658717362065;171.162351965909;_
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:13.158 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:13.159 [DEBUG] [Thread-67958 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:13.159 [DEBUG] [Thread-67958 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:13.159 [DEBUG] [Thread-67958 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37385)
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:13.165 [DEBUG] [Thread-67958 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:13.173 [DEBUG] [Thread-67958 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:13.173 [INFO] [Thread-67958 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9807078, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658717362065, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992857, telescope_ra=19.6899283, telescope_dec=-24.256392, telescope_slewing=True, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.70968, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.663982786495, telescope_dec_j2k=-24.3148037599544, observability=1)
2025-11-17T13:32:14.016 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:32:14.016 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:32:14.016 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:32:14.017 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:32:14.017 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.8027334213256836s
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6904612;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71021;2460996.98072891;13.53747556;1.3;_
2025-11-17T13:32:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.6904612;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71021;2460996.98072891;13.53747556;1.3;_
2025-11-17T13:32:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:14.979 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.6904612, teldec = -24.256392
2025-11-17T13:32:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6904612 -24.256392
2025-11-17T13:32:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6904612 -24.256392
2025-11-17T13:32:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6904612 -24.256392
2025-11-17T13:32:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.6904612;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71021;2460996.98072894;13.53747556;1.3;_19.6645158850449 -24.314822009729
2025-11-17T13:32:14.980 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.6645158850449     dec_j2k = -24.314822009729
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104658316242637;171.162357330327;_
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104658316242637;171.162357330327;_
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43409)
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:14.995 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98072891, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658316242637, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992857, telescope_ra=19.6904612, telescope_dec=-24.256392, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.71021, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.6645158850449, telescope_dec_j2k=-24.314822009729, observability=1)
2025-11-17T13:32:15.018 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:32:15.018 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:32:15.018 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:32:15.018 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:32:15.018 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:32:16.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:32:16.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:32:16.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:32:16.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:32:16.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:32:17.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:32:17.019 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:17.020 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:17.021 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:17.022 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:32:17.022 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:32:17.022 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:32:17.022 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.344989776611328s
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:17.340 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:17.341 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.691096;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71085;2460996.98075627;13.53813667;1.3;_
2025-11-17T13:32:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.691096;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71085;2460996.98075627;13.53813667;1.3;_
2025-11-17T13:32:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:17.342 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:17.343 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.691096, teldec = -24.256392
2025-11-17T13:32:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.691096 -24.256392
2025-11-17T13:32:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.691096 -24.256392
2025-11-17T13:32:17.343 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.691096 -24.256392
2025-11-17T13:32:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.6911241;-24.256392;50.108294;89.992857;50.08601;90.12017;16.71088;2460996.9807563;13.53813667;1.3;_19.6651509216567 -24.3148437477332
2025-11-17T13:32:17.344 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.6651509216567     dec_j2k = -24.3148437477332
2025-11-17T13:32:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:17.344 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104658236018752;171.162357330327;_
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:17.345 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:17.346 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:17.347 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:17.347 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:17.347 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37581)
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:17.349 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:17.356 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:17.357 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98075627, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658236018752, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108294, telescope_az=89.992857, telescope_ra=19.691096, telescope_dec=-24.256392, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.71085, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.6651509216567, telescope_dec_j2k=-24.3148437477332, observability=1)
2025-11-17T13:32:17.910 [DEBUG] [Thread-67959 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:17.910 [DEBUG] [Thread-67959 (handle)] [server.py] [get_status()] Status age = 0.5532360076904297s
2025-11-17T13:32:17.910 [DEBUG] [Thread-67959 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5532360076904297
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:32:18.023 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:32:18.024 [DEBUG] [ThreadPoolExecutor-2848_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:18.024 [INFO] [ThreadPoolExecutor-2848_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.957175016403198s
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:30.314 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:30.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6947187;-24.256385;50.108293;89.992846;50.08601;90.12016;16.71447;2460996.98090642;13.54172167;1.3;_
2025-11-17T13:32:30.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.6947187;-24.256385;50.108293;89.992846;50.08601;90.12016;16.71447;2460996.98090642;13.54172167;1.3;_
2025-11-17T13:32:30.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:30.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:30.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:30.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:30.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:30.317 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.6947187, teldec = -24.256385
2025-11-17T13:32:30.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.6947187 -24.256385
2025-11-17T13:32:30.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.6947187 -24.256385
2025-11-17T13:32:30.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6947187 -24.256385
2025-11-17T13:32:30.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.6947187;-24.256385;50.108293;89.992846;50.08601;90.12016;16.71447;2460996.98090646;13.54172167;1.3;_19.6687749752364 -24.3149607733198
2025-11-17T13:32:30.318 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.6687749752364     dec_j2k = -24.3149607733198
2025-11-17T13:32:30.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:30.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:30.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104658597026237;171.162362694745;_
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104658597026237;171.162362694745;_
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:30.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:30.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:30.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:30.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:30.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47969)
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:30.326 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:30.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:30.333 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:30.333 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:30.333 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:30.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:30.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:30.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:30.334 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:30.334 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:32:30.334 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98090642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104658597026237, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992846, telescope_ra=19.6947187, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.71447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.6687749752364, telescope_dec_j2k=-24.3149607733198, observability=1)
2025-11-17T13:32:30.334 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0798077583313 seconds ago
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Status age = 5.655013084411621s
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:35.989 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:35.990 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:35.990 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 17;19.6963063;-24.256392;50.108293;89.992856;50.08601;90.12017;16.71606;2460996.98097211;13.54330472;1.3;_
2025-11-17T13:32:35.990 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response 17;19.6963063;-24.256392;50.108293;89.992856;50.08601;90.12017;16.71606;2460996.98097211;13.54330472;1.3;_
2025-11-17T13:32:35.990 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:35.990 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:35.991 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:35.991 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:35.991 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:35.992 [INFO] [Thread-67960 (handle)] [driver.py] [get_status()] Telra = 19.6963063, teldec = -24.256392
2025-11-17T13:32:35.992 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6963063 -24.256392
2025-11-17T13:32:35.992 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6963063 -24.256392
2025-11-17T13:32:35.992 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6963063 -24.256392
2025-11-17T13:32:35.993 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 17;19.6963063;-24.256392;50.108293;89.992856;50.08601;90.12017;16.71606;2460996.98097214;13.54330472;1.3;_19.6703631676498 -24.3150221087443
2025-11-17T13:32:35.993 [INFO] [Thread-67960 (handle)] [driver.py] [get_status()] ra_j2k = 19.6703631676498     dec_j2k = -24.3150221087443
2025-11-17T13:32:35.993 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:35.993 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:35.993 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 140;0.10465963993675;171.162357330327;_
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response 140;0.10465963993675;171.162357330327;_
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:35.994 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:35.995 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:35.996 [DEBUG] [Thread-67960 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:35.996 [DEBUG] [Thread-67960 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:35.996 [DEBUG] [Thread-67960 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45795)
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:36.001 [DEBUG] [Thread-67960 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:36.008 [DEBUG] [Thread-67960 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:36.008 [INFO] [Thread-67960 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98097211, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10465963993675, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992856, telescope_ra=19.6963063, telescope_dec=-24.256392, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.71606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.6703631676498, telescope_dec_j2k=-24.3150221087443, observability=1)
2025-11-17T13:32:45.331 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:32:45
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.322733163833618s
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:45.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:45.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:45.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6989025;-24.256398;50.108293;89.992867;50.08601;90.12018;16.71865;2460996.98108024;13.54589361;1.3;_
2025-11-17T13:32:45.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.6989025;-24.256398;50.108293;89.992867;50.08601;90.12018;16.71865;2460996.98108024;13.54589361;1.3;_
2025-11-17T13:32:45.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:45.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:45.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:45.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:45.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:45.334 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.6989025, teldec = -24.256398
2025-11-17T13:32:45.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.6989025 -24.256398
2025-11-17T13:32:45.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.6989025 -24.256398
2025-11-17T13:32:45.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.6989025 -24.256398
2025-11-17T13:32:45.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.6989025;-24.256398;50.108293;89.992867;50.08601;90.12018;16.71865;2460996.98108027;13.54589361;1.3;_19.672960338823 -24.3151169424881
2025-11-17T13:32:45.335 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.672960338823     dec_j2k = -24.3151169424881
2025-11-17T13:32:45.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:45.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:45.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:45.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104660281727835;171.162357330327;_
2025-11-17T13:32:45.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104660281727835;171.162357330327;_
2025-11-17T13:32:45.336 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:45.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:45.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:32:45.337 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36693)
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:45.341 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:45.349 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:45.349 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98108024, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104660281727835, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992867, telescope_ra=19.6989025, telescope_dec=-24.256398, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.71865, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:31:52.127881', telescope_ra_j2k=19.672960338823, telescope_dec_j2k=-24.3151169424881, observability=1)
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:52.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:52.272 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:52.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:52.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:52.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:52.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:52.273 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:32:52.273 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:52.273 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:52.273 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:52.273 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:52.273 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:32:52.274 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:32:52.275 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:53.275 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:53.275 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:53.275 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:53.275 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:53.275 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:32:53.276 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:53.277 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:53.278 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:53.278 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:53.278 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:53.278 [DEBUG] [ThreadPoolExecutor-2850_0] [payload.py] [to_registers()] [0]
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42663)
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:53.283 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:53.291 [DEBUG] [ThreadPoolExecutor-2850_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Status age = 8.698866367340088s
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:32:54.048 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:32:54.049 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:32:54.049 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:32:54.049 [DEBUG] [Thread-67961 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:32:54.049 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:32:54.050 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:32:54.050 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:32:54.050 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:32:54.051 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 17;19.7013208;-24.256391;50.108293;89.992856;50.08601;90.12017;16.72107;2460996.98118115;13.54830556;1.3;_
2025-11-17T13:32:54.051 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response 17;19.7013208;-24.256391;50.108293;89.992856;50.08601;90.12017;16.72107;2460996.98118115;13.54830556;1.3;_
2025-11-17T13:32:54.051 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:32:54.051 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:32:54.051 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:32:54.052 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:54.052 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:32:54.052 [INFO] [Thread-67961 (handle)] [driver.py] [get_status()] Telra = 19.7013208, teldec = -24.256391
2025-11-17T13:32:54.052 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7013208 -24.256391
2025-11-17T13:32:54.052 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7013208 -24.256391
2025-11-17T13:32:54.052 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7013208 -24.256391
2025-11-17T13:32:54.053 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 17;19.7013208;-24.256391;50.108293;89.992856;50.08601;90.12017;16.72107;2460996.98118117;13.54830556;1.3;_19.6753795473178 -24.315192666267
2025-11-17T13:32:54.053 [INFO] [Thread-67961 (handle)] [driver.py] [get_status()] ra_j2k = 19.6753795473178     dec_j2k = -24.315192666267
2025-11-17T13:32:54.053 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:32:54.053 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:32:54.053 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 140;0.104660763071148;171.162357330327;_
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response 140;0.104660763071148;171.162357330327;_
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:54.054 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:32:54.055 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:32:54.056 [DEBUG] [Thread-67961 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:32:54.056 [DEBUG] [Thread-67961 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:32:54.056 [DEBUG] [Thread-67961 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48093)
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:32:54.058 [DEBUG] [Thread-67961 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:32:54.065 [DEBUG] [Thread-67961 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:32:54.065 [DEBUG] [Thread-67961 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:54.065 [DEBUG] [Thread-67961 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:32:54.066 [DEBUG] [Thread-67961 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:32:54.066 [INFO] [Thread-67961 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98118115, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104660763071148, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992856, telescope_ra=19.7013208, telescope_dec=-24.256391, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.72107, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6753795473178, telescope_dec_j2k=-24.315192666267, observability=1)
2025-11-17T13:33:12.161 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:12.161 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Status age = 18.095601797103882s
2025-11-17T13:33:12.161 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:12.162 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:12.163 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 17;19.7063702;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72612;2460996.98139078;13.55334111;1.3;_
2025-11-17T13:33:12.163 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response 17;19.7063702;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72612;2460996.98139078;13.55334111;1.3;_
2025-11-17T13:33:12.163 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:12.163 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:12.163 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:12.164 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:12.164 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:12.164 [INFO] [Thread-67962 (handle)] [driver.py] [get_status()] Telra = 19.7063702, teldec = -24.256391
2025-11-17T13:33:12.164 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7063702 -24.256391
2025-11-17T13:33:12.164 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7063702 -24.256391
2025-11-17T13:33:12.164 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7063702 -24.256391
2025-11-17T13:33:12.165 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 17;19.7063702;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72612;2460996.9813908;13.55334111;1.3;_19.6804308464429 -24.3153653174281
2025-11-17T13:33:12.165 [INFO] [Thread-67962 (handle)] [driver.py] [get_status()] ra_j2k = 19.6804308464429     dec_j2k = -24.3153653174281
2025-11-17T13:33:12.165 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:12.165 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 140;0.104661364750291;171.162357330327;_
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response 140;0.104661364750291;171.162357330327;_
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:12.166 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:12.167 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:12.168 [DEBUG] [Thread-67962 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:12.168 [DEBUG] [Thread-67962 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:12.168 [DEBUG] [Thread-67962 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58113)
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:12.173 [DEBUG] [Thread-67962 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:12.180 [DEBUG] [Thread-67962 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:12.180 [INFO] [Thread-67962 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98139078, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104661364750291, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992855, telescope_ra=19.7063702, telescope_dec=-24.256391, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.72612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6804308464429, telescope_dec_j2k=-24.3153653174281, observability=1)
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Status age = 1.0265100002288818s
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:13.207 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:13.208 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:13.208 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 17;19.7066783;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72643;2460996.98140287;13.55364833;1.3;_
2025-11-17T13:33:13.209 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response 17;19.7066783;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72643;2460996.98140287;13.55364833;1.3;_
2025-11-17T13:33:13.209 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:13.209 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:13.209 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:13.210 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:13.210 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:13.210 [INFO] [Thread-67963 (handle)] [driver.py] [get_status()] Telra = 19.7066783, teldec = -24.256391
2025-11-17T13:33:13.210 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7066783 -24.256391
2025-11-17T13:33:13.210 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7066783 -24.256391
2025-11-17T13:33:13.210 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7066783 -24.256391
2025-11-17T13:33:13.211 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 17;19.7066783;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72643;2460996.98140291;13.55364833;1.3;_19.680739062535 -24.3153758488459
2025-11-17T13:33:13.211 [INFO] [Thread-67963 (handle)] [driver.py] [get_status()] ra_j2k = 19.680739062535     dec_j2k = -24.3153758488459
2025-11-17T13:33:13.211 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:13.211 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:13.211 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 140;0.104661485086119;171.162362694745;_
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response 140;0.104661485086119;171.162362694745;_
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:13.212 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:13.213 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:13.214 [DEBUG] [Thread-67963 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:13.214 [DEBUG] [Thread-67963 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:13.214 [DEBUG] [Thread-67963 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39623)
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:13.216 [DEBUG] [Thread-67963 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:13.223 [DEBUG] [Thread-67963 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:13.224 [INFO] [Thread-67963 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98140287, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104661485086119, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992855, telescope_ra=19.7066783, telescope_dec=-24.256391, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.72643, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.680739062535, telescope_dec_j2k=-24.3153758488459, observability=1)
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.739762783050537s
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7071735;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72692;2460996.98142319;13.55414222;1.3;_
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.7071735;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72692;2460996.98142319;13.55414222;1.3;_
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:14.965 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.7071735, teldec = -24.256391
2025-11-17T13:33:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7071735 -24.256391
2025-11-17T13:33:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7071735 -24.256391
2025-11-17T13:33:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7071735 -24.256391
2025-11-17T13:33:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7071735;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72692;2460996.98142322;13.55414222;1.3;_19.6812344491779 -24.3153927748941
2025-11-17T13:33:14.966 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.6812344491779     dec_j2k = -24.3153927748941
2025-11-17T13:33:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104661525198062;171.162357330327;_
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104661525198062;171.162357330327;_
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32981)
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:14.972 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:14.980 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:14.980 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98142319, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104661525198062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992855, telescope_ra=19.7071735, telescope_dec=-24.256391, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.72692, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6812344491779, telescope_dec_j2k=-24.3153927748941, observability=1)
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.4702515602111816s
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:16.450 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:16.451 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7075662;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72732;2460996.98144042;13.55453389;1.3;_
2025-11-17T13:33:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.7075662;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72732;2460996.98144042;13.55453389;1.3;_
2025-11-17T13:33:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:16.452 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:16.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:16.453 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:16.453 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.7075662, teldec = -24.256391
2025-11-17T13:33:16.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7075662 -24.256391
2025-11-17T13:33:16.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7075662 -24.256391
2025-11-17T13:33:16.453 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7075662 -24.256391
2025-11-17T13:33:16.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7075662;-24.256391;50.108293;89.992855;50.08601;90.12017;16.72732;2460996.98144044;13.55453389;1.3;_19.6816272972331 -24.3154061967786
2025-11-17T13:33:16.454 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.6816272972331     dec_j2k = -24.3154061967786
2025-11-17T13:33:16.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:16.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:16.454 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:16.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104661765869719;171.162368059163;_
2025-11-17T13:33:16.455 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104661765869719;171.162368059163;_
2025-11-17T13:33:16.455 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:16.455 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:16.456 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:16.457 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:16.457 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:16.457 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:16.457 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44045)
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:16.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:16.469 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:16.470 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:16.470 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:16.470 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98144042, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104661765869719, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992855, telescope_ra=19.7075662, telescope_dec=-24.256391, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.72732, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6816272972331, telescope_dec_j2k=-24.3154061967786, observability=1)
2025-11-17T13:33:18.291 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:18.291 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:18.291 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:18.291 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:18.292 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:33:18.293 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:33:18.294 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Status age = 13.761434555053711s
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:30.231 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:30.232 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:30.233 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 17;19.7114103;-24.25639;50.108293;89.992855;50.08601;90.12017;16.73116;2460996.98159992;13.5583675;1.3;_
2025-11-17T13:33:30.233 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response 17;19.7114103;-24.25639;50.108293;89.992855;50.08601;90.12017;16.73116;2460996.98159992;13.5583675;1.3;_
2025-11-17T13:33:30.233 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:30.233 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:30.233 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:30.234 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:30.234 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:30.234 [INFO] [Thread-67964 (handle)] [driver.py] [get_status()] Telra = 19.7114103, teldec = -24.25639
2025-11-17T13:33:30.234 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7114103 -24.25639
2025-11-17T13:33:30.234 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7114103 -24.25639
2025-11-17T13:33:30.234 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7114103 -24.25639
2025-11-17T13:33:30.235 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 17;19.7114103;-24.25639;50.108293;89.992855;50.08601;90.12017;16.73116;2460996.98159994;13.5583675;1.3;_19.6854728488134 -24.3155365500353
2025-11-17T13:33:30.235 [INFO] [Thread-67964 (handle)] [driver.py] [get_status()] ra_j2k = 19.6854728488134     dec_j2k = -24.3155365500353
2025-11-17T13:33:30.235 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:30.236 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:30.236 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:30.236 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 140;0.104662367548861;171.162362694745;_
2025-11-17T13:33:30.236 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response 140;0.104662367548861;171.162362694745;_
2025-11-17T13:33:30.237 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:30.237 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:30.237 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:30.237 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:30.237 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:30.238 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:30.238 [DEBUG] [Thread-67964 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:33:30.238 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:30.238 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:30.238 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:30.239 [DEBUG] [Thread-67964 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:30.239 [DEBUG] [Thread-67964 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:30.239 [DEBUG] [Thread-67964 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55677)
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:30.242 [DEBUG] [Thread-67964 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:30.249 [DEBUG] [Thread-67964 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:30.249 [DEBUG] [Thread-67964 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:30.249 [DEBUG] [Thread-67964 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:30.249 [DEBUG] [Thread-67964 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:30.250 [DEBUG] [Thread-67964 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:30.250 [DEBUG] [Thread-67964 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:30.250 [DEBUG] [Thread-67964 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:30.250 [DEBUG] [Thread-67964 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:30.250 [DEBUG] [Thread-67964 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:30.250 [INFO] [Thread-67964 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98159992, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104662367548861, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108293, telescope_az=89.992855, telescope_ra=19.7114103, telescope_dec=-24.25639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.73116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6854728488134, telescope_dec_j2k=-24.3155365500353, observability=1)
2025-11-17T13:33:30.394 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:33:30.394 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.14394044876098633s
2025-11-17T13:33:30.394 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.14394044876098633
2025-11-17T13:33:30.394 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.063034534454346 seconds ago
2025-11-17T13:33:45.410 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:33:45
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.160472631454468s
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:45.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:45.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:45.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:45.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:45.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:45.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7156464;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7354;2460996.9817756;13.56259194;1.3;_
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7156464;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7354;2460996.9817756;13.56259194;1.3;_
2025-11-17T13:33:45.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:45.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:45.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:45.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:45.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:45.414 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7156464, teldec = -24.25639
2025-11-17T13:33:45.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7156464 -24.25639
2025-11-17T13:33:45.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7156464 -24.25639
2025-11-17T13:33:45.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7156464 -24.25639
2025-11-17T13:33:45.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7156464;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7354;2460996.98177564;13.56259194;1.3;_19.6897105526301 -24.315681229915
2025-11-17T13:33:45.415 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.6897105526301     dec_j2k = -24.315681229915
2025-11-17T13:33:45.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:45.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:45.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104663089563831;171.162357330327;_
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104663089563831;171.162357330327;_
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:45.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:45.417 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:45.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:45.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:33:45.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57809)
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:45.422 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:45.429 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:45.430 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:45.430 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:45.430 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:45.430 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9817756, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104663089563831, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992854, telescope_ra=19.7156464, telescope_dec=-24.25639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.7354, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6897105526301, telescope_dec_j2k=-24.315681229915, observability=1)
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Status age = 2.8665220737457275s
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:48.296 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:48.297 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:33:48.298 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:33:48.299 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 17;19.7164505;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7362;2460996.98180902;13.56339389;1.3;_
2025-11-17T13:33:48.299 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response 17;19.7164505;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7362;2460996.98180902;13.56339389;1.3;_
2025-11-17T13:33:48.299 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:33:48.299 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:33:48.299 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:33:48.300 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:48.300 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:33:48.300 [INFO] [Thread-67965 (handle)] [driver.py] [get_status()] Telra = 19.7164505, teldec = -24.25639
2025-11-17T13:33:48.300 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7164505 -24.25639
2025-11-17T13:33:48.300 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7164505 -24.25639
2025-11-17T13:33:48.300 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7164505 -24.25639
2025-11-17T13:33:48.301 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 17;19.7164505;-24.25639;50.108292;89.992854;50.08601;90.12017;16.7362;2460996.98180904;13.56339389;1.3;_19.6905149575903 -24.3157086851088
2025-11-17T13:33:48.301 [INFO] [Thread-67965 (handle)] [driver.py] [get_status()] ra_j2k = 19.6905149575903     dec_j2k = -24.3157086851088
2025-11-17T13:33:48.301 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:33:48.301 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:33:48.301 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 140;0.104662969228003;171.162357330327;_
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response 140;0.104662969228003;171.162357330327;_
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:48.302 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:33:48.303 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:33:48.304 [DEBUG] [Thread-67965 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:48.304 [DEBUG] [Thread-67965 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:33:48.304 [DEBUG] [Thread-67965 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41759)
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:33:48.309 [DEBUG] [Thread-67965 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:33:48.317 [DEBUG] [Thread-67965 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:33:48.317 [INFO] [Thread-67965 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98180902, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104662969228003, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992854, telescope_ra=19.7164505, telescope_dec=-24.25639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.7362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:32:52.270912', telescope_ra_j2k=19.6905149575903, telescope_dec_j2k=-24.3157086851088, observability=1)
2025-11-17T13:33:52.412 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:52.412 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:52.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:52.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:52.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:52.413 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:33:52.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:33:52.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:33:52.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:33:52.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:33:52.414 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:33:52.414 [INFO] [ThreadPoolExecutor-2851_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:33:52.415 [INFO] [ThreadPoolExecutor-2851_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Status age = 18.107664108276367s
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:06.425 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:06.426 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:06.426 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:06.426 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:06.426 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 17;19.7214976;-24.25639;50.108292;89.992853;50.08601;90.12017;16.74125;2460996.98201882;13.56842722;1.3;_
2025-11-17T13:34:06.426 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response 17;19.7214976;-24.25639;50.108292;89.992853;50.08601;90.12017;16.74125;2460996.98201882;13.56842722;1.3;_
2025-11-17T13:34:06.427 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:06.427 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:06.427 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:06.428 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:06.428 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:06.428 [INFO] [Thread-67966 (handle)] [driver.py] [get_status()] Telra = 19.7214976, teldec = -24.25639
2025-11-17T13:34:06.428 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7214976 -24.25639
2025-11-17T13:34:06.428 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7214976 -24.25639
2025-11-17T13:34:06.428 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7214976 -24.25639
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 17;19.7214976;-24.25639;50.108292;89.992853;50.08601;90.12017;16.74125;2460996.98201885;13.56842722;1.3;_19.6955639755421 -24.3158809544617
2025-11-17T13:34:06.429 [INFO] [Thread-67966 (handle)] [driver.py] [get_status()] ra_j2k = 19.6955639755421     dec_j2k = -24.3158809544617
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 140;0.10466393191463;171.162357330327;_
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response 140;0.10466393191463;171.162357330327;_
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:06.429 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:06.430 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:06.431 [DEBUG] [Thread-67966 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:06.431 [DEBUG] [Thread-67966 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:06.431 [DEBUG] [Thread-67966 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58521)
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:06.435 [DEBUG] [Thread-67966 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:06.443 [DEBUG] [Thread-67966 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:06.443 [INFO] [Thread-67966 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98201882, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466393191463, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992853, telescope_ra=19.7214976, telescope_dec=-24.25639, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.74125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.6955639755421, telescope_dec_j2k=-24.3158809544617, observability=1)
2025-11-17T13:34:13.251 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:13.251 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Status age = 6.808242559432983s
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:13.252 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:13.253 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:13.254 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 17;19.7233925;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74314;2460996.98209784;13.57031694;1.3;_
2025-11-17T13:34:13.254 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response 17;19.7233925;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74314;2460996.98209784;13.57031694;1.3;_
2025-11-17T13:34:13.254 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:13.254 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:13.254 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:13.255 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:13.255 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:13.255 [INFO] [Thread-67967 (handle)] [driver.py] [get_status()] Telra = 19.7233925, teldec = -24.256389
2025-11-17T13:34:13.255 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7233925 -24.256389
2025-11-17T13:34:13.255 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7233925 -24.256389
2025-11-17T13:34:13.255 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7233925 -24.256389
2025-11-17T13:34:13.256 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 17;19.7233925;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74314;2460996.98209787;13.57031694;1.3;_19.6974595975015 -24.3159446056744
2025-11-17T13:34:13.256 [INFO] [Thread-67967 (handle)] [driver.py] [get_status()] ra_j2k = 19.6974595975015     dec_j2k = -24.3159446056744
2025-11-17T13:34:13.256 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:13.256 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:13.256 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 140;0.104663771466859;171.162346601491;_
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response 140;0.104663771466859;171.162346601491;_
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:13.257 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:13.258 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:13.259 [DEBUG] [Thread-67967 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:13.259 [DEBUG] [Thread-67967 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:13.259 [DEBUG] [Thread-67967 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:13.263 [DEBUG] [Thread-67967 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50553)
2025-11-17T13:34:13.263 [DEBUG] [Thread-67967 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:13.263 [DEBUG] [Thread-67967 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:13.264 [DEBUG] [Thread-67967 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:13.264 [DEBUG] [Thread-67967 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:13.264 [DEBUG] [Thread-67967 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:13.271 [DEBUG] [Thread-67967 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:13.272 [INFO] [Thread-67967 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98209784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104663771466859, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992853, telescope_ra=19.7233925, telescope_dec=-24.256389, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.74314, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.6974595975015, telescope_dec_j2k=-24.3159446056744, observability=1)
2025-11-17T13:34:13.294 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.294 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.294 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:13.294 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:13.294 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:34:13.295 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:13.296 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:13.297 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:34:13.298 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:13.299 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:13.300 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:13.300 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:13.300 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:13.300 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Park
2025-11-17T13:34:13.300 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:34:13.301 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:34:13.301 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 29;19.7234207;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74317;2460996.98209839;13.570345;1.3;_Park Command Successful
2025-11-17T13:34:14.301 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:34:14.302 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:34:14.302 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:34:14.303 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:34:14.303 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.6947152614593506s
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7238694;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74362;2460996.9821177;13.5707925;1.3;_
2025-11-17T13:34:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.7238694;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74362;2460996.9821177;13.5707925;1.3;_
2025-11-17T13:34:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:14.970 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.7238694, teldec = -24.256389
2025-11-17T13:34:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7238694 -24.256389
2025-11-17T13:34:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7238694 -24.256389
2025-11-17T13:34:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7238694 -24.256389
2025-11-17T13:34:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7238694;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74362;2460996.98211772;13.5707925;1.3;_19.6979366793008 -24.315960874521
2025-11-17T13:34:14.971 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.6979366793008     dec_j2k = -24.315960874521
2025-11-17T13:34:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104664252810173;171.162357330327;_
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104664252810173;171.162357330327;_
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48459)
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:14.981 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:14.988 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:14.989 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9821177, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104664252810173, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992853, telescope_ra=19.7238694, telescope_dec=-24.256389, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.74362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.6979366793008, telescope_dec_j2k=-24.315960874521, observability=1)
2025-11-17T13:34:15.303 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:34:15.303 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:34:15.303 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:34:15.304 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:34:15.304 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:34:15.558 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:15.558 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5692851543426514s
2025-11-17T13:34:15.558 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5692851543426514
2025-11-17T13:34:16.304 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:34:16.304 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:34:16.304 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:34:16.305 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:34:16.305 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:34:17.305 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:34:17.305 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:34:17.306 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:34:17.306 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:17.307 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:34:17.308 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:34:17.309 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:18.309 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:18.309 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:18.309 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:18.309 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:18.309 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:18.310 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:34:18.311 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:34:18.311 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:34:18.311 [DEBUG] [ThreadPoolExecutor-2850_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:18.311 [INFO] [ThreadPoolExecutor-2850_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Status age = 9.510607957839966s
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:24.499 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 17;19.7265405;-24.256395;50.108292;89.992864;50.08601;90.12018;16.74629;2460996.98222801;13.57345611;1.3;_
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response 17;19.7265405;-24.256395;50.108292;89.992864;50.08601;90.12018;16.74629;2460996.98222801;13.57345611;1.3;_
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:24.500 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:24.501 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:24.501 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:24.501 [INFO] [Thread-67968 (handle)] [driver.py] [get_status()] Telra = 19.7265405, teldec = -24.256395
2025-11-17T13:34:24.501 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7265405 -24.256395
2025-11-17T13:34:24.501 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7265405 -24.256395
2025-11-17T13:34:24.501 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7265405 -24.256395
2025-11-17T13:34:24.502 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 17;19.7265405;-24.256395;50.108292;89.992864;50.08601;90.12018;16.74629;2460996.98222803;13.57345611;1.3;_19.7006087975405 -24.3160579784028
2025-11-17T13:34:24.502 [INFO] [Thread-67968 (handle)] [driver.py] [get_status()] ra_j2k = 19.7006087975405     dec_j2k = -24.3160579784028
2025-11-17T13:34:24.502 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:24.502 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:24.503 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:24.503 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 140;0.104664292922115;171.162357330327;_
2025-11-17T13:34:24.503 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response 140;0.104664292922115;171.162357330327;_
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:24.504 [DEBUG] [Thread-67968 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:24.508 [DEBUG] [Thread-67968 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40519)
2025-11-17T13:34:24.508 [DEBUG] [Thread-67968 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:24.508 [DEBUG] [Thread-67968 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:24.508 [DEBUG] [Thread-67968 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:24.509 [DEBUG] [Thread-67968 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:24.509 [DEBUG] [Thread-67968 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:24.516 [DEBUG] [Thread-67968 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:24.516 [INFO] [Thread-67968 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98222801, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104664292922115, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992864, telescope_ra=19.7265405, telescope_dec=-24.256395, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.74629, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.7006087975405, telescope_dec_j2k=-24.3160579784028, observability=1)
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.937920331954956s
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:30.454 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:30.455 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:30.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7281831;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74793;2460996.98229694;13.57509444;1.3;_
2025-11-17T13:34:30.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.7281831;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74793;2460996.98229694;13.57509444;1.3;_
2025-11-17T13:34:30.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:30.456 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:30.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:30.457 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:30.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:30.458 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.7281831, teldec = -24.256389
2025-11-17T13:34:30.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.7281831 -24.256389
2025-11-17T13:34:30.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.7281831 -24.256389
2025-11-17T13:34:30.458 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7281831 -24.256389
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7281831;-24.256389;50.108292;89.992853;50.08601;90.12017;16.74793;2460996.98229698;13.57509444;1.3;_19.7022520263897 -24.3161079896396
2025-11-17T13:34:30.459 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7022520263897     dec_j2k = -24.3161079896396
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104665014937086;171.162362694745;_
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104665014937086;171.162362694745;_
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:30.459 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:30.460 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:30.460 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:30.461 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:30.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:30.462 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41147)
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:30.465 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:30.472 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:30.472 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:30.473 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:34:30.473 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98229694, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665014937086, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992853, telescope_ra=19.7281831, telescope_dec=-24.256389, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.74793, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.7022520263897, telescope_dec_j2k=-24.3161079896396, observability=1)
2025-11-17T13:34:30.473 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.062920570373535 seconds ago
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Status age = 12.139229536056519s
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:42.612 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:42.613 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 17;19.7315813;-24.256389;50.108292;89.992852;50.08601;90.12017;16.75133;2460996.98243766;13.57848333;1.3;_
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response 17;19.7315813;-24.256389;50.108292;89.992852;50.08601;90.12017;16.75133;2460996.98243766;13.57848333;1.3;_
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:42.614 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:42.615 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:42.615 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:42.615 [INFO] [Thread-67969 (handle)] [driver.py] [get_status()] Telra = 19.7315813, teldec = -24.256389
2025-11-17T13:34:42.615 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7315813 -24.256389
2025-11-17T13:34:42.615 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7315813 -24.256389
2025-11-17T13:34:42.615 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7315813 -24.256389
2025-11-17T13:34:42.616 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 17;19.7315813;-24.256389;50.108292;89.992852;50.08601;90.12017;16.75133;2460996.98243768;13.57848333;1.3;_19.7056515272894 -24.3162238298673
2025-11-17T13:34:42.616 [INFO] [Thread-67969 (handle)] [driver.py] [get_status()] ra_j2k = 19.7056515272894     dec_j2k = -24.3162238298673
2025-11-17T13:34:42.616 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:42.616 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:42.617 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:42.617 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 140;0.104664653929601;171.162351965909;_
2025-11-17T13:34:42.618 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response 140;0.104664653929601;171.162351965909;_
2025-11-17T13:34:42.618 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:42.618 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:42.618 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:42.618 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:42.619 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:42.620 [DEBUG] [Thread-67969 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:42.620 [DEBUG] [Thread-67969 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:42.620 [DEBUG] [Thread-67969 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:42.621 [DEBUG] [Thread-67969 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44723)
2025-11-17T13:34:42.621 [DEBUG] [Thread-67969 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:42.622 [DEBUG] [Thread-67969 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:42.622 [DEBUG] [Thread-67969 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:42.622 [DEBUG] [Thread-67969 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:42.622 [DEBUG] [Thread-67969 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:42.629 [DEBUG] [Thread-67969 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:42.629 [INFO] [Thread-67969 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98243766, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104664653929601, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108292, telescope_az=89.992852, telescope_ra=19.7315813, telescope_dec=-24.256389, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.75133, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.7056515272894, telescope_dec_j2k=-24.3162238298673, observability=1)
2025-11-17T13:34:45.491 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:34:45
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.8615472316741943s
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:34:45.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7323659;-24.256389;50.108291;89.992852;50.08601;90.12017;16.75212;2460996.98247097;13.57926583;1.3;_
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7323659;-24.256389;50.108291;89.992852;50.08601;90.12017;16.75212;2460996.98247097;13.57926583;1.3;_
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:34:45.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:34:45.493 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7323659, teldec = -24.256389
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7323659 -24.256389
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7323659 -24.256389
2025-11-17T13:34:45.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7323659 -24.256389
2025-11-17T13:34:45.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7323659;-24.256389;50.108291;89.992852;50.08601;90.12017;16.75212;2460996.982471;13.57926583;1.3;_19.7064364280725 -24.3162505692736
2025-11-17T13:34:45.494 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.7064364280725     dec_j2k = -24.3162505692736
2025-11-17T13:34:45.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:34:45.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:34:45.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:34:45.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104664533593772;171.162351965909;_
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104664533593772;171.162351965909;_
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:45.495 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:45.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:45.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:45.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:34:45.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:34:45.496 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:34:45.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:45.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:34:45.497 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:34:45.501 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53637)
2025-11-17T13:34:45.501 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:45.501 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:45.501 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:34:45.501 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:45.502 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:45.508 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:45.508 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:34:45.509 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:34:45.509 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98247097, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104664533593772, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992852, telescope_ra=19.7323659, telescope_dec=-24.256389, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.75212, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:33:52.411845', telescope_ra_j2k=19.7064364280725, telescope_dec_j2k=-24.3162505692736, observability=1)
2025-11-17T13:34:52.554 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:52.554 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:52.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:52.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:52.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:52.555 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:52.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:52.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:52.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:52.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:52.556 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:34:52.556 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:52.556 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:52.556 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:52.556 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:52.556 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:34:52.557 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:34:52.558 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:53.558 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:53.558 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:53.558 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:53.558 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:53.558 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:34:53.559 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:34:53.560 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:34:53.561 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:34:53.561 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:34:53.561 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:34:53.561 [DEBUG] [ThreadPoolExecutor-2852_0] [payload.py] [to_registers()] [0]
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41011)
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:34:53.563 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:34:53.570 [DEBUG] [ThreadPoolExecutor-2852_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Status age = 15.169021606445312s
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:00.678 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:00.679 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 17;19.7366019;-24.256388;50.108291;89.992852;50.08601;90.12017;16.75635;2460996.98264675;13.58349028;1.3;_
2025-11-17T13:35:00.680 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response 17;19.7366019;-24.256388;50.108291;89.992852;50.08601;90.12017;16.75635;2460996.98264675;13.58349028;1.3;_
2025-11-17T13:35:00.680 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:00.680 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:00.680 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:00.681 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:00.681 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:00.681 [INFO] [Thread-67970 (handle)] [driver.py] [get_status()] Telra = 19.7366019, teldec = -24.256388
2025-11-17T13:35:00.681 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7366019 -24.256388
2025-11-17T13:35:00.681 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7366019 -24.256388
2025-11-17T13:35:00.681 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7366019 -24.256388
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 17;19.7366019;-24.256388;50.108291;89.992852;50.08601;90.12017;16.75635;2460996.98264678;13.58349028;1.3;_19.710674054898 -24.3163938907577
2025-11-17T13:35:00.682 [INFO] [Thread-67970 (handle)] [driver.py] [get_status()] ra_j2k = 19.710674054898     dec_j2k = -24.3163938907577
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 140;0.1046652154968;171.162373423581;_
2025-11-17T13:35:00.682 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response 140;0.1046652154968;171.162373423581;_
2025-11-17T13:35:00.683 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:00.683 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:00.683 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:00.683 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:00.684 [DEBUG] [Thread-67970 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45765)
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:00.685 [DEBUG] [Thread-67970 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:00.692 [DEBUG] [Thread-67970 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:00.692 [DEBUG] [Thread-67970 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:00.693 [DEBUG] [Thread-67970 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:00.693 [INFO] [Thread-67970 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98264675, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046652154968, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162373423581, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992852, telescope_ra=19.7366019, telescope_dec=-24.256388, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.75635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.710674054898, telescope_dec_j2k=-24.3163938907577, observability=1)
2025-11-17T13:35:13.305 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Status age = 12.612576246261597s
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:13.306 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:13.307 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:13.307 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 17;19.7401099;-24.256388;50.108291;89.992851;50.08601;90.12017;16.75986;2460996.9827929;13.58698861;1.3;_
2025-11-17T13:35:13.307 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response 17;19.7401099;-24.256388;50.108291;89.992851;50.08601;90.12017;16.75986;2460996.9827929;13.58698861;1.3;_
2025-11-17T13:35:13.307 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:13.308 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:13.308 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:13.309 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:13.309 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:13.309 [INFO] [Thread-67971 (handle)] [driver.py] [get_status()] Telra = 19.7401099, teldec = -24.256388
2025-11-17T13:35:13.309 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7401099 -24.256388
2025-11-17T13:35:13.309 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7401099 -24.256388
2025-11-17T13:35:13.309 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7401099 -24.256388
2025-11-17T13:35:13.310 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 17;19.7401099;-24.256388;50.108291;89.992851;50.08601;90.12017;16.75986;2460996.98279294;13.58698861;1.3;_19.7141834054802 -24.316513354319
2025-11-17T13:35:13.310 [INFO] [Thread-67971 (handle)] [driver.py] [get_status()] ra_j2k = 19.7141834054802     dec_j2k = -24.316513354319
2025-11-17T13:35:13.310 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:13.310 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:13.310 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 140;0.1046649347132;171.162362694745;_
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response 140;0.1046649347132;171.162362694745;_
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:13.311 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:13.312 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:13.313 [DEBUG] [Thread-67971 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:13.313 [DEBUG] [Thread-67971 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:13.313 [DEBUG] [Thread-67971 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51145)
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:13.316 [DEBUG] [Thread-67971 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:13.323 [DEBUG] [Thread-67971 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:13.323 [DEBUG] [Thread-67971 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:13.324 [DEBUG] [Thread-67971 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:13.324 [INFO] [Thread-67971 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9827929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046649347132, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992851, telescope_ra=19.7401099, telescope_dec=-24.256388, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.75986, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.7141834054802, telescope_dec_j2k=-24.316513354319, observability=1)
2025-11-17T13:35:14.650 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.3265597820281982s
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:14.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7405032;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76025;2460996.98280847;13.58738083;1.3;_
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.7405032;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76025;2460996.98280847;13.58738083;1.3;_
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:14.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:14.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:14.653 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:14.653 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.7405032, teldec = -24.256388
2025-11-17T13:35:14.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7405032 -24.256388
2025-11-17T13:35:14.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7405032 -24.256388
2025-11-17T13:35:14.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7405032 -24.256388
2025-11-17T13:35:14.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7405032;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76025;2460996.9828085;13.58738083;1.3;_19.7145768570983 -24.3165267449001
2025-11-17T13:35:14.654 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.7145768570983     dec_j2k = -24.3165267449001
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104665295720685;171.162357330327;_
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104665295720685;171.162357330327;_
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:14.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:14.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:14.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:14.657 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:14.657 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58451)
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:14.664 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:14.671 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:14.672 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:14.672 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98280847, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665295720685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992851, telescope_ra=19.7405032, telescope_dec=-24.256388, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.76025, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.7145768570983, telescope_dec_j2k=-24.3165267449001, observability=1)
2025-11-17T13:35:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.29779577255249023s
2025-11-17T13:35:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.29779577255249023
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:18.571 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:18.572 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:18.572 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:18.572 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:18.572 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:35:18.573 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Status age = 4.07976222038269s
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:18.752 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:18.753 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:18.754 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 17;19.7416424;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76139;2460996.98285595;13.58851694;1.3;_
2025-11-17T13:35:18.754 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response 17;19.7416424;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76139;2460996.98285595;13.58851694;1.3;_
2025-11-17T13:35:18.754 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:18.754 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:18.754 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:18.755 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:18.755 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:18.755 [INFO] [Thread-67972 (handle)] [driver.py] [get_status()] Telra = 19.7416424, teldec = -24.256388
2025-11-17T13:35:18.755 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7416424 -24.256388
2025-11-17T13:35:18.755 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7416424 -24.256388
2025-11-17T13:35:18.755 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7416424 -24.256388
2025-11-17T13:35:18.756 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 17;19.7416424;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76139;2460996.98285597;13.58851694;1.3;_19.715716496487 -24.3165655274155
2025-11-17T13:35:18.756 [INFO] [Thread-67972 (handle)] [driver.py] [get_status()] ra_j2k = 19.715716496487     dec_j2k = -24.3165655274155
2025-11-17T13:35:18.756 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:18.756 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:18.756 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 140;0.1046652154968;171.162351965909;_
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response 140;0.1046652154968;171.162351965909;_
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:18.757 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:18.758 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:18.759 [DEBUG] [Thread-67972 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:18.759 [DEBUG] [Thread-67972 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:18.759 [DEBUG] [Thread-67972 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:18.764 [DEBUG] [Thread-67972 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57185)
2025-11-17T13:35:18.764 [DEBUG] [Thread-67972 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:18.765 [DEBUG] [Thread-67972 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:18.765 [DEBUG] [Thread-67972 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:18.765 [DEBUG] [Thread-67972 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:18.765 [DEBUG] [Thread-67972 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:18.772 [DEBUG] [Thread-67972 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:18.772 [INFO] [Thread-67972 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98285595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046652154968, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992851, telescope_ra=19.7416424, telescope_dec=-24.256388, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.76139, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.715716496487, telescope_dec_j2k=-24.3165655274155, observability=1)
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.760696172714233s
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:30.533 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:30.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:30.534 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:30.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:30.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:30.534 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:30.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7449336;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76468;2460996.98299229;13.59179917;1.3;_
2025-11-17T13:35:30.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.7449336;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76468;2460996.98299229;13.59179917;1.3;_
2025-11-17T13:35:30.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:30.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:30.535 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:30.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:30.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:30.536 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.7449336, teldec = -24.256388
2025-11-17T13:35:30.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.7449336 -24.256388
2025-11-17T13:35:30.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.7449336 -24.256388
2025-11-17T13:35:30.536 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7449336 -24.256388
2025-11-17T13:35:30.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7449336;-24.256388;50.108291;89.992851;50.08601;90.12017;16.76468;2460996.98299233;13.59179917;1.3;_19.7190089677752 -24.3166775423702
2025-11-17T13:35:30.537 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7190089677752     dec_j2k = -24.3166775423702
2025-11-17T13:35:30.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:30.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:30.537 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104664854489315;171.162362694745;_
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104664854489315;171.162362694745;_
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:30.538 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:30.539 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:30.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:30.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:30.540 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43115)
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:30.542 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:30.549 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:35:30.550 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98299229, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104664854489315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992851, telescope_ra=19.7449336, telescope_dec=-24.256388, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.76468, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.7190089677752, telescope_dec_j2k=-24.3166775423702, observability=1)
2025-11-17T13:35:30.550 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05909752845764 seconds ago
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Status age = 6.319357872009277s
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:36.869 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:36.870 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:36.871 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 17;19.7466915;-24.256387;50.108291;89.992851;50.08601;90.12017;16.76644;2460996.98306564;13.59355222;1.3;_
2025-11-17T13:35:36.871 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response 17;19.7466915;-24.256387;50.108291;89.992851;50.08601;90.12017;16.76644;2460996.98306564;13.59355222;1.3;_
2025-11-17T13:35:36.871 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:36.871 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:36.871 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:36.872 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:36.872 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:36.872 [INFO] [Thread-67973 (handle)] [driver.py] [get_status()] Telra = 19.7466915, teldec = -24.256387
2025-11-17T13:35:36.872 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7466915 -24.256387
2025-11-17T13:35:36.872 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7466915 -24.256387
2025-11-17T13:35:36.873 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7466915 -24.256387
2025-11-17T13:35:36.873 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 17;19.7466915;-24.256387;50.108291;89.992851;50.08601;90.12017;16.76644;2460996.98306566;13.59355222;1.3;_19.7207675481201 -24.3167363540675
2025-11-17T13:35:36.874 [INFO] [Thread-67973 (handle)] [driver.py] [get_status()] ra_j2k = 19.7207675481201     dec_j2k = -24.3167363540675
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 140;0.104665295720685;171.162357330327;_
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response 140;0.104665295720685;171.162357330327;_
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:36.874 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:36.875 [DEBUG] [Thread-67973 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:36.876 [DEBUG] [Thread-67973 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48885)
2025-11-17T13:35:36.876 [DEBUG] [Thread-67973 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:36.876 [DEBUG] [Thread-67973 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:36.876 [DEBUG] [Thread-67973 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:36.877 [DEBUG] [Thread-67973 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:36.877 [DEBUG] [Thread-67973 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:36.884 [DEBUG] [Thread-67973 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:36.884 [INFO] [Thread-67973 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98306564, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665295720685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.992851, telescope_ra=19.7466915, telescope_dec=-24.256387, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.76644, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.7207675481201, telescope_dec_j2k=-24.3167363540675, observability=1)
2025-11-17T13:35:45.570 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:35:45
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.685743570327759s
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:45.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7491139;-24.256387;50.108291;89.99285;50.08601;90.12017;16.76886;2460996.98316633;13.59596806;1.3;_
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7491139;-24.256387;50.108291;89.99285;50.08601;90.12017;16.76886;2460996.98316633;13.59596806;1.3;_
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:45.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:45.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:45.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:45.572 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7491139, teldec = -24.256387
2025-11-17T13:35:45.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7491139 -24.256387
2025-11-17T13:35:45.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7491139 -24.256387
2025-11-17T13:35:45.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7491139 -24.256387
2025-11-17T13:35:45.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7491139;-24.256387;50.108291;89.99285;50.08601;90.12017;16.76886;2460996.98316635;13.59596806;1.3;_19.723190886691 -24.3168187544105
2025-11-17T13:35:45.573 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.723190886691     dec_j2k = -24.3168187544105
2025-11-17T13:35:45.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104665857287885;171.162357330327;_
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104665857287885;171.162357330327;_
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:45.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:45.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:45.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:45.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:35:45.576 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38059)
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:45.577 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:45.584 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:45.584 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:45.585 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:45.585 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98316633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665857287885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108291, telescope_az=89.99285, telescope_ra=19.7491139, telescope_dec=-24.256387, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.76886, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:34:52.553964', telescope_ra_j2k=19.723190886691, telescope_dec_j2k=-24.3168187544105, observability=1)
2025-11-17T13:35:52.695 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:52.695 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:52.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:52.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:52.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:52.697 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:52.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:52.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:52.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:52.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:52.698 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:35:52.698 [INFO] [ThreadPoolExecutor-2853_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:35:52.698 [INFO] [ThreadPoolExecutor-2853_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Status age = 9.35315752029419s
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:35:54.938 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:35:54.939 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:35:54.940 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 17;19.7517327;-24.256387;50.10829;89.99285;50.08601;90.12017;16.77148;2460996.98327477;13.59857972;1.3;_
2025-11-17T13:35:54.940 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response 17;19.7517327;-24.256387;50.10829;89.99285;50.08601;90.12017;16.77148;2460996.98327477;13.59857972;1.3;_
2025-11-17T13:35:54.940 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:35:54.940 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:35:54.940 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:35:54.941 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:54.941 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:35:54.941 [INFO] [Thread-67974 (handle)] [driver.py] [get_status()] Telra = 19.7517327, teldec = -24.256387
2025-11-17T13:35:54.941 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7517327 -24.256387
2025-11-17T13:35:54.941 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7517327 -24.256387
2025-11-17T13:35:54.942 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7517327 -24.256387
2025-11-17T13:35:54.942 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 17;19.7517327;-24.256387;50.10829;89.99285;50.08601;90.12017;16.77148;2460996.98327479;13.59857972;1.3;_19.7258107030541 -24.3169078087025
2025-11-17T13:35:54.943 [INFO] [Thread-67974 (handle)] [driver.py] [get_status()] ra_j2k = 19.7258107030541     dec_j2k = -24.3169078087025
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 140;0.104665095160971;171.162362694745;_
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response 140;0.104665095160971;171.162362694745;_
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:54.943 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:35:54.944 [DEBUG] [Thread-67974 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:35:54.949 [DEBUG] [Thread-67974 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37423)
2025-11-17T13:35:54.949 [DEBUG] [Thread-67974 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:35:54.950 [DEBUG] [Thread-67974 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:35:54.950 [DEBUG] [Thread-67974 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:35:54.950 [DEBUG] [Thread-67974 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:35:54.950 [DEBUG] [Thread-67974 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:35:54.957 [DEBUG] [Thread-67974 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:35:54.957 [INFO] [Thread-67974 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98327477, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665095160971, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.99285, telescope_ra=19.7517327, telescope_dec=-24.256387, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.77148, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.7258107030541, telescope_dec_j2k=-24.3169078087025, observability=1)
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Status age = 18.03653073310852s
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:36:12.994 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:36:12.995 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 17;19.756745;-24.256387;50.10829;89.99285;50.08601;90.12017;16.7765;2460996.98348374;13.60357833;1.3;_
2025-11-17T13:36:12.995 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response 17;19.756745;-24.256387;50.10829;89.99285;50.08601;90.12017;16.7765;2460996.98348374;13.60357833;1.3;_
2025-11-17T13:36:12.995 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:36:12.995 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:36:12.995 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:36:12.996 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:12.996 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:12.996 [INFO] [Thread-67975 (handle)] [driver.py] [get_status()] Telra = 19.756745, teldec = -24.256387
2025-11-17T13:36:12.996 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] UnCookCoordinates 19.756745 -24.256387
2025-11-17T13:36:12.997 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.756745 -24.256387
2025-11-17T13:36:12.997 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.756745 -24.256387
2025-11-17T13:36:12.997 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 17;19.756745;-24.256387;50.10829;89.99285;50.08601;90.12017;16.7765;2460996.98348376;13.60357833;1.3;_19.7308249532527 -24.3170781780145
2025-11-17T13:36:12.998 [INFO] [Thread-67975 (handle)] [driver.py] [get_status()] ra_j2k = 19.7308249532527     dec_j2k = -24.3170781780145
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 140;0.104665696840114;171.162357330327;_
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response 140;0.104665696840114;171.162357330327;_
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:12.998 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:12.999 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:12.999 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:13.000 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:13.000 [DEBUG] [Thread-67975 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:13.000 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:13.000 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:13.000 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:13.001 [DEBUG] [Thread-67975 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:13.001 [DEBUG] [Thread-67975 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:13.001 [DEBUG] [Thread-67975 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:13.002 [DEBUG] [Thread-67975 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43477)
2025-11-17T13:36:13.003 [DEBUG] [Thread-67975 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:13.003 [DEBUG] [Thread-67975 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:13.003 [DEBUG] [Thread-67975 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:36:13.003 [DEBUG] [Thread-67975 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:13.003 [DEBUG] [Thread-67975 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:36:13.010 [DEBUG] [Thread-67975 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:36:13.011 [DEBUG] [Thread-67975 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:36:13.011 [INFO] [Thread-67975 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98348374, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665696840114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.99285, telescope_ra=19.756745, telescope_dec=-24.256387, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.7765, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.7308249532527, telescope_dec_j2k=-24.3170781780145, observability=1)
2025-11-17T13:36:13.363 [DEBUG] [Thread-67976 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:13.363 [DEBUG] [Thread-67976 (handle)] [server.py] [get_status()] Status age = 0.35263967514038086s
2025-11-17T13:36:13.363 [DEBUG] [Thread-67976 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.35263967514038086
2025-11-17T13:36:13.573 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:13.574 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.575 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.576 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.576 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:13.576 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:13.576 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:13.576 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:13.577 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:36:13.578 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:13.579 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Park
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:36:13.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 29;19.7569135;-24.256386;50.10829;89.992849;50.08601;90.12017;16.77666;2460996.98349051;13.60374639;1.3;_Park Command Successful
2025-11-17T13:36:13.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:13.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.7529022693634033s
2025-11-17T13:36:13.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7529022693634033
2025-11-17T13:36:14.580 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:36:14.581 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:36:14.581 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:36:14.582 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:36:14.582 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.9783525466918945s
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:36:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:36:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7573063;-24.256386;50.10829;89.992849;50.08601;90.12017;16.77706;2460996.98350684;13.60413806;1.3;_
2025-11-17T13:36:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.7573063;-24.256386;50.10829;89.992849;50.08601;90.12017;16.77706;2460996.98350684;13.60413806;1.3;_
2025-11-17T13:36:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:36:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:36:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:36:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:14.992 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.7573063, teldec = -24.256386
2025-11-17T13:36:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7573063 -24.256386
2025-11-17T13:36:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7573063 -24.256386
2025-11-17T13:36:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7573063 -24.256386
2025-11-17T13:36:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7573063;-24.256386;50.10829;89.992849;50.08601;90.12017;16.77706;2460996.98350686;13.60413806;1.3;_19.7313864722281 -24.3170962504571
2025-11-17T13:36:14.994 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.7313864722281     dec_j2k = -24.3170962504571
2025-11-17T13:36:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:36:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:36:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104665055049029;171.162362694745;_
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104665055049029;171.162362694745;_
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:15.001 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55053)
2025-11-17T13:36:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:36:15.002 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:36:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:36:15.009 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98350684, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665055049029, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.992849, telescope_ra=19.7573063, telescope_dec=-24.256386, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.77706, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.7313864722281, telescope_dec_j2k=-24.3170962504571, observability=1)
2025-11-17T13:36:15.582 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:36:15.582 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:36:15.582 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:36:15.583 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:36:15.583 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:36:16.583 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:36:16.584 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:36:16.584 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:36:16.585 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:36:16.585 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:36:17.585 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:36:17.585 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:36:17.585 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:17.586 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:36:17.587 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:36:17.588 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:18.588 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:18.589 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:36:18.590 [DEBUG] [ThreadPoolExecutor-2852_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:18.590 [INFO] [ThreadPoolExecutor-2852_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.600294589996338s
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:30.610 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:36:30.611 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7616537;-24.256386;50.10829;89.992849;50.08601;90.12017;16.7814;2460996.98368764;13.60847361;1.3;_
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.7616537;-24.256386;50.10829;89.992849;50.08601;90.12017;16.7814;2460996.98368764;13.60847361;1.3;_
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:30.612 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.7616537, teldec = -24.256386
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.7616537 -24.256386
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.7616537 -24.256386
2025-11-17T13:36:30.612 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7616537 -24.256386
2025-11-17T13:36:30.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7616537;-24.256386;50.10829;89.992849;50.08601;90.12017;16.7814;2460996.98368765;13.60847361;1.3;_19.7357355695753 -24.3172439267667
2025-11-17T13:36:30.613 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7357355695753     dec_j2k = -24.3172439267667
2025-11-17T13:36:30.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:36:30.613 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104666097959542;171.162351965909;_
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104666097959542;171.162351965909;_
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:30.614 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:30.615 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:30.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:30.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:30.616 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:30.619 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58027)
2025-11-17T13:36:30.619 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:30.619 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:30.620 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:36:30.620 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:30.620 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:30.627 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:36:30.628 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:36:30.628 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:36:30.628 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98368764, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666097959542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.992849, telescope_ra=19.7616537, telescope_dec=-24.256386, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.7814, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.7357355695753, telescope_dec_j2k=-24.3172439267667, observability=1)
2025-11-17T13:36:30.628 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05791997909546 seconds ago
2025-11-17T13:36:31.129 [DEBUG] [Thread-67977 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:31.129 [DEBUG] [Thread-67977 (handle)] [server.py] [get_status()] Status age = 0.5016653537750244s
2025-11-17T13:36:31.129 [DEBUG] [Thread-67977 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5016653537750244
2025-11-17T13:36:45.646 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:36:45
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.018426418304443s
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:45.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:36:45.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:36:45.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7658555;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78561;2460996.98386167;13.61266389;1.3;_
2025-11-17T13:36:45.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7658555;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78561;2460996.98386167;13.61266389;1.3;_
2025-11-17T13:36:45.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:36:45.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:36:45.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:36:45.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:45.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:45.649 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7658555, teldec = -24.256386
2025-11-17T13:36:45.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7658555 -24.256386
2025-11-17T13:36:45.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7658555 -24.256386
2025-11-17T13:36:45.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7658555 -24.256386
2025-11-17T13:36:45.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7658555;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78561;2460996.98386169;13.61266389;1.3;_19.739939014685 -24.3173865837859
2025-11-17T13:36:45.650 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.739939014685     dec_j2k = -24.3173865837859
2025-11-17T13:36:45.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104665656728171;171.162357330327;_
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104665656728171;171.162357330327;_
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:45.651 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:45.652 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:45.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:45.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:45.653 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56233)
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:45.660 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:36:45.667 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:36:45.668 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98386167, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665656728171, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.992848, telescope_ra=19.7658555, telescope_dec=-24.256386, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.78561, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.739939014685, telescope_dec_j2k=-24.3173865837859, observability=1)
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Status age = 3.5375587940216064s
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:49.205 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:36:49.206 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:36:49.207 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 17;19.7668359;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78659;2460996.98390286;13.61364167;1.3;_
2025-11-17T13:36:49.207 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response 17;19.7668359;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78659;2460996.98390286;13.61364167;1.3;_
2025-11-17T13:36:49.207 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:36:49.207 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:36:49.207 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:36:49.208 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:49.208 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:36:49.208 [INFO] [Thread-67978 (handle)] [driver.py] [get_status()] Telra = 19.7668359, teldec = -24.256386
2025-11-17T13:36:49.208 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7668359 -24.256386
2025-11-17T13:36:49.208 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7668359 -24.256386
2025-11-17T13:36:49.208 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7668359 -24.256386
2025-11-17T13:36:49.209 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 17;19.7668359;-24.256386;50.10829;89.992848;50.08601;90.12017;16.78659;2460996.98390288;13.61364167;1.3;_19.7409197991877 -24.3174198593416
2025-11-17T13:36:49.209 [INFO] [Thread-67978 (handle)] [driver.py] [get_status()] ra_j2k = 19.7409197991877     dec_j2k = -24.3174198593416
2025-11-17T13:36:49.209 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:36:49.209 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:36:49.209 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 140;0.104665857287885;171.162362694745;_
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response 140;0.104665857287885;171.162362694745;_
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:49.210 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:49.211 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:49.211 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:49.211 [DEBUG] [Thread-67978 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:49.211 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:36:49.212 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:36:49.212 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:36:49.213 [DEBUG] [Thread-67978 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:49.213 [DEBUG] [Thread-67978 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:36:49.213 [DEBUG] [Thread-67978 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47719)
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:49.217 [DEBUG] [Thread-67978 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:36:49.224 [DEBUG] [Thread-67978 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:36:49.225 [INFO] [Thread-67978 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98390286, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665857287885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10829, telescope_az=89.992848, telescope_ra=19.7668359, telescope_dec=-24.256386, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.78659, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:35:52.695297', telescope_ra_j2k=19.7409197991877, telescope_dec_j2k=-24.3174198593416, observability=1)
2025-11-17T13:36:52.840 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:52.840 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:52.841 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:52.842 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:36:52.842 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:52.842 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:52.842 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:52.842 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:36:52.843 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:36:52.844 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:53.844 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:53.844 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:53.844 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:53.845 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:53.845 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:53.845 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:36:53.846 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:36:53.847 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:36:53.848 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:36:53.848 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:36:53.848 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:36:53.848 [DEBUG] [ThreadPoolExecutor-2854_0] [payload.py] [to_registers()] [0]
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52163)
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:36:53.851 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:36:53.858 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:36:53.858 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:36:53.858 [DEBUG] [ThreadPoolExecutor-2854_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:36:53.859 [DEBUG] [ThreadPoolExecutor-2854_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:36:53.859 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:36:53.859 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:36:53.859 [DEBUG] [ThreadPoolExecutor-2854_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Status age = 18.039693593978882s
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:07.264 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:07.265 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:07.266 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 17;19.7718549;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79161;2460996.98411187;13.61864694;1.3;_
2025-11-17T13:37:07.266 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response 17;19.7718549;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79161;2460996.98411187;13.61864694;1.3;_
2025-11-17T13:37:07.266 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:07.266 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:07.266 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:07.267 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:07.267 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:07.267 [INFO] [Thread-67979 (handle)] [driver.py] [get_status()] Telra = 19.7718549, teldec = -24.256385
2025-11-17T13:37:07.267 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7718549 -24.256385
2025-11-17T13:37:07.267 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7718549 -24.256385
2025-11-17T13:37:07.267 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7718549 -24.256385
2025-11-17T13:37:07.268 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 17;19.7718549;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79161;2460996.9841119;13.61864694;1.3;_19.7459407716297 -24.3175891465065
2025-11-17T13:37:07.268 [INFO] [Thread-67979 (handle)] [driver.py] [get_status()] ra_j2k = 19.7459407716297     dec_j2k = -24.3175891465065
2025-11-17T13:37:07.268 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:07.268 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:07.268 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 140;0.104665736952056;171.162362694745;_
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response 140;0.104665736952056;171.162362694745;_
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:07.269 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:07.270 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:07.271 [DEBUG] [Thread-67979 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:07.271 [DEBUG] [Thread-67979 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:07.271 [DEBUG] [Thread-67979 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55205)
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:07.276 [DEBUG] [Thread-67979 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:07.283 [DEBUG] [Thread-67979 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:07.283 [INFO] [Thread-67979 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98411187, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665736952056, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992848, telescope_ra=19.7718549, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.79161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7459407716297, telescope_dec_j2k=-24.3175891465065, observability=1)
2025-11-17T13:37:12.853 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.5701868534088135s
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:12.854 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7734145;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79317;2460996.98417656;13.62020222;1.3;_
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.7734145;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79317;2460996.98417656;13.62020222;1.3;_
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:12.855 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:12.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:12.856 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:12.856 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.7734145, teldec = -24.256385
2025-11-17T13:37:12.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7734145 -24.256385
2025-11-17T13:37:12.856 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7734145 -24.256385
2025-11-17T13:37:12.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7734145 -24.256385
2025-11-17T13:37:12.857 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7734145;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79317;2460996.98417659;13.62020222;1.3;_19.7475009858035 -24.3176420402957
2025-11-17T13:37:12.857 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.7475009858035     dec_j2k = -24.3176420402957
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466621829537;171.162357330327;_
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466621829537;171.162357330327;_
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:12.858 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:12.859 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:12.860 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:12.860 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:12.860 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:12.862 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44931)
2025-11-17T13:37:12.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:12.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:12.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:12.863 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:12.863 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:12.870 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:12.870 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98417656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466621829537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992848, telescope_ra=19.7734145, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.79317, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7475009858035, telescope_dec_j2k=-24.3176420402957, observability=1)
2025-11-17T13:37:13.409 [DEBUG] [Thread-67980 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:13.410 [DEBUG] [Thread-67980 (handle)] [server.py] [get_status()] Status age = 0.5393388271331787s
2025-11-17T13:37:13.410 [DEBUG] [Thread-67980 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5393388271331787
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0898797512054443s
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7740217;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79377;2460996.98420095;13.62080778;1.3;_
2025-11-17T13:37:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.7740217;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79377;2460996.98420095;13.62080778;1.3;_
2025-11-17T13:37:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:14.963 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:14.964 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.7740217, teldec = -24.256385
2025-11-17T13:37:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7740217 -24.256385
2025-11-17T13:37:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7740217 -24.256385
2025-11-17T13:37:14.964 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7740217 -24.256385
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7740217;-24.256385;50.108289;89.992848;50.08601;90.12017;16.79377;2460996.98420097;13.62080778;1.3;_19.7481084250887 -24.3176626307595
2025-11-17T13:37:14.965 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.7481084250887     dec_j2k = -24.3176626307595
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104665897399828;171.162362694745;_
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104665897399828;171.162362694745;_
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:14.965 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:14.966 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:14.967 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50947)
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:14.973 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:14.981 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98420095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665897399828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992848, telescope_ra=19.7740217, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.79377, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7481084250887, telescope_dec_j2k=-24.3176626307595, observability=1)
2025-11-17T13:37:18.859 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:18.859 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:18.859 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:18.859 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:18.859 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:18.860 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:37:18.861 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:37:18.862 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:37:18.862 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Status age = 10.392167329788208s
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:25.373 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:25.374 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:25.375 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 17;19.776897;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79665;2460996.98432147;13.62367528;1.3;_
2025-11-17T13:37:25.375 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response 17;19.776897;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79665;2460996.98432147;13.62367528;1.3;_
2025-11-17T13:37:25.375 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:25.375 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:25.375 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:25.376 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:25.376 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:25.376 [INFO] [Thread-67981 (handle)] [driver.py] [get_status()] Telra = 19.776897, teldec = -24.256385
2025-11-17T13:37:25.376 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] UnCookCoordinates 19.776897 -24.256385
2025-11-17T13:37:25.376 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.776897 -24.256385
2025-11-17T13:37:25.376 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.776897 -24.256385
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 17;19.776897;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79665;2460996.98432149;13.62367528;1.3;_19.7509848594693 -24.3177601130392
2025-11-17T13:37:25.377 [INFO] [Thread-67981 (handle)] [driver.py] [get_status()] ra_j2k = 19.7509848594693     dec_j2k = -24.3177601130392
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 140;0.104666097959542;171.162351965909;_
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response 140;0.104666097959542;171.162351965909;_
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:25.377 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:25.378 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:25.378 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:25.379 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:25.380 [DEBUG] [Thread-67981 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:25.380 [DEBUG] [Thread-67981 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:25.380 [DEBUG] [Thread-67981 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:25.382 [DEBUG] [Thread-67981 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47053)
2025-11-17T13:37:25.382 [DEBUG] [Thread-67981 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:25.382 [DEBUG] [Thread-67981 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:25.383 [DEBUG] [Thread-67981 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:25.383 [DEBUG] [Thread-67981 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:25.383 [DEBUG] [Thread-67981 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:25.389 [DEBUG] [Thread-67981 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:25.390 [DEBUG] [Thread-67981 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:25.390 [INFO] [Thread-67981 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98432147, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666097959542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992847, telescope_ra=19.776897, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.79665, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7509848594693, telescope_dec_j2k=-24.3177601130392, observability=1)
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.297845840454102s
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:30.688 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:30.689 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7784;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79815;2460996.98438297;13.62517417;1.3;_
2025-11-17T13:37:30.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.7784;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79815;2460996.98438297;13.62517417;1.3;_
2025-11-17T13:37:30.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:30.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:30.690 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:30.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:30.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:30.691 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.7784, teldec = -24.256385
2025-11-17T13:37:30.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.7784 -24.256385
2025-11-17T13:37:30.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.7784 -24.256385
2025-11-17T13:37:30.691 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7784 -24.256385
2025-11-17T13:37:30.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7784;-24.256385;50.108289;89.992847;50.08601;90.12017;16.79815;2460996.98438301;13.62517417;1.3;_19.7524884532849 -24.3178110561987
2025-11-17T13:37:30.692 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7524884532849     dec_j2k = -24.3178110561987
2025-11-17T13:37:30.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:30.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:30.692 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10466621829537;171.162351965909;_
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10466621829537;171.162351965909;_
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:30.693 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:30.694 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:30.697 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51251)
2025-11-17T13:37:30.697 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:30.697 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:30.697 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:30.697 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:30.698 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:30.704 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:30.705 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:37:30.705 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98438297, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466621829537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992847, telescope_ra=19.7784, telescope_dec=-24.256385, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.79815, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7524884532849, telescope_dec_j2k=-24.3178110561987, observability=1)
2025-11-17T13:37:30.705 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05924081802368 seconds ago
2025-11-17T13:37:43.435 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Status age = 12.730576992034912s
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:43.436 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:43.437 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:43.437 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 17;19.7819394;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80169;2460996.98453052;13.62870389;1.3;_
2025-11-17T13:37:43.437 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response 17;19.7819394;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80169;2460996.98453052;13.62870389;1.3;_
2025-11-17T13:37:43.437 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:43.437 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:43.438 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:43.438 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:43.438 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:43.439 [INFO] [Thread-67982 (handle)] [driver.py] [get_status()] Telra = 19.7819394, teldec = -24.256384
2025-11-17T13:37:43.439 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7819394 -24.256384
2025-11-17T13:37:43.439 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7819394 -24.256384
2025-11-17T13:37:43.439 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7819394 -24.256384
2025-11-17T13:37:43.440 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 17;19.7819394;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80169;2460996.98453056;13.62870389;1.3;_19.7560292541224 -24.3179299849945
2025-11-17T13:37:43.440 [INFO] [Thread-67982 (handle)] [driver.py] [get_status()] ra_j2k = 19.7560292541224     dec_j2k = -24.3179299849945
2025-11-17T13:37:43.440 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:43.440 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:43.440 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 140;0.104665576504285;171.162357330327;_
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response 140;0.104665576504285;171.162357330327;_
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:43.441 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:43.442 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:43.443 [DEBUG] [Thread-67982 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:43.443 [DEBUG] [Thread-67982 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:43.443 [DEBUG] [Thread-67982 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53771)
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:43.448 [DEBUG] [Thread-67982 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:43.455 [DEBUG] [Thread-67982 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:43.456 [DEBUG] [Thread-67982 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:43.456 [INFO] [Thread-67982 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98453052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665576504285, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992847, telescope_ra=19.7819394, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.80169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7560292541224, telescope_dec_j2k=-24.3179299849945, observability=1)
2025-11-17T13:37:45.728 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:37:45
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.272463321685791s
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:45.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:37:45.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:37:45.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7825828;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80233;2460996.98455706;13.62934556;1.3;_
2025-11-17T13:37:45.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7825828;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80233;2460996.98455706;13.62934556;1.3;_
2025-11-17T13:37:45.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:37:45.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:37:45.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:37:45.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:45.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:37:45.731 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7825828, teldec = -24.256384
2025-11-17T13:37:45.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7825828 -24.256384
2025-11-17T13:37:45.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7825828 -24.256384
2025-11-17T13:37:45.731 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7825828 -24.256384
2025-11-17T13:37:45.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7825828;-24.256384;50.108289;89.992847;50.08601;90.12017;16.80233;2460996.98455708;13.62934556;1.3;_19.7566729090813 -24.3179517803402
2025-11-17T13:37:45.732 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.7566729090813     dec_j2k = -24.3179517803402
2025-11-17T13:37:45.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:37:45.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:37:45.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104666258407313;171.162357330327;_
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104666258407313;171.162357330327;_
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:45.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:37:45.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:37:45.742 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32895)
2025-11-17T13:37:45.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:37:45.742 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:37:45.745 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:37:45.745 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:37:45.745 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:37:45.749 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:37:45.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:37:45.750 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98455706, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666258407313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992847, telescope_ra=19.7825828, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.80233, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:36:52.839588', telescope_ra_j2k=19.7566729090813, telescope_dec_j2k=-24.3179517803402, observability=1)
2025-11-17T13:37:52.982 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:52.982 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:52.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:52.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:52.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:52.983 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:37:52.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:37:52.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:37:52.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:37:52.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:37:52.984 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:37:52.984 [INFO] [ThreadPoolExecutor-2855_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:37:52.984 [INFO] [ThreadPoolExecutor-2855_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Status age = 15.758338689804077s
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:01.508 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:01.509 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:01.510 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:01.510 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 17;19.7869815;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80673;2460996.9847397;13.63373222;1.3;_
2025-11-17T13:38:01.510 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response 17;19.7869815;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80673;2460996.9847397;13.63373222;1.3;_
2025-11-17T13:38:01.510 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:01.511 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:01.511 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:01.511 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:01.512 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:01.512 [INFO] [Thread-67983 (handle)] [driver.py] [get_status()] Telra = 19.7869815, teldec = -24.256384
2025-11-17T13:38:01.512 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7869815 -24.256384
2025-11-17T13:38:01.512 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7869815 -24.256384
2025-11-17T13:38:01.512 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7869815 -24.256384
2025-11-17T13:38:01.513 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 17;19.7869815;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80673;2460996.98473973;13.63373222;1.3;_19.7610733549855 -24.3181007415646
2025-11-17T13:38:01.513 [INFO] [Thread-67983 (handle)] [driver.py] [get_status()] ra_j2k = 19.7610733549855     dec_j2k = -24.3181007415646
2025-11-17T13:38:01.513 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:01.513 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:01.513 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 140;0.104665576504285;171.162362694745;_
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response 140;0.104665576504285;171.162362694745;_
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:01.514 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:01.515 [DEBUG] [Thread-67983 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35979)
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:01.521 [DEBUG] [Thread-67983 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:01.528 [DEBUG] [Thread-67983 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:01.529 [DEBUG] [Thread-67983 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:01.529 [DEBUG] [Thread-67983 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:01.529 [DEBUG] [Thread-67983 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:01.529 [INFO] [Thread-67983 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9847397, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665576504285, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992846, telescope_ra=19.7869815, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.80673, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7610733549855, telescope_dec_j2k=-24.3181007415646, observability=1)
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.428414344787598s
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:11.957 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:11.958 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:11.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7898778;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80963;2460996.98486064;13.63662056;1.3;_
2025-11-17T13:38:11.959 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.7898778;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80963;2460996.98486064;13.63662056;1.3;_
2025-11-17T13:38:11.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:11.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:11.959 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:11.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:11.960 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:11.960 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.7898778, teldec = -24.256384
2025-11-17T13:38:11.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7898778 -24.256384
2025-11-17T13:38:11.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7898778 -24.256384
2025-11-17T13:38:11.960 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7898778 -24.256384
2025-11-17T13:38:11.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.7898778;-24.256384;50.108289;89.992846;50.08601;90.12017;16.80963;2460996.98486066;13.63662056;1.3;_19.7639708072704 -24.3181987804731
2025-11-17T13:38:11.961 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.7639708072704     dec_j2k = -24.3181987804731
2025-11-17T13:38:11.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:11.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:11.961 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466621829537;171.162357330327;_
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466621829537;171.162357330327;_
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:11.962 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:11.963 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:11.964 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42021)
2025-11-17T13:38:11.964 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:11.964 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:11.964 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:11.964 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:11.965 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:11.972 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:11.972 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98486064, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466621829537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992846, telescope_ra=19.7898778, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.80963, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7639708072704, telescope_dec_j2k=-24.3181987804731, observability=1)
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Status age = 1.470759630203247s
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:13.443 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:13.444 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:13.445 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 17;19.7902981;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81005;2460996.98487784;13.63703972;1.3;_
2025-11-17T13:38:13.445 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response 17;19.7902981;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81005;2460996.98487784;13.63703972;1.3;_
2025-11-17T13:38:13.445 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:13.445 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:13.445 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:13.446 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:13.446 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:13.446 [INFO] [Thread-67984 (handle)] [driver.py] [get_status()] Telra = 19.7902981, teldec = -24.256384
2025-11-17T13:38:13.446 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7902981 -24.256384
2025-11-17T13:38:13.446 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7902981 -24.256384
2025-11-17T13:38:13.447 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7902981 -24.256384
2025-11-17T13:38:13.447 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 17;19.7902981;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81005;2460996.98487786;13.63703972;1.3;_19.7643912746639 -24.3182130046115
2025-11-17T13:38:13.447 [INFO] [Thread-67984 (handle)] [driver.py] [get_status()] ra_j2k = 19.7643912746639     dec_j2k = -24.3182130046115
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 140;0.104666097959542;171.162362694745;_
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response 140;0.104666097959542;171.162362694745;_
2025-11-17T13:38:13.448 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:13.449 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:13.449 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:13.449 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:13.450 [DEBUG] [Thread-67984 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50019)
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:13.454 [DEBUG] [Thread-67984 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:13.461 [DEBUG] [Thread-67984 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:13.462 [DEBUG] [Thread-67984 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:13.462 [DEBUG] [Thread-67984 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:13.462 [INFO] [Thread-67984 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98487784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666097959542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992846, telescope_ra=19.7902981, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7643912746639, telescope_dec_j2k=-24.3182130046115, observability=1)
2025-11-17T13:38:13.862 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.863 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.863 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:13.863 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:13.863 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:38:13.864 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:13.865 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:13.866 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:38:13.867 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:13.868 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:13.869 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:13.869 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:13.869 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:13.869 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Park
2025-11-17T13:38:13.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:38:13.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:38:13.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 29;19.7904103;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81016;2460996.98488275;13.63715167;1.3;_Park Command Successful
2025-11-17T13:38:14.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:38:14.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:38:14.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:38:14.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:38:14.870 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.507181167602539s
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7907184;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81047;2460996.98489549;13.63745889;1.3;_
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.7907184;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81047;2460996.98489549;13.63745889;1.3;_
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:14.972 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.7907184, teldec = -24.256384
2025-11-17T13:38:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7907184 -24.256384
2025-11-17T13:38:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7907184 -24.256384
2025-11-17T13:38:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7907184 -24.256384
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.7907184;-24.256384;50.108289;89.992846;50.08601;90.12017;16.81047;2460996.98489551;13.63745889;1.3;_19.7648117421027 -24.3182272280161
2025-11-17T13:38:14.973 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.7648117421027     dec_j2k = -24.3182272280161
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104665777063999;171.162346601491;_
2025-11-17T13:38:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104665777063999;171.162346601491;_
2025-11-17T13:38:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38659)
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:14.977 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:14.984 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:14.985 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98489549, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665777063999, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108289, telescope_az=89.992846, telescope_ra=19.7907184, telescope_dec=-24.256384, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7648117421027, telescope_dec_j2k=-24.3182272280161, observability=1)
2025-11-17T13:38:15.871 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:38:15.871 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:38:15.871 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:38:15.871 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:38:15.872 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:38:16.872 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:38:16.872 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:38:16.872 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:38:16.873 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:38:16.873 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:38:17.873 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:38:17.873 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:38:17.873 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:17.874 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:38:17.875 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:38:17.876 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:18.876 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:18.876 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:18.876 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:18.876 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:18.877 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:18.877 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:38:18.878 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:38:18.879 [DEBUG] [ThreadPoolExecutor-2854_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:18.879 [INFO] [ThreadPoolExecutor-2854_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:38:19.636 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:19.636 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Status age = 4.651920795440674s
2025-11-17T13:38:19.636 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:19.636 [DEBUG] [Thread-67985 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:19.637 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 17;19.7920264;-24.256383;50.108288;89.992846;50.08601;90.12017;16.81178;2460996.98494951;13.63876333;1.3;_
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response 17;19.7920264;-24.256383;50.108288;89.992846;50.08601;90.12017;16.81178;2460996.98494951;13.63876333;1.3;_
2025-11-17T13:38:19.638 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:19.639 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:19.639 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:19.639 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:19.640 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:19.640 [INFO] [Thread-67985 (handle)] [driver.py] [get_status()] Telra = 19.7920264, teldec = -24.256383
2025-11-17T13:38:19.640 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7920264 -24.256383
2025-11-17T13:38:19.640 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7920264 -24.256383
2025-11-17T13:38:19.640 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7920264 -24.256383
2025-11-17T13:38:19.641 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 17;19.7920264;-24.256383;50.108288;89.992846;50.08601;90.12017;16.81178;2460996.98494955;13.63876333;1.3;_19.7661202636527 -24.3182704875356
2025-11-17T13:38:19.641 [INFO] [Thread-67985 (handle)] [driver.py] [get_status()] ra_j2k = 19.7661202636527     dec_j2k = -24.3182704875356
2025-11-17T13:38:19.641 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:19.641 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:19.641 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 140;0.104666017735656;171.162357330327;_
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response 140;0.104666017735656;171.162357330327;_
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:19.642 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:19.643 [DEBUG] [Thread-67985 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53935)
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:19.650 [DEBUG] [Thread-67985 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:19.658 [DEBUG] [Thread-67985 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:19.658 [INFO] [Thread-67985 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98494951, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666017735656, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992846, telescope_ra=19.7920264, telescope_dec=-24.256383, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7661202636527, telescope_dec_j2k=-24.3182704875356, observability=1)
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.106480836868286s
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:30.765 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7951168;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81487;2460996.98507831;13.64184528;1.3;_
2025-11-17T13:38:30.766 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.7951168;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81487;2460996.98507831;13.64184528;1.3;_
2025-11-17T13:38:30.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:30.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:30.767 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:30.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:30.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:30.768 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.7951168, teldec = -24.256383
2025-11-17T13:38:30.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.7951168 -24.256383
2025-11-17T13:38:30.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.7951168 -24.256383
2025-11-17T13:38:30.768 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7951168 -24.256383
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.7951168;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81487;2460996.98507834;13.64184528;1.3;_19.7692118972249 -24.3183750306268
2025-11-17T13:38:30.769 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7692118972249     dec_j2k = -24.3183750306268
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104666298519256;171.162351965909;_
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104666298519256;171.162351965909;_
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:30.769 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:30.770 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:30.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:30.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:30.771 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52589)
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:30.776 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:30.783 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:30.784 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:30.784 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:38:30.784 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98507831, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666298519256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992845, telescope_ra=19.7951168, telescope_dec=-24.256383, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81487, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7692118972249, telescope_dec_j2k=-24.3183750306268, observability=1)
2025-11-17T13:38:30.784 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05582594871521 seconds ago
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Status age = 6.918960094451904s
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:37.703 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:37.704 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 17;19.7970696;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81682;2460996.98515861;13.64379278;1.3;_
2025-11-17T13:38:37.704 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response 17;19.7970696;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81682;2460996.98515861;13.64379278;1.3;_
2025-11-17T13:38:37.704 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:37.704 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:37.704 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:37.705 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:37.705 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:37.705 [INFO] [Thread-67986 (handle)] [driver.py] [get_status()] Telra = 19.7970696, teldec = -24.256383
2025-11-17T13:38:37.705 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7970696 -24.256383
2025-11-17T13:38:37.705 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7970696 -24.256383
2025-11-17T13:38:37.706 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7970696 -24.256383
2025-11-17T13:38:37.706 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 17;19.7970696;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81682;2460996.98515863;13.64379278;1.3;_19.7711654779689 -24.3184410700937
2025-11-17T13:38:37.707 [INFO] [Thread-67986 (handle)] [driver.py] [get_status()] ra_j2k = 19.7711654779689     dec_j2k = -24.3184410700937
2025-11-17T13:38:37.707 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:37.707 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:37.707 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:37.707 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 140;0.104665897399828;171.162346601491;_
2025-11-17T13:38:37.707 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response 140;0.104665897399828;171.162346601491;_
2025-11-17T13:38:37.708 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:37.708 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:37.708 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:37.708 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:37.708 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:37.709 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:37.709 [DEBUG] [Thread-67986 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:37.709 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:37.709 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:37.709 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:37.710 [DEBUG] [Thread-67986 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:37.710 [DEBUG] [Thread-67986 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:37.710 [DEBUG] [Thread-67986 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55371)
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:37.713 [DEBUG] [Thread-67986 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:37.721 [DEBUG] [Thread-67986 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:37.721 [INFO] [Thread-67986 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98515861, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104665897399828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992845, telescope_ra=19.7970696, telescope_dec=-24.256383, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81682, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7711654779689, telescope_dec_j2k=-24.3184410700937, observability=1)
2025-11-17T13:38:45.811 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:38:45
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.090200901031494s
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:45.811 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:45.812 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:45.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7993016;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81905;2460996.98525246;13.64601861;1.3;_
2025-11-17T13:38:45.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.7993016;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81905;2460996.98525246;13.64601861;1.3;_
2025-11-17T13:38:45.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:45.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:45.813 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:45.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:45.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:45.814 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.7993016, teldec = -24.256383
2025-11-17T13:38:45.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.7993016 -24.256383
2025-11-17T13:38:45.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.7993016 -24.256383
2025-11-17T13:38:45.814 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.7993016 -24.256383
2025-11-17T13:38:45.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.7993297;-24.256383;50.108288;89.992845;50.08601;90.12017;16.81908;2460996.98525249;13.64604667;1.3;_19.7733983715332 -24.3185165320226
2025-11-17T13:38:45.815 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.7733983715332     dec_j2k = -24.3185165320226
2025-11-17T13:38:45.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:45.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:45.815 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10466694031034;171.162362694745;_
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10466694031034;171.162362694745;_
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:45.816 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:45.817 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:45.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:45.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:45.818 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40811)
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:45.825 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:45.832 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:45.832 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98525246, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466694031034, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992845, telescope_ra=19.7993016, telescope_dec=-24.256383, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.81905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:37:52.981622', telescope_ra_j2k=19.7733983715332, telescope_dec_j2k=-24.3185165320226, observability=1)
2025-11-17T13:38:53.124 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:53.125 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:53.125 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:53.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:53.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:53.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:53.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:53.127 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:53.127 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:38:53.128 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:38:53.129 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:54.129 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:54.129 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:54.129 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:54.129 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:54.129 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:38:54.130 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:54.131 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:54.132 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:54.132 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:54.135 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:54.135 [DEBUG] [ThreadPoolExecutor-2856_0] [payload.py] [to_registers()] [0]
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42981)
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:54.142 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:54.149 [DEBUG] [ThreadPoolExecutor-2856_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Status age = 9.933826208114624s
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:38:55.766 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 17;19.8020842;-24.256383;50.108288;89.992844;50.08601;90.12017;16.82184;2460996.98536767;13.64879361;1.3;_
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response 17;19.8020842;-24.256383;50.108288;89.992844;50.08601;90.12017;16.82184;2460996.98536767;13.64879361;1.3;_
2025-11-17T13:38:55.767 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:38:55.768 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:38:55.768 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:38:55.768 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:55.769 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:38:55.769 [INFO] [Thread-67987 (handle)] [driver.py] [get_status()] Telra = 19.8020842, teldec = -24.256383
2025-11-17T13:38:55.769 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8020842 -24.256383
2025-11-17T13:38:55.769 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8020842 -24.256383
2025-11-17T13:38:55.769 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8020842 -24.256383
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 17;19.8020842;-24.256383;50.108288;89.992844;50.08601;90.12017;16.82184;2460996.98536771;13.64879361;1.3;_19.7761820873093 -24.3186105801116
2025-11-17T13:38:55.770 [INFO] [Thread-67987 (handle)] [driver.py] [get_status()] ra_j2k = 19.7761820873093     dec_j2k = -24.3186105801116
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 140;0.104667100758112;171.162357330327;_
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response 140;0.104667100758112;171.162357330327;_
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:55.770 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:38:55.771 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:38:55.772 [DEBUG] [Thread-67987 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:55.772 [DEBUG] [Thread-67987 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:38:55.772 [DEBUG] [Thread-67987 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:38:55.774 [DEBUG] [Thread-67987 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36877)
2025-11-17T13:38:55.774 [DEBUG] [Thread-67987 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:38:55.774 [DEBUG] [Thread-67987 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:38:55.774 [DEBUG] [Thread-67987 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:38:55.774 [DEBUG] [Thread-67987 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:38:55.775 [DEBUG] [Thread-67987 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:38:55.781 [DEBUG] [Thread-67987 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:38:55.782 [DEBUG] [Thread-67987 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:38:55.782 [INFO] [Thread-67987 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98536767, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667100758112, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992844, telescope_ra=19.8020842, telescope_dec=-24.256383, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.82184, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7761820873093, telescope_dec_j2k=-24.3186105801116, observability=1)
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 15.280962705612183s
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:11.063 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:11.064 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:11.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8063436;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82609;2460996.98554473;13.65304139;1.3;_
2025-11-17T13:39:11.065 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.8063436;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82609;2460996.98554473;13.65304139;1.3;_
2025-11-17T13:39:11.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:11.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:11.065 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:11.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:11.066 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:11.066 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.8063436, teldec = -24.256382
2025-11-17T13:39:11.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8063436 -24.256382
2025-11-17T13:39:11.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8063436 -24.256382
2025-11-17T13:39:11.066 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8063436 -24.256382
2025-11-17T13:39:11.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8063436;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82609;2460996.98554476;13.65304139;1.3;_19.7804431992702 -24.3187534793825
2025-11-17T13:39:11.067 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.7804431992702     dec_j2k = -24.3187534793825
2025-11-17T13:39:11.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:11.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:11.067 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104666579302855;171.162362694745;_
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104666579302855;171.162362694745;_
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:11.068 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:11.069 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:11.070 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:11.070 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:11.070 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57799)
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:11.076 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:11.083 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:11.084 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98554473, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666579302855, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992844, telescope_ra=19.8063436, telescope_dec=-24.256382, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.82609, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7804431992702, telescope_dec_j2k=-24.3187534793825, observability=1)
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Status age = 2.411653518676758s
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:13.495 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 17;19.8070162;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82677;2460996.98557287;13.65371222;1.3;_
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response 17;19.8070162;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82677;2460996.98557287;13.65371222;1.3;_
2025-11-17T13:39:13.496 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:13.497 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:13.497 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:13.498 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:13.498 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:13.498 [INFO] [Thread-67988 (handle)] [driver.py] [get_status()] Telra = 19.8070162, teldec = -24.256382
2025-11-17T13:39:13.498 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8070162 -24.256382
2025-11-17T13:39:13.498 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8070162 -24.256382
2025-11-17T13:39:13.498 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8070162 -24.256382
2025-11-17T13:39:13.499 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 17;19.8070162;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82677;2460996.98557291;13.65371222;1.3;_19.7811160700003 -24.3187761954915
2025-11-17T13:39:13.499 [INFO] [Thread-67988 (handle)] [driver.py] [get_status()] ra_j2k = 19.7811160700003     dec_j2k = -24.3187761954915
2025-11-17T13:39:13.499 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:13.499 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:13.499 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 140;0.104666739750626;171.162351965909;_
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response 140;0.104666739750626;171.162351965909;_
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:13.500 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:13.501 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:13.502 [DEBUG] [Thread-67988 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:39:13.502 [DEBUG] [Thread-67988 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:39:13.502 [DEBUG] [Thread-67988 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:39:13.506 [DEBUG] [Thread-67988 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55859)
2025-11-17T13:39:13.506 [DEBUG] [Thread-67988 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:13.506 [DEBUG] [Thread-67988 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:13.506 [DEBUG] [Thread-67988 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:13.506 [DEBUG] [Thread-67988 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:13.507 [DEBUG] [Thread-67988 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:13.513 [DEBUG] [Thread-67988 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:13.514 [DEBUG] [Thread-67988 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:13.514 [INFO] [Thread-67988 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98557287, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666739750626, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992844, telescope_ra=19.8070162, telescope_dec=-24.256382, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.82677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7811160700003, telescope_dec_j2k=-24.3187761954915, observability=1)
2025-11-17T13:39:13.913 [DEBUG] [Thread-67989 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:13.913 [DEBUG] [Thread-67989 (handle)] [server.py] [get_status()] Status age = 0.3993344306945801s
2025-11-17T13:39:13.913 [DEBUG] [Thread-67989 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3993344306945801
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.4580142498016357s
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8074363;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82719;2460996.98558998;13.65413111;1.3;_
2025-11-17T13:39:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.8074363;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82719;2460996.98558998;13.65413111;1.3;_
2025-11-17T13:39:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:14.975 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.8074363, teldec = -24.256382
2025-11-17T13:39:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8074363 -24.256382
2025-11-17T13:39:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8074363 -24.256382
2025-11-17T13:39:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8074363 -24.256382
2025-11-17T13:39:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8074363;-24.256382;50.108288;89.992844;50.08601;90.12017;16.82719;2460996.98559;13.65413111;1.3;_19.7815363391546 -24.3187903828096
2025-11-17T13:39:14.976 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.7815363391546     dec_j2k = -24.3187903828096
2025-11-17T13:39:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:14.976 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104666699638684;171.162357330327;_
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104666699638684;171.162357330327;_
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:14.977 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:14.978 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57091)
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:14.985 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:14.992 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98558998, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666699638684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992844, telescope_ra=19.8074363, telescope_dec=-24.256382, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.82719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7815363391546, telescope_dec_j2k=-24.3187903828096, observability=1)
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:19.150 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:19.151 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:39:19.152 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:39:19.153 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.851708889007568s
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:30.844 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:30.845 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:30.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8118628;-24.256382;50.108288;89.992843;50.08601;90.12017;16.83161;2460996.98577367;13.65854556;1.3;_
2025-11-17T13:39:30.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8118628;-24.256382;50.108288;89.992843;50.08601;90.12017;16.83161;2460996.98577367;13.65854556;1.3;_
2025-11-17T13:39:30.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:30.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:30.846 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:30.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:30.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:30.847 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8118628, teldec = -24.256382
2025-11-17T13:39:30.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8118628 -24.256382
2025-11-17T13:39:30.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8118628 -24.256382
2025-11-17T13:39:30.847 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8118628 -24.256382
2025-11-17T13:39:30.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8118628;-24.256382;50.108288;89.992843;50.08601;90.12017;16.83161;2460996.9857737;13.65854556;1.3;_19.7859646242344 -24.3189398263901
2025-11-17T13:39:30.848 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.7859646242344     dec_j2k = -24.3189398263901
2025-11-17T13:39:30.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:30.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:30.848 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10466621829537;171.162362694745;_
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10466621829537;171.162362694745;_
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:30.849 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:30.850 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:30.851 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:30.851 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:30.851 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:30.855 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52679)
2025-11-17T13:39:30.855 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:30.855 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:30.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:30.856 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:30.856 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:30.863 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:39:30.863 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98577367, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466621829537, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108288, telescope_az=89.992843, telescope_ra=19.8118628, telescope_dec=-24.256382, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.83161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7859646242344, telescope_dec_j2k=-24.3189398263901, observability=1)
2025-11-17T13:39:30.863 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.052024602890015 seconds ago
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Status age = 1.1182119846343994s
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:31.981 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:31.982 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:31.983 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 17;19.8121712;-24.256382;50.108287;89.992843;50.08601;90.12017;16.83192;2460996.98578684;13.65885306;1.3;_
2025-11-17T13:39:31.983 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response 17;19.8121712;-24.256382;50.108287;89.992843;50.08601;90.12017;16.83192;2460996.98578684;13.65885306;1.3;_
2025-11-17T13:39:31.983 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:31.983 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:31.983 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:31.984 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:31.984 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:31.984 [INFO] [Thread-67990 (handle)] [driver.py] [get_status()] Telra = 19.8121712, teldec = -24.256382
2025-11-17T13:39:31.984 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8121712 -24.256382
2025-11-17T13:39:31.984 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8121712 -24.256382
2025-11-17T13:39:31.984 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8121712 -24.256382
2025-11-17T13:39:31.985 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 17;19.8121712;-24.256382;50.108287;89.992843;50.08601;90.12017;16.83192;2460996.98578686;13.65885306;1.3;_19.7862731487896 -24.3189502352507
2025-11-17T13:39:31.985 [INFO] [Thread-67990 (handle)] [driver.py] [get_status()] ra_j2k = 19.7862731487896     dec_j2k = -24.3189502352507
2025-11-17T13:39:31.985 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:31.985 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:31.985 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 140;0.104666378743141;171.162368059163;_
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response 140;0.104666378743141;171.162368059163;_
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:31.986 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:31.987 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:31.988 [DEBUG] [Thread-67990 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:31.988 [DEBUG] [Thread-67990 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:31.988 [DEBUG] [Thread-67990 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54681)
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:31.990 [DEBUG] [Thread-67990 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:31.997 [DEBUG] [Thread-67990 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:31.998 [DEBUG] [Thread-67990 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:31.998 [INFO] [Thread-67990 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98578684, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666378743141, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992843, telescope_ra=19.8121712, telescope_dec=-24.256382, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.83192, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7862731487896, telescope_dec_j2k=-24.3189502352507, observability=1)
2025-11-17T13:39:45.893 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:39:45
2025-11-17T13:39:45.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.8958899974823s
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:45.894 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:45.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8160467;-24.256381;50.108287;89.992843;50.08601;90.12017;16.8358;2460996.98594786;13.66271806;1.3;_
2025-11-17T13:39:45.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8160467;-24.256381;50.108287;89.992843;50.08601;90.12017;16.8358;2460996.98594786;13.66271806;1.3;_
2025-11-17T13:39:45.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:45.895 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:45.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:45.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:45.896 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:45.897 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8160467, teldec = -24.256381
2025-11-17T13:39:45.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8160467 -24.256381
2025-11-17T13:39:45.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8160467 -24.256381
2025-11-17T13:39:45.897 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8160467 -24.256381
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8160467;-24.256381;50.108287;89.992843;50.08601;90.12017;16.8358;2460996.98594789;13.66271806;1.3;_19.7901502162591 -24.3190800038805
2025-11-17T13:39:45.898 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.7901502162591     dec_j2k = -24.3190800038805
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104666779862569;171.162357330327;_
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104666779862569;171.162357330327;_
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:45.898 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:45.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:45.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:45.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:45.899 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:45.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:45.902 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33577)
2025-11-17T13:39:45.902 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:45.902 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:45.902 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:45.903 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:45.903 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:45.910 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:45.910 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98594786, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666779862569, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992843, telescope_ra=19.8160467, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.8358, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7901502162591, telescope_dec_j2k=-24.3190800038805, observability=1)
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Status age = 4.164480686187744s
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:50.075 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:50.076 [DEBUG] [Thread-67991 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:50.076 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:39:50.076 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:39:50.076 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:39:50.076 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:39:50.077 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 17;19.8172138;-24.256381;50.108287;89.992843;50.08601;90.12017;16.83696;2460996.98599626;13.66388194;1.3;_
2025-11-17T13:39:50.077 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response 17;19.8172138;-24.256381;50.108287;89.992843;50.08601;90.12017;16.83696;2460996.98599626;13.66388194;1.3;_
2025-11-17T13:39:50.077 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:39:50.077 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:39:50.077 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:39:50.078 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:50.078 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:39:50.078 [INFO] [Thread-67991 (handle)] [driver.py] [get_status()] Telra = 19.8172138, teldec = -24.256381
2025-11-17T13:39:50.078 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8172138 -24.256381
2025-11-17T13:39:50.078 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8172138 -24.256381
2025-11-17T13:39:50.078 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8172138 -24.256381
2025-11-17T13:39:50.079 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 17;19.8172138;-24.256381;50.108287;89.992843;50.08601;90.12017;16.83696;2460996.98599628;13.66388194;1.3;_19.7913177889962 -24.3191193722013
2025-11-17T13:39:50.079 [INFO] [Thread-67991 (handle)] [driver.py] [get_status()] ra_j2k = 19.7913177889962     dec_j2k = -24.3191193722013
2025-11-17T13:39:50.079 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:39:50.079 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:39:50.079 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 140;0.104666458967027;171.162351965909;_
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response 140;0.104666458967027;171.162351965909;_
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:50.080 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:39:50.081 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:39:50.082 [DEBUG] [Thread-67991 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:50.082 [DEBUG] [Thread-67991 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:39:50.082 [DEBUG] [Thread-67991 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39461)
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:39:50.086 [DEBUG] [Thread-67991 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:39:50.094 [DEBUG] [Thread-67991 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:39:50.094 [INFO] [Thread-67991 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98599626, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666458967027, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992843, telescope_ra=19.8172138, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.83696, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:38:53.124422', telescope_ra_j2k=19.7913177889962, telescope_dec_j2k=-24.3191193722013, observability=1)
2025-11-17T13:39:53.267 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:53.267 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:53.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:53.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:53.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:53.268 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:39:53.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:39:53.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:39:53.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:39:53.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:39:53.269 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:39:53.269 [INFO] [ThreadPoolExecutor-2857_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:39:53.269 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Status age = 18.048819541931152s
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:08.143 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:08.144 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:08.144 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:08.144 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:08.145 [DEBUG] [Thread-67992 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:08.145 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:08.145 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:08.145 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:08.145 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:08.146 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 17;19.8222598;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84201;2460996.98620538;13.66891417;1.3;_
2025-11-17T13:40:08.146 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response 17;19.8222598;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84201;2460996.98620538;13.66891417;1.3;_
2025-11-17T13:40:08.146 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:08.146 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:08.146 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:08.147 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:08.147 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:08.147 [INFO] [Thread-67992 (handle)] [driver.py] [get_status()] Telra = 19.8222598, teldec = -24.256381
2025-11-17T13:40:08.147 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8222598 -24.256381
2025-11-17T13:40:08.147 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8222598 -24.256381
2025-11-17T13:40:08.147 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8222598 -24.256381
2025-11-17T13:40:08.148 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 17;19.8222598;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84201;2460996.98620542;13.66891417;1.3;_19.7963658368914 -24.3192895164406
2025-11-17T13:40:08.148 [INFO] [Thread-67992 (handle)] [driver.py] [get_status()] ra_j2k = 19.7963658368914     dec_j2k = -24.3192895164406
2025-11-17T13:40:08.148 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:08.148 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:08.148 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 140;0.104667702437254;171.162351965909;_
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response 140;0.104667702437254;171.162351965909;_
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:08.149 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:08.150 [DEBUG] [Thread-67992 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55241)
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:08.156 [DEBUG] [Thread-67992 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:08.164 [DEBUG] [Thread-67992 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:08.164 [INFO] [Thread-67992 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98620538, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667702437254, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992842, telescope_ra=19.8222598, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.7963658368914, telescope_dec_j2k=-24.3192895164406, observability=1)
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.0115199089050293s
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:10.176 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:10.177 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:10.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8228194;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84257;2460996.98622891;13.66947222;1.3;_
2025-11-17T13:40:10.178 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.8228194;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84257;2460996.98622891;13.66947222;1.3;_
2025-11-17T13:40:10.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:10.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:10.178 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:10.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:10.179 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:10.179 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.8228194, teldec = -24.256381
2025-11-17T13:40:10.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8228194 -24.256381
2025-11-17T13:40:10.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8228194 -24.256381
2025-11-17T13:40:10.179 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8228194 -24.256381
2025-11-17T13:40:10.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8228194;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84257;2460996.98622894;13.66947222;1.3;_19.7969256644024 -24.3193083787624
2025-11-17T13:40:10.180 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.7969256644024     dec_j2k = -24.3193083787624
2025-11-17T13:40:10.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:10.180 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:10.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:10.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104666699638684;171.162346601491;_
2025-11-17T13:40:10.181 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104666699638684;171.162346601491;_
2025-11-17T13:40:10.181 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:10.181 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:10.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:10.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:10.182 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:10.183 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:10.183 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:10.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:10.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:10.183 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:10.184 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:10.184 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:10.184 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33867)
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:10.191 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:10.198 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:10.198 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98622891, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666699638684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992842, telescope_ra=19.8228194, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84257, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.7969256644024, telescope_dec_j2k=-24.3193083787624, observability=1)
2025-11-17T13:40:13.547 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:13.547 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Status age = 3.349133014678955s
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:13.548 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 17;19.8237625;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84351;2460996.98626793;13.67041278;1.3;_
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response 17;19.8237625;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84351;2460996.98626793;13.67041278;1.3;_
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:13.549 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:13.550 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:13.550 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:13.550 [INFO] [Thread-67993 (handle)] [driver.py] [get_status()] Telra = 19.8237625, teldec = -24.256381
2025-11-17T13:40:13.550 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8237625 -24.256381
2025-11-17T13:40:13.550 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8237625 -24.256381
2025-11-17T13:40:13.550 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8237625 -24.256381
2025-11-17T13:40:13.551 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 17;19.8237625;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84351;2460996.98626795;13.67041278;1.3;_19.7978691480098 -24.3193401646422
2025-11-17T13:40:13.551 [INFO] [Thread-67993 (handle)] [driver.py] [get_status()] ra_j2k = 19.7978691480098     dec_j2k = -24.3193401646422
2025-11-17T13:40:13.551 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:13.551 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:13.551 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 140;0.104666739750626;171.162351965909;_
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response 140;0.104666739750626;171.162351965909;_
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:13.552 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:13.553 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:13.554 [DEBUG] [Thread-67993 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:13.554 [DEBUG] [Thread-67993 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:13.554 [DEBUG] [Thread-67993 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41059)
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:13.556 [DEBUG] [Thread-67993 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:13.563 [DEBUG] [Thread-67993 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:13.563 [INFO] [Thread-67993 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98626793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104666739750626, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992842, telescope_ra=19.8237625, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84351, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.7978691480098, telescope_dec_j2k=-24.3193401646422, observability=1)
2025-11-17T13:40:14.153 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.153 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.153 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:14.153 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:14.153 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:40:14.154 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:14.155 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.156 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:14.157 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:14.157 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:14.157 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.157 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:14.157 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:40:14.158 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.159 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.159 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.159 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:14.159 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:14.159 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Park
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:40:14.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 29;19.8239308;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84368;2460996.986275;13.67058056;1.3;_Park Command Successful
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.4340505599975586s
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.824155;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84391;2460996.98628471;13.67080417;1.3;_
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.824155;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84391;2460996.98628471;13.67080417;1.3;_
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:14.999 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.824155, teldec = -24.256381
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.824155 -24.256381
2025-11-17T13:40:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.824155 -24.256381
2025-11-17T13:40:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.824155 -24.256381
2025-11-17T13:40:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.824155;-24.256381;50.108287;89.992842;50.08601;90.12017;16.84391;2460996.98628472;13.67080417;1.3;_19.7982618077266 -24.3193533922021
2025-11-17T13:40:15.000 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.7982618077266     dec_j2k = -24.3193533922021
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162346601491;_
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162346601491;_
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32875)
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:15.014 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98628471, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992842, telescope_ra=19.824155, telescope_dec=-24.256381, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84391, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.7982618077266, telescope_dec_j2k=-24.3193533922021, observability=1)
2025-11-17T13:40:15.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:40:15.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:40:15.160 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:40:15.161 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:40:15.161 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:40:16.161 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:40:16.161 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:40:16.161 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:40:16.162 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:40:16.162 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:40:17.162 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:40:17.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:40:17.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:40:17.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:40:17.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:40:18.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:40:18.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:40:18.163 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:40:18.164 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:18.165 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:40:18.166 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:40:18.167 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:19.167 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:19.167 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:19.167 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:19.167 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:19.167 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:40:19.168 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:40:19.169 [DEBUG] [ThreadPoolExecutor-2856_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:19.169 [INFO] [ThreadPoolExecutor-2856_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Status age = 11.193334579467773s
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:26.207 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:26.208 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:26.208 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 17;19.8272741;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84703;2460996.98641444;13.67391472;1.3;_
2025-11-17T13:40:26.208 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response 17;19.8272741;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84703;2460996.98641444;13.67391472;1.3;_
2025-11-17T13:40:26.208 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:26.209 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:26.209 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:26.209 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:26.209 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:26.210 [INFO] [Thread-67994 (handle)] [driver.py] [get_status()] Telra = 19.8272741, teldec = -24.25638
2025-11-17T13:40:26.210 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8272741 -24.25638
2025-11-17T13:40:26.210 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8272741 -24.25638
2025-11-17T13:40:26.210 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8272741 -24.25638
2025-11-17T13:40:26.211 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 17;19.8272741;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84703;2460996.98641448;13.67391472;1.3;_19.8013821785327 -24.3194574852299
2025-11-17T13:40:26.211 [INFO] [Thread-67994 (handle)] [driver.py] [get_status()] ra_j2k = 19.8013821785327     dec_j2k = -24.3194574852299
2025-11-17T13:40:26.211 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:26.211 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:26.211 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:26.212 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:26.213 [DEBUG] [Thread-67994 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:26.213 [DEBUG] [Thread-67994 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:26.213 [DEBUG] [Thread-67994 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58177)
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:26.218 [DEBUG] [Thread-67994 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:26.225 [DEBUG] [Thread-67994 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:26.226 [DEBUG] [Thread-67994 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:26.226 [DEBUG] [Thread-67994 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:26.226 [INFO] [Thread-67994 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98641444, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668063444739, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992841, telescope_ra=19.8272741, telescope_dec=-24.25638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84703, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.8013821785327, telescope_dec_j2k=-24.3194574852299, observability=1)
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.697093963623047s
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:30.923 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8285807;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84833;2460996.98646903;13.67521778;1.3;_
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8285807;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84833;2460996.98646903;13.67521778;1.3;_
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:30.924 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:30.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:30.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:30.925 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:30.925 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8285807, teldec = -24.25638
2025-11-17T13:40:30.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8285807 -24.25638
2025-11-17T13:40:30.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8285807 -24.25638
2025-11-17T13:40:30.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8285807 -24.25638
2025-11-17T13:40:30.926 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8285807;-24.25638;50.108287;89.992841;50.08601;90.12017;16.84833;2460996.98646905;13.67521778;1.3;_19.8026893115384 -24.3195014967096
2025-11-17T13:40:30.927 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.8026893115384     dec_j2k = -24.3195014967096
2025-11-17T13:40:30.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:30.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:30.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:30.927 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667862885025;171.162351965909;_
2025-11-17T13:40:30.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667862885025;171.162351965909;_
2025-11-17T13:40:30.928 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:30.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:30.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:30.928 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:30.929 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:30.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:30.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:30.930 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42117)
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:30.934 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:30.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:40:30.942 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98646903, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667862885025, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992841, telescope_ra=19.8285807, telescope_dec=-24.25638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.84833, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.8026893115384, telescope_dec_j2k=-24.3195014967096, observability=1)
2025-11-17T13:40:30.943 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.049150466918945 seconds ago
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Status age = 13.377330780029297s
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:44.320 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:44.321 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:44.322 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 17;19.8323198;-24.25638;50.108287;89.992841;50.08601;90.12017;16.85207;2460996.9866241;13.67894667;1.3;_
2025-11-17T13:40:44.323 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response 17;19.8323198;-24.25638;50.108287;89.992841;50.08601;90.12017;16.85207;2460996.9866241;13.67894667;1.3;_
2025-11-17T13:40:44.323 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:44.323 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:44.323 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:44.324 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:44.324 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:44.324 [INFO] [Thread-67995 (handle)] [driver.py] [get_status()] Telra = 19.8323198, teldec = -24.25638
2025-11-17T13:40:44.324 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8323198 -24.25638
2025-11-17T13:40:44.324 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8323198 -24.25638
2025-11-17T13:40:44.324 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8323198 -24.25638
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 17;19.8323198;-24.25638;50.108287;89.992841;50.08601;90.12017;16.85207;2460996.98662413;13.67894667;1.3;_19.8064299392454 -24.3196274044088
2025-11-17T13:40:44.325 [INFO] [Thread-67995 (handle)] [driver.py] [get_status()] ra_j2k = 19.8064299392454     dec_j2k = -24.3196274044088
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 140;0.104667541989483;171.162362694745;_
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response 140;0.104667541989483;171.162362694745;_
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:44.325 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:40:44.327 [DEBUG] [Thread-67995 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43461)
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:44.331 [DEBUG] [Thread-67995 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:44.338 [DEBUG] [Thread-67995 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:44.338 [DEBUG] [Thread-67995 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:44.338 [DEBUG] [Thread-67995 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:44.339 [DEBUG] [Thread-67995 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:44.339 [INFO] [Thread-67995 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9866241, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667541989483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108287, telescope_az=89.992841, telescope_ra=19.8323198, telescope_dec=-24.25638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.85207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.8064299392454, telescope_dec_j2k=-24.3196274044088, observability=1)
2025-11-17T13:40:45.971 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:40:45
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.6320443153381348s
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:45.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:40:45.972 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:40:45.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8327875;-24.25638;50.108286;89.992841;50.08601;90.12017;16.85254;2460996.98664321;13.67941306;1.3;_
2025-11-17T13:40:45.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8327875;-24.25638;50.108286;89.992841;50.08601;90.12017;16.85254;2460996.98664321;13.67941306;1.3;_
2025-11-17T13:40:45.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:40:45.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:40:45.973 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:40:45.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:45.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:40:45.974 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8327875, teldec = -24.25638
2025-11-17T13:40:45.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8327875 -24.25638
2025-11-17T13:40:45.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8327875 -24.25638
2025-11-17T13:40:45.974 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8327875 -24.25638
2025-11-17T13:40:45.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8327875;-24.25638;50.108286;89.992841;50.08601;90.12017;16.85254;2460996.98664323;13.67941306;1.3;_19.8068978305871 -24.3196431492137
2025-11-17T13:40:45.975 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8068978305871     dec_j2k = -24.3196431492137
2025-11-17T13:40:45.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:40:45.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:40:45.975 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667261205883;171.162357330327;_
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667261205883;171.162357330327;_
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:45.976 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:40:45.977 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:40:45.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:45.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:40:45.978 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:40:45.979 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48685)
2025-11-17T13:40:45.979 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:45.980 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:45.980 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:40:45.980 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:45.980 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:40:45.987 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:40:45.987 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98664321, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667261205883, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.992841, telescope_ra=19.8327875, telescope_dec=-24.25638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.85254, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:39:53.266639', telescope_ra_j2k=19.8068978305871, telescope_dec_j2k=-24.3196431492137, observability=1)
2025-11-17T13:40:53.409 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:53.409 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:53.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:53.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:53.409 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:53.410 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:53.410 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:53.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:53.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:53.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:53.411 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:40:53.411 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:53.411 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:40:53.412 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:40:53.413 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:54.413 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:54.413 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:54.414 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:54.414 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:54.414 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:40:54.415 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:40:54.416 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:40:54.417 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:40:54.417 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:40:54.417 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:40:54.417 [DEBUG] [ThreadPoolExecutor-2858_0] [payload.py] [to_registers()] [0]
2025-11-17T13:40:54.423 [DEBUG] [ThreadPoolExecutor-2858_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39725)
2025-11-17T13:40:54.423 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:40:54.423 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:40:54.423 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:40:54.423 [DEBUG] [ThreadPoolExecutor-2858_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:40:54.424 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:40:54.431 [DEBUG] [ThreadPoolExecutor-2858_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:02.378 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:02.378 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Status age = 16.391456127166748s
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:02.379 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:02.380 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 17;19.8373628;-24.25638;50.108286;89.99284;50.08601;90.12017;16.85711;2460996.9868331;13.68397583;1.3;_
2025-11-17T13:41:02.380 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response 17;19.8373628;-24.25638;50.108286;89.99284;50.08601;90.12017;16.85711;2460996.9868331;13.68397583;1.3;_
2025-11-17T13:41:02.380 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:02.380 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:02.380 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:02.381 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:02.381 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:02.381 [INFO] [Thread-67996 (handle)] [driver.py] [get_status()] Telra = 19.8373628, teldec = -24.25638
2025-11-17T13:41:02.381 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8373628 -24.25638
2025-11-17T13:41:02.381 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8373628 -24.25638
2025-11-17T13:41:02.381 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8373628 -24.25638
2025-11-17T13:41:02.382 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 17;19.8373628;-24.25638;50.108286;89.99284;50.08601;90.12017;16.85711;2460996.98683312;13.68397583;1.3;_19.8114750053347 -24.3197971244984
2025-11-17T13:41:02.382 [INFO] [Thread-67996 (handle)] [driver.py] [get_status()] ra_j2k = 19.8114750053347     dec_j2k = -24.3197971244984
2025-11-17T13:41:02.382 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:02.382 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:02.383 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:02.383 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 140;0.104668304116396;171.162362694745;_
2025-11-17T13:41:02.383 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response 140;0.104668304116396;171.162362694745;_
2025-11-17T13:41:02.384 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:02.384 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:02.384 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:02.384 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:02.384 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:02.385 [DEBUG] [Thread-67996 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:02.386 [DEBUG] [Thread-67996 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48875)
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:02.389 [DEBUG] [Thread-67996 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:02.396 [DEBUG] [Thread-67996 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:02.396 [INFO] [Thread-67996 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9868331, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668304116396, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.99284, telescope_ra=19.8373628, telescope_dec=-24.25638, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.85711, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8114750053347, telescope_dec_j2k=-24.3197971244984, observability=1)
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.924952030181885s
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:09.321 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:09.322 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:09.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8392863;-24.256379;50.108286;89.99284;50.08601;90.12017;16.85904;2460996.98691346;13.68589417;1.3;_
2025-11-17T13:41:09.323 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.8392863;-24.256379;50.108286;89.99284;50.08601;90.12017;16.85904;2460996.98691346;13.68589417;1.3;_
2025-11-17T13:41:09.323 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:09.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:09.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:09.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:09.325 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:09.325 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.8392863, teldec = -24.256379
2025-11-17T13:41:09.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8392863 -24.256379
2025-11-17T13:41:09.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8392863 -24.256379
2025-11-17T13:41:09.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8392863 -24.256379
2025-11-17T13:41:09.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8392863;-24.256379;50.108286;89.99284;50.08601;90.12017;16.85904;2460996.9869135;13.68589417;1.3;_19.8133992952678 -24.3198608306385
2025-11-17T13:41:09.326 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.8133992952678     dec_j2k = -24.3198608306385
2025-11-17T13:41:09.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:09.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:09.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104667822773082;171.162351965909;_
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104667822773082;171.162351965909;_
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:09.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:09.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:09.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:09.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:09.329 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47007)
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:09.336 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:09.344 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:09.344 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98691346, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667822773082, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.99284, telescope_ra=19.8392863, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.85904, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8133992952678, telescope_dec_j2k=-24.3198608306385, observability=1)
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Status age = 4.24791145324707s
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:13.592 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:13.593 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 17;19.8404835;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86023;2460996.98696289;13.68708806;1.3;_
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response 17;19.8404835;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86023;2460996.98696289;13.68708806;1.3;_
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:13.594 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:13.595 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:13.595 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:13.595 [INFO] [Thread-67997 (handle)] [driver.py] [get_status()] Telra = 19.8404835, teldec = -24.256379
2025-11-17T13:41:13.595 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8404835 -24.256379
2025-11-17T13:41:13.595 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8404835 -24.256379
2025-11-17T13:41:13.596 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8404835 -24.256379
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 17;19.8404835;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86023;2460996.98696292;13.68708806;1.3;_19.8145969872911 -24.31990109617
2025-11-17T13:41:13.597 [INFO] [Thread-67997 (handle)] [driver.py] [get_status()] ra_j2k = 19.8145969872911     dec_j2k = -24.31990109617
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162357330327;_
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162357330327;_
2025-11-17T13:41:13.597 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:13.598 [DEBUG] [Thread-67997 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:13.599 [DEBUG] [Thread-67997 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52661)
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:13.605 [DEBUG] [Thread-67997 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:13.613 [DEBUG] [Thread-67997 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:13.613 [INFO] [Thread-67997 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98696289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.99284, telescope_ra=19.8404835, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86023, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8145969872911, telescope_dec_j2k=-24.31990109617, observability=1)
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3546905517578125s
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:14.968 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8408665;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86062;2460996.98697881;13.68747;1.3;_
2025-11-17T13:41:14.969 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.8408665;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86062;2460996.98697881;13.68747;1.3;_
2025-11-17T13:41:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:14.970 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:14.971 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.8408665, teldec = -24.256379
2025-11-17T13:41:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8408665 -24.256379
2025-11-17T13:41:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8408665 -24.256379
2025-11-17T13:41:14.971 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8408665 -24.256379
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8408665;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86062;2460996.98697884;13.68747;1.3;_19.8149801447729 -24.3199139763501
2025-11-17T13:41:14.972 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.8149801447729     dec_j2k = -24.3199139763501
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104667261205883;171.162362694745;_
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104667261205883;171.162362694745;_
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:14.972 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:14.973 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:14.974 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:14.975 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34279)
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:14.979 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:14.988 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:14.988 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98697881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667261205883, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.99284, telescope_ra=19.8408665, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8149801447729, telescope_dec_j2k=-24.3199139763501, observability=1)
2025-11-17T13:41:19.431 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:19.431 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:19.431 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:19.431 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:19.431 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:19.432 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:41:19.433 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:41:19.434 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Status age = 5.4650843143463135s
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:20.453 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:20.454 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:20.455 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:20.456 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 17;19.8423982;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86215;2460996.98704231;13.6889975;1.3;_
2025-11-17T13:41:20.456 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response 17;19.8423982;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86215;2460996.98704231;13.6889975;1.3;_
2025-11-17T13:41:20.456 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:20.456 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:20.456 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:20.457 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:20.457 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:20.457 [INFO] [Thread-67998 (handle)] [driver.py] [get_status()] Telra = 19.8423982, teldec = -24.256379
2025-11-17T13:41:20.457 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8423982 -24.256379
2025-11-17T13:41:20.457 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8423982 -24.256379
2025-11-17T13:41:20.457 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8423982 -24.256379
2025-11-17T13:41:20.458 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 17;19.8423982;-24.256379;50.108286;89.99284;50.08601;90.12017;16.86215;2460996.98704234;13.6889975;1.3;_19.8165124749496 -24.3199654807163
2025-11-17T13:41:20.458 [INFO] [Thread-67998 (handle)] [driver.py] [get_status()] ra_j2k = 19.8165124749496     dec_j2k = -24.3199654807163
2025-11-17T13:41:20.458 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:20.458 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:20.458 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:20.459 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:20.460 [DEBUG] [Thread-67998 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42645)
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:20.465 [DEBUG] [Thread-67998 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:20.472 [DEBUG] [Thread-67998 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:20.472 [INFO] [Thread-67998 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98704231, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667983220853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.99284, telescope_ra=19.8423982, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86215, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8165124749496, telescope_dec_j2k=-24.3199654807163, observability=1)
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.530290603637695s
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:31.003 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:31.004 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:31.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8453315;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86508;2460996.98716441;13.69192278;1.3;_
2025-11-17T13:41:31.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8453315;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86508;2460996.98716441;13.69192278;1.3;_
2025-11-17T13:41:31.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:31.005 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:31.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:31.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:31.006 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:31.007 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8453315, teldec = -24.256379
2025-11-17T13:41:31.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8453315 -24.256379
2025-11-17T13:41:31.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8453315 -24.256379
2025-11-17T13:41:31.007 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8453315 -24.256379
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8453315;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86508;2460996.98716444;13.69192278;1.3;_19.819446983443 -24.3200640867513
2025-11-17T13:41:31.008 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.819446983443     dec_j2k = -24.3200640867513
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667541989483;171.162362694745;_
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667541989483;171.162362694745;_
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:31.008 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:31.009 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:31.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:31.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:31.010 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42947)
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:31.012 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:31.019 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:31.019 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:31.019 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:31.020 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:41:31.020 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98716441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667541989483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.992839, telescope_ra=19.8453315, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86508, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.819446983443, telescope_dec_j2k=-24.3200640867513, observability=1)
2025-11-17T13:41:31.020 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.049155712127686 seconds ago
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Status age = 7.564133882522583s
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:38.584 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:38.585 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:38.585 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:38.586 [DEBUG] [Thread-67999 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:38.586 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:38.586 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:38.586 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:38.586 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:38.587 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 17;19.847442;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86719;2460996.98725216;13.6940275;1.3;_
2025-11-17T13:41:38.587 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response 17;19.847442;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86719;2460996.98725216;13.6940275;1.3;_
2025-11-17T13:41:38.587 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:38.587 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:38.587 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:38.588 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:38.588 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:38.588 [INFO] [Thread-67999 (handle)] [driver.py] [get_status()] Telra = 19.847442, teldec = -24.256379
2025-11-17T13:41:38.588 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] UnCookCoordinates 19.847442 -24.256379
2025-11-17T13:41:38.588 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.847442 -24.256379
2025-11-17T13:41:38.588 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.847442 -24.256379
2025-11-17T13:41:38.589 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 17;19.847442;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86719;2460996.98725219;13.6940275;1.3;_19.8215583543039 -24.3201350106918
2025-11-17T13:41:38.589 [INFO] [Thread-67999 (handle)] [driver.py] [get_status()] ra_j2k = 19.8215583543039     dec_j2k = -24.3201350106918
2025-11-17T13:41:38.589 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:38.589 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:38.589 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 140;0.104667822773082;171.162362694745;_
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response 140;0.104667822773082;171.162362694745;_
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:38.590 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:38.591 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:38.592 [DEBUG] [Thread-67999 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:38.592 [DEBUG] [Thread-67999 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:38.592 [DEBUG] [Thread-67999 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43121)
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:38.598 [DEBUG] [Thread-67999 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:38.605 [DEBUG] [Thread-67999 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:38.606 [DEBUG] [Thread-67999 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:38.606 [DEBUG] [Thread-67999 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:38.606 [DEBUG] [Thread-67999 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:38.606 [INFO] [Thread-67999 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98725216, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667822773082, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.992839, telescope_ra=19.847442, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8215583543039, telescope_dec_j2k=-24.3201350106918, observability=1)
2025-11-17T13:41:46.048 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:41:46
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.442444562911987s
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:46.048 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:46.049 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:46.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8495059;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86926;2460996.98733854;13.69608583;1.3;_
2025-11-17T13:41:46.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8495059;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86926;2460996.98733854;13.69608583;1.3;_
2025-11-17T13:41:46.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:46.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:46.050 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:46.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:46.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:46.051 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8495059, teldec = -24.256379
2025-11-17T13:41:46.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8495059 -24.256379
2025-11-17T13:41:46.051 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8495059 -24.256379
2025-11-17T13:41:46.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8495059 -24.256379
2025-11-17T13:41:46.052 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8495059;-24.256379;50.108286;89.992839;50.08601;90.12017;16.86928;2460996.98733856;13.69611361;1.3;_19.8236231070316 -24.3202043501596
2025-11-17T13:41:46.053 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8236231070316     dec_j2k = -24.3202043501596
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667662325311;171.162351965909;_
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667662325311;171.162351965909;_
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:46.053 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:46.054 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:46.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:46.055 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:46.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:41:46.056 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43505)
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:46.058 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:46.065 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:46.066 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:46.066 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98733854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667662325311, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.992839, telescope_ra=19.8495059, telescope_dec=-24.256379, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.86926, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:40:53.409134', telescope_ra_j2k=19.8236231070316, telescope_dec_j2k=-24.3202043501596, observability=1)
2025-11-17T13:41:53.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:53.564 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:53.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:53.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:53.564 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:53.565 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:53.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:53.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:53.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:53.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:53.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:53.566 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:41:53.567 [INFO] [ThreadPoolExecutor-2859_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:41:53.567 [INFO] [ThreadPoolExecutor-2859_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Status age = 10.577214241027832s
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:41:56.643 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:41:56.644 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:41:56.645 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 17;19.8524654;-24.256378;50.108286;89.992839;50.08601;90.12017;16.87222;2460996.98746117;13.69903722;1.3;_
2025-11-17T13:41:56.645 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response 17;19.8524654;-24.256378;50.108286;89.992839;50.08601;90.12017;16.87222;2460996.98746117;13.69903722;1.3;_
2025-11-17T13:41:56.645 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:41:56.645 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:41:56.645 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:41:56.646 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:56.646 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:41:56.646 [INFO] [Thread-68000 (handle)] [driver.py] [get_status()] Telra = 19.8524654, teldec = -24.256378
2025-11-17T13:41:56.646 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8524654 -24.256378
2025-11-17T13:41:56.646 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8524654 -24.256378
2025-11-17T13:41:56.646 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8524654 -24.256378
2025-11-17T13:41:56.647 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 17;19.8524654;-24.256378;50.108286;89.992839;50.08601;90.12017;16.87222;2460996.98746119;13.69903722;1.3;_19.8265838318576 -24.3203027466846
2025-11-17T13:41:56.647 [INFO] [Thread-68000 (handle)] [driver.py] [get_status()] ra_j2k = 19.8265838318576     dec_j2k = -24.3203027466846
2025-11-17T13:41:56.647 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:41:56.647 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:41:56.647 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162368059163;_
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162368059163;_
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:56.648 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:41:56.649 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:41:56.650 [DEBUG] [Thread-68000 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:56.650 [DEBUG] [Thread-68000 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:41:56.650 [DEBUG] [Thread-68000 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:41:56.651 [DEBUG] [Thread-68000 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46675)
2025-11-17T13:41:56.652 [DEBUG] [Thread-68000 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:41:56.652 [DEBUG] [Thread-68000 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:41:56.652 [DEBUG] [Thread-68000 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:41:56.652 [DEBUG] [Thread-68000 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:41:56.652 [DEBUG] [Thread-68000 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:41:56.659 [DEBUG] [Thread-68000 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:41:56.659 [INFO] [Thread-68000 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98746117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108286, telescope_az=89.992839, telescope_ra=19.8524654, telescope_dec=-24.256378, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.87222, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8265838318576, telescope_dec_j2k=-24.3203027466846, observability=1)
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.78017282485962s
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:08.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:08.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.855746;-24.256378;50.108285;89.992838;50.08601;90.12017;16.8755;2460996.9875977;13.70230889;1.3;_
2025-11-17T13:42:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.855746;-24.256378;50.108285;89.992838;50.08601;90.12017;16.8755;2460996.9875977;13.70230889;1.3;_
2025-11-17T13:42:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:08.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:08.442 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.855746, teldec = -24.256378
2025-11-17T13:42:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.855746 -24.256378
2025-11-17T13:42:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.855746 -24.256378
2025-11-17T13:42:08.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.855746 -24.256378
2025-11-17T13:42:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.855746;-24.256378;50.108285;89.992838;50.08601;90.12017;16.8755;2460996.98759772;13.70230889;1.3;_19.829865791977 -24.3204128834404
2025-11-17T13:42:08.443 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.829865791977     dec_j2k = -24.3204128834404
2025-11-17T13:42:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:08.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:08.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:08.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:08.446 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49811)
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:08.451 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:08.458 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:08.458 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9875977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992838, telescope_ra=19.855746, telescope_dec=-24.256378, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.8755, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.829865791977, telescope_dec_j2k=-24.3204128834404, observability=1)
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Status age = 5.187725782394409s
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:13.646 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:13.647 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:13.648 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 17;19.8572022;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87695;2460996.98765796;13.70376111;1.3;_
2025-11-17T13:42:13.648 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response 17;19.8572022;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87695;2460996.98765796;13.70376111;1.3;_
2025-11-17T13:42:13.648 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:13.648 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:13.648 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:13.649 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:13.649 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:13.649 [INFO] [Thread-68001 (handle)] [driver.py] [get_status()] Telra = 19.8572022, teldec = -24.256378
2025-11-17T13:42:13.649 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8572022 -24.256378
2025-11-17T13:42:13.649 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8572022 -24.256378
2025-11-17T13:42:13.649 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8572022 -24.256378
2025-11-17T13:42:13.650 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 17;19.8572022;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87695;2460996.98765799;13.70376111;1.3;_19.831322596586 -24.3204617563416
2025-11-17T13:42:13.650 [INFO] [Thread-68001 (handle)] [driver.py] [get_status()] ra_j2k = 19.831322596586     dec_j2k = -24.3204617563416
2025-11-17T13:42:13.650 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:13.650 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:13.650 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 140;0.104668384340281;171.162351965909;_
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response 140;0.104668384340281;171.162351965909;_
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:13.651 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:13.652 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:13.653 [DEBUG] [Thread-68001 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:13.653 [DEBUG] [Thread-68001 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:13.653 [DEBUG] [Thread-68001 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47657)
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:13.654 [DEBUG] [Thread-68001 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:13.662 [DEBUG] [Thread-68001 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:13.662 [INFO] [Thread-68001 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98765796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668384340281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992838, telescope_ra=19.8572022, telescope_dec=-24.256378, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.87695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.831322596586, telescope_dec_j2k=-24.3204617563416, observability=1)
2025-11-17T13:42:14.434 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.434 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:42:14.435 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:14.436 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:14.437 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:42:14.438 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:42:14.439 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:42:14.439 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.439 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.439 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.439 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:14.440 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:14.440 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:14.440 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Park
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:42:14.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 29;19.8574259;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87718;2460996.98766714;13.70398417;1.3;_Park Command Successful
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Status age = 1.056213617324829s
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:14.718 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:14.719 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:14.720 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 17;19.8575097;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87726;2460996.98767037;13.70406778;1.3;_
2025-11-17T13:42:14.720 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response 17;19.8575097;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87726;2460996.98767037;13.70406778;1.3;_
2025-11-17T13:42:14.720 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:14.720 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:14.720 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:14.721 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:14.721 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:14.721 [INFO] [Thread-68002 (handle)] [driver.py] [get_status()] Telra = 19.8575097, teldec = -24.256378
2025-11-17T13:42:14.721 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8575097 -24.256378
2025-11-17T13:42:14.721 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8575097 -24.256378
2025-11-17T13:42:14.722 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8575097 -24.256378
2025-11-17T13:42:14.722 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 17;19.8575097;-24.256378;50.108285;89.992838;50.08601;90.12017;16.87726;2460996.98767039;13.70406778;1.3;_19.8316302243278 -24.3204720754708
2025-11-17T13:42:14.723 [INFO] [Thread-68002 (handle)] [driver.py] [get_status()] ra_j2k = 19.8316302243278     dec_j2k = -24.3204720754708
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:42:14.723 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:14.724 [DEBUG] [Thread-68002 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:14.725 [DEBUG] [Thread-68002 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:14.725 [DEBUG] [Thread-68002 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41265)
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:14.728 [DEBUG] [Thread-68002 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:14.736 [DEBUG] [Thread-68002 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:14.736 [INFO] [Thread-68002 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98767037, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992838, telescope_ra=19.8575097, telescope_dec=-24.256378, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.87726, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8316302243278, telescope_dec_j2k=-24.3204720754708, observability=1)
2025-11-17T13:42:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.24027109146118164s
2025-11-17T13:42:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.24027109146118164
2025-11-17T13:42:15.441 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:42:15.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:42:15.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:42:15.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:42:15.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:42:16.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:42:16.442 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:42:16.443 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:42:16.443 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:42:16.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:42:17.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:42:17.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:42:17.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:42:17.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:42:17.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:42:18.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:42:18.444 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:42:18.445 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:42:18.445 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:42:18.445 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:42:18.445 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:18.445 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:18.446 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:18.446 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:18.446 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:18.446 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:18.446 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:42:18.447 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:42:18.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:42:19.448 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:42:19.449 [DEBUG] [ThreadPoolExecutor-2858_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:19.449 [INFO] [ThreadPoolExecutor-2858_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.343565702438354s
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:31.080 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:31.081 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:31.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8620496;-24.256377;50.108285;89.992838;50.08601;90.12017;16.8818;2460996.98785975;13.70859528;1.3;_
2025-11-17T13:42:31.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8620496;-24.256377;50.108285;89.992838;50.08601;90.12017;16.8818;2460996.98785975;13.70859528;1.3;_
2025-11-17T13:42:31.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:31.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:31.082 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:31.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:31.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:31.083 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8620496, teldec = -24.256377
2025-11-17T13:42:31.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8620496 -24.256377
2025-11-17T13:42:31.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8620496 -24.256377
2025-11-17T13:42:31.083 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8620496 -24.256377
2025-11-17T13:42:31.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8620496;-24.256377;50.108285;89.992838;50.08601;90.12017;16.8818;2460996.98785977;13.70859528;1.3;_19.8361720132691 -24.3206233787149
2025-11-17T13:42:31.084 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.8361720132691     dec_j2k = -24.3206233787149
2025-11-17T13:42:31.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:31.084 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667582101425;171.162357330327;_
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667582101425;171.162357330327;_
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:31.085 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:31.086 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:31.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:31.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:31.087 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:31.088 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48769)
2025-11-17T13:42:31.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:31.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:31.088 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:31.088 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:31.089 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:31.095 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:31.096 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:42:31.096 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98785975, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667582101425, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992838, telescope_ra=19.8620496, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.8818, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8361720132691, telescope_dec_j2k=-24.3206233787149, observability=1)
2025-11-17T13:42:31.096 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04822278022766 seconds ago
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Status age = 1.7403459548950195s
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:32.836 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:32.837 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:32.838 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 17;19.8625457;-24.256377;50.108285;89.992837;50.08601;90.12017;16.8823;2460996.98788007;13.70909;1.3;_
2025-11-17T13:42:32.838 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response 17;19.8625457;-24.256377;50.108285;89.992837;50.08601;90.12017;16.8823;2460996.98788007;13.70909;1.3;_
2025-11-17T13:42:32.838 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:32.838 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:32.839 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:32.839 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:32.840 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:32.840 [INFO] [Thread-68003 (handle)] [driver.py] [get_status()] Telra = 19.8625457, teldec = -24.256377
2025-11-17T13:42:32.840 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8625457 -24.256377
2025-11-17T13:42:32.840 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8625457 -24.256377
2025-11-17T13:42:32.840 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8625457 -24.256377
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 17;19.8625457;-24.256377;50.108285;89.992837;50.08601;90.12017;16.8823;2460996.9878801;13.70909;1.3;_19.8366683199817 -24.3206400163303
2025-11-17T13:42:32.841 [INFO] [Thread-68003 (handle)] [driver.py] [get_status()] ra_j2k = 19.8366683199817     dec_j2k = -24.3206400163303
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:42:32.841 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:32.842 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43579)
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:32.843 [DEBUG] [Thread-68003 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:32.844 [DEBUG] [Thread-68003 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:32.844 [DEBUG] [Thread-68003 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:32.851 [DEBUG] [Thread-68003 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:32.851 [INFO] [Thread-68003 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98788007, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668063444739, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992837, telescope_ra=19.8625457, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.8823, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8366683199817, telescope_dec_j2k=-24.3206400163303, observability=1)
2025-11-17T13:42:46.126 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:42:46
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.274912595748901s
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:46.126 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:46.127 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:46.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8662592;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88601;2460996.98803389;13.71279333;1.3;_
2025-11-17T13:42:46.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8662592;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88601;2460996.98803389;13.71279333;1.3;_
2025-11-17T13:42:46.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:46.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:46.128 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:46.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:46.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:46.129 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8662592, teldec = -24.256377
2025-11-17T13:42:46.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8662592 -24.256377
2025-11-17T13:42:46.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8662592 -24.256377
2025-11-17T13:42:46.129 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8662592 -24.256377
2025-11-17T13:42:46.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8662592;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88601;2460996.98803391;13.71279333;1.3;_19.8403833692895 -24.3207645215057
2025-11-17T13:42:46.130 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8403833692895     dec_j2k = -24.3207645215057
2025-11-17T13:42:46.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:46.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:46.130 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667983220853;171.162357330327;_
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667983220853;171.162357330327;_
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:46.131 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:46.132 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:46.133 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48575)
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:46.138 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:46.145 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:46.145 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:46.145 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:46.145 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:46.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:46.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:46.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:46.146 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:46.146 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:46.146 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98803389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667983220853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992837, telescope_ra=19.8662592, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.88601, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8403833692895, telescope_dec_j2k=-24.3207645215057, observability=1)
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Status age = 4.751180410385132s
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:50.897 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:42:50.898 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:42:50.899 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 17;19.8675881;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88734;2460996.98808911;13.71411861;1.3;_
2025-11-17T13:42:50.899 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response 17;19.8675881;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88734;2460996.98808911;13.71411861;1.3;_
2025-11-17T13:42:50.899 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:42:50.899 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:42:50.899 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:42:50.900 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:50.900 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:42:50.900 [INFO] [Thread-68004 (handle)] [driver.py] [get_status()] Telra = 19.8675881, teldec = -24.256377
2025-11-17T13:42:50.900 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8675881 -24.256377
2025-11-17T13:42:50.900 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8675881 -24.256377
2025-11-17T13:42:50.900 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8675881 -24.256377
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 17;19.8675881;-24.256377;50.108285;89.992837;50.08601;90.12017;16.88734;2460996.98808913;13.71411861;1.3;_19.8417128245696 -24.3208090619863
2025-11-17T13:42:50.901 [INFO] [Thread-68004 (handle)] [driver.py] [get_status()] ra_j2k = 19.8417128245696     dec_j2k = -24.3208090619863
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:50.901 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:50.902 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:50.902 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:50.902 [DEBUG] [Thread-68004 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:50.902 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:42:50.902 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:42:50.903 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:42:50.903 [DEBUG] [Thread-68004 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:50.903 [DEBUG] [Thread-68004 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:42:50.903 [DEBUG] [Thread-68004 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49105)
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:50.909 [DEBUG] [Thread-68004 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:42:50.916 [DEBUG] [Thread-68004 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:42:50.916 [INFO] [Thread-68004 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98808911, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667983220853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992837, telescope_ra=19.8675881, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.88734, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:41:53.564124', telescope_ra_j2k=19.8417128245696, telescope_dec_j2k=-24.3208090619863, observability=1)
2025-11-17T13:42:53.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:53.707 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:53.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:53.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:53.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:53.708 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:53.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:53.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:53.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:53.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:53.709 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:53.710 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:42:53.711 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:42:53.711 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:42:53.711 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:54.712 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:42:54.713 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:42:54.714 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:42:54.715 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:42:54.715 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:42:54.715 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:42:54.715 [DEBUG] [ThreadPoolExecutor-2860_0] [payload.py] [to_registers()] [0]
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59221)
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:42:54.718 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:42:54.725 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:42:54.725 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:42:54.725 [DEBUG] [ThreadPoolExecutor-2860_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:42:54.725 [DEBUG] [ThreadPoolExecutor-2860_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:42:54.726 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:42:54.726 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:42:54.726 [DEBUG] [ThreadPoolExecutor-2860_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.63191556930542s
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:07.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:07.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:07.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:07.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8722188;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89197;2460996.98828183;13.71873667;1.3;_
2025-11-17T13:43:07.550 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.8722188;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89197;2460996.98828183;13.71873667;1.3;_
2025-11-17T13:43:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:07.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:07.552 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.8722188, teldec = -24.256377
2025-11-17T13:43:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8722188 -24.256377
2025-11-17T13:43:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8722188 -24.256377
2025-11-17T13:43:07.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8722188 -24.256377
2025-11-17T13:43:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8722188;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89197;2460996.98828186;13.71873667;1.3;_19.8463454630056 -24.3209642084217
2025-11-17T13:43:07.553 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.8463454630056     dec_j2k = -24.3209642084217
2025-11-17T13:43:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:07.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104667702437254;171.162351965909;_
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104667702437254;171.162351965909;_
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:07.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:07.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:07.556 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59851)
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:07.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:07.566 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:07.567 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:07.567 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98828183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667702437254, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992836, telescope_ra=19.8722188, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89197, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8463454630056, telescope_dec_j2k=-24.3209642084217, observability=1)
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Status age = 1.4132966995239258s
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:08.980 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:08.981 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:08.982 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:08.982 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 17;19.8726115;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89236;2460996.9882984;13.71912833;1.3;_
2025-11-17T13:43:08.983 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response 17;19.8726115;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89236;2460996.9882984;13.71912833;1.3;_
2025-11-17T13:43:08.983 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:08.983 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:08.983 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:08.984 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:08.984 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:08.984 [INFO] [Thread-68005 (handle)] [driver.py] [get_status()] Telra = 19.8726115, teldec = -24.256377
2025-11-17T13:43:08.984 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8726115 -24.256377
2025-11-17T13:43:08.984 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8726115 -24.256377
2025-11-17T13:43:08.984 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8726115 -24.256377
2025-11-17T13:43:08.985 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 17;19.8726115;-24.256377;50.108285;89.992836;50.08601;90.12017;16.89236;2460996.98829844;13.71912833;1.3;_19.8467383276421 -24.3209773611156
2025-11-17T13:43:08.985 [INFO] [Thread-68005 (handle)] [driver.py] [get_status()] ra_j2k = 19.8467383276421     dec_j2k = -24.3209773611156
2025-11-17T13:43:08.985 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:08.985 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:08.985 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 140;0.104668745347767;171.162351965909;_
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response 140;0.104668745347767;171.162351965909;_
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:08.986 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:08.987 [DEBUG] [Thread-68005 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57981)
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:08.990 [DEBUG] [Thread-68005 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:08.997 [DEBUG] [Thread-68005 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:08.998 [DEBUG] [Thread-68005 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:08.998 [INFO] [Thread-68005 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9882984, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668745347767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108285, telescope_az=89.992836, telescope_ra=19.8726115, telescope_dec=-24.256377, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89236, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8467383276421, telescope_dec_j2k=-24.3209773611156, observability=1)
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Status age = 4.6944684982299805s
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:13.692 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:13.693 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:13.694 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 17;19.873921;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89367;2460996.98835294;13.72043417;1.3;_
2025-11-17T13:43:13.694 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response 17;19.873921;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89367;2460996.98835294;13.72043417;1.3;_
2025-11-17T13:43:13.694 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:13.694 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:13.694 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:13.695 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:13.695 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:13.695 [INFO] [Thread-68006 (handle)] [driver.py] [get_status()] Telra = 19.873921, teldec = -24.256376
2025-11-17T13:43:13.695 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] UnCookCoordinates 19.873921 -24.256376
2025-11-17T13:43:13.695 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.873921 -24.256376
2025-11-17T13:43:13.695 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.873921 -24.256376
2025-11-17T13:43:13.696 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 17;19.873921;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89367;2460996.98835296;13.72043417;1.3;_19.8480483771018 -24.3210202154214
2025-11-17T13:43:13.696 [INFO] [Thread-68006 (handle)] [driver.py] [get_status()] ra_j2k = 19.8480483771018     dec_j2k = -24.3210202154214
2025-11-17T13:43:13.696 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:13.696 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:13.696 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 140;0.104667943108911;171.162351965909;_
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response 140;0.104667943108911;171.162351965909;_
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:13.697 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:13.698 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:13.698 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:13.698 [DEBUG] [Thread-68006 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:13.699 [DEBUG] [Thread-68006 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:13.701 [DEBUG] [Thread-68006 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46885)
2025-11-17T13:43:13.701 [DEBUG] [Thread-68006 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:13.701 [DEBUG] [Thread-68006 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:13.701 [DEBUG] [Thread-68006 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:13.701 [DEBUG] [Thread-68006 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:13.702 [DEBUG] [Thread-68006 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:13.708 [DEBUG] [Thread-68006 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:13.708 [DEBUG] [Thread-68006 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:13.709 [DEBUG] [Thread-68006 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:13.709 [INFO] [Thread-68006 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98835294, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667943108911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992836, telescope_ra=19.873921, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89367, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8480483771018, telescope_dec_j2k=-24.3210202154214, observability=1)
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.2706944942474365s
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8742766;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89403;2460996.98836784;13.72078889;1.3;_
2025-11-17T13:43:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.8742766;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89403;2460996.98836784;13.72078889;1.3;_
2025-11-17T13:43:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:14.983 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.8742766, teldec = -24.256376
2025-11-17T13:43:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8742766 -24.256376
2025-11-17T13:43:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8742766 -24.256376
2025-11-17T13:43:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8742766 -24.256376
2025-11-17T13:43:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8742766;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89403;2460996.98836787;13.72078889;1.3;_19.8484041263362 -24.3210321229234
2025-11-17T13:43:14.984 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.8484041263362     dec_j2k = -24.3210321229234
2025-11-17T13:43:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54467)
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:14.988 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:14.995 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:14.995 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:14.996 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:14.996 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98836784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992836, telescope_ra=19.8742766, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8484041263362, telescope_dec_j2k=-24.3210321229234, observability=1)
2025-11-17T13:43:19.726 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:19.726 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:19.726 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:19.726 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:19.726 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:19.727 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:43:19.728 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:43:19.729 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:27.083 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:27.083 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Status age = 12.087772130966187s
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:27.084 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:27.085 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 17;19.8776751;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89743;2460996.98850793;13.72417806;1.3;_
2025-11-17T13:43:27.085 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response 17;19.8776751;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89743;2460996.98850793;13.72417806;1.3;_
2025-11-17T13:43:27.085 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:27.085 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:27.085 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:27.086 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:27.086 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:27.086 [INFO] [Thread-68007 (handle)] [driver.py] [get_status()] Telra = 19.8776751, teldec = -24.256376
2025-11-17T13:43:27.086 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8776751 -24.256376
2025-11-17T13:43:27.086 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8776751 -24.256376
2025-11-17T13:43:27.087 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8776751 -24.256376
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 17;19.8776751;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89743;2460996.98850795;13.72417806;1.3;_19.8518040541996 -24.3211458961963
2025-11-17T13:43:27.088 [INFO] [Thread-68007 (handle)] [driver.py] [get_status()] ra_j2k = 19.8518040541996     dec_j2k = -24.3211458961963
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 140;0.104668384340281;171.162357330327;_
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response 140;0.104668384340281;171.162357330327;_
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:27.088 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:27.089 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:27.090 [DEBUG] [Thread-68007 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:27.090 [DEBUG] [Thread-68007 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:27.090 [DEBUG] [Thread-68007 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48723)
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:27.093 [DEBUG] [Thread-68007 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:27.100 [DEBUG] [Thread-68007 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:27.100 [INFO] [Thread-68007 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98850793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668384340281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992836, telescope_ra=19.8776751, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89743, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8518040541996, telescope_dec_j2k=-24.3211458961963, observability=1)
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.0558412075042725s
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:31.156 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:31.158 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:31.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8787957;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89855;2460996.98855508;13.72529556;1.3;_
2025-11-17T13:43:31.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8787957;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89855;2460996.98855508;13.72529556;1.3;_
2025-11-17T13:43:31.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:31.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:31.159 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:31.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:31.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:31.160 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8787957, teldec = -24.256376
2025-11-17T13:43:31.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8787957 -24.256376
2025-11-17T13:43:31.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8787957 -24.256376
2025-11-17T13:43:31.160 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8787957 -24.256376
2025-11-17T13:43:31.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8787957;-24.256376;50.108284;89.992836;50.08601;90.12017;16.89855;2460996.9885551;13.72529556;1.3;_19.852925125656 -24.3211834000528
2025-11-17T13:43:31.161 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.852925125656     dec_j2k = -24.3211834000528
2025-11-17T13:43:31.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:31.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:31.161 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667902996968;171.162357330327;_
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667902996968;171.162357330327;_
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:31.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:31.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:31.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:31.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:31.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47165)
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:31.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:31.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:31.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:31.178 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:31.179 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:43:31.179 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98855508, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667902996968, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992836, telescope_ra=19.8787957, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.89855, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.852925125656, telescope_dec_j2k=-24.3211834000528, observability=1)
2025-11-17T13:43:31.179 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.053058385849 seconds ago
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Status age = 13.979228496551514s
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:45.158 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:45.159 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:45.159 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:45.159 [DEBUG] [Thread-68008 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:45.159 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:45.159 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 17;19.8826977;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90245;2460996.98871713;13.72918694;1.3;_
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response 17;19.8826977;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90245;2460996.98871713;13.72918694;1.3;_
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:45.160 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:45.161 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:45.161 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:45.161 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:45.162 [INFO] [Thread-68008 (handle)] [driver.py] [get_status()] Telra = 19.8826977, teldec = -24.256376
2025-11-17T13:43:45.162 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8826977 -24.256376
2025-11-17T13:43:45.162 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8826977 -24.256376
2025-11-17T13:43:45.162 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8826977 -24.256376
2025-11-17T13:43:45.163 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 17;19.8826977;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90245;2460996.98871715;13.72918694;1.3;_19.85682876978 -24.3213139481152
2025-11-17T13:43:45.163 [INFO] [Thread-68008 (handle)] [driver.py] [get_status()] ra_j2k = 19.85682876978     dec_j2k = -24.3213139481152
2025-11-17T13:43:45.163 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:45.163 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:45.163 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:45.163 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:45.164 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:45.165 [DEBUG] [Thread-68008 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42019)
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:45.169 [DEBUG] [Thread-68008 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:45.176 [DEBUG] [Thread-68008 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:45.176 [DEBUG] [Thread-68008 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:45.177 [DEBUG] [Thread-68008 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:45.177 [INFO] [Thread-68008 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98871713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668264004453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992835, telescope_ra=19.8826977, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.90245, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.85682876978, telescope_dec_j2k=-24.3213139481152, observability=1)
2025-11-17T13:43:46.206 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:43:46
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.029067039489746s
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:46.206 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:43:46.207 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:43:46.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8829966;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90275;2460996.98872926;13.729485;1.3;_
2025-11-17T13:43:46.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8829966;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90275;2460996.98872926;13.729485;1.3;_
2025-11-17T13:43:46.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:43:46.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:43:46.208 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:43:46.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:46.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:43:46.209 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8829966, teldec = -24.256376
2025-11-17T13:43:46.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8829966 -24.256376
2025-11-17T13:43:46.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8829966 -24.256376
2025-11-17T13:43:46.209 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8829966 -24.256376
2025-11-17T13:43:46.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8829966;-24.256376;50.108284;89.992835;50.08601;90.12017;16.90275;2460996.98872928;13.729485;1.3;_19.8571277958818 -24.3213239455837
2025-11-17T13:43:46.210 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8571277958818     dec_j2k = -24.3213239455837
2025-11-17T13:43:46.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:43:46.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:43:46.210 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667943108911;171.162362694745;_
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667943108911;171.162362694745;_
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:46.211 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:43:46.212 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:43:46.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:46.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:43:46.213 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33085)
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:43:46.218 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:43:46.225 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:43:46.225 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98872926, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667943108911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992835, telescope_ra=19.8829966, telescope_dec=-24.256376, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.90275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:42:53.706604', telescope_ra_j2k=19.8571277958818, telescope_dec_j2k=-24.3213239455837, observability=1)
2025-11-17T13:43:53.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:53.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:53.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:53.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:53.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:53.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:53.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:53.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:53.853 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:43:53.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:43:53.855 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:43:53.855 [INFO] [ThreadPoolExecutor-2861_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:43:53.855 [INFO] [ThreadPoolExecutor-2861_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Status age = 16.9926655292511s
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:03.218 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:03.219 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 17;19.8877334;-24.256375;50.108284;89.992835;50.08601;90.12017;16.90748;2460996.98892615;13.73420889;1.3;_
2025-11-17T13:44:03.220 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response 17;19.8877334;-24.256375;50.108284;89.992835;50.08601;90.12017;16.90748;2460996.98892615;13.73420889;1.3;_
2025-11-17T13:44:03.220 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:03.220 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:03.220 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:03.221 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:03.221 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:03.221 [INFO] [Thread-68009 (handle)] [driver.py] [get_status()] Telra = 19.8877334, teldec = -24.256375
2025-11-17T13:44:03.221 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8877334 -24.256375
2025-11-17T13:44:03.221 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8877334 -24.256375
2025-11-17T13:44:03.221 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8877334 -24.256375
2025-11-17T13:44:03.222 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 17;19.8877334;-24.256375;50.108284;89.992835;50.08601;90.12017;16.90748;2460996.98892618;13.73420889;1.3;_19.8618665974719 -24.3214813278176
2025-11-17T13:44:03.222 [INFO] [Thread-68009 (handle)] [driver.py] [get_status()] ra_j2k = 19.8618665974719     dec_j2k = -24.3214813278176
2025-11-17T13:44:03.222 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:03.222 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:03.222 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:03.223 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:03.224 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:03.225 [DEBUG] [Thread-68009 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:03.225 [DEBUG] [Thread-68009 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:03.225 [DEBUG] [Thread-68009 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:03.229 [DEBUG] [Thread-68009 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54935)
2025-11-17T13:44:03.230 [DEBUG] [Thread-68009 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:03.230 [DEBUG] [Thread-68009 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:03.230 [DEBUG] [Thread-68009 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:03.230 [DEBUG] [Thread-68009 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:03.230 [DEBUG] [Thread-68009 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:03.237 [DEBUG] [Thread-68009 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:03.237 [INFO] [Thread-68009 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98892615, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992835, telescope_ra=19.8877334, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.90748, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8618665974719, telescope_dec_j2k=-24.3214813278176, observability=1)
2025-11-17T13:44:06.659 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.4224228858947754s
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:06.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:06.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8886866;-24.256375;50.108284;89.992834;50.08601;90.12017;16.90844;2460996.98896598;13.73515944;1.3;_
2025-11-17T13:44:06.661 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.8886866;-24.256375;50.108284;89.992834;50.08601;90.12017;16.90844;2460996.98896598;13.73515944;1.3;_
2025-11-17T13:44:06.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:06.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:06.661 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:06.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:06.662 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:06.662 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.8886866, teldec = -24.256375
2025-11-17T13:44:06.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8886866 -24.256375
2025-11-17T13:44:06.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8886866 -24.256375
2025-11-17T13:44:06.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8886866 -24.256375
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.8886866;-24.256375;50.108284;89.992834;50.08601;90.12017;16.90844;2460996.98896601;13.73515944;1.3;_19.8628202009083 -24.3215131876468
2025-11-17T13:44:06.664 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.8628202009083     dec_j2k = -24.3215131876468
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:44:06.664 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162357330327;_
2025-11-17T13:44:06.665 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:06.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:06.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:06.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:06.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:06.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:06.667 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:06.667 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56569)
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:06.670 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:06.677 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:06.678 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98896598, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992834, telescope_ra=19.8886866, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.90844, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8628202009083, telescope_dec_j2k=-24.3215131876468, observability=1)
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Status age = 7.064528465270996s
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:13.742 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:13.743 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:13.744 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 17;19.8906653;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91042;2460996.98904796;13.73713278;1.3;_
2025-11-17T13:44:13.744 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response 17;19.8906653;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91042;2460996.98904796;13.73713278;1.3;_
2025-11-17T13:44:13.744 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:13.744 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:13.744 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:13.745 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:13.745 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:13.745 [INFO] [Thread-68010 (handle)] [driver.py] [get_status()] Telra = 19.8906653, teldec = -24.256375
2025-11-17T13:44:13.745 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8906653 -24.256375
2025-11-17T13:44:13.745 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8906653 -24.256375
2025-11-17T13:44:13.745 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8906653 -24.256375
2025-11-17T13:44:13.746 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 17;19.8906653;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91042;2460996.98904799;13.73713278;1.3;_19.8647997391159 -24.3215793111537
2025-11-17T13:44:13.746 [INFO] [Thread-68010 (handle)] [driver.py] [get_status()] ra_j2k = 19.8647997391159     dec_j2k = -24.3215793111537
2025-11-17T13:44:13.746 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:13.746 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:13.746 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 140;0.104667983220853;171.162357330327;_
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response 140;0.104667983220853;171.162357330327;_
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:13.747 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:13.748 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:13.749 [DEBUG] [Thread-68010 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:13.749 [DEBUG] [Thread-68010 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:13.749 [DEBUG] [Thread-68010 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55197)
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:13.752 [DEBUG] [Thread-68010 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:13.760 [DEBUG] [Thread-68010 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:13.761 [INFO] [Thread-68010 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98904796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667983220853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992834, telescope_ra=19.8906653, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91042, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8647997391159, telescope_dec_j2k=-24.3215793111537, observability=1)
2025-11-17T13:44:14.729 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:44:14.730 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:14.731 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:14.732 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.733 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:14.734 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:14.735 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:14.735 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:14.735 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:14.736 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:14.736 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Park
2025-11-17T13:44:14.736 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:44:14.736 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:44:14.736 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 29;19.8909452;-24.256375;50.108284;89.992834;50.08601;90.12017;16.9107;2460996.98905944;13.73741194;1.3;_Park Command Successful
2025-11-17T13:44:14.999 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:14.999 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.2389438152313232s
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8910012;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91075;2460996.98906251;13.73746778;1.3;_
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.8910012;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91075;2460996.98906251;13.73746778;1.3;_
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:15.002 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.8910012, teldec = -24.256375
2025-11-17T13:44:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8910012 -24.256375
2025-11-17T13:44:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8910012 -24.256375
2025-11-17T13:44:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8910012 -24.256375
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.8910012;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91075;2460996.98906253;13.73746778;1.3;_19.8651357815066 -24.3215905344382
2025-11-17T13:44:15.003 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.8651357815066     dec_j2k = -24.3215905344382
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104667341429769;171.162357330327;_
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104667341429769;171.162357330327;_
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:15.007 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43779)
2025-11-17T13:44:15.007 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:15.008 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:15.008 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:15.008 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:15.008 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:15.015 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98906251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667341429769, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992834, telescope_ra=19.8910012, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91075, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8651357815066, telescope_dec_j2k=-24.3215905344382, observability=1)
2025-11-17T13:44:15.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:44:15.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:44:15.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:44:15.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:44:15.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:44:16.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:44:16.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:44:16.737 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:44:16.738 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:44:16.738 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:44:17.738 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:44:17.738 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:44:17.738 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:44:17.739 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:44:17.739 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:44:18.739 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:44:18.739 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:18.740 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:18.741 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:44:18.742 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:44:18.742 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:44:18.742 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:19.742 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:44:19.743 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:44:19.744 [DEBUG] [ThreadPoolExecutor-2860_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:19.744 [INFO] [ThreadPoolExecutor-2860_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Status age = 6.325183868408203s
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:21.340 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:21.341 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 17;19.8927769;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91253;2460996.9891359;13.73923861;1.3;_
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response 17;19.8927769;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91253;2460996.9891359;13.73923861;1.3;_
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:21.342 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:21.343 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:21.343 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:21.343 [INFO] [Thread-68011 (handle)] [driver.py] [get_status()] Telra = 19.8927769, teldec = -24.256375
2025-11-17T13:44:21.343 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8927769 -24.256375
2025-11-17T13:44:21.343 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8927769 -24.256375
2025-11-17T13:44:21.343 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8927769 -24.256375
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 17;19.8927769;-24.256375;50.108284;89.992834;50.08601;90.12017;16.91253;2460996.98913593;13.73923861;1.3;_19.8669122347148 -24.3216498569236
2025-11-17T13:44:21.344 [INFO] [Thread-68011 (handle)] [driver.py] [get_status()] ra_j2k = 19.8669122347148     dec_j2k = -24.3216498569236
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 140;0.104668304116396;171.162362694745;_
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response 140;0.104668304116396;171.162362694745;_
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:21.344 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:21.345 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:21.346 [DEBUG] [Thread-68011 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:21.346 [DEBUG] [Thread-68011 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:21.346 [DEBUG] [Thread-68011 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37249)
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:21.352 [DEBUG] [Thread-68011 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:21.359 [DEBUG] [Thread-68011 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:21.359 [DEBUG] [Thread-68011 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:21.359 [DEBUG] [Thread-68011 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:21.359 [DEBUG] [Thread-68011 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:21.359 [DEBUG] [Thread-68011 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:21.360 [DEBUG] [Thread-68011 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:21.360 [DEBUG] [Thread-68011 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:21.360 [DEBUG] [Thread-68011 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:21.360 [DEBUG] [Thread-68011 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:21.360 [INFO] [Thread-68011 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9891359, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668304116396, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108284, telescope_az=89.992834, telescope_ra=19.8927769, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91253, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8669122347148, telescope_dec_j2k=-24.3216498569236, observability=1)
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.879367589950562s
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:31.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:31.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8955372;-24.256375;50.108283;89.992834;50.08601;90.12017;16.91529;2460996.98925047;13.74199139;1.3;_
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.8955372;-24.256375;50.108283;89.992834;50.08601;90.12017;16.91529;2460996.98925047;13.74199139;1.3;_
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:31.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:31.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:31.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:31.242 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.8955372, teldec = -24.256375
2025-11-17T13:44:31.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.8955372 -24.256375
2025-11-17T13:44:31.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.8955372 -24.256375
2025-11-17T13:44:31.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8955372 -24.256375
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.8955372;-24.256375;50.108283;89.992834;50.08601;90.12017;16.91529;2460996.9892505;13.74199139;1.3;_19.8696737071498 -24.3217420453756
2025-11-17T13:44:31.243 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.8696737071498     dec_j2k = -24.3217420453756
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668143668625;171.162362694745;_
2025-11-17T13:44:31.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162362694745;_
2025-11-17T13:44:31.244 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:31.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:31.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:31.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:31.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:31.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:31.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:31.246 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35329)
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:31.251 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:31.259 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:44:31.259 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98925047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992834, telescope_ra=19.8955372, telescope_dec=-24.256375, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91529, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8696737071498, telescope_dec_j2k=-24.3217420453756, observability=1)
2025-11-17T13:44:31.259 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05342149734497 seconds ago
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Status age = 8.148505449295044s
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:39.408 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:39.409 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:39.410 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 17;19.8977976;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91755;2460996.98934502;13.74424556;1.3;_
2025-11-17T13:44:39.410 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response 17;19.8977976;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91755;2460996.98934502;13.74424556;1.3;_
2025-11-17T13:44:39.410 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:39.410 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:39.410 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:39.411 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:39.411 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:39.411 [INFO] [Thread-68012 (handle)] [driver.py] [get_status()] Telra = 19.8977976, teldec = -24.256374
2025-11-17T13:44:39.411 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8977976 -24.256374
2025-11-17T13:44:39.411 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8977976 -24.256374
2025-11-17T13:44:39.411 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8977976 -24.256374
2025-11-17T13:44:39.412 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 17;19.8977976;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91755;2460996.98934505;13.74424556;1.3;_19.8719350688666 -24.3218165133151
2025-11-17T13:44:39.412 [INFO] [Thread-68012 (handle)] [driver.py] [get_status()] ra_j2k = 19.8719350688666     dec_j2k = -24.3218165133151
2025-11-17T13:44:39.412 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:39.412 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:39.412 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 140;0.104667541989483;171.162357330327;_
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response 140;0.104667541989483;171.162357330327;_
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:39.413 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:39.414 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:39.415 [DEBUG] [Thread-68012 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:39.415 [DEBUG] [Thread-68012 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:39.415 [DEBUG] [Thread-68012 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37909)
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:39.418 [DEBUG] [Thread-68012 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:39.425 [DEBUG] [Thread-68012 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:39.425 [INFO] [Thread-68012 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98934502, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667541989483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992833, telescope_ra=19.8977976, telescope_dec=-24.256374, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91755, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8719350688666, telescope_dec_j2k=-24.3218165133151, observability=1)
2025-11-17T13:44:46.286 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:44:46
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.8606274127960205s
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:46.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:46.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:46.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:46.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:46.288 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:46.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:46.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:46.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:46.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8997145;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91947;2460996.98942464;13.74615722;1.3;_
2025-11-17T13:44:46.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.8997145;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91947;2460996.98942464;13.74615722;1.3;_
2025-11-17T13:44:46.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:46.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:46.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:46.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:46.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:46.290 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.8997145, teldec = -24.256374
2025-11-17T13:44:46.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.8997145 -24.256374
2025-11-17T13:44:46.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.8997145 -24.256374
2025-11-17T13:44:46.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.8997145 -24.256374
2025-11-17T13:44:46.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.8997145;-24.256374;50.108283;89.992833;50.08601;90.12017;16.91947;2460996.98942466;13.74615722;1.3;_19.8738527852977 -24.3218804951233
2025-11-17T13:44:46.291 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8738527852977     dec_j2k = -24.3218804951233
2025-11-17T13:44:46.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:46.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:46.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162357330327;_
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162357330327;_
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:46.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:46.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:46.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:46.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:46.294 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:46.300 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57103)
2025-11-17T13:44:46.300 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:46.301 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:46.301 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:46.301 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:46.301 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:46.308 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:46.308 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.98942464, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992833, telescope_ra=19.8997145, telescope_dec=-24.256374, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.91947, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:43:53.852363', telescope_ra_j2k=19.8738527852977, telescope_dec_j2k=-24.3218804951233, observability=1)
2025-11-17T13:44:53.996 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:53.996 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:53.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:53.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:53.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:53.997 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:53.998 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:44:53.998 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:53.998 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:53.998 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:53.998 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:53.998 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:44:53.999 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:44:54.000 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:55.000 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:55.000 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:55.000 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:55.000 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:55.000 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:55.001 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:55.002 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:55.002 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:55.002 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:55.002 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:55.003 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:55.003 [DEBUG] [ThreadPoolExecutor-2862_0] [payload.py] [to_registers()] [0]
2025-11-17T13:44:55.003 [DEBUG] [ThreadPoolExecutor-2862_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50857)
2025-11-17T13:44:55.004 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:55.004 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:55.004 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:44:55.004 [DEBUG] [ThreadPoolExecutor-2862_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:55.004 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:55.011 [DEBUG] [ThreadPoolExecutor-2862_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Status age = 11.215648651123047s
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:44:57.524 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:44:57.525 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 17;19.90284;-24.256374;50.108283;89.992833;50.08601;90.12017;16.92259;2460996.98955469;13.74927417;1.3;_
2025-11-17T13:44:57.526 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response 17;19.90284;-24.256374;50.108283;89.992833;50.08601;90.12017;16.92259;2460996.98955469;13.74927417;1.3;_
2025-11-17T13:44:57.526 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:44:57.526 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:44:57.526 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:44:57.527 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:57.527 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:44:57.527 [INFO] [Thread-68013 (handle)] [driver.py] [get_status()] Telra = 19.90284, teldec = -24.256374
2025-11-17T13:44:57.527 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] UnCookCoordinates 19.90284 -24.256374
2025-11-17T13:44:57.527 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.90284 -24.256374
2025-11-17T13:44:57.527 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.90284 -24.256374
2025-11-17T13:44:57.528 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 17;19.90284;-24.256374;50.108283;89.992833;50.08601;90.12017;16.92259;2460996.98955472;13.74927417;1.3;_19.8769796184784 -24.3219847825448
2025-11-17T13:44:57.528 [INFO] [Thread-68013 (handle)] [driver.py] [get_status()] ra_j2k = 19.8769796184784     dec_j2k = -24.3219847825448
2025-11-17T13:44:57.528 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:44:57.528 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:44:57.528 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:57.529 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:44:57.530 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:44:57.531 [DEBUG] [Thread-68013 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:57.531 [DEBUG] [Thread-68013 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:44:57.531 [DEBUG] [Thread-68013 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60317)
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:44:57.535 [DEBUG] [Thread-68013 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:44:57.542 [DEBUG] [Thread-68013 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:44:57.543 [INFO] [Thread-68013 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98955469, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992833, telescope_ra=19.90284, telescope_dec=-24.256374, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.92259, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8769796184784, telescope_dec_j2k=-24.3219847825448, observability=1)
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.228838443756104s
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:05.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:05.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:05.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:05.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:05.772 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9051538;-24.256374;50.108283;89.992833;50.08601;90.12017;16.9249;2460996.98965015;13.75158167;1.3;_
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9051538;-24.256374;50.108283;89.992833;50.08601;90.12017;16.9249;2460996.98965015;13.75158167;1.3;_
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:05.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:05.774 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:05.774 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:05.774 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9051538, teldec = -24.256374
2025-11-17T13:45:05.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9051538 -24.256374
2025-11-17T13:45:05.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9051538 -24.256374
2025-11-17T13:45:05.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9051538 -24.256374
2025-11-17T13:45:05.775 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9051538;-24.256374;50.108283;89.992833;50.08601;90.12017;16.9249;2460996.98965017;13.75158167;1.3;_19.8792944070191 -24.3220619584943
2025-11-17T13:45:05.776 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.8792944070191     dec_j2k = -24.3220619584943
2025-11-17T13:45:05.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:05.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:05.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:05.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104667702437254;171.162346601491;_
2025-11-17T13:45:05.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104667702437254;171.162346601491;_
2025-11-17T13:45:05.777 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:05.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:05.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:05.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:05.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:05.779 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:05.779 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44359)
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:05.785 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:05.792 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:05.792 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:05.792 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:05.792 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:05.792 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:05.793 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:05.793 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:05.793 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:05.793 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:05.793 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98965015, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667702437254, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992833, telescope_ra=19.9051538, telescope_dec=-24.256374, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.9249, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8792944070191, telescope_dec_j2k=-24.3220619584943, observability=1)
2025-11-17T13:45:13.794 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:13.794 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Status age = 8.001684665679932s
2025-11-17T13:45:13.794 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:13.795 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:13.796 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 17;19.9073799;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92713;2460996.98974301;13.75380167;1.3;_
2025-11-17T13:45:13.796 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response 17;19.9073799;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92713;2460996.98974301;13.75380167;1.3;_
2025-11-17T13:45:13.796 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:13.796 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:13.796 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:13.797 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:13.797 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:13.797 [INFO] [Thread-68014 (handle)] [driver.py] [get_status()] Telra = 19.9073799, teldec = -24.256373
2025-11-17T13:45:13.797 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9073799 -24.256373
2025-11-17T13:45:13.797 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9073799 -24.256373
2025-11-17T13:45:13.797 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9073799 -24.256373
2025-11-17T13:45:13.798 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 17;19.9073799;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92713;2460996.98974303;13.75380167;1.3;_19.8815214595462 -24.3221351870007
2025-11-17T13:45:13.798 [INFO] [Thread-68014 (handle)] [driver.py] [get_status()] ra_j2k = 19.8815214595462     dec_j2k = -24.3221351870007
2025-11-17T13:45:13.798 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:13.798 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:13.799 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:13.799 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162357330327;_
2025-11-17T13:45:13.799 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162357330327;_
2025-11-17T13:45:13.799 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:13.799 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:13.800 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:13.800 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:13.800 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:13.801 [DEBUG] [Thread-68014 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:13.807 [DEBUG] [Thread-68014 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56495)
2025-11-17T13:45:13.807 [DEBUG] [Thread-68014 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:13.807 [DEBUG] [Thread-68014 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:13.807 [DEBUG] [Thread-68014 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:13.807 [DEBUG] [Thread-68014 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:13.808 [DEBUG] [Thread-68014 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:13.815 [DEBUG] [Thread-68014 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:13.815 [INFO] [Thread-68014 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98974301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992832, telescope_ra=19.9073799, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.92713, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8815214595462, telescope_dec_j2k=-24.3221351870007, observability=1)
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1397795677185059s
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:14.955 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:14.956 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9077169;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92747;2460996.98975645;13.75413778;1.3;_
2025-11-17T13:45:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.9077169;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92747;2460996.98975645;13.75413778;1.3;_
2025-11-17T13:45:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:14.957 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:14.958 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.9077169, teldec = -24.256373
2025-11-17T13:45:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9077169 -24.256373
2025-11-17T13:45:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9077169 -24.256373
2025-11-17T13:45:14.958 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9077169 -24.256373
2025-11-17T13:45:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9077169;-24.256373;50.108283;89.992832;50.08601;90.12017;16.92747;2460996.98975647;13.75413778;1.3;_19.8818586038274 -24.3221464222209
2025-11-17T13:45:14.959 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.8818586038274     dec_j2k = -24.3221464222209
2025-11-17T13:45:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:14.959 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104668143668625;171.162357330327;_
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162357330327;_
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:14.960 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:14.961 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:14.962 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53419)
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:14.963 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:14.971 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:14.971 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98975645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992832, telescope_ra=19.9077169, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.92747, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8818586038274, telescope_dec_j2k=-24.3221464222209, observability=1)
2025-11-17T13:45:15.574 [DEBUG] [Thread-68015 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:15.574 [DEBUG] [Thread-68015 (handle)] [server.py] [get_status()] Status age = 0.6022665500640869s
2025-11-17T13:45:15.574 [DEBUG] [Thread-68015 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6022665500640869
2025-11-17T13:45:20.011 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:20.011 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:20.011 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:20.011 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:20.012 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:45:20.013 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:45:20.014 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:31.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:45:31.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.347802877426147s
2025-11-17T13:45:31.319 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:31.319 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:31.319 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:31.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:31.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9122615;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93201;2460996.98994584;13.75867;1.3;_
2025-11-17T13:45:31.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.9122615;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93201;2460996.98994584;13.75867;1.3;_
2025-11-17T13:45:31.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:31.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:31.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:31.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:31.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:31.322 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.9122615, teldec = -24.256373
2025-11-17T13:45:31.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.9122615 -24.256373
2025-11-17T13:45:31.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.9122615 -24.256373
2025-11-17T13:45:31.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9122615 -24.256373
2025-11-17T13:45:31.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9122615;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93201;2460996.98994587;13.75867;1.3;_19.886405152327 -24.3222978852098
2025-11-17T13:45:31.323 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.886405152327     dec_j2k = -24.3222978852098
2025-11-17T13:45:31.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:31.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:31.323 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10466850467611;171.162357330327;_
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10466850467611;171.162357330327;_
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:31.324 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:31.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:31.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:31.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:31.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34085)
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:31.334 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:31.341 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:45:31.341 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98994584, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466850467611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992832, telescope_ra=19.9122615, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.93201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.886405152327, telescope_dec_j2k=-24.3222978852098, observability=1)
2025-11-17T13:45:31.341 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.05552816390991 seconds ago
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Status age = 2.2984225749969482s
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:33.640 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:33.641 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:33.642 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 17;19.9128969;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93265;2460996.98997271;13.75930361;1.3;_
2025-11-17T13:45:33.642 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response 17;19.9128969;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93265;2460996.98997271;13.75930361;1.3;_
2025-11-17T13:45:33.642 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:33.642 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:33.642 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:33.643 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:33.643 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:33.643 [INFO] [Thread-68016 (handle)] [driver.py] [get_status()] Telra = 19.9128969, teldec = -24.256373
2025-11-17T13:45:33.643 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9128969 -24.256373
2025-11-17T13:45:33.643 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9128969 -24.256373
2025-11-17T13:45:33.643 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9128969 -24.256373
2025-11-17T13:45:33.644 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 17;19.9128969;-24.256373;50.108283;89.992832;50.08601;90.12017;16.93265;2460996.98997273;13.75930361;1.3;_19.8870408251706 -24.3223190546044
2025-11-17T13:45:33.644 [INFO] [Thread-68016 (handle)] [driver.py] [get_status()] ra_j2k = 19.8870408251706     dec_j2k = -24.3223190546044
2025-11-17T13:45:33.644 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:33.644 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 140;0.104668023332796;171.162346601491;_
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response 140;0.104668023332796;171.162346601491;_
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:33.645 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:33.646 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:33.647 [DEBUG] [Thread-68016 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:33.647 [DEBUG] [Thread-68016 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:33.647 [DEBUG] [Thread-68016 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43243)
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:33.652 [DEBUG] [Thread-68016 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:33.659 [DEBUG] [Thread-68016 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:33.660 [DEBUG] [Thread-68016 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:33.660 [INFO] [Thread-68016 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.98997271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668023332796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108283, telescope_az=89.992832, telescope_ra=19.9128969, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.93265, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8870408251706, telescope_dec_j2k=-24.3223190546044, observability=1)
2025-11-17T13:45:46.369 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:45:46
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.709399700164795s
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:46.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:46.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:46.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9164633;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93621;2460996.99012003;13.76286028;1.3;_
2025-11-17T13:45:46.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.9164633;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93621;2460996.99012003;13.76286028;1.3;_
2025-11-17T13:45:46.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:46.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:46.371 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:46.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:46.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:46.372 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.9164633, teldec = -24.256373
2025-11-17T13:45:46.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9164633 -24.256373
2025-11-17T13:45:46.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9164633 -24.256373
2025-11-17T13:45:46.372 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9164633 -24.256373
2025-11-17T13:45:46.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9164633;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93621;2460996.99012006;13.76286028;1.3;_19.8906087584898 -24.3224378418145
2025-11-17T13:45:46.373 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.8906087584898     dec_j2k = -24.3224378418145
2025-11-17T13:45:46.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:46.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:46.373 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667421653654;171.162357330327;_
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667421653654;171.162357330327;_
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:46.374 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:46.375 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:46.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:46.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:46.376 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51275)
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:46.380 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:46.388 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:46.389 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:46.389 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:46.389 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:46.389 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99012003, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667421653654, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.992831, telescope_ra=19.9164633, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.93621, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8906087584898, telescope_dec_j2k=-24.3224378418145, observability=1)
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Status age = 5.384167671203613s
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:51.773 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:51.774 [DEBUG] [Thread-68017 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:51.774 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:45:51.774 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:45:51.774 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:45:51.774 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:45:51.775 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 17;19.917966;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93772;2460996.99018258;13.76435889;1.3;_
2025-11-17T13:45:51.775 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response 17;19.917966;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93772;2460996.99018258;13.76435889;1.3;_
2025-11-17T13:45:51.775 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:45:51.775 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:45:51.775 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:45:51.776 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:51.776 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:45:51.776 [INFO] [Thread-68017 (handle)] [driver.py] [get_status()] Telra = 19.917966, teldec = -24.256373
2025-11-17T13:45:51.776 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] UnCookCoordinates 19.917966 -24.256373
2025-11-17T13:45:51.776 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.917966 -24.256373
2025-11-17T13:45:51.776 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.917966 -24.256373
2025-11-17T13:45:51.777 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 17;19.917966;-24.256373;50.108282;89.992831;50.08601;90.12017;16.93772;2460996.9901826;13.76435889;1.3;_19.8921121055138 -24.3224878757926
2025-11-17T13:45:51.777 [INFO] [Thread-68017 (handle)] [driver.py] [get_status()] ra_j2k = 19.8921121055138     dec_j2k = -24.3224878757926
2025-11-17T13:45:51.777 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:45:51.777 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:45:51.777 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 140;0.104667662325311;171.162351965909;_
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response 140;0.104667662325311;171.162351965909;_
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:51.778 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:45:51.779 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:45:51.780 [DEBUG] [Thread-68017 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:51.780 [DEBUG] [Thread-68017 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:45:51.780 [DEBUG] [Thread-68017 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55355)
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:45:51.784 [DEBUG] [Thread-68017 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:45:51.791 [DEBUG] [Thread-68017 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:45:51.791 [DEBUG] [Thread-68017 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:51.791 [DEBUG] [Thread-68017 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:45:51.791 [DEBUG] [Thread-68017 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:45:51.791 [DEBUG] [Thread-68017 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:45:51.792 [DEBUG] [Thread-68017 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:45:51.792 [DEBUG] [Thread-68017 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:45:51.792 [DEBUG] [Thread-68017 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:45:51.792 [DEBUG] [Thread-68017 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:45:51.792 [INFO] [Thread-68017 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99018258, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667662325311, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.992831, telescope_ra=19.917966, telescope_dec=-24.256373, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.93772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:44:53.995965', telescope_ra_j2k=19.8921121055138, telescope_dec_j2k=-24.3224878757926, observability=1)
2025-11-17T13:45:54.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:54.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:54.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:54.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:54.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:54.140 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:45:54.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:45:54.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:45:54.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:45:54.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:45:54.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:45:54.141 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:45:54.142 [INFO] [ThreadPoolExecutor-2863_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:45:54.142 [INFO] [ThreadPoolExecutor-2863_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.093408107757568s
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:04.885 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:04.886 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:04.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9216213;-24.256372;50.108282;89.992831;50.08601;90.12017;16.94137;2460996.99033434;13.76800417;1.3;_
2025-11-17T13:46:04.887 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9216213;-24.256372;50.108282;89.992831;50.08601;90.12017;16.94137;2460996.99033434;13.76800417;1.3;_
2025-11-17T13:46:04.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:04.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:04.887 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:04.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:04.888 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:04.888 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9216213, teldec = -24.256372
2025-11-17T13:46:04.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9216213 -24.256372
2025-11-17T13:46:04.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9216213 -24.256372
2025-11-17T13:46:04.888 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9216213 -24.256372
2025-11-17T13:46:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9216213;-24.256372;50.108282;89.992831;50.08601;90.12017;16.94137;2460996.99033436;13.76800417;1.3;_19.8957689819481 -24.3226085409893
2025-11-17T13:46:04.889 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.8957689819481     dec_j2k = -24.3226085409893
2025-11-17T13:46:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:04.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104667261205883;171.162351965909;_
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104667261205883;171.162351965909;_
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:04.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:04.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:04.892 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:04.894 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46051)
2025-11-17T13:46:04.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:04.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:04.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:04.895 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:04.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:04.902 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:04.902 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:04.902 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:04.903 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:04.903 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99033434, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667261205883, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.992831, telescope_ra=19.9216213, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94137, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.8957689819481, telescope_dec_j2k=-24.3226085409893, observability=1)
2025-11-17T13:46:09.831 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:09.831 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Status age = 4.928655624389648s
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:09.832 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:09.833 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:09.834 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 17;19.9229847;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94274;2460996.99039159;13.76936389;1.3;_
2025-11-17T13:46:09.834 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response 17;19.9229847;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94274;2460996.99039159;13.76936389;1.3;_
2025-11-17T13:46:09.834 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:09.834 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:09.834 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:09.835 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:09.835 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:09.835 [INFO] [Thread-68018 (handle)] [driver.py] [get_status()] Telra = 19.9229847, teldec = -24.256372
2025-11-17T13:46:09.835 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9229847 -24.256372
2025-11-17T13:46:09.835 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9229847 -24.256372
2025-11-17T13:46:09.835 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9229847 -24.256372
2025-11-17T13:46:09.836 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 17;19.9229847;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94274;2460996.99039162;13.76936389;1.3;_19.8971329707429 -24.3226539059355
2025-11-17T13:46:09.836 [INFO] [Thread-68018 (handle)] [driver.py] [get_status()] ra_j2k = 19.8971329707429     dec_j2k = -24.3226539059355
2025-11-17T13:46:09.836 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:09.836 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:09.836 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 140;0.104667622213368;171.162351965909;_
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response 140;0.104667622213368;171.162351965909;_
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:09.837 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:09.838 [DEBUG] [Thread-68018 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:09.838 [DEBUG] [Thread-68018 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:09.839 [DEBUG] [Thread-68018 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:09.841 [DEBUG] [Thread-68018 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53433)
2025-11-17T13:46:09.841 [DEBUG] [Thread-68018 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:09.841 [DEBUG] [Thread-68018 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:09.842 [DEBUG] [Thread-68018 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:09.842 [DEBUG] [Thread-68018 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:09.842 [DEBUG] [Thread-68018 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:09.849 [DEBUG] [Thread-68018 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:09.849 [INFO] [Thread-68018 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99039159, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667622213368, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.99283, telescope_ra=19.9229847, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94274, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.8971329707429, telescope_dec_j2k=-24.3226539059355, observability=1)
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Status age = 4.0106401443481445s
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:13.860 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:13.861 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:13.862 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 17;19.9241231;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94387;2460996.99043822;13.77049917;1.3;_
2025-11-17T13:46:13.862 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response 17;19.9241231;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94387;2460996.99043822;13.77049917;1.3;_
2025-11-17T13:46:13.862 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:13.862 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:13.862 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:13.863 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:13.863 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:13.863 [INFO] [Thread-68019 (handle)] [driver.py] [get_status()] Telra = 19.9241231, teldec = -24.256372
2025-11-17T13:46:13.863 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9241231 -24.256372
2025-11-17T13:46:13.863 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9241231 -24.256372
2025-11-17T13:46:13.863 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9241231 -24.256372
2025-11-17T13:46:13.864 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 17;19.9241231;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94387;2460996.99043824;13.77049917;1.3;_19.8982718627288 -24.3226917780167
2025-11-17T13:46:13.864 [INFO] [Thread-68019 (handle)] [driver.py] [get_status()] ra_j2k = 19.8982718627288     dec_j2k = -24.3226917780167
2025-11-17T13:46:13.864 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:13.864 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:13.864 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 140;0.104667742549197;171.162357330327;_
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response 140;0.104667742549197;171.162357330327;_
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:13.865 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:13.866 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:13.867 [DEBUG] [Thread-68019 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:13.867 [DEBUG] [Thread-68019 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:13.867 [DEBUG] [Thread-68019 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54063)
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:13.870 [DEBUG] [Thread-68019 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:13.877 [DEBUG] [Thread-68019 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:13.878 [DEBUG] [Thread-68019 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:13.878 [INFO] [Thread-68019 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99043822, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667742549197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.99283, telescope_ra=19.9241231, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.8982718627288, telescope_dec_j2k=-24.3226917780167, observability=1)
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1005971431732178s
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:14.979 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:14.980 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9244314;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94418;2460996.99045117;13.77080667;1.3;_
2025-11-17T13:46:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.9244314;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94418;2460996.99045117;13.77080667;1.3;_
2025-11-17T13:46:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:14.981 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:14.982 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.9244314, teldec = -24.256372
2025-11-17T13:46:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9244314 -24.256372
2025-11-17T13:46:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9244314 -24.256372
2025-11-17T13:46:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9244314 -24.256372
2025-11-17T13:46:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9244314;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94418;2460996.99045119;13.77080667;1.3;_19.898580296024 -24.3227020334892
2025-11-17T13:46:14.983 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.898580296024     dec_j2k = -24.3227020334892
2025-11-17T13:46:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10466750187754;171.162362694745;_
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10466750187754;171.162362694745;_
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54945)
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:14.989 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:14.996 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:14.997 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99045117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466750187754, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.99283, telescope_ra=19.9244314, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.898580296024, telescope_dec_j2k=-24.3227020334892, observability=1)
2025-11-17T13:46:15.014 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.014 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.014 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:15.014 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:15.015 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:15.015 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:46:15.016 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:15.017 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:15.018 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:46:15.019 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:15.020 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Park
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:46:15.021 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:46:15.022 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 29;19.9244314;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94418;2460996.99045164;13.77080667;1.3;_Park Command Successful
2025-11-17T13:46:16.022 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:46:16.022 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:46:16.022 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:46:16.023 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:46:16.023 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:46:17.023 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:46:17.023 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:46:17.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:46:17.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:46:17.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:46:18.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:46:18.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:46:18.024 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:46:18.025 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:46:18.025 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:46:19.025 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:46:19.025 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:46:19.025 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:19.026 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:46:19.027 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:46:19.028 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:20.028 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:20.028 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:20.028 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:20.028 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:20.029 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:20.029 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:20.029 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:46:20.030 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:46:20.031 [DEBUG] [ThreadPoolExecutor-2862_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:20.031 [INFO] [ThreadPoolExecutor-2862_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Status age = 12.905195951461792s
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:27.902 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:27.903 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:27.904 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 17;19.9280276;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94778;2460996.99060074;13.77439306;1.3;_
2025-11-17T13:46:27.904 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response 17;19.9280276;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94778;2460996.99060074;13.77439306;1.3;_
2025-11-17T13:46:27.904 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:27.904 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:27.904 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:27.905 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:27.905 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:27.905 [INFO] [Thread-68020 (handle)] [driver.py] [get_status()] Telra = 19.9280276, teldec = -24.256372
2025-11-17T13:46:27.905 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9280276 -24.256372
2025-11-17T13:46:27.905 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9280276 -24.256372
2025-11-17T13:46:27.905 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9280276 -24.256372
2025-11-17T13:46:27.906 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 17;19.9280276;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94778;2460996.99060076;13.77439306;1.3;_19.9021780526305 -24.3228216282448
2025-11-17T13:46:27.906 [INFO] [Thread-68020 (handle)] [driver.py] [get_status()] ra_j2k = 19.9021780526305     dec_j2k = -24.3228216282448
2025-11-17T13:46:27.907 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:27.907 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:27.907 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:27.907 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 140;0.10466722109394;171.162351965909;_
2025-11-17T13:46:27.907 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response 140;0.10466722109394;171.162351965909;_
2025-11-17T13:46:27.908 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:27.908 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:27.908 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:27.908 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:27.909 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:27.910 [DEBUG] [Thread-68020 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:27.910 [DEBUG] [Thread-68020 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:27.910 [DEBUG] [Thread-68020 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53377)
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:27.914 [DEBUG] [Thread-68020 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:27.921 [DEBUG] [Thread-68020 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:27.922 [DEBUG] [Thread-68020 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:27.922 [INFO] [Thread-68020 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99060074, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466722109394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.99283, telescope_ra=19.9280276, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94778, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.9021780526305, telescope_dec_j2k=-24.3228216282448, observability=1)
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.4786481857299805s
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:31.401 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:31.402 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:31.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.929;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94875;2460996.99064124;13.77536278;1.3;_
2025-11-17T13:46:31.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.929;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94875;2460996.99064124;13.77536278;1.3;_
2025-11-17T13:46:31.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:31.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:31.403 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:31.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:31.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:31.404 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.929, teldec = -24.256372
2025-11-17T13:46:31.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.929 -24.256372
2025-11-17T13:46:31.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.929 -24.256372
2025-11-17T13:46:31.404 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.929 -24.256372
2025-11-17T13:46:31.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.929;-24.256372;50.108282;89.99283;50.08601;90.12017;16.94875;2460996.99064126;13.77536278;1.3;_19.9031508740912 -24.3228539563232
2025-11-17T13:46:31.405 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.9031508740912     dec_j2k = -24.3228539563232
2025-11-17T13:46:31.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:31.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:31.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667582101425;171.162357330327;_
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667582101425;171.162357330327;_
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:31.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:31.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50175)
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:31.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:31.417 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:46:31.417 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99064124, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667582101425, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.99283, telescope_ra=19.929, telescope_dec=-24.256372, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.94875, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.9031508740912, telescope_dec_j2k=-24.3228539563232, observability=1)
2025-11-17T13:46:31.417 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04866027832031 seconds ago
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Status age = 14.614629030227661s
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:46.032 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:46:46.033 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:46:46.034 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 17;19.9330739;-24.256371;50.108282;89.992829;50.08601;90.12017;16.95282;2460996.99081058;13.77942556;1.3;_
2025-11-17T13:46:46.034 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response 17;19.9330739;-24.256371;50.108282;89.992829;50.08601;90.12017;16.95282;2460996.99081058;13.77942556;1.3;_
2025-11-17T13:46:46.034 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:46:46.034 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:46:46.034 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:46:46.035 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:46.035 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:46:46.035 [INFO] [Thread-68021 (handle)] [driver.py] [get_status()] Telra = 19.9330739, teldec = -24.256371
2025-11-17T13:46:46.035 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9330739 -24.256371
2025-11-17T13:46:46.035 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9330739 -24.256371
2025-11-17T13:46:46.035 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9330739 -24.256371
2025-11-17T13:46:46.036 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 17;19.9330739;-24.256371;50.108282;89.992829;50.08601;90.12017;16.95282;2460996.9908106;13.77942556;1.3;_19.9072265425816 -24.3229883498892
2025-11-17T13:46:46.036 [INFO] [Thread-68021 (handle)] [driver.py] [get_status()] ra_j2k = 19.9072265425816     dec_j2k = -24.3229883498892
2025-11-17T13:46:46.036 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:46:46.036 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:46:46.036 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response 140;0.104667983220853;171.162351965909;_
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:46.037 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:46:46.038 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:46:46.039 [DEBUG] [Thread-68021 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:46.039 [DEBUG] [Thread-68021 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:46:46.039 [DEBUG] [Thread-68021 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54143)
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:46.041 [DEBUG] [Thread-68021 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:46:46.048 [DEBUG] [Thread-68021 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:46:46.049 [INFO] [Thread-68021 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99081058, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667983220853, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108282, telescope_az=89.992829, telescope_ra=19.9330739, telescope_dec=-24.256371, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.95282, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:45:54.138993', telescope_ra_j2k=19.9072265425816, telescope_dec_j2k=-24.3229883498892, observability=1)
2025-11-17T13:46:46.450 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:46:46
2025-11-17T13:46:46.450 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:46:46.450 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.40116071701049805s
2025-11-17T13:46:46.450 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.40116071701049805
2025-11-17T13:46:54.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:54.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:54.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:54.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:54.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:54.282 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:54.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:54.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:54.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:54.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:54.283 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:46:54.283 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:46:54.284 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:46:54.285 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:55.285 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:46:55.286 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:46:55.287 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:46:55.288 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:46:55.288 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:46:55.288 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:46:55.288 [DEBUG] [ThreadPoolExecutor-2864_0] [payload.py] [to_registers()] [0]
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48503)
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:46:55.292 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:46:55.299 [DEBUG] [ThreadPoolExecutor-2864_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:03.990 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:03.990 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 17.941877126693726s
2025-11-17T13:47:03.990 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:03.990 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:03.991 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:03.992 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:03.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:03.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:03.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:03.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9380882;-24.256371;50.108281;89.992829;50.08601;90.12017;16.95784;2460996.99101844;13.78442611;1.3;_
2025-11-17T13:47:03.993 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9380882;-24.256371;50.108281;89.992829;50.08601;90.12017;16.95784;2460996.99101844;13.78442611;1.3;_
2025-11-17T13:47:03.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:03.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:03.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:03.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:03.994 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:03.994 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9380882, teldec = -24.256371
2025-11-17T13:47:03.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9380882 -24.256371
2025-11-17T13:47:03.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9380882 -24.256371
2025-11-17T13:47:03.994 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9380882 -24.256371
2025-11-17T13:47:03.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9380882;-24.256371;50.108281;89.992829;50.08601;90.12017;16.95784;2460996.99101846;13.78442611;1.3;_19.9122430248212 -24.3231548947905
2025-11-17T13:47:03.995 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9122430248212     dec_j2k = -24.3231548947905
2025-11-17T13:47:03.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:03.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:03.995 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104667902996968;171.162368059163;_
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104667902996968;171.162368059163;_
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:03.996 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:03.997 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44051)
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:04.001 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:04.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:04.008 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:04.009 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:04.009 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99101844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667902996968, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992829, telescope_ra=19.9380882, telescope_dec=-24.256371, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.95784, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9122430248212, telescope_dec_j2k=-24.3231548947905, observability=1)
2025-11-17T13:47:04.098 [DEBUG] [Thread-68022 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:04.098 [DEBUG] [Thread-68022 (handle)] [server.py] [get_status()] Status age = 0.0890040397644043s
2025-11-17T13:47:04.098 [DEBUG] [Thread-68022 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.0890040397644043
2025-11-17T13:47:13.915 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:13.915 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Status age = 9.90642762184143s
2025-11-17T13:47:13.915 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:13.915 [DEBUG] [Thread-68023 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:13.916 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:13.917 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 17;19.940841;-24.256371;50.108281;89.992828;50.08601;90.12017;16.96059;2460996.9911333;13.78717139;1.3;_
2025-11-17T13:47:13.917 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response 17;19.940841;-24.256371;50.108281;89.992828;50.08601;90.12017;16.96059;2460996.9911333;13.78717139;1.3;_
2025-11-17T13:47:13.917 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:13.917 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:13.917 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:13.918 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:13.918 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:13.918 [INFO] [Thread-68023 (handle)] [driver.py] [get_status()] Telra = 19.940841, teldec = -24.256371
2025-11-17T13:47:13.918 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] UnCookCoordinates 19.940841 -24.256371
2025-11-17T13:47:13.918 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.940841 -24.256371
2025-11-17T13:47:13.918 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.940841 -24.256371
2025-11-17T13:47:13.919 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 17;19.940841;-24.256371;50.108281;89.992828;50.08601;90.12017;16.96059;2460996.99113332;13.78717139;1.3;_19.9149970255398 -24.3232462782242
2025-11-17T13:47:13.919 [INFO] [Thread-68023 (handle)] [driver.py] [get_status()] ra_j2k = 19.9149970255398     dec_j2k = -24.3232462782242
2025-11-17T13:47:13.919 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:13.919 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:13.919 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response 140;0.104668063444739;171.162362694745;_
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:13.920 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:13.921 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:13.921 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:13.921 [DEBUG] [Thread-68023 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:13.921 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:13.921 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:13.922 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:13.922 [DEBUG] [Thread-68023 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:47:13.922 [DEBUG] [Thread-68023 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:47:13.922 [DEBUG] [Thread-68023 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48721)
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:13.927 [DEBUG] [Thread-68023 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:13.935 [DEBUG] [Thread-68023 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:13.935 [INFO] [Thread-68023 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9911333, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668063444739, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992828, telescope_ra=19.940841, telescope_dec=-24.256371, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.96059, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9149970255398, telescope_dec_j2k=-24.3232462782242, observability=1)
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.046679973602295s
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:14.982 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:14.983 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9411493;-24.256371;50.108281;89.992828;50.08601;90.12017;16.9609;2460996.99114565;13.78747889;1.3;_
2025-11-17T13:47:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.9411493;-24.256371;50.108281;89.992828;50.08601;90.12017;16.9609;2460996.99114565;13.78747889;1.3;_
2025-11-17T13:47:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:14.984 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:14.985 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.9411493, teldec = -24.256371
2025-11-17T13:47:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9411493 -24.256371
2025-11-17T13:47:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9411493 -24.256371
2025-11-17T13:47:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9411493 -24.256371
2025-11-17T13:47:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9411493;-24.256371;50.108281;89.992828;50.08601;90.12017;16.9609;2460996.99114567;13.78747889;1.3;_19.915305460133 -24.3232565105943
2025-11-17T13:47:14.986 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.915305460133     dec_j2k = -24.3232565105943
2025-11-17T13:47:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104667662325311;171.162357330327;_
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104667662325311;171.162357330327;_
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41893)
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:14.991 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:14.998 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:14.998 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:14.998 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:14.999 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:14.999 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:14.999 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:14.999 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:14.999 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99114565, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667662325311, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992828, telescope_ra=19.9411493, telescope_dec=-24.256371, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.9609, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.915305460133, telescope_dec_j2k=-24.3232565105943, observability=1)
2025-11-17T13:47:20.299 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:20.299 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:20.299 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:20.299 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:20.300 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:20.301 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:47:20.302 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:47:20.303 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:22.161 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:22.161 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Status age = 7.162594318389893s
2025-11-17T13:47:22.161 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:22.161 [DEBUG] [Thread-68024 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:22.162 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:22.163 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 17;19.9431295;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96288;2460996.99122874;13.78945361;1.3;_
2025-11-17T13:47:22.163 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response 17;19.9431295;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96288;2460996.99122874;13.78945361;1.3;_
2025-11-17T13:47:22.163 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:22.163 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:22.163 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:22.164 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:22.164 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:22.164 [INFO] [Thread-68024 (handle)] [driver.py] [get_status()] Telra = 19.9431295, teldec = -24.25637
2025-11-17T13:47:22.164 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9431295 -24.25637
2025-11-17T13:47:22.164 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9431295 -24.25637
2025-11-17T13:47:22.164 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9431295 -24.25637
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 17;19.9431295;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96288;2460996.99122876;13.78945361;1.3;_19.9172865253685 -24.3233212226331
2025-11-17T13:47:22.165 [INFO] [Thread-68024 (handle)] [driver.py] [get_status()] ra_j2k = 19.9172865253685     dec_j2k = -24.3233212226331
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 140;0.104668264004453;171.162368059163;_
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response 140;0.104668264004453;171.162368059163;_
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:22.165 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:22.166 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:22.166 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:22.166 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:22.166 [DEBUG] [Thread-68024 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:22.167 [DEBUG] [Thread-68024 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:22.170 [DEBUG] [Thread-68024 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34971)
2025-11-17T13:47:22.170 [DEBUG] [Thread-68024 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:22.171 [DEBUG] [Thread-68024 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:22.171 [DEBUG] [Thread-68024 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:22.171 [DEBUG] [Thread-68024 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:22.171 [DEBUG] [Thread-68024 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:22.178 [DEBUG] [Thread-68024 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:22.178 [INFO] [Thread-68024 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99122874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668264004453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992828, telescope_ra=19.9431295, telescope_dec=-24.25637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.96288, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9172865253685, telescope_dec_j2k=-24.3233212226331, observability=1)
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.298561811447144s
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:31.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:31.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:31.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9457243;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96548;2460996.99133656;13.79204139;1.3;_
2025-11-17T13:47:31.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.9457243;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96548;2460996.99133656;13.79204139;1.3;_
2025-11-17T13:47:31.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:31.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:31.479 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:31.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:31.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:31.480 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.9457243, teldec = -24.25637
2025-11-17T13:47:31.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.9457243 -24.25637
2025-11-17T13:47:31.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.9457243 -24.25637
2025-11-17T13:47:31.480 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9457243 -24.25637
2025-11-17T13:47:31.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9457243;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96548;2460996.99133659;13.79204139;1.3;_19.9198824604098 -24.3234073030258
2025-11-17T13:47:31.481 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.9198824604098     dec_j2k = -24.3234073030258
2025-11-17T13:47:31.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:31.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:31.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104667822773082;171.162351965909;_
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104667822773082;171.162351965909;_
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:31.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:47:31.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33759)
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:31.487 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:31.494 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:31.495 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:47:31.495 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99133656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667822773082, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992828, telescope_ra=19.9457243, telescope_dec=-24.25637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.96548, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9198824604098, telescope_dec_j2k=-24.3234073030258, observability=1)
2025-11-17T13:47:31.495 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04552149772644 seconds ago
2025-11-17T13:47:40.278 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Status age = 8.783617973327637s
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:40.279 [DEBUG] [Thread-68025 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 17;19.9481704;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96792;2460996.99143843;13.79448083;1.3;_
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response 17;19.9481704;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96792;2460996.99143843;13.79448083;1.3;_
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:40.280 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:40.281 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:40.281 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:40.281 [INFO] [Thread-68025 (handle)] [driver.py] [get_status()] Telra = 19.9481704, teldec = -24.25637
2025-11-17T13:47:40.281 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9481704 -24.25637
2025-11-17T13:47:40.281 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9481704 -24.25637
2025-11-17T13:47:40.281 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9481704 -24.25637
2025-11-17T13:47:40.282 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 17;19.9481986;-24.25637;50.108281;89.992828;50.08601;90.12017;16.96795;2460996.99143845;13.79450889;1.3;_19.9223296319558 -24.3234884225983
2025-11-17T13:47:40.282 [INFO] [Thread-68025 (handle)] [driver.py] [get_status()] ra_j2k = 19.9223296319558     dec_j2k = -24.3234884225983
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 140;0.104668023332796;171.162357330327;_
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response 140;0.104668023332796;171.162357330327;_
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:40.283 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:40.284 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:40.285 [DEBUG] [Thread-68025 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:40.285 [DEBUG] [Thread-68025 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:40.285 [DEBUG] [Thread-68025 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52689)
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:40.286 [DEBUG] [Thread-68025 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:40.293 [DEBUG] [Thread-68025 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:40.293 [INFO] [Thread-68025 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99143843, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668023332796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992828, telescope_ra=19.9481704, telescope_dec=-24.25637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.96792, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9223296319558, telescope_dec_j2k=-24.3234884225983, observability=1)
2025-11-17T13:47:46.510 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:47:46
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.217045783996582s
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:46.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:46.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:46.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9499252;-24.25637;50.108281;89.992827;50.08601;90.12017;16.96968;2460996.99151056;13.79623083;1.3;_
2025-11-17T13:47:46.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.9499252;-24.25637;50.108281;89.992827;50.08601;90.12017;16.96968;2460996.99151056;13.79623083;1.3;_
2025-11-17T13:47:46.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:46.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:46.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:46.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:46.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:46.513 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.9499252, teldec = -24.25637
2025-11-17T13:47:46.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9499252 -24.25637
2025-11-17T13:47:46.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9499252 -24.25637
2025-11-17T13:47:46.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9499252 -24.25637
2025-11-17T13:47:46.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9499252;-24.25637;50.108281;89.992827;50.08601;90.12017;16.96968;2460996.99151058;13.79623083;1.3;_19.9240852015954 -24.3235466000641
2025-11-17T13:47:46.514 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.9240852015954     dec_j2k = -24.3235466000641
2025-11-17T13:47:46.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:46.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:46.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:46.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:46.516 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:46.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:46.517 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42711)
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:46.521 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:46.528 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:46.528 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99151056, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668264004453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992827, telescope_ra=19.9499252, telescope_dec=-24.25637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.96968, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:46:54.280657', telescope_ra_j2k=19.9240852015954, telescope_dec_j2k=-24.3235466000641, observability=1)
2025-11-17T13:47:54.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:54.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:54.424 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:54.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:54.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:54.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:54.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:54.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:54.425 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:47:54.426 [INFO] [ThreadPoolExecutor-2865_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:47:54.426 [INFO] [ThreadPoolExecutor-2865_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Status age = 11.803739309310913s
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:47:58.332 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:47:58.333 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:47:58.334 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 17;19.9532212;-24.25637;50.108281;89.992827;50.08601;90.12017;16.97297;2460996.99164738;13.79951778;1.3;_
2025-11-17T13:47:58.334 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response 17;19.9532212;-24.25637;50.108281;89.992827;50.08601;90.12017;16.97297;2460996.99164738;13.79951778;1.3;_
2025-11-17T13:47:58.334 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:47:58.334 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:47:58.334 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:47:58.335 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:58.335 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:47:58.335 [INFO] [Thread-68026 (handle)] [driver.py] [get_status()] Telra = 19.9532212, teldec = -24.25637
2025-11-17T13:47:58.335 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9532212 -24.25637
2025-11-17T13:47:58.335 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9532212 -24.25637
2025-11-17T13:47:58.335 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9532212 -24.25637
2025-11-17T13:47:58.336 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 17;19.9532212;-24.25637;50.108281;89.992827;50.08601;90.12017;16.97297;2460996.99164741;13.79951778;1.3;_19.9273826492836 -24.3236558357971
2025-11-17T13:47:58.336 [INFO] [Thread-68026 (handle)] [driver.py] [get_status()] ra_j2k = 19.9273826492836     dec_j2k = -24.3236558357971
2025-11-17T13:47:58.336 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:47:58.336 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:47:58.336 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162368059163;_
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162368059163;_
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:58.337 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:47:58.338 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:47:58.339 [DEBUG] [Thread-68026 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:58.339 [DEBUG] [Thread-68026 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:47:58.339 [DEBUG] [Thread-68026 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36669)
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:47:58.342 [DEBUG] [Thread-68026 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:47:58.349 [DEBUG] [Thread-68026 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:47:58.350 [DEBUG] [Thread-68026 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:47:58.350 [INFO] [Thread-68026 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99164738, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992827, telescope_ra=19.9532212, telescope_dec=-24.25637, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.97297, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9273826492836, telescope_dec_j2k=-24.3236558357971, observability=1)
2025-11-17T13:48:03.098 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:03.098 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.748806476593018s
2025-11-17T13:48:03.098 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:03.098 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:03.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:03.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9545298;-24.256369;50.108281;89.992827;50.08601;90.12017;16.97428;2460996.99170255;13.80082278;1.3;_
2025-11-17T13:48:03.100 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9545298;-24.256369;50.108281;89.992827;50.08601;90.12017;16.97428;2460996.99170255;13.80082278;1.3;_
2025-11-17T13:48:03.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:03.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:03.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:03.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:03.101 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:03.101 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9545298, teldec = -24.256369
2025-11-17T13:48:03.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9545298 -24.256369
2025-11-17T13:48:03.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9545298 -24.256369
2025-11-17T13:48:03.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9545298 -24.256369
2025-11-17T13:48:03.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9545298;-24.256369;50.108281;89.992827;50.08601;90.12017;16.97428;2460996.99170257;13.80082278;1.3;_19.9286918249888 -24.3236981917492
2025-11-17T13:48:03.102 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9286918249888     dec_j2k = -24.3236981917492
2025-11-17T13:48:03.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:03.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162346601491;_
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162346601491;_
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:03.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:03.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:03.104 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:03.104 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:03.105 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54723)
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:03.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:03.118 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:03.118 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99170255, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108281, telescope_az=89.992827, telescope_ra=19.9545298, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.97428, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9286918249888, telescope_dec_j2k=-24.3236981917492, observability=1)
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Status age = 10.850811243057251s
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:13.969 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:13.970 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:13.971 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 17;19.9575656;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97732;2460996.99182837;13.80385028;1.3;_
2025-11-17T13:48:13.971 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response 17;19.9575656;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97732;2460996.99182837;13.80385028;1.3;_
2025-11-17T13:48:13.971 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:13.971 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:13.971 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:13.972 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:13.972 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:13.972 [INFO] [Thread-68027 (handle)] [driver.py] [get_status()] Telra = 19.9575656, teldec = -24.256369
2025-11-17T13:48:13.972 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9575656 -24.256369
2025-11-17T13:48:13.972 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9575656 -24.256369
2025-11-17T13:48:13.972 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9575656 -24.256369
2025-11-17T13:48:13.973 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 17;19.9575656;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97732;2460996.99182839;13.80385028;1.3;_19.931728961803 -24.3237987424167
2025-11-17T13:48:13.973 [INFO] [Thread-68027 (handle)] [driver.py] [get_status()] ra_j2k = 19.931728961803     dec_j2k = -24.3237987424167
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162357330327;_
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162357330327;_
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:13.974 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:13.975 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:13.976 [DEBUG] [Thread-68027 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:13.976 [DEBUG] [Thread-68027 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:13.976 [DEBUG] [Thread-68027 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:13.979 [DEBUG] [Thread-68027 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41099)
2025-11-17T13:48:13.979 [DEBUG] [Thread-68027 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:13.979 [DEBUG] [Thread-68027 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:13.979 [DEBUG] [Thread-68027 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:13.979 [DEBUG] [Thread-68027 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:13.980 [DEBUG] [Thread-68027 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:13.987 [DEBUG] [Thread-68027 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:13.987 [INFO] [Thread-68027 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99182837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992826, telescope_ra=19.9575656, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.97732, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.931728961803, telescope_dec_j2k=-24.3237987424167, observability=1)
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.0140902996063232s
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9578455;-24.256369;50.10828;89.992826;50.08601;90.12017;16.9776;2460996.99184031;13.80412944;1.3;_
2025-11-17T13:48:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;19.9578455;-24.256369;50.10828;89.992826;50.08601;90.12017;16.9776;2460996.99184031;13.80412944;1.3;_
2025-11-17T13:48:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:15.004 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 19.9578455, teldec = -24.256369
2025-11-17T13:48:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9578455 -24.256369
2025-11-17T13:48:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9578455 -24.256369
2025-11-17T13:48:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9578455 -24.256369
2025-11-17T13:48:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;19.9578455;-24.256369;50.10828;89.992826;50.08601;90.12017;16.9776;2460996.99184034;13.80412944;1.3;_19.9320089851735 -24.3238080110577
2025-11-17T13:48:15.005 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 19.9320089851735     dec_j2k = -24.3238080110577
2025-11-17T13:48:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52503)
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:15.021 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99184031, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992826, telescope_ra=19.9578455, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.9776, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9320089851735, telescope_dec_j2k=-24.3238080110577, observability=1)
2025-11-17T13:48:15.303 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.303 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.303 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:15.303 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:15.303 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:48:15.304 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:15.305 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:15.306 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:48:15.307 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:15.308 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:15.309 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:15.309 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:15.309 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:15.310 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Park
2025-11-17T13:48:15.310 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:48:15.310 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:48:15.310 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 29;19.9579293;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97768;2460996.99184387;13.80421306;1.3;_Park Command Successful
2025-11-17T13:48:16.311 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:48:16.311 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:48:16.311 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:48:16.311 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:48:16.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Status age = 1.38970947265625s
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:16.411 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:16.412 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:16.412 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:16.412 [DEBUG] [Thread-68028 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 17;19.9582563;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97801;2460996.99185663;13.80453917;1.3;_
2025-11-17T13:48:16.413 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response 17;19.9582563;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97801;2460996.99185663;13.80453917;1.3;_
2025-11-17T13:48:16.414 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:16.414 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:16.414 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:16.414 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:16.415 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:16.415 [INFO] [Thread-68028 (handle)] [driver.py] [get_status()] Telra = 19.9582563, teldec = -24.256369
2025-11-17T13:48:16.415 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9582563 -24.256369
2025-11-17T13:48:16.415 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9582563 -24.256369
2025-11-17T13:48:16.415 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9582563 -24.256369
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 17;19.9582563;-24.256369;50.10828;89.992826;50.08601;90.12017;16.97801;2460996.99185667;13.80453917;1.3;_19.9324199662759 -24.3238216136925
2025-11-17T13:48:16.416 [INFO] [Thread-68028 (handle)] [driver.py] [get_status()] ra_j2k = 19.9324199662759     dec_j2k = -24.3238216136925
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162362694745;_
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162362694745;_
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:16.416 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:16.417 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:16.417 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:16.418 [DEBUG] [Thread-68028 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38845)
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:16.425 [DEBUG] [Thread-68028 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:16.432 [DEBUG] [Thread-68028 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:16.432 [DEBUG] [Thread-68028 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:16.432 [DEBUG] [Thread-68028 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:16.433 [DEBUG] [Thread-68028 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:16.433 [INFO] [Thread-68028 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99185663, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992826, telescope_ra=19.9582563, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.97801, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9324199662759, telescope_dec_j2k=-24.3238216136925, observability=1)
2025-11-17T13:48:17.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:48:17.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:48:17.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:48:17.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:48:17.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:48:18.312 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:48:18.313 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:48:18.313 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:48:18.314 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:48:18.314 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:48:19.314 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:48:19.314 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:48:19.314 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_ParkRotatorAccepted
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:48:19.315 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:48:19.316 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:20.317 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:48:20.318 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:48:20.319 [DEBUG] [ThreadPoolExecutor-2864_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:20.319 [INFO] [ThreadPoolExecutor-2864_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.122175931930542s
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:31.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9624703;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98222;2460996.9920319;13.80874167;1.3;_
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.9624703;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98222;2460996.9920319;13.80874167;1.3;_
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:31.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:31.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:31.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:31.557 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.9624703, teldec = -24.256369
2025-11-17T13:48:31.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.9624703 -24.256369
2025-11-17T13:48:31.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.9624703 -24.256369
2025-11-17T13:48:31.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9624703 -24.256369
2025-11-17T13:48:31.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9624703;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98222;2460996.99203192;13.80874167;1.3;_19.9366358264769 -24.3239611056963
2025-11-17T13:48:31.558 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.9366358264769     dec_j2k = -24.3239611056963
2025-11-17T13:48:31.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:31.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:31.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668143668625;171.162346601491;_
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162346601491;_
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:31.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:31.561 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:31.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:31.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:31.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42509)
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:31.565 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:31.572 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:31.573 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:48:31.573 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9920319, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992826, telescope_ra=19.9624703, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.98222, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9366358264769, telescope_dec_j2k=-24.3239611056963, observability=1)
2025-11-17T13:48:31.573 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06301736831665 seconds ago
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Status age = 2.953727960586548s
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:34.527 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:34.528 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 17;19.9633009;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98305;2460996.9920663;13.80957;1.3;_
2025-11-17T13:48:34.528 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response 17;19.9633009;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98305;2460996.9920663;13.80957;1.3;_
2025-11-17T13:48:34.528 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:34.528 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:34.528 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:34.529 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:34.529 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:34.529 [INFO] [Thread-68029 (handle)] [driver.py] [get_status()] Telra = 19.9633009, teldec = -24.256369
2025-11-17T13:48:34.529 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9633009 -24.256369
2025-11-17T13:48:34.529 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9633009 -24.256369
2025-11-17T13:48:34.529 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9633009 -24.256369
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 17;19.9633009;-24.256369;50.10828;89.992826;50.08601;90.12017;16.98305;2460996.99206632;13.80957;1.3;_19.9374667936575 -24.3239885907248
2025-11-17T13:48:34.530 [INFO] [Thread-68029 (handle)] [driver.py] [get_status()] ra_j2k = 19.9374667936575     dec_j2k = -24.3239885907248
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162351965909;_
2025-11-17T13:48:34.530 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162351965909;_
2025-11-17T13:48:34.531 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:34.531 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:34.531 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:34.531 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:34.531 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:34.532 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:34.532 [DEBUG] [Thread-68029 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:34.532 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:34.532 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:34.532 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:34.533 [DEBUG] [Thread-68029 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:34.533 [DEBUG] [Thread-68029 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:34.533 [DEBUG] [Thread-68029 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41271)
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:34.535 [DEBUG] [Thread-68029 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:34.542 [DEBUG] [Thread-68029 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:34.542 [DEBUG] [Thread-68029 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:34.542 [DEBUG] [Thread-68029 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:34.542 [DEBUG] [Thread-68029 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:34.543 [DEBUG] [Thread-68029 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:34.543 [DEBUG] [Thread-68029 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:34.543 [DEBUG] [Thread-68029 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:34.543 [DEBUG] [Thread-68029 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:34.543 [DEBUG] [Thread-68029 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:34.543 [INFO] [Thread-68029 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9920663, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992826, telescope_ra=19.9633009, telescope_dec=-24.256369, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.98305, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9374667936575, telescope_dec_j2k=-24.3239885907248, observability=1)
2025-11-17T13:48:46.589 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:48:46
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.046383619308472s
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:46.589 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:46.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9666526;-24.256368;50.10828;89.992825;50.08601;90.12017;16.9864;2460996.99220591;13.8129125;1.3;_
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.9666526;-24.256368;50.10828;89.992825;50.08601;90.12017;16.9864;2460996.99220591;13.8129125;1.3;_
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:46.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:46.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:46.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:46.592 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.9666526, teldec = -24.256368
2025-11-17T13:48:46.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9666526 -24.256368
2025-11-17T13:48:46.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9666526 -24.256368
2025-11-17T13:48:46.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9666526 -24.256368
2025-11-17T13:48:46.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9666526;-24.256368;50.10828;89.992825;50.08601;90.12017;16.9864;2460996.99220594;13.8129125;1.3;_19.940819977268 -24.3240984685643
2025-11-17T13:48:46.593 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.940819977268     dec_j2k = -24.3240984685643
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668464564167;171.162362694745;_
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668464564167;171.162362694745;_
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:46.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:46.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:46.595 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:48:46.596 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:48:46.602 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58003)
2025-11-17T13:48:46.602 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:46.602 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:46.602 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:46.602 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:46.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:46.609 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:46.610 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:46.610 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99220591, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668464564167, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992825, telescope_ra=19.9666526, telescope_dec=-24.256368, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.9864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.940819977268, telescope_dec_j2k=-24.3240984685643, observability=1)
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Status age = 5.981038808822632s
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:52.591 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:48:52.592 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:48:52.593 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 17;19.9683241;-24.256368;50.10828;89.992825;50.08601;90.12017;16.98807;2460996.99227538;13.81457944;1.3;_
2025-11-17T13:48:52.593 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response 17;19.9683241;-24.256368;50.10828;89.992825;50.08601;90.12017;16.98807;2460996.99227538;13.81457944;1.3;_
2025-11-17T13:48:52.593 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:48:52.593 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:48:52.593 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:48:52.594 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:52.594 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:48:52.594 [INFO] [Thread-68030 (handle)] [driver.py] [get_status()] Telra = 19.9683241, teldec = -24.256368
2025-11-17T13:48:52.594 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9683241 -24.256368
2025-11-17T13:48:52.594 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9683241 -24.256368
2025-11-17T13:48:52.594 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9683241 -24.256368
2025-11-17T13:48:52.595 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 17;19.9683241;-24.256368;50.10828;89.992825;50.08601;90.12017;16.98807;2460996.99227541;13.81457944;1.3;_19.9424922181126 -24.3241537443992
2025-11-17T13:48:52.595 [INFO] [Thread-68030 (handle)] [driver.py] [get_status()] ra_j2k = 19.9424922181126     dec_j2k = -24.3241537443992
2025-11-17T13:48:52.595 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:48:52.595 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:48:52.595 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 140;0.104668705235824;171.162368059163;_
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response 140;0.104668705235824;171.162368059163;_
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:52.596 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:48:52.597 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:48:52.598 [DEBUG] [Thread-68030 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:52.598 [DEBUG] [Thread-68030 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:48:52.598 [DEBUG] [Thread-68030 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:48:52.602 [DEBUG] [Thread-68030 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40997)
2025-11-17T13:48:52.602 [DEBUG] [Thread-68030 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:52.602 [DEBUG] [Thread-68030 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:52.603 [DEBUG] [Thread-68030 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:48:52.603 [DEBUG] [Thread-68030 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:52.603 [DEBUG] [Thread-68030 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:48:52.610 [DEBUG] [Thread-68030 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:48:52.610 [INFO] [Thread-68030 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99227538, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668705235824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992825, telescope_ra=19.9683241, telescope_dec=-24.256368, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.98807, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:47:54.423257', telescope_ra_j2k=19.9424922181126, telescope_dec_j2k=-24.3241537443992, observability=1)
2025-11-17T13:48:54.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:54.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:54.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:54.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:54.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:54.567 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:54.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:54.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:54.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:54.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:54.568 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:48:54.568 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:54.568 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:54.568 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:54.568 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:48:54.569 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:48:54.570 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:55.570 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:55.570 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:55.570 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:55.570 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:55.570 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:48:55.572 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:48:55.573 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:48:55.574 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:48:55.574 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:48:55.574 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:48:55.574 [DEBUG] [ThreadPoolExecutor-2866_0] [payload.py] [to_registers()] [0]
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45919)
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:48:55.575 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:48:55.582 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:48:55.583 [DEBUG] [ThreadPoolExecutor-2866_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.600830316543579s
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:02.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:02.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:02.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9709953;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99075;2460996.99238672;13.81724333;1.3;_
2025-11-17T13:49:02.214 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9709953;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99075;2460996.99238672;13.81724333;1.3;_
2025-11-17T13:49:02.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:02.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:02.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:02.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:02.215 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:02.215 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9709953, teldec = -24.256368
2025-11-17T13:49:02.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9709953 -24.256368
2025-11-17T13:49:02.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9709953 -24.256368
2025-11-17T13:49:02.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9709953 -24.256368
2025-11-17T13:49:02.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9709953;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99075;2460996.99238676;13.81724333;1.3;_19.9451646035003 -24.3242420534391
2025-11-17T13:49:02.216 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9451646035003     dec_j2k = -24.3242420534391
2025-11-17T13:49:02.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:02.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:02.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668063444739;171.162357330327;_
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668063444739;171.162357330327;_
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:02.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:02.218 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:02.219 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:02.219 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:02.219 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56441)
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:02.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:02.233 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:49:02.233 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99238672, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668063444739, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992825, telescope_ra=19.9709953, telescope_dec=-24.256368, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.99075, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9451646035003, telescope_dec_j2k=-24.3242420534391, observability=1)
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Status age = 8.447618007659912s
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:10.681 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 17;19.9733665;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99312;2460996.99248475;13.81960806;1.3;_
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response 17;19.9733665;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99312;2460996.99248475;13.81960806;1.3;_
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:10.682 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:10.683 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:10.683 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:10.683 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:10.684 [INFO] [Thread-68031 (handle)] [driver.py] [get_status()] Telra = 19.9733665, teldec = -24.256368
2025-11-17T13:49:10.684 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9733665 -24.256368
2025-11-17T13:49:10.684 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9733665 -24.256368
2025-11-17T13:49:10.684 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9733665 -24.256368
2025-11-17T13:49:10.685 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 17;19.9733665;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99312;2460996.99248478;13.81960806;1.3;_19.9475368572571 -24.3243204172556
2025-11-17T13:49:10.685 [INFO] [Thread-68031 (handle)] [driver.py] [get_status()] ra_j2k = 19.9475368572571     dec_j2k = -24.3243204172556
2025-11-17T13:49:10.685 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:10.685 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:10.685 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162346601491;_
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162346601491;_
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:10.686 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:10.687 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:10.687 [DEBUG] [Thread-68031 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:10.687 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:10.687 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:10.687 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:10.688 [DEBUG] [Thread-68031 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:10.688 [DEBUG] [Thread-68031 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:10.688 [DEBUG] [Thread-68031 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52023)
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:10.689 [DEBUG] [Thread-68031 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:10.696 [DEBUG] [Thread-68031 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:49:10.697 [INFO] [Thread-68031 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99248475, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992825, telescope_ra=19.9733665, telescope_dec=-24.256368, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.99312, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9475368572571, telescope_dec_j2k=-24.3243204172556, observability=1)
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Status age = 3.32323956489563s
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:14.020 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:14.021 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:14.022 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 17;19.9742809;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99403;2460996.9925234;13.82052;1.3;_
2025-11-17T13:49:14.022 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response 17;19.9742809;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99403;2460996.9925234;13.82052;1.3;_
2025-11-17T13:49:14.022 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:14.022 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:14.022 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:14.023 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:14.023 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:14.023 [INFO] [Thread-68032 (handle)] [driver.py] [get_status()] Telra = 19.9742809, teldec = -24.256368
2025-11-17T13:49:14.023 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9742809 -24.256368
2025-11-17T13:49:14.023 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9742809 -24.256368
2025-11-17T13:49:14.023 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9742809 -24.256368
2025-11-17T13:49:14.024 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 17;19.9742809;-24.256368;50.10828;89.992825;50.08601;90.12017;16.99403;2460996.99252343;13.82052;1.3;_19.9484516639912 -24.32435062963
2025-11-17T13:49:14.024 [INFO] [Thread-68032 (handle)] [driver.py] [get_status()] ra_j2k = 19.9484516639912     dec_j2k = -24.32435062963
2025-11-17T13:49:14.024 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:14.024 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:14.024 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:14.025 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:14.026 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:14.027 [DEBUG] [Thread-68032 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:14.027 [DEBUG] [Thread-68032 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:14.027 [DEBUG] [Thread-68032 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40035)
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:14.028 [DEBUG] [Thread-68032 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:14.036 [DEBUG] [Thread-68032 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:49:14.036 [INFO] [Thread-68032 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9925234, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10828, telescope_az=89.992825, telescope_ra=19.9742809, telescope_dec=-24.256368, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.99403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9484516639912, telescope_dec_j2k=-24.32435062963, observability=1)
2025-11-17T13:49:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.9363040924072266s
2025-11-17T13:49:14.973 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9363040924072266
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:20.583 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:49:20.584 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:49:20.585 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Status age = 14.74174690246582s
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:28.778 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:28.779 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:28.780 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 17;19.978408;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99816;2460996.99269421;13.82463583;1.3;_
2025-11-17T13:49:28.780 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response 17;19.978408;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99816;2460996.99269421;13.82463583;1.3;_
2025-11-17T13:49:28.780 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:28.780 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:28.780 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:28.781 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:28.781 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:28.781 [INFO] [Thread-68033 (handle)] [driver.py] [get_status()] Telra = 19.978408, teldec = -24.256367
2025-11-17T13:49:28.781 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] UnCookCoordinates 19.978408 -24.256367
2025-11-17T13:49:28.781 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.978408 -24.256367
2025-11-17T13:49:28.781 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.978408 -24.256367
2025-11-17T13:49:28.782 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 17;19.978408;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99816;2460996.99269424;13.82463583;1.3;_19.9525806025497 -24.3244859441635
2025-11-17T13:49:28.782 [INFO] [Thread-68033 (handle)] [driver.py] [get_status()] ra_j2k = 19.9525806025497     dec_j2k = -24.3244859441635
2025-11-17T13:49:28.782 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:28.782 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 140;0.104668023332796;171.162362694745;_
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response 140;0.104668023332796;171.162362694745;_
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:28.783 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:28.784 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:28.785 [DEBUG] [Thread-68033 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:28.785 [DEBUG] [Thread-68033 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:28.785 [DEBUG] [Thread-68033 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56693)
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:28.787 [DEBUG] [Thread-68033 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:28.794 [DEBUG] [Thread-68033 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:49:28.795 [INFO] [Thread-68033 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99269421, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668023332796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992824, telescope_ra=19.978408, telescope_dec=-24.256367, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.99816, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9525806025497, telescope_dec_j2k=-24.3244859441635, observability=1)
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.8385093212127686s
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:31.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:31.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:31.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9791913;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99894;2460996.99272726;13.82541694;1.3;_
2025-11-17T13:49:31.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.9791913;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99894;2460996.99272726;13.82541694;1.3;_
2025-11-17T13:49:31.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:31.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:31.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:31.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:31.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:31.636 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.9791913, teldec = -24.256367
2025-11-17T13:49:31.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.9791913 -24.256367
2025-11-17T13:49:31.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.9791913 -24.256367
2025-11-17T13:49:31.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9791913 -24.256367
2025-11-17T13:49:31.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9791913;-24.256367;50.108279;89.992824;50.08601;90.12017;16.99894;2460996.99272728;13.82541694;1.3;_19.9533642519459 -24.3245118070504
2025-11-17T13:49:31.637 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.9533642519459     dec_j2k = -24.3245118070504
2025-11-17T13:49:31.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:31.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668424452224;171.162351965909;_
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162351965909;_
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:31.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:31.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:31.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:31.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:31.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:31.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38413)
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:31.647 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:31.654 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:31.655 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:31.655 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:31.655 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:49:31.655 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99272726, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992824, telescope_ra=19.9791913, telescope_dec=-24.256367, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=16.99894, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9533642519459, telescope_dec_j2k=-24.3245118070504, observability=1)
2025-11-17T13:49:31.655 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06579804420471 seconds ago
2025-11-17T13:49:46.671 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:49:46
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.016419410705566s
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:46.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:46.672 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:49:46.673 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:49:46.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9833939;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00314;2460996.99290132;13.82960806;1.3;_
2025-11-17T13:49:46.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;19.9833939;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00314;2460996.99290132;13.82960806;1.3;_
2025-11-17T13:49:46.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:49:46.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:49:46.674 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:49:46.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:46.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:49:46.675 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 19.9833939, teldec = -24.256367
2025-11-17T13:49:46.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9833939 -24.256367
2025-11-17T13:49:46.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9833939 -24.256367
2025-11-17T13:49:46.675 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9833939 -24.256367
2025-11-17T13:49:46.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;19.9833939;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00314;2460996.99290134;13.82960806;1.3;_19.9575687291673 -24.3246505197972
2025-11-17T13:49:46.676 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.9575687291673     dec_j2k = -24.3246505197972
2025-11-17T13:49:46.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:49:46.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:49:46.676 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667782661139;171.162351965909;_
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667782661139;171.162351965909;_
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:46.677 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:46.678 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:49:46.679 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44725)
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:49:46.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:49:46.689 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:49:46.689 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99290132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667782661139, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992823, telescope_ra=19.9833939, telescope_dec=-24.256367, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.00314, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:48:54.565612', telescope_ra_j2k=19.9575687291673, telescope_dec_j2k=-24.3246505197972, observability=1)
2025-11-17T13:49:46.846 [DEBUG] [Thread-68034 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:49:46.846 [DEBUG] [Thread-68034 (handle)] [server.py] [get_status()] Status age = 0.15630435943603516s
2025-11-17T13:49:46.846 [DEBUG] [Thread-68034 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.15630435943603516
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:54.709 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:49:54.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:49:54.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:49:54.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:49:54.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:49:54.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:49:54.710 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:49:54.711 [INFO] [ThreadPoolExecutor-2867_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:49:54.711 [INFO] [ThreadPoolExecutor-2867_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:50:01.323 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:01.323 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.634042501449585s
2025-11-17T13:50:01.323 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:01.324 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:01.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9874672;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00722;2460996.99307089;13.83367028;1.3;_
2025-11-17T13:50:01.325 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;19.9874672;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00722;2460996.99307089;13.83367028;1.3;_
2025-11-17T13:50:01.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:01.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:01.325 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:01.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:01.326 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:01.326 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 19.9874672, teldec = -24.256367
2025-11-17T13:50:01.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9874672 -24.256367
2025-11-17T13:50:01.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9874672 -24.256367
2025-11-17T13:50:01.326 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9874672 -24.256367
2025-11-17T13:50:01.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;19.9874672;-24.256367;50.108279;89.992823;50.08601;90.12017;17.00722;2460996.99307091;13.83367028;1.3;_19.9616438528526 -24.3247848873221
2025-11-17T13:50:01.327 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9616438528526     dec_j2k = -24.3247848873221
2025-11-17T13:50:01.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:01.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162346601491;_
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162346601491;_
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:01.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:01.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:01.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:01.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:01.329 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:01.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:01.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:01.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:01.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:01.330 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:01.330 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:01.334 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45111)
2025-11-17T13:50:01.334 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:01.334 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:01.334 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:01.335 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:01.335 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:01.342 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:01.342 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99307089, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992823, telescope_ra=19.9874672, telescope_dec=-24.256367, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.00722, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9616438528526, telescope_dec_j2k=-24.3247848873221, observability=1)
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Status age = 3.617666244506836s
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:04.960 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 17;19.9884964;-24.256366;50.108279;89.992823;50.08601;90.12017;17.00825;2460996.99311297;13.83469667;1.3;_
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response 17;19.9884964;-24.256366;50.108279;89.992823;50.08601;90.12017;17.00825;2460996.99311297;13.83469667;1.3;_
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:04.961 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:04.962 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:04.962 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:04.962 [INFO] [Thread-68035 (handle)] [driver.py] [get_status()] Telra = 19.9884964, teldec = -24.256366
2025-11-17T13:50:04.962 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9884964 -24.256366
2025-11-17T13:50:04.962 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9884964 -24.256366
2025-11-17T13:50:04.962 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9884964 -24.256366
2025-11-17T13:50:04.963 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 17;19.9884964;-24.256366;50.108279;89.992823;50.08601;90.12017;17.00825;2460996.993113;13.83469667;1.3;_19.9626735144763 -24.3248178259416
2025-11-17T13:50:04.963 [INFO] [Thread-68035 (handle)] [driver.py] [get_status()] ra_j2k = 19.9626735144763     dec_j2k = -24.3248178259416
2025-11-17T13:50:04.963 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:04.963 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:04.963 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 140;0.104668143668625;171.162362694745;_
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162362694745;_
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:04.964 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:04.965 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:04.966 [DEBUG] [Thread-68035 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:04.966 [DEBUG] [Thread-68035 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:04.966 [DEBUG] [Thread-68035 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46147)
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:04.972 [DEBUG] [Thread-68035 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:04.980 [DEBUG] [Thread-68035 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:04.980 [INFO] [Thread-68035 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99311297, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992823, telescope_ra=19.9884964, telescope_dec=-24.256366, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.00825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9626735144763, telescope_dec_j2k=-24.3248178259416, observability=1)
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Status age = 9.084922552108765s
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:14.065 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:14.066 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:14.067 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 17;19.9910311;-24.256366;50.108279;89.992823;50.08601;90.12017;17.01078;2460996.99321837;13.83722444;1.3;_
2025-11-17T13:50:14.067 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response 17;19.9910311;-24.256366;50.108279;89.992823;50.08601;90.12017;17.01078;2460996.99321837;13.83722444;1.3;_
2025-11-17T13:50:14.067 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:14.067 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:14.067 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:14.068 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:14.068 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:14.068 [INFO] [Thread-68036 (handle)] [driver.py] [get_status()] Telra = 19.9910311, teldec = -24.256366
2025-11-17T13:50:14.068 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9910311 -24.256366
2025-11-17T13:50:14.068 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9910311 -24.256366
2025-11-17T13:50:14.068 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9910311 -24.256366
2025-11-17T13:50:14.069 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 17;19.9910311;-24.256366;50.108279;89.992823;50.08601;90.12017;17.01078;2460996.99321839;13.83722444;1.3;_19.9652093520525 -24.3249013884722
2025-11-17T13:50:14.069 [INFO] [Thread-68036 (handle)] [driver.py] [get_status()] ra_j2k = 19.9652093520525     dec_j2k = -24.3249013884722
2025-11-17T13:50:14.069 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:14.069 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:14.069 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:14.070 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 140;0.104668023332796;171.162357330327;_
2025-11-17T13:50:14.070 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response 140;0.104668023332796;171.162357330327;_
2025-11-17T13:50:14.070 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:14.070 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:14.070 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:14.071 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:14.071 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:14.071 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:14.072 [DEBUG] [Thread-68036 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:14.072 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:14.072 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:14.072 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:14.072 [DEBUG] [Thread-68036 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:14.073 [DEBUG] [Thread-68036 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:14.073 [DEBUG] [Thread-68036 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38475)
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:14.077 [DEBUG] [Thread-68036 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:14.084 [DEBUG] [Thread-68036 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:14.084 [DEBUG] [Thread-68036 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:14.084 [DEBUG] [Thread-68036 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:14.084 [DEBUG] [Thread-68036 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:14.085 [DEBUG] [Thread-68036 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:14.085 [DEBUG] [Thread-68036 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:14.085 [DEBUG] [Thread-68036 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:14.085 [DEBUG] [Thread-68036 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:14.085 [DEBUG] [Thread-68036 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:14.085 [INFO] [Thread-68036 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99321837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668023332796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992823, telescope_ra=19.9910311, telescope_dec=-24.256366, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.01078, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9652093520525, telescope_dec_j2k=-24.3249013884722, observability=1)
2025-11-17T13:50:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8912317752838135s
2025-11-17T13:50:14.976 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8912317752838135
2025-11-17T13:50:15.585 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.585 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.585 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:15.585 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:50:15.586 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:15.587 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:15.588 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.588 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:15.588 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:15.588 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.588 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:15.589 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:50:15.590 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.591 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:15.591 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:15.591 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:15.591 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:15.591 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Park
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:50:15.592 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 29;19.9914514;-24.256366;50.108279;89.992823;50.08601;90.12017;17.0112;2460996.99323602;13.83764361;1.3;_Park Command Successful
2025-11-17T13:50:16.593 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:50:16.593 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:50:16.593 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:50:16.594 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:50:16.594 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:50:17.594 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:50:17.594 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:50:17.594 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:50:17.595 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:50:17.595 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:50:18.595 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:50:18.595 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:50:18.595 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:50:18.596 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:50:18.596 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:50:19.596 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:50:19.596 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:50:19.597 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:19.598 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:50:19.599 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:50:19.600 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:20.600 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:20.600 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:20.600 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:20.600 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:20.600 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:50:20.601 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:50:20.602 [DEBUG] [ThreadPoolExecutor-2866_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:20.602 [INFO] [ThreadPoolExecutor-2866_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Status age = 8.94731616973877s
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:23.032 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:23.033 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:23.034 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 17;19.9935054;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01326;2460996.99332214;13.83969194;1.3;_
2025-11-17T13:50:23.034 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response 17;19.9935054;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01326;2460996.99332214;13.83969194;1.3;_
2025-11-17T13:50:23.034 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:23.034 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:23.034 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:23.035 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:23.035 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:23.035 [INFO] [Thread-68037 (handle)] [driver.py] [get_status()] Telra = 19.9935054, teldec = -24.256366
2025-11-17T13:50:23.035 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9935054 -24.256366
2025-11-17T13:50:23.035 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9935054 -24.256366
2025-11-17T13:50:23.035 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9935054 -24.256366
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 17;19.9935054;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01326;2460996.99332218;13.83969194;1.3;_19.9676847640711 -24.3249829311723
2025-11-17T13:50:23.036 [INFO] [Thread-68037 (handle)] [driver.py] [get_status()] ra_j2k = 19.9676847640711     dec_j2k = -24.3249829311723
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 140;0.104668264004453;171.162351965909;_
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response 140;0.104668264004453;171.162351965909;_
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:23.036 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:23.037 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:23.037 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:23.037 [DEBUG] [Thread-68037 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:23.037 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:23.037 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:23.038 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:23.038 [DEBUG] [Thread-68037 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:23.038 [DEBUG] [Thread-68037 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:23.038 [DEBUG] [Thread-68037 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:23.041 [DEBUG] [Thread-68037 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53523)
2025-11-17T13:50:23.041 [DEBUG] [Thread-68037 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:23.041 [DEBUG] [Thread-68037 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:23.041 [DEBUG] [Thread-68037 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:23.041 [DEBUG] [Thread-68037 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:23.042 [DEBUG] [Thread-68037 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:23.049 [DEBUG] [Thread-68037 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:23.049 [INFO] [Thread-68037 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99332214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668264004453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992822, telescope_ra=19.9935054, telescope_dec=-24.256366, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.01326, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9676847640711, telescope_dec_j2k=-24.3249829311723, observability=1)
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.665621757507324s
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:31.715 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:31.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9959331;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01568;2460996.99342264;13.84211306;1.3;_
2025-11-17T13:50:31.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;19.9959331;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01568;2460996.99342264;13.84211306;1.3;_
2025-11-17T13:50:31.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:31.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:31.716 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:31.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:31.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:31.717 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 19.9959331, teldec = -24.256366
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 19.9959331 -24.256366
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 19.9959331 -24.256366
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9959331 -24.256366
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;19.9959331;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01568;2460996.99342266;13.84211306;1.3;_19.9701135566341 -24.3250629106354
2025-11-17T13:50:31.718 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.9701135566341     dec_j2k = -24.3250629106354
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668264004453;171.162357330327;_
2025-11-17T13:50:31.718 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:31.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:31.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:31.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:31.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:31.724 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48543)
2025-11-17T13:50:31.725 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:31.725 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:31.725 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:31.725 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:31.725 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:31.732 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:50:31.733 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99342264, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668264004453, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992822, telescope_ra=19.9959331, telescope_dec=-24.256366, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.01568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9701135566341, telescope_dec_j2k=-24.3250629106354, observability=1)
2025-11-17T13:50:31.733 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0616991519928 seconds ago
2025-11-17T13:50:41.094 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:41.094 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Status age = 9.361965894699097s
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:41.095 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:41.096 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:41.097 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 17;19.9985564;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01831;2460996.99353122;13.84472917;1.3;_
2025-11-17T13:50:41.097 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response 17;19.9985564;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01831;2460996.99353122;13.84472917;1.3;_
2025-11-17T13:50:41.097 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:41.097 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:41.097 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:41.098 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:41.098 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:41.098 [INFO] [Thread-68038 (handle)] [driver.py] [get_status()] Telra = 19.9985564, teldec = -24.256366
2025-11-17T13:50:41.098 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] UnCookCoordinates 19.9985564 -24.256366
2025-11-17T13:50:41.098 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 19.9985564 -24.256366
2025-11-17T13:50:41.098 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 19.9985564 -24.256366
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 17;19.9985564;-24.256366;50.108279;89.992822;50.08601;90.12017;17.01831;2460996.99353123;13.84472917;1.3;_19.9727380388811 -24.3251493034015
2025-11-17T13:50:41.099 [INFO] [Thread-68038 (handle)] [driver.py] [get_status()] ra_j2k = 19.9727380388811     dec_j2k = -24.3251493034015
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 140;0.10466850467611;171.162357330327;_
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response 140;0.10466850467611;171.162357330327;_
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:41.099 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:41.100 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:41.100 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:41.100 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:41.101 [DEBUG] [Thread-68038 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:41.102 [DEBUG] [Thread-68038 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:41.104 [DEBUG] [Thread-68038 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56807)
2025-11-17T13:50:41.104 [DEBUG] [Thread-68038 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:41.104 [DEBUG] [Thread-68038 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:41.104 [DEBUG] [Thread-68038 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:41.105 [DEBUG] [Thread-68038 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:41.105 [DEBUG] [Thread-68038 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:41.112 [DEBUG] [Thread-68038 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:41.113 [DEBUG] [Thread-68038 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:41.113 [DEBUG] [Thread-68038 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:41.113 [INFO] [Thread-68038 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99353122, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466850467611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108279, telescope_az=89.992822, telescope_ra=19.9985564, telescope_dec=-24.256366, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.01831, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9727380388811, telescope_dec_j2k=-24.3251493034015, observability=1)
2025-11-17T13:50:46.750 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:50:46
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.637392282485962s
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:46.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:46.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:46.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:46.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:46.752 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:46.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:46.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:46.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:46.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0001159;-24.256365;50.108278;89.992822;50.08601;90.12017;17.01987;2460996.99359668;13.84628444;1.3;_
2025-11-17T13:50:46.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.0001159;-24.256365;50.108278;89.992822;50.08601;90.12017;17.01987;2460996.99359668;13.84628444;1.3;_
2025-11-17T13:50:46.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:46.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:46.753 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:46.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:46.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:46.754 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.0001159, teldec = -24.256365
2025-11-17T13:50:46.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0001159 -24.256365
2025-11-17T13:50:46.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0001159 -24.256365
2025-11-17T13:50:46.754 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0001159 -24.256365
2025-11-17T13:50:46.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0001159;-24.256365;50.108278;89.992822;50.08601;90.12017;17.01987;2460996.9935967;13.84628444;1.3;_19.9742982426948 -24.3251996471796
2025-11-17T13:50:46.755 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.9742982426948     dec_j2k = -24.3251996471796
2025-11-17T13:50:46.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:46.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:46.755 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:46.756 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668986019424;171.162346601491;_
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668986019424;171.162346601491;_
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:46.757 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:46.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:46.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:46.758 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34377)
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:46.759 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:46.766 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:46.766 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99359668, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668986019424, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992822, telescope_ra=20.0001159, telescope_dec=-24.256365, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.01987, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:49:54.708679', telescope_ra_j2k=19.9742982426948, telescope_dec_j2k=-24.3251996471796, observability=1)
2025-11-17T13:50:54.851 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:54.851 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:54.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:54.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:54.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:54.853 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:54.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:54.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:54.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:54.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:54.854 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:50:54.854 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:54.854 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:54.854 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:54.854 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:54.854 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:50:54.855 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:50:54.856 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:55.856 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:55.856 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:55.856 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:55.856 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:55.856 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:50:55.857 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:55.858 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:55.859 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:55.859 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:55.859 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:55.859 [DEBUG] [ThreadPoolExecutor-2868_0] [payload.py] [to_registers()] [0]
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33819)
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:55.861 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:55.868 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:55.869 [DEBUG] [ThreadPoolExecutor-2868_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Status age = 12.453801155090332s
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:50:59.220 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:50:59.221 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:50:59.222 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 17;20.0035982;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02335;2460996.993741;13.84975722;1.3;_
2025-11-17T13:50:59.222 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response 17;20.0035982;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02335;2460996.993741;13.84975722;1.3;_
2025-11-17T13:50:59.222 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:50:59.222 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:50:59.222 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:50:59.223 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:59.223 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:50:59.223 [INFO] [Thread-68039 (handle)] [driver.py] [get_status()] Telra = 20.0035982, teldec = -24.256365
2025-11-17T13:50:59.223 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0035982 -24.256365
2025-11-17T13:50:59.223 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0035982 -24.256365
2025-11-17T13:50:59.223 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0035982 -24.256365
2025-11-17T13:50:59.224 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 17;20.0035982;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02335;2460996.99374102;13.84975722;1.3;_19.9777821160817 -24.3253142548366
2025-11-17T13:50:59.224 [INFO] [Thread-68039 (handle)] [driver.py] [get_status()] ra_j2k = 19.9777821160817     dec_j2k = -24.3253142548366
2025-11-17T13:50:59.224 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:50:59.224 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:50:59.224 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 140;0.104668745347767;171.162357330327;_
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response 140;0.104668745347767;171.162357330327;_
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:59.225 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:59.226 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:59.226 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:59.226 [DEBUG] [Thread-68039 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:59.226 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:50:59.227 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:50:59.227 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:50:59.228 [DEBUG] [Thread-68039 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:59.228 [DEBUG] [Thread-68039 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:50:59.228 [DEBUG] [Thread-68039 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54719)
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:50:59.233 [DEBUG] [Thread-68039 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:50:59.240 [DEBUG] [Thread-68039 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:50:59.240 [DEBUG] [Thread-68039 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:59.240 [DEBUG] [Thread-68039 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:50:59.240 [DEBUG] [Thread-68039 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:50:59.240 [DEBUG] [Thread-68039 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:50:59.241 [DEBUG] [Thread-68039 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:50:59.241 [DEBUG] [Thread-68039 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:50:59.241 [DEBUG] [Thread-68039 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:50:59.241 [DEBUG] [Thread-68039 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:50:59.241 [INFO] [Thread-68039 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.993741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668745347767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992821, telescope_ra=20.0035982, telescope_dec=-24.256365, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.02335, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9777821160817, telescope_dec_j2k=-24.3253142548366, observability=1)
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.1912851333618164s
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:00.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:00.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:00.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0039339;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02368;2460996.99375502;13.85009194;1.3;_
2025-11-17T13:51:00.434 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.0039339;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02368;2460996.99375502;13.85009194;1.3;_
2025-11-17T13:51:00.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:00.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:00.434 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:00.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:00.435 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:00.435 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.0039339, teldec = -24.256365
2025-11-17T13:51:00.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0039339 -24.256365
2025-11-17T13:51:00.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0039339 -24.256365
2025-11-17T13:51:00.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0039339 -24.256365
2025-11-17T13:51:00.436 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0039339;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02368;2460996.99375505;13.85009194;1.3;_19.9781179679191 -24.3253253002472
2025-11-17T13:51:00.436 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9781179679191     dec_j2k = -24.3253253002472
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:00.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:00.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:00.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:00.438 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:00.439 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52103)
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:00.443 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:00.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:00.451 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:00.451 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:00.451 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99375502, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992821, telescope_ra=20.0039339, telescope_dec=-24.256365, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.02368, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9781179679191, telescope_dec_j2k=-24.3253253002472, observability=1)
2025-11-17T13:51:14.117 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Status age = 13.666922092437744s
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:14.118 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 17;20.0077524;-24.256365;50.108278;89.992821;50.08601;90.12017;17.0275;2460996.99391341;13.8539;1.3;_
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response 17;20.0077524;-24.256365;50.108278;89.992821;50.08601;90.12017;17.0275;2460996.99391341;13.8539;1.3;_
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:14.119 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:14.120 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:14.120 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:14.121 [INFO] [Thread-68040 (handle)] [driver.py] [get_status()] Telra = 20.0077524, teldec = -24.256365
2025-11-17T13:51:14.121 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0077524 -24.256365
2025-11-17T13:51:14.121 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0077524 -24.256365
2025-11-17T13:51:14.121 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0077524 -24.256365
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 17;20.0077524;-24.256365;50.108278;89.992821;50.08601;90.12017;17.0275;2460996.99391344;13.8539;1.3;_19.9819381970103 -24.3254509020585
2025-11-17T13:51:14.122 [INFO] [Thread-68040 (handle)] [driver.py] [get_status()] ra_j2k = 19.9819381970103     dec_j2k = -24.3254509020585
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 140;0.104668905795538;171.162357330327;_
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response 140;0.104668905795538;171.162357330327;_
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:14.122 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:14.123 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:14.124 [DEBUG] [Thread-68040 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:14.124 [DEBUG] [Thread-68040 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:14.124 [DEBUG] [Thread-68040 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47309)
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:14.131 [DEBUG] [Thread-68040 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:14.138 [DEBUG] [Thread-68040 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:14.138 [DEBUG] [Thread-68040 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:14.138 [DEBUG] [Thread-68040 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:14.138 [DEBUG] [Thread-68040 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:14.138 [DEBUG] [Thread-68040 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:14.139 [DEBUG] [Thread-68040 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:14.139 [DEBUG] [Thread-68040 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:14.139 [DEBUG] [Thread-68040 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:14.139 [DEBUG] [Thread-68040 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:14.139 [INFO] [Thread-68040 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99391341, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668905795538, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992821, telescope_ra=20.0077524, telescope_dec=-24.256365, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.0275, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9819381970103, telescope_dec_j2k=-24.3254509020585, observability=1)
2025-11-17T13:51:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8561954498291016s
2025-11-17T13:51:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8561954498291016
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Status age = 3.150251626968384s
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:17.289 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:17.290 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:17.291 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:17.294 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 17;20.0086417;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02839;2460996.99395016;13.85478694;1.3;_
2025-11-17T13:51:17.294 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response 17;20.0086417;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02839;2460996.99395016;13.85478694;1.3;_
2025-11-17T13:51:17.294 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:17.294 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:17.294 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:17.297 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:17.297 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:17.297 [INFO] [Thread-68041 (handle)] [driver.py] [get_status()] Telra = 20.0086417, teldec = -24.256365
2025-11-17T13:51:17.297 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0086417 -24.256365
2025-11-17T13:51:17.297 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0086417 -24.256365
2025-11-17T13:51:17.297 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0086417 -24.256365
2025-11-17T13:51:17.298 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 17;20.0086417;-24.256365;50.108278;89.992821;50.08601;90.12017;17.02839;2460996.99395021;13.85478694;1.3;_19.9828279002252 -24.3254801440428
2025-11-17T13:51:17.298 [INFO] [Thread-68041 (handle)] [driver.py] [get_status()] ra_j2k = 19.9828279002252     dec_j2k = -24.3254801440428
2025-11-17T13:51:17.298 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:17.298 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:17.298 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162368059163;_
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162368059163;_
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:17.299 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:17.300 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:17.301 [DEBUG] [Thread-68041 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:17.301 [DEBUG] [Thread-68041 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:17.301 [DEBUG] [Thread-68041 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59285)
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:17.305 [DEBUG] [Thread-68041 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:17.312 [DEBUG] [Thread-68041 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:17.312 [INFO] [Thread-68041 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99395016, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992821, telescope_ra=20.0086417, telescope_dec=-24.256365, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.02839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9828279002252, telescope_dec_j2k=-24.3254801440428, observability=1)
2025-11-17T13:51:20.869 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:20.869 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:20.869 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:20.869 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:20.869 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:20.870 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:51:20.871 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:51:20.872 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.480576276779175s
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:31.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:31.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:31.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0126805;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03243;2460996.994118;13.85881472;1.3;_
2025-11-17T13:51:31.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0126805;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03243;2460996.994118;13.85881472;1.3;_
2025-11-17T13:51:31.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:31.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:31.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:31.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:31.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:31.796 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0126805, teldec = -24.256364
2025-11-17T13:51:31.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0126805 -24.256364
2025-11-17T13:51:31.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0126805 -24.256364
2025-11-17T13:51:31.796 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0126805 -24.256364
2025-11-17T13:51:31.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0126805;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03243;2460996.99411802;13.85881472;1.3;_19.986868534105 -24.3256119017073
2025-11-17T13:51:31.797 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 19.986868534105     dec_j2k = -24.3256119017073
2025-11-17T13:51:31.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:31.797 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668625011938;171.162346601491;_
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162346601491;_
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:31.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:31.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:31.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:31.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:31.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:31.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:31.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:31.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:31.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:31.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:31.805 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51361)
2025-11-17T13:51:31.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:31.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:31.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:31.806 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:31.806 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:31.813 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:51:31.813 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.994118, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.99282, telescope_ra=20.0126805, telescope_dec=-24.256364, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.03243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.986868534105, telescope_dec_j2k=-24.3256119017073, observability=1)
2025-11-17T13:51:31.813 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06326341629028 seconds ago
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Status age = 3.5419654846191406s
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:35.355 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:35.356 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:35.357 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 17;20.0136604;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03341;2460996.99415922;13.85979194;1.3;_
2025-11-17T13:51:35.357 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response 17;20.0136604;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03341;2460996.99415922;13.85979194;1.3;_
2025-11-17T13:51:35.357 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:35.357 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:35.357 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:35.358 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:35.358 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:35.358 [INFO] [Thread-68042 (handle)] [driver.py] [get_status()] Telra = 20.0136604, teldec = -24.256364
2025-11-17T13:51:35.358 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0136604 -24.256364
2025-11-17T13:51:35.358 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0136604 -24.256364
2025-11-17T13:51:35.358 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0136604 -24.256364
2025-11-17T13:51:35.359 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 17;20.0136604;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03341;2460996.99415925;13.85979194;1.3;_19.9878488796146 -24.3256441000959
2025-11-17T13:51:35.359 [INFO] [Thread-68042 (handle)] [driver.py] [get_status()] ra_j2k = 19.9878488796146     dec_j2k = -24.3256441000959
2025-11-17T13:51:35.359 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:35.359 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:35.359 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 140;0.104669106355252;171.162357330327;_
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response 140;0.104669106355252;171.162357330327;_
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:35.360 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:35.361 [DEBUG] [Thread-68042 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:35.361 [DEBUG] [Thread-68042 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:35.361 [DEBUG] [Thread-68042 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35689)
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:35.368 [DEBUG] [Thread-68042 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:35.375 [DEBUG] [Thread-68042 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:35.376 [DEBUG] [Thread-68042 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:35.376 [INFO] [Thread-68042 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99415922, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669106355252, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.99282, telescope_ra=20.0136604, telescope_dec=-24.256364, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.03341, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9878488796146, telescope_dec_j2k=-24.3256441000959, observability=1)
2025-11-17T13:51:46.827 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:51:46
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.451048851013184s
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:46.827 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:46.828 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:46.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0168634;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03661;2460996.994292;13.86298611;1.3;_
2025-11-17T13:51:46.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.0168634;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03661;2460996.994292;13.86298611;1.3;_
2025-11-17T13:51:46.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:46.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:46.829 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:46.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:46.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:46.830 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.0168634, teldec = -24.256364
2025-11-17T13:51:46.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0168634 -24.256364
2025-11-17T13:51:46.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0168634 -24.256364
2025-11-17T13:51:46.830 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0168634 -24.256364
2025-11-17T13:51:46.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0168634;-24.256364;50.108278;89.99282;50.08601;90.12017;17.03661;2460996.99429203;13.86298611;1.3;_19.991053337523 -24.3257493157281
2025-11-17T13:51:46.831 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 19.991053337523     dec_j2k = -24.3257493157281
2025-11-17T13:51:46.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:46.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:46.831 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668705235824;171.162357330327;_
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668705235824;171.162357330327;_
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:46.832 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:46.833 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:46.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:46.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:46.834 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54185)
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:46.841 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:46.849 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:46.849 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.994292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668705235824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.99282, telescope_ra=20.0168634, telescope_dec=-24.256364, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.03661, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.991053337523, telescope_dec_j2k=-24.3257493157281, observability=1)
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Status age = 6.616714715957642s
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:53.466 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:53.467 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:53.468 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 17;20.0186964;-24.256364;50.108278;89.992819;50.08601;90.12017;17.03845;2460996.99436884;13.86481417;1.3;_
2025-11-17T13:51:53.468 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response 17;20.0186964;-24.256364;50.108278;89.992819;50.08601;90.12017;17.03845;2460996.99436884;13.86481417;1.3;_
2025-11-17T13:51:53.468 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:53.468 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:53.468 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:53.469 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:53.469 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:53.469 [INFO] [Thread-68043 (handle)] [driver.py] [get_status()] Telra = 20.0186964, teldec = -24.256364
2025-11-17T13:51:53.469 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0186964 -24.256364
2025-11-17T13:51:53.469 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0186964 -24.256364
2025-11-17T13:51:53.469 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0186964 -24.256364
2025-11-17T13:51:53.470 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 17;20.0186964;-24.256364;50.108278;89.992819;50.08601;90.12017;17.03845;2460996.99436887;13.86481417;1.3;_19.9928871729997 -24.3258095065434
2025-11-17T13:51:53.470 [INFO] [Thread-68043 (handle)] [driver.py] [get_status()] ra_j2k = 19.9928871729997     dec_j2k = -24.3258095065434
2025-11-17T13:51:53.470 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:53.470 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:53.470 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162362694745;_
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:53.471 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:53.472 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:53.473 [DEBUG] [Thread-68043 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:53.473 [DEBUG] [Thread-68043 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:51:53.473 [DEBUG] [Thread-68043 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60653)
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:53.479 [DEBUG] [Thread-68043 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:53.486 [DEBUG] [Thread-68043 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:53.487 [DEBUG] [Thread-68043 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:53.487 [INFO] [Thread-68043 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99436884, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992819, telescope_ra=20.0186964, telescope_dec=-24.256364, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.03845, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:50:54.851173', telescope_ra_j2k=19.9928871729997, telescope_dec_j2k=-24.3258095065434, observability=1)
2025-11-17T13:51:54.993 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:54.993 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:54.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:54.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:54.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:54.994 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:54.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:54.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:54.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:54.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:54.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:54.995 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:51:54.996 [INFO] [ThreadPoolExecutor-2869_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:51:54.996 [INFO] [ThreadPoolExecutor-2869_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:51:59.541 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.0546088218688965s
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:51:59.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0203975;-24.256364;50.108278;89.992819;50.08601;90.12017;17.04015;2460996.99443916;13.86651056;1.3;_
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.0203975;-24.256364;50.108278;89.992819;50.08601;90.12017;17.04015;2460996.99443916;13.86651056;1.3;_
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:51:59.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:51:59.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:59.544 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:51:59.544 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.0203975, teldec = -24.256364
2025-11-17T13:51:59.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0203975 -24.256364
2025-11-17T13:51:59.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0203975 -24.256364
2025-11-17T13:51:59.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0203975 -24.256364
2025-11-17T13:51:59.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0203975;-24.256364;50.108278;89.992819;50.08601;90.12017;17.04015;2460996.99443918;13.86651056;1.3;_19.9945890491061 -24.3258653520558
2025-11-17T13:51:59.546 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 19.9945890491061     dec_j2k = -24.3258653520558
2025-11-17T13:51:59.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:51:59.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:51:59.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:51:59.546 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162357330327;_
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162357330327;_
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:51:59.547 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T13:51:59.548 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:51:59.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:51:59.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:51:59.548 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:51:59.549 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:51:59.549 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T13:51:59.549 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33789)
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:51:59.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:51:59.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:51:59.560 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:51:59.560 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:51:59.560 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99443916, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108278, telescope_az=89.992819, telescope_ra=20.0203975, telescope_dec=-24.256364, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.04015, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=19.9945890491061, telescope_dec_j2k=-24.3258653520558, observability=1)
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Status age = 11.974188089370728s
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:11.534 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 17;20.0237424;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04349;2460996.99457795;13.86984639;1.3;_
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response 17;20.0237424;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04349;2460996.99457795;13.86984639;1.3;_
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:11.535 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:11.536 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:11.536 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:11.536 [INFO] [Thread-68044 (handle)] [driver.py] [get_status()] Telra = 20.0237424, teldec = -24.256363
2025-11-17T13:52:11.536 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0237424 -24.256363
2025-11-17T13:52:11.536 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0237424 -24.256363
2025-11-17T13:52:11.536 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0237424 -24.256363
2025-11-17T13:52:11.537 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 17;20.0237424;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04349;2460996.99457797;13.86984639;1.3;_19.9979354774549 -24.3259741225501
2025-11-17T13:52:11.537 [INFO] [Thread-68044 (handle)] [driver.py] [get_status()] ra_j2k = 19.9979354774549     dec_j2k = -24.3259741225501
2025-11-17T13:52:11.537 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:11.537 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:11.537 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162351965909;_
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:11.538 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:11.539 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:11.540 [DEBUG] [Thread-68044 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:11.540 [DEBUG] [Thread-68044 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:11.540 [DEBUG] [Thread-68044 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54453)
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:11.546 [DEBUG] [Thread-68044 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:11.554 [DEBUG] [Thread-68044 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:52:11.554 [INFO] [Thread-68044 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99457795, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992819, telescope_ra=20.0237424, telescope_dec=-24.256363, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.04349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=19.9979354774549, telescope_dec_j2k=-24.3259741225501, observability=1)
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Status age = 2.613903284072876s
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:14.168 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:14.169 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:14.170 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 17;20.0244714;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04422;2460996.99460845;13.87057333;1.3;_
2025-11-17T13:52:14.170 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response 17;20.0244714;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04422;2460996.99460845;13.87057333;1.3;_
2025-11-17T13:52:14.170 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:14.170 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:14.170 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:14.171 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:14.171 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:14.171 [INFO] [Thread-68045 (handle)] [driver.py] [get_status()] Telra = 20.0244714, teldec = -24.256363
2025-11-17T13:52:14.171 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0244714 -24.256363
2025-11-17T13:52:14.171 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0244714 -24.256363
2025-11-17T13:52:14.171 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0244714 -24.256363
2025-11-17T13:52:14.172 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 17;20.0244714;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04422;2460996.99460847;13.87057333;1.3;_19.9986648108807 -24.3259980393621
2025-11-17T13:52:14.172 [INFO] [Thread-68045 (handle)] [driver.py] [get_status()] ra_j2k = 19.9986648108807     dec_j2k = -24.3259980393621
2025-11-17T13:52:14.172 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:14.172 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:14.172 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162357330327;_
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162357330327;_
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:14.173 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:14.174 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:14.175 [DEBUG] [Thread-68045 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:14.175 [DEBUG] [Thread-68045 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:14.175 [DEBUG] [Thread-68045 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37517)
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:14.179 [DEBUG] [Thread-68045 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:14.187 [DEBUG] [Thread-68045 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:52:14.187 [INFO] [Thread-68045 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99460845, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992819, telescope_ra=20.0244714, telescope_dec=-24.256363, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.04422, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=19.9986648108807, telescope_dec_j2k=-24.3259980393621, observability=1)
2025-11-17T13:52:15.004 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:15.004 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.816582441329956s
2025-11-17T13:52:15.004 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.816582441329956
2025-11-17T13:52:15.872 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.872 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.872 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:15.873 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:15.873 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:52:15.874 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:15.875 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:15.876 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:52:15.877 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:15.878 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Park
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:52:15.879 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:52:15.880 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 29;20.0249388;-24.256363;50.108277;89.992819;50.08601;90.12017;17.04469;2460996.99462824;13.87103944;1.3;_Park Command Successful
2025-11-17T13:52:16.880 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:52:16.880 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:52:16.880 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:52:16.881 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:52:16.881 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_TrackingOffAccepted
2025-11-17T13:52:17.881 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:52:17.881 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:52:17.881 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:52:17.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:52:17.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:52:18.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:52:18.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:52:18.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:52:18.882 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:52:18.883 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:52:19.883 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:52:19.883 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:52:19.883 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:19.884 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:52:19.885 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:52:19.886 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:20.886 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:20.886 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:20.886 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:20.886 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:20.886 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:52:20.887 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:52:20.888 [DEBUG] [ThreadPoolExecutor-2868_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:20.888 [INFO] [ThreadPoolExecutor-2868_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:52:29.597 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Status age = 15.410282611846924s
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:29.598 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:29.599 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:29.600 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 17;20.0287584;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04851;2460996.99478704;13.87484861;1.3;_
2025-11-17T13:52:29.600 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response 17;20.0287584;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04851;2460996.99478704;13.87484861;1.3;_
2025-11-17T13:52:29.600 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:29.600 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:29.600 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:29.601 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:29.601 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:29.601 [INFO] [Thread-68046 (handle)] [driver.py] [get_status()] Telra = 20.0287584, teldec = -24.256363
2025-11-17T13:52:29.601 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0287584 -24.256363
2025-11-17T13:52:29.601 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0287584 -24.256363
2025-11-17T13:52:29.601 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0287584 -24.256363
2025-11-17T13:52:29.602 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 17;20.0287584;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04851;2460996.99478706;13.87484861;1.3;_20.0029537743214 -24.3261386355045
2025-11-17T13:52:29.602 [INFO] [Thread-68046 (handle)] [driver.py] [get_status()] ra_j2k = 20.0029537743214     dec_j2k = -24.3261386355045
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 140;0.104668625011938;171.162351965909;_
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162351965909;_
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:29.603 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:29.604 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:29.604 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:29.604 [DEBUG] [Thread-68046 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:29.604 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:29.605 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:29.605 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:29.605 [DEBUG] [Thread-68046 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:29.605 [DEBUG] [Thread-68046 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:29.606 [DEBUG] [Thread-68046 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51847)
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:29.613 [DEBUG] [Thread-68046 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:29.620 [DEBUG] [Thread-68046 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:29.621 [DEBUG] [Thread-68046 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:29.621 [DEBUG] [Thread-68046 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:29.621 [DEBUG] [Thread-68046 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:52:29.621 [INFO] [Thread-68046 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99478704, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992818, telescope_ra=20.0287584, telescope_dec=-24.256363, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.04851, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=20.0029537743214, telescope_dec_j2k=-24.3261386355045, observability=1)
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2525670528411865s
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:31.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:31.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:31.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0294023;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04915;2460996.99481337;13.87549083;1.3;_
2025-11-17T13:52:31.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0294023;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04915;2460996.99481337;13.87549083;1.3;_
2025-11-17T13:52:31.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:31.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:31.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:31.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:31.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:31.876 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0294023, teldec = -24.256363
2025-11-17T13:52:31.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0294023 -24.256363
2025-11-17T13:52:31.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0294023 -24.256363
2025-11-17T13:52:31.876 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0294023 -24.256363
2025-11-17T13:52:31.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0294023;-24.256363;50.108277;89.992818;50.08601;90.12017;17.04915;2460996.99481339;13.87549083;1.3;_20.0035979696221 -24.3261597453453
2025-11-17T13:52:31.877 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.0035979696221     dec_j2k = -24.3261597453453
2025-11-17T13:52:31.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:31.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:31.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668584899996;171.162368059163;_
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668584899996;171.162368059163;_
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:31.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:31.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:31.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:31.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:31.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:31.882 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50481)
2025-11-17T13:52:31.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:31.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:31.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:31.883 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:31.883 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:31.890 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:52:31.890 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99481337, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668584899996, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992818, telescope_ra=20.0294023, telescope_dec=-24.256363, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.04915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=20.0035979696221, telescope_dec_j2k=-24.3261597453453, observability=1)
2025-11-17T13:52:31.890 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06336045265198 seconds ago
2025-11-17T13:52:46.910 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:52:46
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.019885540008545s
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:46.910 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:46.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:46.911 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:46.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:46.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:46.911 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:46.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0336044;-24.256363;50.108277;89.992818;50.08601;90.12017;17.05336;2460996.9949874;13.87968139;1.3;_
2025-11-17T13:52:46.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.0336044;-24.256363;50.108277;89.992818;50.08601;90.12017;17.05336;2460996.9949874;13.87968139;1.3;_
2025-11-17T13:52:46.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:46.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:46.912 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:46.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:46.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:46.913 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.0336044, teldec = -24.256363
2025-11-17T13:52:46.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0336044 -24.256363
2025-11-17T13:52:46.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0336044 -24.256363
2025-11-17T13:52:46.913 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0336044 -24.256363
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0336044;-24.256363;50.108277;89.992818;50.08601;90.12017;17.05336;2460996.99498743;13.87968139;1.3;_20.0078019992925 -24.326297460551
2025-11-17T13:52:46.914 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0078019992925     dec_j2k = -24.326297460551
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10466878545971;171.162351965909;_
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10466878545971;171.162351965909;_
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:46.914 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:46.915 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:46.917 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59181)
2025-11-17T13:52:46.918 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:46.918 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:46.918 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:46.918 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:46.918 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:46.925 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:46.925 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:46.925 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:46.926 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:52:46.926 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9949874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466878545971, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992818, telescope_ra=20.0336044, telescope_dec=-24.256363, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.05336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:51:54.993050', telescope_ra_j2k=20.0078019992925, telescope_dec_j2k=-24.326297460551, observability=1)
2025-11-17T13:52:47.708 [DEBUG] [Thread-68047 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:47.708 [DEBUG] [Thread-68047 (handle)] [server.py] [get_status()] Status age = 0.782142162322998s
2025-11-17T13:52:47.708 [DEBUG] [Thread-68047 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.782142162322998
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:55.137 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:55.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:55.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:55.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:55.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:55.138 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:52:55.139 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:52:55.140 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:52:55.140 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:56.141 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:56.141 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:56.141 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:56.141 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:56.141 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:56.142 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:56.143 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:56.143 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:56.143 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:56.143 [DEBUG] [ThreadPoolExecutor-2870_0] [payload.py] [to_registers()] [0]
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40585)
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:56.150 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:56.157 [DEBUG] [ThreadPoolExecutor-2870_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:58.648 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.722784519195557s
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:52:58.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:52:58.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:52:58.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.036868;-24.256362;50.108277;89.992817;50.08601;90.12017;17.05662;2460996.99512328;13.88293611;1.3;_
2025-11-17T13:52:58.651 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.036868;-24.256362;50.108277;89.992817;50.08601;90.12017;17.05662;2460996.99512328;13.88293611;1.3;_
2025-11-17T13:52:58.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:52:58.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:52:58.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:52:58.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:58.652 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:52:58.652 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.036868, teldec = -24.256362
2025-11-17T13:52:58.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.036868 -24.256362
2025-11-17T13:52:58.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.036868 -24.256362
2025-11-17T13:52:58.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.036868 -24.256362
2025-11-17T13:52:58.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.036868;-24.256362;50.108277;89.992817;50.08601;90.12017;17.05662;2460996.9951233;13.88293611;1.3;_20.0110671011955 -24.3264033610527
2025-11-17T13:52:58.654 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0110671011955     dec_j2k = -24.3264033610527
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668665123881;171.162362694745;_
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668665123881;171.162362694745;_
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:58.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:58.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:58.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:58.655 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:52:58.656 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:52:58.661 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48925)
2025-11-17T13:52:58.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:52:58.662 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:52:58.662 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:52:58.662 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:52:58.662 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:52:58.669 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:52:58.669 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99512328, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668665123881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992817, telescope_ra=20.036868, telescope_dec=-24.256362, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.05662, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0110671011955, telescope_dec_j2k=-24.3264033610527, observability=1)
2025-11-17T13:53:05.779 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Status age = 7.110422134399414s
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:05.780 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:05.781 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 17;20.0388495;-24.256362;50.108277;89.992817;50.08601;90.12017;17.0586;2460996.9952058;13.88491222;1.3;_
2025-11-17T13:53:05.781 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response 17;20.0388495;-24.256362;50.108277;89.992817;50.08601;90.12017;17.0586;2460996.9952058;13.88491222;1.3;_
2025-11-17T13:53:05.781 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:05.781 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:05.781 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:05.782 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:05.782 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:05.782 [INFO] [Thread-68048 (handle)] [driver.py] [get_status()] Telra = 20.0388495, teldec = -24.256362
2025-11-17T13:53:05.782 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0388495 -24.256362
2025-11-17T13:53:05.782 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0388495 -24.256362
2025-11-17T13:53:05.783 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0388495 -24.256362
2025-11-17T13:53:05.783 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 17;20.0388495;-24.256362;50.108277;89.992817;50.08601;90.12017;17.0586;2460996.99520582;13.88491222;1.3;_20.0130495142643 -24.3264682412947
2025-11-17T13:53:05.783 [INFO] [Thread-68048 (handle)] [driver.py] [get_status()] ra_j2k = 20.0130495142643     dec_j2k = -24.3264682412947
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 140;0.104668625011938;171.162351965909;_
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162351965909;_
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:05.784 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:05.785 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:05.785 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:05.785 [DEBUG] [Thread-68048 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:05.786 [DEBUG] [Thread-68048 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42579)
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:05.787 [DEBUG] [Thread-68048 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:05.794 [DEBUG] [Thread-68048 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:05.795 [DEBUG] [Thread-68048 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:05.795 [INFO] [Thread-68048 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9952058, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992817, telescope_ra=20.0388495, telescope_dec=-24.256362, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.0586, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0130495142643, telescope_dec_j2k=-24.3264682412947, observability=1)
2025-11-17T13:53:14.220 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Status age = 8.42558479309082s
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:14.221 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:14.222 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 17;20.0411887;-24.256362;50.108277;89.992817;50.08601;90.12017;17.06094;2460996.9953035;13.887245;1.3;_
2025-11-17T13:53:14.222 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response 17;20.0411887;-24.256362;50.108277;89.992817;50.08601;90.12017;17.06094;2460996.9953035;13.887245;1.3;_
2025-11-17T13:53:14.222 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:14.222 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:14.222 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:14.223 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:14.223 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:14.223 [INFO] [Thread-68049 (handle)] [driver.py] [get_status()] Telra = 20.0411887, teldec = -24.256362
2025-11-17T13:53:14.224 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0411887 -24.256362
2025-11-17T13:53:14.224 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0411887 -24.256362
2025-11-17T13:53:14.224 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0411887 -24.256362
2025-11-17T13:53:14.225 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 17;20.0411887;-24.256362;50.108277;89.992817;50.08601;90.12017;17.06094;2460996.99530352;13.887245;1.3;_20.0153897934167 -24.3265448098374
2025-11-17T13:53:14.225 [INFO] [Thread-68049 (handle)] [driver.py] [get_status()] ra_j2k = 20.0153897934167     dec_j2k = -24.3265448098374
2025-11-17T13:53:14.225 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:14.225 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:14.225 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 140;0.104668665123881;171.162351965909;_
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response 140;0.104668665123881;171.162351965909;_
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:14.226 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:14.227 [DEBUG] [Thread-68049 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44757)
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:14.231 [DEBUG] [Thread-68049 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:14.238 [DEBUG] [Thread-68049 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:14.238 [INFO] [Thread-68049 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9953035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668665123881, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108277, telescope_az=89.992817, telescope_ra=20.0411887, telescope_dec=-24.256362, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.06094, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0153897934167, telescope_dec_j2k=-24.3265448098374, observability=1)
2025-11-17T13:53:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:14.974 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.7359845638275146s
2025-11-17T13:53:14.975 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7359845638275146
2025-11-17T13:53:21.158 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:21.158 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:21.158 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:21.158 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:21.158 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:21.159 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:53:21.160 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:53:21.161 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Status age = 9.608312368392944s
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:23.847 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:23.848 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:23.849 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 17;20.0438925;-24.256362;50.108276;89.992816;50.08601;90.12017;17.06364;2460996.99541492;13.88994139;1.3;_
2025-11-17T13:53:23.849 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response 17;20.0438925;-24.256362;50.108276;89.992816;50.08601;90.12017;17.06364;2460996.99541492;13.88994139;1.3;_
2025-11-17T13:53:23.849 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:23.849 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:23.849 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:23.850 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:23.850 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:23.850 [INFO] [Thread-68050 (handle)] [driver.py] [get_status()] Telra = 20.0438925, teldec = -24.256362
2025-11-17T13:53:23.850 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0438925 -24.256362
2025-11-17T13:53:23.850 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0438925 -24.256362
2025-11-17T13:53:23.850 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0438925 -24.256362
2025-11-17T13:53:23.851 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 17;20.0438925;-24.256362;50.108276;89.992816;50.08601;90.12017;17.06364;2460996.99541494;13.88994139;1.3;_20.0180948424661 -24.3266332805194
2025-11-17T13:53:23.851 [INFO] [Thread-68050 (handle)] [driver.py] [get_status()] ra_j2k = 20.0180948424661     dec_j2k = -24.3266332805194
2025-11-17T13:53:23.851 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:23.851 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:23.851 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 140;0.104669066243309;171.162362694745;_
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response 140;0.104669066243309;171.162362694745;_
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:23.852 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:23.853 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:23.854 [DEBUG] [Thread-68050 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:23.854 [DEBUG] [Thread-68050 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:23.854 [DEBUG] [Thread-68050 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52469)
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:23.858 [DEBUG] [Thread-68050 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:23.866 [DEBUG] [Thread-68050 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:23.866 [INFO] [Thread-68050 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99541492, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669066243309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992816, telescope_ra=20.0438925, telescope_dec=-24.256362, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.06364, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0180948424661, telescope_dec_j2k=-24.3266332805194, observability=1)
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.084003686904907s
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:31.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:31.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:31.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0461467;-24.256361;50.108276;89.992816;50.08601;90.12017;17.0659;2460996.9955087;13.89218944;1.3;_
2025-11-17T13:53:31.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0461467;-24.256361;50.108276;89.992816;50.08601;90.12017;17.0659;2460996.9955087;13.89218944;1.3;_
2025-11-17T13:53:31.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:31.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:31.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:31.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:31.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:31.953 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0461467, teldec = -24.256361
2025-11-17T13:53:31.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0461467 -24.256361
2025-11-17T13:53:31.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0461467 -24.256361
2025-11-17T13:53:31.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0461467 -24.256361
2025-11-17T13:53:31.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0461467;-24.256361;50.108276;89.992816;50.08601;90.12017;17.0659;2460996.99550873;13.89218944;1.3;_20.0203500853815 -24.3267060135374
2025-11-17T13:53:31.954 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.0203500853815     dec_j2k = -24.3267060135374
2025-11-17T13:53:31.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668384340281;171.162357330327;_
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668384340281;171.162357330327;_
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:31.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:31.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:31.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:31.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:31.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57871)
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:31.960 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:31.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:31.967 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:31.968 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:53:31.968 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9955087, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668384340281, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992816, telescope_ra=20.0461467, telescope_dec=-24.256361, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.0659, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0203500853815, telescope_dec_j2k=-24.3267060135374, observability=1)
2025-11-17T13:53:31.968 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.058186292648315 seconds ago
2025-11-17T13:53:41.979 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Status age = 10.011687517166138s
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:41.980 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:41.981 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:41.982 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 17;20.0489335;-24.256361;50.108276;89.992816;50.08601;90.12017;17.06868;2460996.99562479;13.89496861;1.3;_
2025-11-17T13:53:41.982 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response 17;20.0489335;-24.256361;50.108276;89.992816;50.08601;90.12017;17.06868;2460996.99562479;13.89496861;1.3;_
2025-11-17T13:53:41.982 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:41.982 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:41.982 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:41.983 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:41.983 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:41.983 [INFO] [Thread-68051 (handle)] [driver.py] [get_status()] Telra = 20.0489335, teldec = -24.256361
2025-11-17T13:53:41.983 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0489335 -24.256361
2025-11-17T13:53:41.983 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0489335 -24.256361
2025-11-17T13:53:41.983 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0489335 -24.256361
2025-11-17T13:53:41.984 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 17;20.0489335;-24.256361;50.108276;89.992816;50.08601;90.12017;17.06868;2460996.99562481;13.89496861;1.3;_20.0231381762352 -24.3267971340562
2025-11-17T13:53:41.984 [INFO] [Thread-68051 (handle)] [driver.py] [get_status()] ra_j2k = 20.0231381762352     dec_j2k = -24.3267971340562
2025-11-17T13:53:41.984 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:41.984 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:41.984 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 140;0.104669026131366;171.162351965909;_
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response 140;0.104669026131366;171.162351965909;_
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:41.985 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:41.986 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:41.987 [DEBUG] [Thread-68051 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:41.987 [DEBUG] [Thread-68051 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:41.987 [DEBUG] [Thread-68051 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:41.992 [DEBUG] [Thread-68051 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54355)
2025-11-17T13:53:41.992 [DEBUG] [Thread-68051 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:41.993 [DEBUG] [Thread-68051 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:41.993 [DEBUG] [Thread-68051 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:41.993 [DEBUG] [Thread-68051 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:41.993 [DEBUG] [Thread-68051 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:42.000 [DEBUG] [Thread-68051 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:42.000 [INFO] [Thread-68051 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99562479, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669026131366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992816, telescope_ra=20.0489335, telescope_dec=-24.256361, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.06868, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0231381762352, telescope_dec_j2k=-24.3267971340562, observability=1)
2025-11-17T13:53:46.986 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:53:46
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.986055850982666s
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:46.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:46.987 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:46.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0503267;-24.256361;50.108276;89.992816;50.08601;90.12017;17.07008;2460996.99568273;13.89635806;1.3;_
2025-11-17T13:53:46.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.0503267;-24.256361;50.108276;89.992816;50.08601;90.12017;17.07008;2460996.99568273;13.89635806;1.3;_
2025-11-17T13:53:46.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:46.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:46.988 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:46.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:46.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:46.989 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.0503267, teldec = -24.256361
2025-11-17T13:53:46.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0503267 -24.256361
2025-11-17T13:53:46.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0503267 -24.256361
2025-11-17T13:53:46.989 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0503267 -24.256361
2025-11-17T13:53:46.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0503267;-24.256361;50.108276;89.992816;50.08601;90.12017;17.07008;2460996.99568275;13.89635806;1.3;_20.0245320222925 -24.3268426739615
2025-11-17T13:53:46.990 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0245320222925     dec_j2k = -24.3268426739615
2025-11-17T13:53:46.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:46.990 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162351965909;_
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162351965909;_
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:46.991 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:46.992 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:46.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:46.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:46.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:46.996 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48565)
2025-11-17T13:53:46.996 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:46.996 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:46.996 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:46.996 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:46.997 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:47.004 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:47.004 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99568273, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992816, telescope_ra=20.0503267, telescope_dec=-24.256361, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.07008, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:52:55.136651', telescope_ra_j2k=20.0245320222925, telescope_dec_j2k=-24.3268426739615, observability=1)
2025-11-17T13:53:55.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:55.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:55.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:55.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:55.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:55.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:55.284 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:55.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:55.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:55.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:55.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:55.285 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:53:55.285 [INFO] [ThreadPoolExecutor-2871_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:53:55.285 [INFO] [ThreadPoolExecutor-2871_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:53:57.762 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.758360147476196s
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:53:57.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:53:57.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:53:57.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0533316;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07308;2460996.99580747;13.89935472;1.3;_
2025-11-17T13:53:57.765 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.0533316;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07308;2460996.99580747;13.89935472;1.3;_
2025-11-17T13:53:57.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:53:57.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:53:57.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:53:57.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:57.766 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:53:57.766 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.0533316, teldec = -24.256361
2025-11-17T13:53:57.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0533316 -24.256361
2025-11-17T13:53:57.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0533316 -24.256361
2025-11-17T13:53:57.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0533316 -24.256361
2025-11-17T13:53:57.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0533316;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07308;2460996.99580749;13.89935472;1.3;_20.0275383173709 -24.3269408645542
2025-11-17T13:53:57.767 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0275383173709     dec_j2k = -24.3269408645542
2025-11-17T13:53:57.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:53:57.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:53:57.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668625011938;171.162346601491;_
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162346601491;_
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:57.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:53:57.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:53:57.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:57.770 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:53:57.770 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42267)
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:53:57.773 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:53:57.780 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:53:57.781 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99580747, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992815, telescope_ra=20.0533316, telescope_dec=-24.256361, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.07308, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0275383173709, telescope_dec_j2k=-24.3269408645542, observability=1)
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Status age = 2.2682759761810303s
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:00.049 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 17;20.0539775;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07373;2460996.99583391;13.89999889;1.3;_
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response 17;20.0539775;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07373;2460996.99583391;13.89999889;1.3;_
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:00.050 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:00.051 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:00.051 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:00.051 [INFO] [Thread-68052 (handle)] [driver.py] [get_status()] Telra = 20.0539775, teldec = -24.256361
2025-11-17T13:54:00.052 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0539775 -24.256361
2025-11-17T13:54:00.052 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0539775 -24.256361
2025-11-17T13:54:00.052 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0539775 -24.256361
2025-11-17T13:54:00.053 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 17;20.0539775;-24.256361;50.108276;89.992815;50.08601;90.12017;17.07373;2460996.99583394;13.89999889;1.3;_20.0281845175341 -24.3269619649112
2025-11-17T13:54:00.053 [INFO] [Thread-68052 (handle)] [driver.py] [get_status()] ra_j2k = 20.0281845175341     dec_j2k = -24.3269619649112
2025-11-17T13:54:00.053 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:00.053 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:00.053 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 140;0.104668745347767;171.162351965909;_
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response 140;0.104668745347767;171.162351965909;_
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:00.054 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:00.055 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:00.055 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:00.055 [DEBUG] [Thread-68052 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:00.055 [DEBUG] [Thread-68052 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:00.056 [DEBUG] [Thread-68052 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58905)
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:00.060 [DEBUG] [Thread-68052 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:00.067 [DEBUG] [Thread-68052 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:00.068 [DEBUG] [Thread-68052 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:00.068 [DEBUG] [Thread-68052 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:00.068 [INFO] [Thread-68052 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99583391, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668745347767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992815, telescope_ra=20.0539775, telescope_dec=-24.256361, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.07373, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0281845175341, telescope_dec_j2k=-24.3269619649112, observability=1)
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Status age = 14.201499938964844s
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:14.269 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:14.270 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:14.271 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 17;20.0579322;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07768;2460996.99599851;13.90394278;1.3;_
2025-11-17T13:54:14.271 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response 17;20.0579322;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07768;2460996.99599851;13.90394278;1.3;_
2025-11-17T13:54:14.271 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:14.271 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:14.271 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:14.272 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:14.272 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:14.272 [INFO] [Thread-68053 (handle)] [driver.py] [get_status()] Telra = 20.0579322, teldec = -24.25636
2025-11-17T13:54:14.272 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0579322 -24.25636
2025-11-17T13:54:14.272 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0579322 -24.25636
2025-11-17T13:54:14.272 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0579322 -24.25636
2025-11-17T13:54:14.273 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 17;20.0579322;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07768;2460996.99599853;13.90394278;1.3;_20.0321410577979 -24.3270901144337
2025-11-17T13:54:14.273 [INFO] [Thread-68053 (handle)] [driver.py] [get_status()] ra_j2k = 20.0321410577979     dec_j2k = -24.3270901144337
2025-11-17T13:54:14.273 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:14.273 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 140;0.104669547586623;171.162351965909;_
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response 140;0.104669547586623;171.162351965909;_
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:14.274 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:14.275 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:14.276 [DEBUG] [Thread-68053 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:14.276 [DEBUG] [Thread-68053 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:14.276 [DEBUG] [Thread-68053 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37259)
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:14.283 [DEBUG] [Thread-68053 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:14.290 [DEBUG] [Thread-68053 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:14.291 [INFO] [Thread-68053 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99599851, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669547586623, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992815, telescope_ra=20.0579322, telescope_dec=-24.25636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.07768, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0321410577979, telescope_dec_j2k=-24.3270901144337, observability=1)
2025-11-17T13:54:14.978 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:14.978 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6872584819793701s
2025-11-17T13:54:14.978 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6872584819793701
2025-11-17T13:54:16.161 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.161 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.161 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:16.161 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:16.161 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:54:16.162 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:16.163 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:16.164 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:16.165 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:54:16.168 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:16.169 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Park
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:54:16.170 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:54:16.171 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 29;20.0584653;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07822;2460996.9960205;13.90447444;1.3;_Park Command Successful
2025-11-17T13:54:17.171 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:54:17.171 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:54:17.171 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:54:17.173 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:54:17.173 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:54:18.117 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Status age = 3.827040910720825s
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:18.118 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 17;20.058989;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07874;2460996.99604304;13.90499667;1.3;_
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response 17;20.058989;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07874;2460996.99604304;13.90499667;1.3;_
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:18.119 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:18.120 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:18.120 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:18.120 [INFO] [Thread-68054 (handle)] [driver.py] [get_status()] Telra = 20.058989, teldec = -24.25636
2025-11-17T13:54:18.120 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] UnCookCoordinates 20.058989 -24.25636
2025-11-17T13:54:18.120 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.058989 -24.25636
2025-11-17T13:54:18.120 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.058989 -24.25636
2025-11-17T13:54:18.121 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 17;20.058989;-24.25636;50.108276;89.992815;50.08601;90.12017;17.07874;2460996.99604307;13.90499667;1.3;_20.0331983501751 -24.3271246139492
2025-11-17T13:54:18.121 [INFO] [Thread-68054 (handle)] [driver.py] [get_status()] ra_j2k = 20.0331983501751     dec_j2k = -24.3271246139492
2025-11-17T13:54:18.121 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:18.122 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:18.122 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 140;0.104668986019424;171.162357330327;_
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response 140;0.104668986019424;171.162357330327;_
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:18.123 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:18.124 [DEBUG] [Thread-68054 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50681)
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:18.129 [DEBUG] [Thread-68054 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:18.136 [DEBUG] [Thread-68054 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:18.137 [DEBUG] [Thread-68054 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:18.137 [INFO] [Thread-68054 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99604304, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668986019424, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992815, telescope_ra=20.058989, telescope_dec=-24.25636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.07874, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0331983501751, telescope_dec_j2k=-24.3271246139492, observability=1)
2025-11-17T13:54:18.173 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:54:18.173 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:54:18.173 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:54:18.174 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:54:18.174 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:54:19.174 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:54:19.174 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:54:19.174 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:54:19.175 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:54:19.175 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:54:20.175 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:54:20.175 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:54:20.175 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:20.176 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:54:20.177 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:54:20.178 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:21.178 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:21.178 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:21.178 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:21.178 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:21.178 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:21.179 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:54:21.180 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:54:21.180 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:54:21.180 [DEBUG] [ThreadPoolExecutor-2870_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:21.180 [INFO] [ThreadPoolExecutor-2870_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.891112089157104s
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:32.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:32.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:32.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0628679;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08262;2460996.99620405;13.908865;1.3;_
2025-11-17T13:54:32.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0628679;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08262;2460996.99620405;13.908865;1.3;_
2025-11-17T13:54:32.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:32.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:32.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:32.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:32.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:32.031 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0628679, teldec = -24.25636
2025-11-17T13:54:32.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0628679 -24.25636
2025-11-17T13:54:32.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0628679 -24.25636
2025-11-17T13:54:32.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0628679 -24.25636
2025-11-17T13:54:32.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0628679;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08262;2460996.99620407;13.908865;1.3;_20.0370790597801 -24.3272511960031
2025-11-17T13:54:32.032 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.0370790597801     dec_j2k = -24.3272511960031
2025-11-17T13:54:32.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:32.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:32.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104669427250794;171.162351965909;_
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104669427250794;171.162351965909;_
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:32.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:32.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:32.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:32.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:32.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37757)
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:32.035 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:32.042 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:32.043 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:32.043 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:32.043 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:54:32.043 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99620405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669427250794, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992814, telescope_ra=20.0628679, telescope_dec=-24.25636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.08262, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0370790597801, telescope_dec_j2k=-24.3272511960031, observability=1)
2025-11-17T13:54:32.043 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0568163394928 seconds ago
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Status age = 4.197186708450317s
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:36.240 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 17;20.0640361;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08379;2460996.99625279;13.91003;1.3;_
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response 17;20.0640361;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08379;2460996.99625279;13.91003;1.3;_
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:36.241 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:36.242 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:36.242 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:36.243 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:36.243 [INFO] [Thread-68055 (handle)] [driver.py] [get_status()] Telra = 20.0640361, teldec = -24.25636
2025-11-17T13:54:36.243 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0640361 -24.25636
2025-11-17T13:54:36.243 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0640361 -24.25636
2025-11-17T13:54:36.243 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0640361 -24.25636
2025-11-17T13:54:36.244 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 17;20.0640361;-24.25636;50.108276;89.992814;50.08601;90.12017;17.08379;2460996.99625282;13.91003;1.3;_20.0382478055058 -24.3272893043732
2025-11-17T13:54:36.244 [INFO] [Thread-68055 (handle)] [driver.py] [get_status()] ra_j2k = 20.0382478055058     dec_j2k = -24.3272893043732
2025-11-17T13:54:36.244 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:36.244 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:36.244 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 140;0.104669627810508;171.162357330327;_
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response 140;0.104669627810508;171.162357330327;_
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:36.245 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:36.246 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:36.247 [DEBUG] [Thread-68055 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:36.247 [DEBUG] [Thread-68055 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:36.247 [DEBUG] [Thread-68055 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46631)
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:36.254 [DEBUG] [Thread-68055 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:36.261 [DEBUG] [Thread-68055 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:36.262 [DEBUG] [Thread-68055 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:36.262 [INFO] [Thread-68055 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99625279, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669627810508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108276, telescope_az=89.992814, telescope_ra=20.0640361, telescope_dec=-24.25636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.08379, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0382478055058, telescope_dec_j2k=-24.3272893043732, observability=1)
2025-11-17T13:54:47.065 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:54:47
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.803231239318848s
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:47.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0670713;-24.25636;50.108275;89.992814;50.08601;90.12017;17.08682;2460996.99637808;13.91305694;1.3;_
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.0670713;-24.25636;50.108275;89.992814;50.08601;90.12017;17.08682;2460996.99637808;13.91305694;1.3;_
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:47.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:47.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:47.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:47.067 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.0670713, teldec = -24.25636
2025-11-17T13:54:47.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0670713 -24.25636
2025-11-17T13:54:47.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0670713 -24.25636
2025-11-17T13:54:47.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0670713 -24.25636
2025-11-17T13:54:47.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.0670713;-24.25636;50.108275;89.992814;50.08601;90.12017;17.08682;2460996.9963781;13.91305694;1.3;_20.0412844249833 -24.3273882864813
2025-11-17T13:54:47.069 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0412844249833     dec_j2k = -24.3273882864813
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668625011938;171.162357330327;_
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162357330327;_
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:47.069 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:47.070 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:47.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:47.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:47.071 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54787)
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:47.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:47.083 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:47.084 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:47.084 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99637808, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992814, telescope_ra=20.0670713, telescope_dec=-24.25636, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.08682, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0412844249833, telescope_dec_j2k=-24.3273882864813, observability=1)
2025-11-17T13:54:54.306 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:54.306 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Status age = 7.222738027572632s
2025-11-17T13:54:54.306 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:54.306 [DEBUG] [Thread-68056 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:54.307 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:54.308 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:54.308 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 17;20.0690793;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08883;2460996.9964619;13.91505944;1.3;_
2025-11-17T13:54:54.308 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response 17;20.0690793;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08883;2460996.9964619;13.91505944;1.3;_
2025-11-17T13:54:54.308 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:54.308 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:54.309 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:54.309 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:54.310 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:54.310 [INFO] [Thread-68056 (handle)] [driver.py] [get_status()] Telra = 20.0690793, teldec = -24.256359
2025-11-17T13:54:54.310 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0690793 -24.256359
2025-11-17T13:54:54.310 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0690793 -24.256359
2025-11-17T13:54:54.310 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0690793 -24.256359
2025-11-17T13:54:54.311 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 17;20.0690793;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08883;2460996.99646193;13.91505944;1.3;_20.0432933654973 -24.3274527460255
2025-11-17T13:54:54.311 [INFO] [Thread-68056 (handle)] [driver.py] [get_status()] ra_j2k = 20.0432933654973     dec_j2k = -24.3274527460255
2025-11-17T13:54:54.311 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:54.311 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:54.311 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 140;0.104669026131366;171.162357330327;_
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response 140;0.104669026131366;171.162357330327;_
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:54.312 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:54.313 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:54.314 [DEBUG] [Thread-68056 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:54.314 [DEBUG] [Thread-68056 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:54.314 [DEBUG] [Thread-68056 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50327)
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:54.318 [DEBUG] [Thread-68056 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:54.325 [DEBUG] [Thread-68056 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:54.326 [DEBUG] [Thread-68056 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:54.326 [DEBUG] [Thread-68056 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:54.326 [DEBUG] [Thread-68056 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:54.326 [INFO] [Thread-68056 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.9964619, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669026131366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992813, telescope_ra=20.0690793, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.08883, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:53:55.282009', telescope_ra_j2k=20.0432933654973, telescope_dec_j2k=-24.3274527460255, observability=1)
2025-11-17T13:54:55.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:55.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:55.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:55.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:55.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:55.425 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:55.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:55.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:55.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:55.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:55.426 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:54:55.426 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:55.426 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:55.426 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:55.426 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:54:55.427 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:54:55.428 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:56.428 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:56.428 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:56.428 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:56.428 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:56.428 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:54:56.429 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:56.430 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:56.431 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:56.431 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:56.431 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:56.431 [DEBUG] [ThreadPoolExecutor-2872_0] [payload.py] [to_registers()] [0]
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60755)
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:56.435 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:56.443 [DEBUG] [ThreadPoolExecutor-2872_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:56.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.548816204071045s
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:54:56.875 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:54:56.876 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:54:56.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:54:56.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:54:56.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:54:56.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:54:56.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0697991;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08955;2460996.99649162;13.91577722;1.3;_
2025-11-17T13:54:56.877 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.0697991;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08955;2460996.99649162;13.91577722;1.3;_
2025-11-17T13:54:56.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:54:56.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:54:56.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:54:56.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:56.878 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:54:56.878 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.0697991, teldec = -24.256359
2025-11-17T13:54:56.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0697991 -24.256359
2025-11-17T13:54:56.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0697991 -24.256359
2025-11-17T13:54:56.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0697991 -24.256359
2025-11-17T13:54:56.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0697991;-24.256359;50.108275;89.992813;50.08601;90.12017;17.08955;2460996.99649166;13.91577722;1.3;_20.0440135028203 -24.3274762063203
2025-11-17T13:54:56.879 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0440135028203     dec_j2k = -24.3274762063203
2025-11-17T13:54:56.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:54:56.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:54:56.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668865683595;171.162368059163;_
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668865683595;171.162368059163;_
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:56.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:54:56.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:54:56.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:56.882 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:54:56.882 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:54:56.887 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57431)
2025-11-17T13:54:56.887 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:54:56.887 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:54:56.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:54:56.888 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:54:56.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:54:56.895 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:54:56.895 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99649162, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668865683595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992813, telescope_ra=20.0697991, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.08955, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0440135028203, telescope_dec_j2k=-24.3274762063203, observability=1)
2025-11-17T13:55:12.434 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:12.434 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Status age = 15.539399147033691s
2025-11-17T13:55:12.434 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:12.435 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:12.436 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 17;20.074117;-24.256359;50.108275;89.992813;50.08601;90.12017;17.09387;2460996.99667171;13.92008333;1.3;_
2025-11-17T13:55:12.436 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response 17;20.074117;-24.256359;50.108275;89.992813;50.08601;90.12017;17.09387;2460996.99667171;13.92008333;1.3;_
2025-11-17T13:55:12.436 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:12.436 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:12.436 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:12.437 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:12.437 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:12.437 [INFO] [Thread-68057 (handle)] [driver.py] [get_status()] Telra = 20.074117, teldec = -24.256359
2025-11-17T13:55:12.437 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] UnCookCoordinates 20.074117 -24.256359
2025-11-17T13:55:12.437 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.074117 -24.256359
2025-11-17T13:55:12.437 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.074117 -24.256359
2025-11-17T13:55:12.438 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 17;20.074117;-24.256359;50.108275;89.992813;50.08601;90.12017;17.09387;2460996.99667174;13.92008333;1.3;_20.0483334290302 -24.3276168866053
2025-11-17T13:55:12.438 [INFO] [Thread-68057 (handle)] [driver.py] [get_status()] ra_j2k = 20.0483334290302     dec_j2k = -24.3276168866053
2025-11-17T13:55:12.439 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:12.439 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:12.439 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:12.439 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 140;0.104669828370222;171.162351965909;_
2025-11-17T13:55:12.439 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response 140;0.104669828370222;171.162351965909;_
2025-11-17T13:55:12.440 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:12.440 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:12.440 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:12.440 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:12.440 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:12.441 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:12.441 [DEBUG] [Thread-68057 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:12.441 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:12.441 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:12.441 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:12.442 [DEBUG] [Thread-68057 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:12.442 [DEBUG] [Thread-68057 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:12.442 [DEBUG] [Thread-68057 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:12.448 [DEBUG] [Thread-68057 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32957)
2025-11-17T13:55:12.449 [DEBUG] [Thread-68057 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:12.449 [DEBUG] [Thread-68057 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:12.449 [DEBUG] [Thread-68057 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:12.449 [DEBUG] [Thread-68057 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:12.449 [DEBUG] [Thread-68057 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:12.456 [DEBUG] [Thread-68057 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:12.456 [INFO] [Thread-68057 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99667171, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669828370222, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992813, telescope_ra=20.074117, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.09387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0483334290302, telescope_dec_j2k=-24.3276168866053, observability=1)
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Status age = 1.867797613143921s
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:14.324 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:14.325 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:14.325 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:14.325 [DEBUG] [Thread-68058 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 17;20.0746495;-24.256359;50.108275;89.992813;50.08601;90.12017;17.0944;2460996.99669359;13.92061444;1.3;_
2025-11-17T13:55:14.326 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response 17;20.0746495;-24.256359;50.108275;89.992813;50.08601;90.12017;17.0944;2460996.99669359;13.92061444;1.3;_
2025-11-17T13:55:14.327 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:14.327 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:14.327 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:14.327 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:14.328 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:14.328 [INFO] [Thread-68058 (handle)] [driver.py] [get_status()] Telra = 20.0746495, teldec = -24.256359
2025-11-17T13:55:14.328 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0746495 -24.256359
2025-11-17T13:55:14.328 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0746495 -24.256359
2025-11-17T13:55:14.328 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0746495 -24.256359
2025-11-17T13:55:14.329 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 17;20.0746495;-24.256359;50.108275;89.992813;50.08601;90.12017;17.0944;2460996.99669362;13.92061444;1.3;_20.0488661792299 -24.3276342296403
2025-11-17T13:55:14.329 [INFO] [Thread-68058 (handle)] [driver.py] [get_status()] ra_j2k = 20.0488661792299     dec_j2k = -24.3276342296403
2025-11-17T13:55:14.329 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:14.329 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:14.329 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 140;0.104669587698566;171.162351965909;_
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response 140;0.104669587698566;171.162351965909;_
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:14.330 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:14.331 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:14.332 [DEBUG] [Thread-68058 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:14.332 [DEBUG] [Thread-68058 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:14.332 [DEBUG] [Thread-68058 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50799)
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:14.334 [DEBUG] [Thread-68058 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:14.341 [DEBUG] [Thread-68058 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:14.341 [DEBUG] [Thread-68058 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:14.342 [DEBUG] [Thread-68058 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:14.342 [INFO] [Thread-68058 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99669359, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669587698566, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992813, telescope_ra=20.0746495, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.0944, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0488661792299, telescope_dec_j2k=-24.3276342296403, observability=1)
2025-11-17T13:55:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.655597448348999s
2025-11-17T13:55:14.998 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.655597448348999
2025-11-17T13:55:21.444 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:21.444 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:21.444 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:21.444 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:21.444 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:21.445 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:55:21.446 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:55:21.447 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:30.503 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:30.503 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Status age = 16.161580562591553s
2025-11-17T13:55:30.503 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:30.504 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:30.505 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 17;20.0791624;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09891;2460996.99688084;13.925115;1.3;_
2025-11-17T13:55:30.505 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response 17;20.0791624;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09891;2460996.99688084;13.925115;1.3;_
2025-11-17T13:55:30.505 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:30.505 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:30.505 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:30.506 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:30.506 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:30.506 [INFO] [Thread-68059 (handle)] [driver.py] [get_status()] Telra = 20.0791624, teldec = -24.256359
2025-11-17T13:55:30.506 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0791624 -24.256359
2025-11-17T13:55:30.506 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0791624 -24.256359
2025-11-17T13:55:30.506 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0791624 -24.256359
2025-11-17T13:55:30.507 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 17;20.0791624;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09891;2460996.99688087;13.925115;1.3;_20.0533812024722 -24.3277811559258
2025-11-17T13:55:30.507 [INFO] [Thread-68059 (handle)] [driver.py] [get_status()] ra_j2k = 20.0533812024722     dec_j2k = -24.3277811559258
2025-11-17T13:55:30.507 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:30.507 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 140;0.104669627810508;171.162362694745;_
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response 140;0.104669627810508;171.162362694745;_
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:30.508 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:30.509 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:30.510 [DEBUG] [Thread-68059 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:30.510 [DEBUG] [Thread-68059 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:30.510 [DEBUG] [Thread-68059 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:30.515 [DEBUG] [Thread-68059 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42833)
2025-11-17T13:55:30.516 [DEBUG] [Thread-68059 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:30.516 [DEBUG] [Thread-68059 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:30.516 [DEBUG] [Thread-68059 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:30.516 [DEBUG] [Thread-68059 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:30.516 [DEBUG] [Thread-68059 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:30.523 [DEBUG] [Thread-68059 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:30.524 [DEBUG] [Thread-68059 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:30.524 [INFO] [Thread-68059 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99688084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669627810508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992812, telescope_ra=20.0791624, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.09891, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0533812024722, telescope_dec_j2k=-24.3277811559258, observability=1)
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.5791981220245361s
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:32.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0796109;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09936;2460996.99689936;13.92556222;1.3;_
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0796109;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09936;2460996.99689936;13.92556222;1.3;_
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:32.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:32.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:32.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:32.107 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0796109, teldec = -24.256359
2025-11-17T13:55:32.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0796109 -24.256359
2025-11-17T13:55:32.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0796109 -24.256359
2025-11-17T13:55:32.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0796109 -24.256359
2025-11-17T13:55:32.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0796109;-24.256359;50.108275;89.992812;50.08601;90.12017;17.09936;2460996.9968994;13.92556222;1.3;_20.053829913759 -24.3277957523688
2025-11-17T13:55:32.108 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.053829913759     dec_j2k = -24.3277957523688
2025-11-17T13:55:32.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:32.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:32.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104669467362737;171.162362694745;_
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104669467362737;171.162362694745;_
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:32.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:32.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:32.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:32.117 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57125)
2025-11-17T13:55:32.118 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:32.118 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:32.118 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:32.118 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:32.118 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:32.125 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:55:32.126 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99689936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669467362737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992812, telescope_ra=20.0796109, telescope_dec=-24.256359, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.09936, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.053829913759, telescope_dec_j2k=-24.3277957523688, observability=1)
2025-11-17T13:55:32.126 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06064248085022 seconds ago
2025-11-17T13:55:47.144 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:55:47
2025-11-17T13:55:47.144 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:47.144 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.01898455619812s
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:47.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.083787;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10354;2460996.99707345;13.92972694;1.3;_
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.083787;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10354;2460996.99707345;13.92972694;1.3;_
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:47.146 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.083787, teldec = -24.256358
2025-11-17T13:55:47.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.083787 -24.256358
2025-11-17T13:55:47.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.083787 -24.256358
2025-11-17T13:55:47.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.083787 -24.256358
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.083787;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10354;2460996.99707346;13.92972694;1.3;_20.0580079836681 -24.3279306172178
2025-11-17T13:55:47.148 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0580079836681     dec_j2k = -24.3279306172178
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104669748146337;171.162368059163;_
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104669748146337;171.162368059163;_
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:47.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:47.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:47.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:47.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:47.150 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52285)
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:47.156 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:47.163 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:47.164 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99707345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669748146337, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992812, telescope_ra=20.083787, telescope_dec=-24.256358, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.10354, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0580079836681, telescope_dec_j2k=-24.3279306172178, observability=1)
2025-11-17T13:55:48.571 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:48.571 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Status age = 1.4079067707061768s
2025-11-17T13:55:48.571 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:48.571 [DEBUG] [Thread-68060 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:48.571 [DEBUG] [Thread-68060 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:48.572 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:48.572 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:48.572 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 17;20.0842073;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10396;2460996.99708997;13.93014611;1.3;_
2025-11-17T13:55:48.573 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response 17;20.0842073;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10396;2460996.99708997;13.93014611;1.3;_
2025-11-17T13:55:48.574 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:48.574 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:48.574 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:48.575 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:48.575 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:48.575 [INFO] [Thread-68060 (handle)] [driver.py] [get_status()] Telra = 20.0842073, teldec = -24.256358
2025-11-17T13:55:48.575 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0842073 -24.256358
2025-11-17T13:55:48.575 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0842073 -24.256358
2025-11-17T13:55:48.575 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0842073 -24.256358
2025-11-17T13:55:48.576 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 17;20.0842073;-24.256358;50.108275;89.992812;50.08601;90.12017;17.10396;2460996.99709;13.93014611;1.3;_20.0584284821492 -24.3279442865531
2025-11-17T13:55:48.576 [INFO] [Thread-68060 (handle)] [driver.py] [get_status()] ra_j2k = 20.0584284821492     dec_j2k = -24.3279442865531
2025-11-17T13:55:48.576 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:48.576 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:48.576 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 140;0.10466950747468;171.162362694745;_
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response 140;0.10466950747468;171.162362694745;_
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:48.577 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:48.578 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:48.579 [DEBUG] [Thread-68060 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:48.579 [DEBUG] [Thread-68060 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:48.579 [DEBUG] [Thread-68060 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33301)
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:48.580 [DEBUG] [Thread-68060 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:48.587 [DEBUG] [Thread-68060 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:48.588 [DEBUG] [Thread-68060 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:48.588 [DEBUG] [Thread-68060 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:48.588 [INFO] [Thread-68060 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99708997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466950747468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992812, telescope_ra=20.0842073, telescope_dec=-24.256358, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.10396, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:54:55.423872', telescope_ra_j2k=20.0584284821492, telescope_dec_j2k=-24.3279442865531, observability=1)
2025-11-17T13:55:55.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:55.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:55.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:55.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:55.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:55.568 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:55.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:55.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:55.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:55.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:55.569 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:55:55.569 [INFO] [ThreadPoolExecutor-2873_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:55:55.569 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.393242359161377s
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:55:55.981 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:55:55.982 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:55:55.982 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:55:55.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0862451;-24.256358;50.108275;89.992811;50.08601;90.12017;17.106;2460996.99717573;13.93217833;1.3;_
2025-11-17T13:55:55.984 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.0862451;-24.256358;50.108275;89.992811;50.08601;90.12017;17.106;2460996.99717573;13.93217833;1.3;_
2025-11-17T13:55:55.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:55:55.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:55:55.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:55:55.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:55.985 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:55:55.985 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.0862451, teldec = -24.256358
2025-11-17T13:55:55.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0862451 -24.256358
2025-11-17T13:55:55.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0862451 -24.256358
2025-11-17T13:55:55.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0862451 -24.256358
2025-11-17T13:55:55.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.0862451;-24.256358;50.108275;89.992811;50.08601;90.12017;17.106;2460996.99717576;13.93217833;1.3;_20.0604672450925 -24.3280105494413
2025-11-17T13:55:55.986 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0604672450925     dec_j2k = -24.3280105494413
2025-11-17T13:55:55.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:55:55.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:55:55.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104669708034394;171.162357330327;_
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104669708034394;171.162357330327;_
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:55.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:55:55.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:55:55.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:55.989 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:55:55.989 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43679)
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:55:55.994 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:55:56.002 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:55:56.002 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99717573, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669708034394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108275, telescope_az=89.992811, telescope_ra=20.0862451, telescope_dec=-24.256358, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.106, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0604672450925, telescope_dec_j2k=-24.3280105494413, observability=1)
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Status age = 10.675934076309204s
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:06.678 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:06.679 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 17;20.0892249;-24.256358;50.108274;89.992811;50.08601;90.12017;17.10898;2460996.99729954;13.93515;1.3;_
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response 17;20.0892249;-24.256358;50.108274;89.992811;50.08601;90.12017;17.10898;2460996.99729954;13.93515;1.3;_
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:06.680 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:06.681 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:06.681 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:06.681 [INFO] [Thread-68061 (handle)] [driver.py] [get_status()] Telra = 20.0892249, teldec = -24.256358
2025-11-17T13:56:06.681 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0892249 -24.256358
2025-11-17T13:56:06.682 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0892249 -24.256358
2025-11-17T13:56:06.682 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0892249 -24.256358
2025-11-17T13:56:06.682 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 17;20.0892249;-24.256358;50.108274;89.992811;50.08601;90.12017;17.10898;2460996.99729956;13.93515;1.3;_20.0634484550166 -24.3281074071203
2025-11-17T13:56:06.683 [INFO] [Thread-68061 (handle)] [driver.py] [get_status()] ra_j2k = 20.0634484550166     dec_j2k = -24.3281074071203
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 140;0.104670109153822;171.162357330327;_
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response 140;0.104670109153822;171.162357330327;_
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:06.683 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:06.684 [DEBUG] [Thread-68061 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40249)
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:06.687 [DEBUG] [Thread-68061 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:06.695 [DEBUG] [Thread-68061 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:06.695 [INFO] [Thread-68061 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99729954, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670109153822, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.992811, telescope_ra=20.0892249, telescope_dec=-24.256358, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.10898, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0634484550166, telescope_dec_j2k=-24.3281074071203, observability=1)
2025-11-17T13:56:14.376 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:14.376 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Status age = 7.681074142456055s
2025-11-17T13:56:14.376 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:14.376 [DEBUG] [Thread-68062 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:14.377 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:14.378 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 17;20.0913908;-24.256358;50.108274;89.992811;50.08601;90.12017;17.11114;2460996.99738863;13.93731;1.3;_
2025-11-17T13:56:14.378 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response 17;20.0913908;-24.256358;50.108274;89.992811;50.08601;90.12017;17.11114;2460996.99738863;13.93731;1.3;_
2025-11-17T13:56:14.378 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:14.378 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:14.378 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:14.379 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:14.379 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:14.379 [INFO] [Thread-68062 (handle)] [driver.py] [get_status()] Telra = 20.0913908, teldec = -24.256358
2025-11-17T13:56:14.379 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0913908 -24.256358
2025-11-17T13:56:14.379 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0913908 -24.256358
2025-11-17T13:56:14.379 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0913908 -24.256358
2025-11-17T13:56:14.380 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 17;20.0913908;-24.256358;50.108274;89.992811;50.08601;90.12017;17.11114;2460996.99738866;13.93731;1.3;_20.065615381212 -24.3281777822332
2025-11-17T13:56:14.380 [INFO] [Thread-68062 (handle)] [driver.py] [get_status()] ra_j2k = 20.065615381212     dec_j2k = -24.3281777822332
2025-11-17T13:56:14.380 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:14.380 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:14.381 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:14.382 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:14.383 [DEBUG] [Thread-68062 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:14.388 [DEBUG] [Thread-68062 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58795)
2025-11-17T13:56:14.389 [DEBUG] [Thread-68062 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:14.389 [DEBUG] [Thread-68062 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:14.389 [DEBUG] [Thread-68062 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:14.389 [DEBUG] [Thread-68062 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:14.389 [DEBUG] [Thread-68062 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:14.397 [DEBUG] [Thread-68062 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:14.397 [INFO] [Thread-68062 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99738863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669347026909, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.992811, telescope_ra=20.0913908, telescope_dec=-24.256358, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.11114, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.065615381212, telescope_dec_j2k=-24.3281777822332, observability=1)
2025-11-17T13:56:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.6039354801177979s
2025-11-17T13:56:15.001 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6039354801177979
2025-11-17T13:56:16.447 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.447 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.447 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:16.447 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:56:16.448 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:16.449 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:16.450 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:56:16.453 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:16.454 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Park
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:56:16.455 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:56:16.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 29;20.0919518;-24.256357;50.108274;89.992811;50.08601;90.12017;17.1117;2460996.99741267;13.93786944;1.3;_Park Command Successful
2025-11-17T13:56:17.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:56:17.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:56:17.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:56:17.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:56:17.456 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:56:18.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:56:18.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:56:18.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:56:18.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:56:18.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:56:19.457 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:56:19.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:56:19.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:56:19.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:56:19.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:56:20.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:56:20.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:56:20.458 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:56:20.459 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:56:20.459 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:56:20.460 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:20.460 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:20.460 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:20.460 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:20.460 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:56:20.461 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:56:20.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:21.462 [DEBUG] [ThreadPoolExecutor-2872_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:21.463 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:56:21.463 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:56:21.463 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:56:21.463 [DEBUG] [ThreadPoolExecutor-2872_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:21.463 [INFO] [ThreadPoolExecutor-2872_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:56:24.744 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:24.744 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Status age = 10.347466945648193s
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:24.745 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:24.746 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 17;20.094269;-24.256357;50.108274;89.992811;50.08601;90.12017;17.11402;2460996.99750863;13.94018028;1.3;_
2025-11-17T13:56:24.746 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response 17;20.094269;-24.256357;50.108274;89.992811;50.08601;90.12017;17.11402;2460996.99750863;13.94018028;1.3;_
2025-11-17T13:56:24.746 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:24.746 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:24.746 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:24.747 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:24.747 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:24.747 [INFO] [Thread-68063 (handle)] [driver.py] [get_status()] Telra = 20.094269, teldec = -24.256357
2025-11-17T13:56:24.747 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] UnCookCoordinates 20.094269 -24.256357
2025-11-17T13:56:24.747 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.094269 -24.256357
2025-11-17T13:56:24.747 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.094269 -24.256357
2025-11-17T13:56:24.748 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 17;20.094269;-24.256357;50.108274;89.992811;50.08601;90.12017;17.11402;2460996.99750866;13.94018028;1.3;_20.0684949468591 -24.3282702665759
2025-11-17T13:56:24.748 [INFO] [Thread-68063 (handle)] [driver.py] [get_status()] ra_j2k = 20.0684949468591     dec_j2k = -24.3282702665759
2025-11-17T13:56:24.748 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:24.748 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:24.748 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 140;0.104669427250794;171.162357330327;_
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response 140;0.104669427250794;171.162357330327;_
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:24.749 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:24.750 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:24.750 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:24.750 [DEBUG] [Thread-68063 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:24.750 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:24.750 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:24.751 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:24.752 [DEBUG] [Thread-68063 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:24.752 [DEBUG] [Thread-68063 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:24.752 [DEBUG] [Thread-68063 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:24.753 [DEBUG] [Thread-68063 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45663)
2025-11-17T13:56:24.753 [DEBUG] [Thread-68063 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:24.753 [DEBUG] [Thread-68063 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:24.753 [DEBUG] [Thread-68063 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:24.754 [DEBUG] [Thread-68063 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:24.754 [DEBUG] [Thread-68063 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:24.761 [DEBUG] [Thread-68063 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:24.761 [DEBUG] [Thread-68063 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:24.761 [DEBUG] [Thread-68063 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:24.762 [DEBUG] [Thread-68063 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:24.762 [INFO] [Thread-68063 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99750863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669427250794, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.992811, telescope_ra=20.094269, telescope_dec=-24.256357, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.11402, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0684949468591, telescope_dec_j2k=-24.3282702665759, observability=1)
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.423878192901611s
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:32.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0963533;-24.256357;50.108274;89.99281;50.08601;90.12017;17.1161;2460996.99759476;13.94225889;1.3;_
2025-11-17T13:56:32.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.0963533;-24.256357;50.108274;89.99281;50.08601;90.12017;17.1161;2460996.99759476;13.94225889;1.3;_
2025-11-17T13:56:32.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:32.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:32.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:32.189 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:32.189 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:32.189 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.0963533, teldec = -24.256357
2025-11-17T13:56:32.189 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.0963533 -24.256357
2025-11-17T13:56:32.189 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.0963533 -24.256357
2025-11-17T13:56:32.189 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0963533 -24.256357
2025-11-17T13:56:32.190 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.0963533;-24.256357;50.108274;89.99281;50.08601;90.12017;17.1161;2460996.99759479;13.94225889;1.3;_20.0705802369678 -24.3283379398044
2025-11-17T13:56:32.190 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.0705802369678     dec_j2k = -24.3283379398044
2025-11-17T13:56:32.190 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:32.190 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:32.190 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668986019424;171.162351965909;_
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668986019424;171.162351965909;_
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:32.191 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:32.192 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:32.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:32.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:32.193 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53251)
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:32.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:32.205 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:56:32.205 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99759476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668986019424, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.99281, telescope_ra=20.0963533, telescope_dec=-24.256357, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.1161, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0705802369678, telescope_dec_j2k=-24.3283379398044, observability=1)
2025-11-17T13:56:32.205 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.06078243255615 seconds ago
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Status age = 10.603606939315796s
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:42.809 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:42.810 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:42.811 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 17;20.0993094;-24.256357;50.108274;89.99281;50.08601;90.12017;17.11906;2460996.99771772;13.94520694;1.3;_
2025-11-17T13:56:42.811 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response 17;20.0993094;-24.256357;50.108274;89.99281;50.08601;90.12017;17.11906;2460996.99771772;13.94520694;1.3;_
2025-11-17T13:56:42.811 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:42.811 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:42.811 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:42.812 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:42.812 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:42.812 [INFO] [Thread-68064 (handle)] [driver.py] [get_status()] Telra = 20.0993094, teldec = -24.256357
2025-11-17T13:56:42.812 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] UnCookCoordinates 20.0993094 -24.256357
2025-11-17T13:56:42.812 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.0993094 -24.256357
2025-11-17T13:56:42.812 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.0993094 -24.256357
2025-11-17T13:56:42.813 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 17;20.0993094;-24.256357;50.108274;89.99281;50.08601;90.12017;17.11906;2460996.99771774;13.94520694;1.3;_20.073537743048 -24.3284338825604
2025-11-17T13:56:42.813 [INFO] [Thread-68064 (handle)] [driver.py] [get_status()] ra_j2k = 20.073537743048     dec_j2k = -24.3284338825604
2025-11-17T13:56:42.813 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:42.813 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:42.813 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:42.814 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:42.815 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:42.816 [DEBUG] [Thread-68064 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:42.816 [DEBUG] [Thread-68064 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:42.816 [DEBUG] [Thread-68064 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39251)
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:42.821 [DEBUG] [Thread-68064 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:42.828 [DEBUG] [Thread-68064 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:42.829 [DEBUG] [Thread-68064 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:42.829 [DEBUG] [Thread-68064 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:42.829 [DEBUG] [Thread-68064 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:42.829 [INFO] [Thread-68064 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99771772, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669347026909, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.99281, telescope_ra=20.0993094, telescope_dec=-24.256357, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.11906, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.073537743048, telescope_dec_j2k=-24.3284338825604, observability=1)
2025-11-17T13:56:47.225 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:56:47
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.395949602127075s
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:47.225 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.100535;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12029;2460996.99776882;13.94642917;1.3;_
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.100535;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12029;2460996.99776882;13.94642917;1.3;_
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:47.226 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:47.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:47.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:47.227 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.100535, teldec = -24.256357
2025-11-17T13:56:47.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.100535 -24.256357
2025-11-17T13:56:47.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.100535 -24.256357
2025-11-17T13:56:47.227 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.100535 -24.256357
2025-11-17T13:56:47.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.100535;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12029;2460996.99776884;13.94642917;1.3;_20.0747639266417 -24.3284736480117
2025-11-17T13:56:47.228 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0747639266417     dec_j2k = -24.3284736480117
2025-11-17T13:56:47.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:47.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:47.228 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104670389937422;171.162362694745;_
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104670389937422;171.162362694745;_
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:47.229 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:47.230 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:47.232 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:47.232 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:47.232 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34627)
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:47.239 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:47.246 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:47.246 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99776882, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670389937422, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.99281, telescope_ra=20.100535, telescope_dec=-24.256357, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.12029, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0747639266417, telescope_dec_j2k=-24.3284736480117, observability=1)
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.845839023590088s
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:55.092 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:56:55.093 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:56:55.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1027321;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12248;2460996.99785988;13.94862028;1.3;_
2025-11-17T13:56:55.094 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.1027321;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12248;2460996.99785988;13.94862028;1.3;_
2025-11-17T13:56:55.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:56:55.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:56:55.094 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:56:55.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:55.095 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:56:55.095 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.1027321, teldec = -24.256357
2025-11-17T13:56:55.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1027321 -24.256357
2025-11-17T13:56:55.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1027321 -24.256357
2025-11-17T13:56:55.095 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1027321 -24.256357
2025-11-17T13:56:55.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1027321;-24.256357;50.108274;89.99281;50.08601;90.12017;17.12248;2460996.99785991;13.94862028;1.3;_20.0769620737617 -24.3285449161821
2025-11-17T13:56:55.096 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0769620737617     dec_j2k = -24.3285449161821
2025-11-17T13:56:55.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:56:55.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:56:55.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466950747468;171.162357330327;_
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466950747468;171.162357330327;_
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:55.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:56:55.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:56:55.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:55.099 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:56:55.099 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39137)
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:55.102 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:55.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:55.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:55.109 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:56:55.109 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:56:55.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:55.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:55.110 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:56:55.110 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:56:55.110 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:56:55.110 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99785988, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466950747468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.99281, telescope_ra=20.1027321, telescope_dec=-24.256357, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.12248, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:55:55.566402', telescope_ra_j2k=20.0769620737617, telescope_dec_j2k=-24.3285449161821, observability=1)
2025-11-17T13:56:55.715 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:55.715 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:55.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:55.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:55.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:55.717 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:55.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:55.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:55.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:55.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:55.718 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:56:55.718 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:55.718 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:55.718 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:55.718 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:56:55.719 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:56:55.720 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:56.720 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:56.720 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:56.720 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:56.720 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:56.721 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:56:56.724 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:56:56.725 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:56:56.725 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:56:56.725 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:56:56.725 [DEBUG] [ThreadPoolExecutor-2874_0] [payload.py] [to_registers()] [0]
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46387)
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:56:56.728 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:56:56.735 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:56:56.735 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:56:56.735 [DEBUG] [ThreadPoolExecutor-2874_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:56:56.736 [DEBUG] [ThreadPoolExecutor-2874_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:56:56.736 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:56:56.736 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:56:56.736 [DEBUG] [ThreadPoolExecutor-2874_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Status age = 5.825046062469482s
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:00.935 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:00.936 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:00.937 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 17;20.1043493;-24.256356;50.108274;89.992809;50.08601;90.12017;17.1241;2460996.99792751;13.95023306;1.3;_
2025-11-17T13:57:00.937 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response 17;20.1043493;-24.256356;50.108274;89.992809;50.08601;90.12017;17.1241;2460996.99792751;13.95023306;1.3;_
2025-11-17T13:57:00.937 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:00.937 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:00.937 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:00.938 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:00.938 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:00.938 [INFO] [Thread-68065 (handle)] [driver.py] [get_status()] Telra = 20.1043493, teldec = -24.256356
2025-11-17T13:57:00.938 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1043493 -24.256356
2025-11-17T13:57:00.938 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1043493 -24.256356
2025-11-17T13:57:00.939 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1043493 -24.256356
2025-11-17T13:57:00.939 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 17;20.1043493;-24.256356;50.108274;89.992809;50.08601;90.12017;17.1241;2460996.99792754;13.95023306;1.3;_20.0785800454402 -24.3285963590014
2025-11-17T13:57:00.940 [INFO] [Thread-68065 (handle)] [driver.py] [get_status()] ra_j2k = 20.0785800454402     dec_j2k = -24.3285963590014
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 140;0.104669908594108;171.162357330327;_
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response 140;0.104669908594108;171.162357330327;_
2025-11-17T13:57:00.940 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:00.941 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:00.942 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:00.943 [DEBUG] [Thread-68065 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:00.943 [DEBUG] [Thread-68065 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:00.943 [DEBUG] [Thread-68065 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46535)
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:00.948 [DEBUG] [Thread-68065 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:00.955 [DEBUG] [Thread-68065 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:00.955 [DEBUG] [Thread-68065 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:00.955 [DEBUG] [Thread-68065 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:00.955 [DEBUG] [Thread-68065 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:00.956 [DEBUG] [Thread-68065 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:00.956 [DEBUG] [Thread-68065 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:00.956 [DEBUG] [Thread-68065 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:00.956 [DEBUG] [Thread-68065 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:00.956 [DEBUG] [Thread-68065 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:00.956 [INFO] [Thread-68065 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99792751, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669908594108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.992809, telescope_ra=20.1043493, telescope_dec=-24.256356, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.1241, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0785800454402, telescope_dec_j2k=-24.3285963590014, observability=1)
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Status age = 13.486114501953125s
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:14.442 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:14.443 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:14.444 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 17;20.1081146;-24.256356;50.108274;89.992809;50.08601;90.12017;17.12787;2460996.99808384;13.95398806;1.3;_
2025-11-17T13:57:14.444 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response 17;20.1081146;-24.256356;50.108274;89.992809;50.08601;90.12017;17.12787;2460996.99808384;13.95398806;1.3;_
2025-11-17T13:57:14.444 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:14.444 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:14.444 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:14.445 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:14.445 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:14.445 [INFO] [Thread-68066 (handle)] [driver.py] [get_status()] Telra = 20.1081146, teldec = -24.256356
2025-11-17T13:57:14.445 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1081146 -24.256356
2025-11-17T13:57:14.445 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1081146 -24.256356
2025-11-17T13:57:14.445 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1081146 -24.256356
2025-11-17T13:57:14.446 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 17;20.1081146;-24.256356;50.108274;89.992809;50.08601;90.12017;17.12787;2460996.99808387;13.95398806;1.3;_20.0823471442209 -24.3287184111763
2025-11-17T13:57:14.446 [INFO] [Thread-68066 (handle)] [driver.py] [get_status()] ra_j2k = 20.0823471442209     dec_j2k = -24.3287184111763
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 140;0.104670069041879;171.162351965909;_
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response 140;0.104670069041879;171.162351965909;_
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:14.447 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:14.448 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:14.449 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:14.449 [DEBUG] [Thread-68066 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:14.449 [DEBUG] [Thread-68066 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:14.450 [DEBUG] [Thread-68066 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56637)
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:14.452 [DEBUG] [Thread-68066 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:14.459 [DEBUG] [Thread-68066 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:14.460 [DEBUG] [Thread-68066 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:14.460 [INFO] [Thread-68066 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99808384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670069041879, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108274, telescope_az=89.992809, telescope_ra=20.1081146, telescope_dec=-24.256356, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.12787, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0823471442209, telescope_dec_j2k=-24.3287184111763, observability=1)
2025-11-17T13:57:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5123031139373779s
2025-11-17T13:57:14.972 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5123031139373779
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Status age = 4.542274713516235s
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:19.002 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:19.003 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:19.004 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 17;20.1093942;-24.256356;50.108273;89.992809;50.08601;90.12017;17.12914;2460996.99813662;13.95526417;1.3;_
2025-11-17T13:57:19.004 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response 17;20.1093942;-24.256356;50.108273;89.992809;50.08601;90.12017;17.12914;2460996.99813662;13.95526417;1.3;_
2025-11-17T13:57:19.004 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:19.004 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:19.004 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:19.005 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:19.005 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:19.005 [INFO] [Thread-68067 (handle)] [driver.py] [get_status()] Telra = 20.1093942, teldec = -24.256356
2025-11-17T13:57:19.005 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1093942 -24.256356
2025-11-17T13:57:19.005 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1093942 -24.256356
2025-11-17T13:57:19.005 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1093942 -24.256356
2025-11-17T13:57:19.006 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 17;20.1093942;-24.256356;50.108273;89.992809;50.08601;90.12017;17.12914;2460996.99813664;13.95526417;1.3;_20.0836273563142 -24.328759873664
2025-11-17T13:57:19.006 [INFO] [Thread-68067 (handle)] [driver.py] [get_status()] ra_j2k = 20.0836273563142     dec_j2k = -24.328759873664
2025-11-17T13:57:19.006 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:19.006 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:19.006 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 140;0.10466922669108;171.162357330327;_
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response 140;0.10466922669108;171.162357330327;_
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:19.007 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:19.008 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:19.009 [DEBUG] [Thread-68067 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:19.009 [DEBUG] [Thread-68067 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:19.009 [DEBUG] [Thread-68067 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54987)
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:19.016 [DEBUG] [Thread-68067 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:19.024 [DEBUG] [Thread-68067 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:19.025 [INFO] [Thread-68067 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99813662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466922669108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992809, telescope_ra=20.1093942, telescope_dec=-24.256356, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.12914, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0836273563142, telescope_dec_j2k=-24.328759873664, observability=1)
2025-11-17T13:57:21.736 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:21.736 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:21.736 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:21.736 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:21.736 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:21.737 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:57:21.738 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:57:21.739 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.24031376838684s
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:32.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:32.266 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:32.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1130723;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13282;2460996.99829013;13.95893222;1.3;_
2025-11-17T13:57:32.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.1130723;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13282;2460996.99829013;13.95893222;1.3;_
2025-11-17T13:57:32.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:32.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:32.267 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:32.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:32.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:32.268 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.1130723, teldec = -24.256356
2025-11-17T13:57:32.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.1130723 -24.256356
2025-11-17T13:57:32.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.1130723 -24.256356
2025-11-17T13:57:32.268 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1130723 -24.256356
2025-11-17T13:57:32.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1130723;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13282;2460996.99829015;13.95893222;1.3;_20.0873072179703 -24.3288790094994
2025-11-17T13:57:32.269 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.0873072179703     dec_j2k = -24.3288790094994
2025-11-17T13:57:32.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:32.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:32.269 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668945907481;171.162357330327;_
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668945907481;171.162357330327;_
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:32.270 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:32.271 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:32.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:32.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:32.272 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:32.277 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50403)
2025-11-17T13:57:32.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:32.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:32.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:32.278 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:32.278 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:32.286 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:57:32.286 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99829013, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668945907481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992808, telescope_ra=20.1130723, telescope_dec=-24.256356, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.13282, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0873072179703, telescope_dec_j2k=-24.3288790094994, observability=1)
2025-11-17T13:57:32.286 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.061867237091064 seconds ago
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Status age = 4.781002759933472s
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:37.067 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:37.068 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:37.069 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 17;20.1144073;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13416;2460996.99834571;13.96026361;1.3;_
2025-11-17T13:57:37.069 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response 17;20.1144073;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13416;2460996.99834571;13.96026361;1.3;_
2025-11-17T13:57:37.069 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:37.069 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:37.069 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:37.070 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:37.070 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:37.070 [INFO] [Thread-68068 (handle)] [driver.py] [get_status()] Telra = 20.1144073, teldec = -24.256356
2025-11-17T13:57:37.070 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1144073 -24.256356
2025-11-17T13:57:37.070 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1144073 -24.256356
2025-11-17T13:57:37.070 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1144073 -24.256356
2025-11-17T13:57:37.071 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 17;20.1144073;-24.256356;50.108273;89.992808;50.08601;90.12017;17.13416;2460996.99834573;13.96026361;1.3;_20.0886428582037 -24.3289222345862
2025-11-17T13:57:37.071 [INFO] [Thread-68068 (handle)] [driver.py] [get_status()] ra_j2k = 20.0886428582037     dec_j2k = -24.3289222345862
2025-11-17T13:57:37.071 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:37.071 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:37.071 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 140;0.104669186579138;171.162357330327;_
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response 140;0.104669186579138;171.162357330327;_
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:37.072 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:37.073 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:37.073 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:37.073 [DEBUG] [Thread-68068 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:37.073 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:37.073 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:37.074 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:37.074 [DEBUG] [Thread-68068 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:37.074 [DEBUG] [Thread-68068 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:37.074 [DEBUG] [Thread-68068 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:37.079 [DEBUG] [Thread-68068 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37645)
2025-11-17T13:57:37.079 [DEBUG] [Thread-68068 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:37.080 [DEBUG] [Thread-68068 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:37.080 [DEBUG] [Thread-68068 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:37.080 [DEBUG] [Thread-68068 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:37.080 [DEBUG] [Thread-68068 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:37.087 [DEBUG] [Thread-68068 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:37.087 [INFO] [Thread-68068 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99834571, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669186579138, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992808, telescope_ra=20.1144073, telescope_dec=-24.256356, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.13416, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0886428582037, telescope_dec_j2k=-24.3289222345862, observability=1)
2025-11-17T13:57:47.307 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:57:47
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.219974517822266s
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:47.307 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:47.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:47.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:47.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1172551;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13701;2460996.99846422;13.96310361;1.3;_
2025-11-17T13:57:47.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.1172551;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13701;2460996.99846422;13.96310361;1.3;_
2025-11-17T13:57:47.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:47.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:47.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:47.310 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:47.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:47.311 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.1172551, teldec = -24.256355
2025-11-17T13:57:47.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1172551 -24.256355
2025-11-17T13:57:47.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1172551 -24.256355
2025-11-17T13:57:47.311 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1172551 -24.256355
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1172551;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13701;2460996.99846426;13.96310361;1.3;_20.0914920255786 -24.32901341258
2025-11-17T13:57:47.312 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.0914920255786     dec_j2k = -24.32901341258
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10466950747468;171.162351965909;_
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10466950747468;171.162351965909;_
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:47.312 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:47.313 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:47.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:47.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:47.314 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60571)
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:47.317 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:47.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:47.325 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99846422, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466950747468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992808, telescope_ra=20.1172551, telescope_dec=-24.256355, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.13701, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0914920255786, telescope_dec_j2k=-24.32901341258, observability=1)
2025-11-17T13:57:54.202 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:54.202 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.877751350402832s
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:54.203 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:57:54.204 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:57:54.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1191781;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13893;2460996.99854404;13.96502139;1.3;_
2025-11-17T13:57:54.205 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.1191781;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13893;2460996.99854404;13.96502139;1.3;_
2025-11-17T13:57:54.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:57:54.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:57:54.205 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:57:54.206 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.1191781, teldec = -24.256355
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1191781 -24.256355
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1191781 -24.256355
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1191781 -24.256355
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1191781;-24.256355;50.108273;89.992808;50.08601;90.12017;17.13893;2460996.99854405;13.96502139;1.3;_20.0934159499218 -24.3290756339893
2025-11-17T13:57:54.206 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.0934159499218     dec_j2k = -24.3290756339893
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:57:54.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:57:54.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:57:54.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104670028929937;171.162357330327;_
2025-11-17T13:57:54.207 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104670028929937;171.162357330327;_
2025-11-17T13:57:54.207 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:57:54.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:54.208 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:57:54.209 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:57:54.213 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52187)
2025-11-17T13:57:54.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:57:54.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:57:54.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:57:54.214 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:57:54.214 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:57:54.221 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:57:54.221 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:57:54.222 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:57:54.222 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99854404, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670028929937, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992808, telescope_ra=20.1191781, telescope_dec=-24.256355, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.13893, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:56:55.715401', telescope_ra_j2k=20.0934159499218, telescope_dec_j2k=-24.3290756339893, observability=1)
2025-11-17T13:57:55.185 [DEBUG] [Thread-68069 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:57:55.185 [DEBUG] [Thread-68069 (handle)] [server.py] [get_status()] Status age = 0.9634053707122803s
2025-11-17T13:57:55.185 [DEBUG] [Thread-68069 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9634053707122803
2025-11-17T13:57:55.858 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:55.859 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:57:55.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:57:55.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:57:55.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:57:55.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:57:55.860 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:57:55.860 [INFO] [ThreadPoolExecutor-2875_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:57:55.861 [INFO] [ThreadPoolExecutor-2875_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:58:13.245 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Status age = 19.023675680160522s
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:13.246 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:13.247 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:13.247 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:13.247 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:13.247 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 17;20.1244965;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14425;2460996.99876443;13.97032528;1.3;_
2025-11-17T13:58:13.248 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response 17;20.1244965;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14425;2460996.99876443;13.97032528;1.3;_
2025-11-17T13:58:13.248 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:13.248 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:13.248 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:13.249 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:13.249 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:13.249 [INFO] [Thread-68070 (handle)] [driver.py] [get_status()] Telra = 20.1244965, teldec = -24.256355
2025-11-17T13:58:13.249 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1244965 -24.256355
2025-11-17T13:58:13.249 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1244965 -24.256355
2025-11-17T13:58:13.249 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1244965 -24.256355
2025-11-17T13:58:13.250 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 17;20.1244965;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14425;2460996.99876447;13.97032528;1.3;_20.098736911096 -24.3292476239623
2025-11-17T13:58:13.250 [INFO] [Thread-68070 (handle)] [driver.py] [get_status()] ra_j2k = 20.098736911096     dec_j2k = -24.3292476239623
2025-11-17T13:58:13.250 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:13.250 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:13.250 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response 140;0.104669347026909;171.162357330327;_
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:13.251 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:13.252 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:13.253 [DEBUG] [Thread-68070 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:13.253 [DEBUG] [Thread-68070 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:13.253 [DEBUG] [Thread-68070 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:13.255 [DEBUG] [Thread-68070 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47933)
2025-11-17T13:58:13.255 [DEBUG] [Thread-68070 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:13.255 [DEBUG] [Thread-68070 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:13.256 [DEBUG] [Thread-68070 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:13.256 [DEBUG] [Thread-68070 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:13.256 [DEBUG] [Thread-68070 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:13.263 [DEBUG] [Thread-68070 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:13.263 [INFO] [Thread-68070 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99876443, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669347026909, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992807, telescope_ra=20.1244965, telescope_dec=-24.256355, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.14425, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.098736911096, telescope_dec_j2k=-24.3292476239623, observability=1)
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Status age = 1.2327048778533936s
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:14.496 [DEBUG] [Thread-68071 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:14.497 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:14.497 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:14.497 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:14.497 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:14.498 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 17;20.1248336;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14458;2460996.9987789;13.97066139;1.3;_
2025-11-17T13:58:14.498 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response 17;20.1248336;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14458;2460996.9987789;13.97066139;1.3;_
2025-11-17T13:58:14.498 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:14.498 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:14.498 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:14.499 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:14.499 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:14.499 [INFO] [Thread-68071 (handle)] [driver.py] [get_status()] Telra = 20.1248336, teldec = -24.256355
2025-11-17T13:58:14.499 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1248336 -24.256355
2025-11-17T13:58:14.499 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1248336 -24.256355
2025-11-17T13:58:14.499 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1248336 -24.256355
2025-11-17T13:58:14.500 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 17;20.1248336;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14458;2460996.99877894;13.97066139;1.3;_20.0990741736672 -24.3292585206465
2025-11-17T13:58:14.500 [INFO] [Thread-68071 (handle)] [driver.py] [get_status()] ra_j2k = 20.0990741736672     dec_j2k = -24.3292585206465
2025-11-17T13:58:14.500 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:14.500 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:14.500 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 140;0.10466950747468;171.162357330327;_
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response 140;0.10466950747468;171.162357330327;_
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:14.501 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:14.502 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:14.503 [DEBUG] [Thread-68071 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:14.503 [DEBUG] [Thread-68071 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:14.503 [DEBUG] [Thread-68071 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57419)
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:14.508 [DEBUG] [Thread-68071 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:14.516 [DEBUG] [Thread-68071 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:14.516 [INFO] [Thread-68071 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.9987789, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466950747468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992807, telescope_ra=20.1248336, telescope_dec=-24.256355, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.14458, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.0990741736672, telescope_dec_j2k=-24.3292585206465, observability=1)
2025-11-17T13:58:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.4637489318847656s
2025-11-17T13:58:14.980 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4637489318847656
2025-11-17T13:58:16.739 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.739 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.739 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:16.739 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:16.742 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T13:58:16.743 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:16.744 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:16.745 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T13:58:16.746 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:16.747 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Park
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command Park
2025-11-17T13:58:16.748 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to Park
2025-11-17T13:58:16.749 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 29;20.1254697;-24.256355;50.108273;89.992807;50.08601;90.12017;17.14522;2460996.99880496;13.97129583;1.3;_Park Command Successful
2025-11-17T13:58:17.749 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:58:17.749 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:58:17.749 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:58:17.750 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:58:17.750 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:58:18.750 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:58:18.750 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:58:18.750 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:58:18.751 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:58:18.751 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:58:19.751 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T13:58:19.752 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T13:58:19.752 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T13:58:19.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:58:19.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T13:58:20.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] ParkRotator
2025-11-17T13:58:20.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T13:58:20.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T13:58:20.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:58:20.753 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:20.754 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T13:58:20.755 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T13:58:20.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:58:21.756 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:58:21.757 [DEBUG] [ThreadPoolExecutor-2874_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:21.757 [INFO] [ThreadPoolExecutor-2874_0] [server.py] [done()] Shutdown complete...
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Status age = 16.814680814743042s
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:31.331 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:31.332 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:31.333 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 17;20.1295375;-24.256354;50.108273;89.992806;50.08601;90.12017;17.14929;2460996.99897376;13.9753525;1.3;_
2025-11-17T13:58:31.333 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response 17;20.1295375;-24.256354;50.108273;89.992806;50.08601;90.12017;17.14929;2460996.99897376;13.9753525;1.3;_
2025-11-17T13:58:31.333 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:31.333 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:31.333 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:31.334 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:31.334 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:31.334 [INFO] [Thread-68072 (handle)] [driver.py] [get_status()] Telra = 20.1295375, teldec = -24.256354
2025-11-17T13:58:31.334 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1295375 -24.256354
2025-11-17T13:58:31.334 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1295375 -24.256354
2025-11-17T13:58:31.334 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1295375 -24.256354
2025-11-17T13:58:31.335 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 17;20.1295375;-24.256354;50.108273;89.992806;50.08601;90.12017;17.14929;2460996.99897378;13.9753525;1.3;_20.103780345277 -24.3294095149742
2025-11-17T13:58:31.335 [INFO] [Thread-68072 (handle)] [driver.py] [get_status()] ra_j2k = 20.103780345277     dec_j2k = -24.3294095149742
2025-11-17T13:58:31.335 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:31.335 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:31.335 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 140;0.104669026131366;171.162362694745;_
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response 140;0.104669026131366;171.162362694745;_
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:31.336 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:31.337 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:31.338 [DEBUG] [Thread-68072 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:31.338 [DEBUG] [Thread-68072 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:31.338 [DEBUG] [Thread-68072 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37441)
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:31.341 [DEBUG] [Thread-68072 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:31.348 [DEBUG] [Thread-68072 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:31.348 [INFO] [Thread-68072 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99897376, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669026131366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108273, telescope_az=89.992806, telescope_ra=20.1295375, telescope_dec=-24.256354, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.14929, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.103780345277, telescope_dec_j2k=-24.3294095149742, observability=1)
2025-11-17T13:58:32.346 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:58:32.347 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.9983134269714355s
2025-11-17T13:58:32.347 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.9983134269714355
2025-11-17T13:58:32.347 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03992772102356 seconds ago
2025-11-17T13:58:47.386 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:58:47
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 16.037445545196533s
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:47.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:47.387 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:47.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.134;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15375;2460996.99915958;13.97980278;1.3;_
2025-11-17T13:58:47.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.134;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15375;2460996.99915958;13.97980278;1.3;_
2025-11-17T13:58:47.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:47.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:47.388 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:47.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:47.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:47.389 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.134, teldec = -24.256354
2025-11-17T13:58:47.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.134 -24.256354
2025-11-17T13:58:47.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.134 -24.256354
2025-11-17T13:58:47.389 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.134 -24.256354
2025-11-17T13:58:47.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.134;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15375;2460996.99915961;13.97980278;1.3;_20.1082450051719 -24.329553608268
2025-11-17T13:58:47.390 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.1082450051719     dec_j2k = -24.329553608268
2025-11-17T13:58:47.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:47.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:47.390 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668905795538;171.162351965909;_
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668905795538;171.162351965909;_
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:47.391 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:47.392 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:47.394 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:47.394 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:47.394 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:47.397 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36083)
2025-11-17T13:58:47.397 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:47.398 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:47.398 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:47.398 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:47.398 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:47.405 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:47.405 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99915958, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668905795538, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992806, telescope_ra=20.134, telescope_dec=-24.256354, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.15375, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.1082450051719, telescope_dec_j2k=-24.329553608268, observability=1)
2025-11-17T13:58:49.440 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:49.440 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Status age = 2.0349767208099365s
2025-11-17T13:58:49.440 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:49.440 [DEBUG] [Thread-68073 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:49.441 [DEBUG] [Thread-68073 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:49.441 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:49.441 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:49.441 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:49.442 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:49.443 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 17;20.1345612;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15431;2460996.99918336;13.9803625;1.3;_
2025-11-17T13:58:49.443 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response 17;20.1345612;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15431;2460996.99918336;13.9803625;1.3;_
2025-11-17T13:58:49.443 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:49.443 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:49.443 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:49.444 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:49.444 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:49.444 [INFO] [Thread-68073 (handle)] [driver.py] [get_status()] Telra = 20.1345612, teldec = -24.256354
2025-11-17T13:58:49.444 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1345612 -24.256354
2025-11-17T13:58:49.444 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1345612 -24.256354
2025-11-17T13:58:49.444 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1345612 -24.256354
2025-11-17T13:58:49.445 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 17;20.1345612;-24.256354;50.108272;89.992806;50.08601;90.12017;17.15431;2460996.99918339;13.9803625;1.3;_20.1088064771446 -24.3295717223586
2025-11-17T13:58:49.445 [INFO] [Thread-68073 (handle)] [driver.py] [get_status()] ra_j2k = 20.1088064771446     dec_j2k = -24.3295717223586
2025-11-17T13:58:49.445 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:49.445 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:49.445 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 140;0.104669266803023;171.162357330327;_
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response 140;0.104669266803023;171.162357330327;_
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:49.446 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:49.447 [DEBUG] [Thread-68073 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49235)
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:49.452 [DEBUG] [Thread-68073 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:49.460 [DEBUG] [Thread-68073 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:49.460 [INFO] [Thread-68073 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99918336, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669266803023, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992806, telescope_ra=20.1345612, telescope_dec=-24.256354, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.15431, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.1088064771446, telescope_dec_j2k=-24.3295717223586, observability=1)
2025-11-17T13:58:53.311 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:58:53.311 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.8509559631347656s
2025-11-17T13:58:53.311 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:58:53.311 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:53.311 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:53.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:53.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:53.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:53.312 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:53.312 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:53.313 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:53.313 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:58:53.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:58:53.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:58:53.313 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:58:53.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1356461;-24.256354;50.108272;89.992806;50.08601;90.12017;17.1554;2460996.99922817;13.98144444;1.3;_
2025-11-17T13:58:53.314 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.1356461;-24.256354;50.108272;89.992806;50.08601;90.12017;17.1554;2460996.99922817;13.98144444;1.3;_
2025-11-17T13:58:53.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:58:53.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:58:53.314 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:58:53.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:53.315 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:58:53.315 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.1356461, teldec = -24.256354
2025-11-17T13:58:53.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1356461 -24.256354
2025-11-17T13:58:53.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1356461 -24.256354
2025-11-17T13:58:53.315 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1356461 -24.256354
2025-11-17T13:58:53.316 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1356461;-24.256354;50.108272;89.992806;50.08601;90.12017;17.1554;2460996.99922819;13.98144444;1.3;_20.1098919031359 -24.3296067357282
2025-11-17T13:58:53.316 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.1098919031359     dec_j2k = -24.3296067357282
2025-11-17T13:58:53.316 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:58:53.316 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:58:53.316 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104669467362737;171.162357330327;_
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104669467362737;171.162357330327;_
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:53.317 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:58:53.318 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:58:53.319 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:53.319 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:58:53.319 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33659)
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:53.320 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:58:53.328 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:58:53.328 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460996.99922817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669467362737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992806, telescope_ra=20.1356461, telescope_dec=-24.256354, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.1554, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:57:55.858495', telescope_ra_j2k=20.1098919031359, telescope_dec_j2k=-24.3296067357282, observability=1)
2025-11-17T13:58:55.999 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:56.000 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:56.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:56.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:56.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:56.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:56.001 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:58:56.001 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:56.001 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T13:58:56.002 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T13:58:56.003 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:57.003 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:57.004 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:57.004 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:57.004 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:57.004 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:58:57.005 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:58:57.006 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:58:57.006 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:58:57.006 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:58:57.006 [DEBUG] [ThreadPoolExecutor-2876_0] [payload.py] [to_registers()] [0]
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34207)
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:58:57.007 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:58:57.014 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:58:57.014 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:58:57.014 [DEBUG] [ThreadPoolExecutor-2876_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T13:58:57.014 [DEBUG] [ThreadPoolExecutor-2876_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T13:58:57.015 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:58:57.015 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:58:57.015 [DEBUG] [ThreadPoolExecutor-2876_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:07.515 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:07.515 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Status age = 14.187255144119263s
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:07.516 [DEBUG] [Thread-68074 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 17;20.1396019;-24.256353;50.108272;89.992805;50.08601;90.12017;17.15935;2460996.99939256;13.98538944;1.3;_
2025-11-17T13:59:07.517 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response 17;20.1396019;-24.256353;50.108272;89.992805;50.08601;90.12017;17.15935;2460996.99939256;13.98538944;1.3;_
2025-11-17T13:59:07.518 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:07.518 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:07.518 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:07.519 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:07.519 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:07.519 [INFO] [Thread-68074 (handle)] [driver.py] [get_status()] Telra = 20.1396019, teldec = -24.256353
2025-11-17T13:59:07.519 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1396019 -24.256353
2025-11-17T13:59:07.519 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1396019 -24.256353
2025-11-17T13:59:07.519 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1396019 -24.256353
2025-11-17T13:59:07.520 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 17;20.1396019;-24.256353;50.108272;89.992805;50.08601;90.12017;17.15935;2460996.99939259;13.98538944;1.3;_20.1138496236436 -24.3297333535214
2025-11-17T13:59:07.520 [INFO] [Thread-68074 (handle)] [driver.py] [get_status()] ra_j2k = 20.1138496236436     dec_j2k = -24.3297333535214
2025-11-17T13:59:07.520 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:07.520 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:07.520 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 140;0.104669627810508;171.162368059163;_
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response 140;0.104669627810508;171.162368059163;_
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:07.521 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:07.522 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:07.523 [DEBUG] [Thread-68074 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:07.523 [DEBUG] [Thread-68074 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:07.523 [DEBUG] [Thread-68074 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52135)
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:07.525 [DEBUG] [Thread-68074 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:07.532 [DEBUG] [Thread-68074 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:07.532 [DEBUG] [Thread-68074 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:07.532 [DEBUG] [Thread-68074 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:07.532 [DEBUG] [Thread-68074 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:07.533 [DEBUG] [Thread-68074 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:07.533 [DEBUG] [Thread-68074 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:07.533 [DEBUG] [Thread-68074 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:07.533 [DEBUG] [Thread-68074 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:07.533 [DEBUG] [Thread-68074 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:07.533 [INFO] [Thread-68074 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99939256, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669627810508, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992805, telescope_ra=20.1396019, telescope_dec=-24.256353, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.15935, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1138496236436, telescope_dec_j2k=-24.3297333535214, observability=1)
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Status age = 7.012260437011719s
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:14.545 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:14.546 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:14.547 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 17;20.1415495;-24.256353;50.108272;89.992805;50.08601;90.12017;17.1613;2460996.99947392;13.98733167;1.3;_
2025-11-17T13:59:14.547 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response 17;20.1415495;-24.256353;50.108272;89.992805;50.08601;90.12017;17.1613;2460996.99947392;13.98733167;1.3;_
2025-11-17T13:59:14.547 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:14.547 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:14.547 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:14.548 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:14.548 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:14.548 [INFO] [Thread-68075 (handle)] [driver.py] [get_status()] Telra = 20.1415495, teldec = -24.256353
2025-11-17T13:59:14.548 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1415495 -24.256353
2025-11-17T13:59:14.549 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1415495 -24.256353
2025-11-17T13:59:14.549 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1415495 -24.256353
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 17;20.1415495;-24.256353;50.108272;89.992805;50.08601;90.12017;17.1613;2460996.99947395;13.98733167;1.3;_20.1157981705131 -24.3297961564323
2025-11-17T13:59:14.550 [INFO] [Thread-68075 (handle)] [driver.py] [get_status()] ra_j2k = 20.1157981705131     dec_j2k = -24.3297961564323
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 140;0.104669306914966;171.162357330327;_
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response 140;0.104669306914966;171.162357330327;_
2025-11-17T13:59:14.550 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:14.551 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:14.551 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:14.551 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:14.552 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:14.553 [DEBUG] [Thread-68075 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:14.553 [DEBUG] [Thread-68075 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:14.553 [DEBUG] [Thread-68075 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33279)
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:14.557 [DEBUG] [Thread-68075 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:14.564 [DEBUG] [Thread-68075 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:14.565 [DEBUG] [Thread-68075 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:14.565 [INFO] [Thread-68075 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99947392, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669306914966, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992805, telescope_ra=20.1415495, telescope_dec=-24.256353, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.1613, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1157981705131, telescope_dec_j2k=-24.3297961564323, observability=1)
2025-11-17T13:59:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.43534326553344727s
2025-11-17T13:59:15.000 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.43534326553344727
2025-11-17T13:59:22.015 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:22.015 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:22.015 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:22.015 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:22.015 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:22.016 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] CloseShutters
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T13:59:22.017 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T13:59:22.018 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Status age = 11.034304857254028s
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:25.599 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:25.600 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:25.601 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 17;20.1446438;-24.256353;50.108272;89.992805;50.08601;90.12017;17.16439;2460996.99960186;13.9904175;1.3;_
2025-11-17T13:59:25.601 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response 17;20.1446438;-24.256353;50.108272;89.992805;50.08601;90.12017;17.16439;2460996.99960186;13.9904175;1.3;_
2025-11-17T13:59:25.601 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:25.601 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:25.601 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:25.602 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:25.602 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:25.602 [INFO] [Thread-68076 (handle)] [driver.py] [get_status()] Telra = 20.1446438, teldec = -24.256353
2025-11-17T13:59:25.602 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1446438 -24.256353
2025-11-17T13:59:25.602 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1446438 -24.256353
2025-11-17T13:59:25.602 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1446438 -24.256353
2025-11-17T13:59:25.603 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 17;20.1446438;-24.256353;50.108272;89.992805;50.08601;90.12017;17.16439;2460996.99960189;13.9904175;1.3;_20.1188939767903 -24.329895897551
2025-11-17T13:59:25.603 [INFO] [Thread-68076 (handle)] [driver.py] [get_status()] ra_j2k = 20.1188939767903     dec_j2k = -24.329895897551
2025-11-17T13:59:25.603 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:25.603 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 140;0.104669106355252;171.162368059163;_
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response 140;0.104669106355252;171.162368059163;_
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:25.604 [DEBUG] [Thread-68076 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:25.605 [DEBUG] [Thread-68076 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38925)
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:25.608 [DEBUG] [Thread-68076 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:25.615 [DEBUG] [Thread-68076 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:25.616 [DEBUG] [Thread-68076 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:25.616 [DEBUG] [Thread-68076 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:25.616 [DEBUG] [Thread-68076 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:25.616 [INFO] [Thread-68076 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99960186, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669106355252, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992805, telescope_ra=20.1446438, telescope_dec=-24.256353, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.16439, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1188939767903, telescope_dec_j2k=-24.329895897551, observability=1)
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.791167497634888s
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:32.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1465417;-24.256353;50.108272;89.992804;50.08601;90.12017;17.16629;2460996.99968065;13.99231028;1.3;_
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.1465417;-24.256353;50.108272;89.992804;50.08601;90.12017;17.16629;2460996.99968065;13.99231028;1.3;_
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:32.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:32.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:32.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:32.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:32.409 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.1465417, teldec = -24.256353
2025-11-17T13:59:32.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.1465417 -24.256353
2025-11-17T13:59:32.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.1465417 -24.256353
2025-11-17T13:59:32.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1465417 -24.256353
2025-11-17T13:59:32.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1465417;-24.256353;50.108272;89.992804;50.08601;90.12017;17.16629;2460996.99968067;13.99231028;1.3;_20.1207928018327 -24.3299570506365
2025-11-17T13:59:32.411 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.1207928018327     dec_j2k = -24.3299570506365
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10466922669108;171.162357330327;_
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10466922669108;171.162357330327;_
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:32.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:32.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42897)
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:32.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:32.426 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T13:59:32.427 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99968065, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466922669108, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992804, telescope_ra=20.1465417, telescope_dec=-24.256353, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.16629, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1207928018327, telescope_dec_j2k=-24.3299570506365, observability=1)
2025-11-17T13:59:32.427 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.041054248809814 seconds ago
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Status age = 11.280148267745972s
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:43.707 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:43.708 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:43.709 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 17;20.1496839;-24.256352;50.108272;89.992804;50.08601;90.12017;17.16943;2460996.99981145;13.99544389;1.3;_
2025-11-17T13:59:43.709 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response 17;20.1496839;-24.256352;50.108272;89.992804;50.08601;90.12017;17.16943;2460996.99981145;13.99544389;1.3;_
2025-11-17T13:59:43.709 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:43.709 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:43.709 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:43.710 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:43.710 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:43.710 [INFO] [Thread-68077 (handle)] [driver.py] [get_status()] Telra = 20.1496839, teldec = -24.256352
2025-11-17T13:59:43.710 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1496839 -24.256352
2025-11-17T13:59:43.710 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1496839 -24.256352
2025-11-17T13:59:43.710 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1496839 -24.256352
2025-11-17T13:59:43.711 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 17;20.1496839;-24.256352;50.108272;89.992804;50.08601;90.12017;17.16943;2460996.99981147;13.99544389;1.3;_20.1239365354646 -24.3300572576552
2025-11-17T13:59:43.711 [INFO] [Thread-68077 (handle)] [driver.py] [get_status()] ra_j2k = 20.1239365354646     dec_j2k = -24.3300572576552
2025-11-17T13:59:43.711 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:43.711 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:43.711 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:43.712 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 140;0.104668945907481;171.162362694745;_
2025-11-17T13:59:43.712 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response 140;0.104668945907481;171.162362694745;_
2025-11-17T13:59:43.712 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:43.712 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:43.712 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:43.713 [DEBUG] [Thread-68077 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34551)
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:43.715 [DEBUG] [Thread-68077 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:43.722 [DEBUG] [Thread-68077 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:43.722 [INFO] [Thread-68077 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99981145, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668945907481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992804, telescope_ra=20.1496839, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.16943, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1239365354646, telescope_dec_j2k=-24.3300572576552, observability=1)
2025-11-17T13:59:47.466 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T13:59:47
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.7437336444854736s
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:47.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:47.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:47.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:47.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1507226;-24.256352;50.108272;89.992804;50.08601;90.12017;17.17047;2460996.99985495;13.99647972;1.3;_
2025-11-17T13:59:47.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.1507226;-24.256352;50.108272;89.992804;50.08601;90.12017;17.17047;2460996.99985495;13.99647972;1.3;_
2025-11-17T13:59:47.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:47.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:47.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:47.469 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:47.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:47.470 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.1507226, teldec = -24.256352
2025-11-17T13:59:47.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1507226 -24.256352
2025-11-17T13:59:47.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1507226 -24.256352
2025-11-17T13:59:47.470 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1507226 -24.256352
2025-11-17T13:59:47.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1507505;-24.256352;50.108272;89.992804;50.08601;90.12017;17.1705;2460996.99985499;13.9965075;1.3;_20.1249757429042 -24.3300907022914
2025-11-17T13:59:47.471 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.1249757429042     dec_j2k = -24.3300907022914
2025-11-17T13:59:47.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:47.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:47.471 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104669467362737;171.162351965909;_
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104669467362737;171.162351965909;_
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:47.472 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:47.473 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:47.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:47.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:47.474 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58691)
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:47.480 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:47.487 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:47.487 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:47.488 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:47.488 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99985495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669467362737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992804, telescope_ra=20.1507226, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.17047, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1249757429042, telescope_dec_j2k=-24.3300907022914, observability=1)
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.927760601043701s
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:52.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T13:59:52.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T13:59:52.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1521158;-24.256352;50.108272;89.992804;50.08601;90.12017;17.17187;2460996.99991225;13.99786917;1.3;_
2025-11-17T13:59:52.418 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.1521158;-24.256352;50.108272;89.992804;50.08601;90.12017;17.17187;2460996.99991225;13.99786917;1.3;_
2025-11-17T13:59:52.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T13:59:52.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T13:59:52.418 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T13:59:52.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:52.419 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T13:59:52.419 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.1521158, teldec = -24.256352
2025-11-17T13:59:52.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1521158 -24.256352
2025-11-17T13:59:52.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1521158 -24.256352
2025-11-17T13:59:52.419 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1521158 -24.256352
2025-11-17T13:59:52.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1521158;-24.256352;50.108272;89.992804;50.08601;90.12017;17.17187;2460996.99991227;13.99786917;1.3;_20.1263696239441 -24.3301355528907
2025-11-17T13:59:52.420 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.1263696239441     dec_j2k = -24.3301355528907
2025-11-17T13:59:52.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T13:59:52.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T13:59:52.420 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466878545971;171.162362694745;_
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466878545971;171.162362694745;_
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:52.421 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T13:59:52.422 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T13:59:52.423 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:52.423 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T13:59:52.423 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33601)
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T13:59:52.425 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T13:59:52.432 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T13:59:52.433 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T13:59:52.433 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460996.99991225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466878545971, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108272, telescope_az=89.992804, telescope_ra=20.1521158, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.17187, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:58:55.999344', telescope_ra_j2k=20.1263696239441, telescope_dec_j2k=-24.3301355528907, observability=1)
2025-11-17T13:59:56.142 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:56.142 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:56.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:56.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:56.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:56.143 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T13:59:56.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T13:59:56.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T13:59:56.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T13:59:56.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T13:59:56.144 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T13:59:56.144 [INFO] [ThreadPoolExecutor-2877_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T13:59:56.144 [INFO] [ThreadPoolExecutor-2877_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:00:01.766 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:01.766 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Status age = 9.33335566520691s
2025-11-17T14:00:01.766 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:01.766 [DEBUG] [Thread-68078 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:01.766 [DEBUG] [Thread-68078 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:01.767 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:01.767 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:01.767 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:01.768 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:01.769 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 17;20.154728;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17448;2460997.00002047;14.00047417;1.3;_
2025-11-17T14:00:01.769 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response 17;20.154728;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17448;2460997.00002047;14.00047417;1.3;_
2025-11-17T14:00:01.769 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:01.769 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:01.769 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:01.770 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:01.770 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:01.770 [INFO] [Thread-68078 (handle)] [driver.py] [get_status()] Telra = 20.154728, teldec = -24.256352
2025-11-17T14:00:01.770 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] UnCookCoordinates 20.154728 -24.256352
2025-11-17T14:00:01.770 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.154728 -24.256352
2025-11-17T14:00:01.770 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.154728 -24.256352
2025-11-17T14:00:01.771 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 17;20.154728;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17448;2460997.0000205;14.00047417;1.3;_20.1289831021509 -24.3302196201221
2025-11-17T14:00:01.771 [INFO] [Thread-68078 (handle)] [driver.py] [get_status()] ra_j2k = 20.1289831021509     dec_j2k = -24.3302196201221
2025-11-17T14:00:01.771 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:01.771 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:01.771 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 140;0.104669266803023;171.162357330327;_
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response 140;0.104669266803023;171.162357330327;_
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:01.772 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:01.773 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:01.774 [DEBUG] [Thread-68078 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:01.774 [DEBUG] [Thread-68078 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:01.774 [DEBUG] [Thread-68078 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58313)
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:01.780 [DEBUG] [Thread-68078 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:01.787 [DEBUG] [Thread-68078 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:01.788 [DEBUG] [Thread-68078 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:01.788 [DEBUG] [Thread-68078 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:01.788 [DEBUG] [Thread-68078 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:01.788 [INFO] [Thread-68078 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00002047, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669266803023, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992803, telescope_ra=20.154728, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.17448, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1289831021509, telescope_dec_j2k=-24.3302196201221, observability=1)
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Status age = 12.810558557510376s
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:14.598 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:14.599 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:14.600 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 17;20.1582941;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17804;2460997.00016898;14.00403056;1.3;_
2025-11-17T14:00:14.600 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response 17;20.1582941;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17804;2460997.00016898;14.00403056;1.3;_
2025-11-17T14:00:14.600 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:14.600 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:14.600 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:14.601 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:14.601 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:14.601 [INFO] [Thread-68079 (handle)] [driver.py] [get_status()] Telra = 20.1582941, teldec = -24.256352
2025-11-17T14:00:14.601 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1582941 -24.256352
2025-11-17T14:00:14.601 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1582941 -24.256352
2025-11-17T14:00:14.601 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1582941 -24.256352
2025-11-17T14:00:14.602 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 17;20.1582941;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17804;2460997.000169;14.00403056;1.3;_20.13255094982 -24.3303343313981
2025-11-17T14:00:14.602 [INFO] [Thread-68079 (handle)] [driver.py] [get_status()] ra_j2k = 20.13255094982     dec_j2k = -24.3303343313981
2025-11-17T14:00:14.602 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 140;0.104668705235824;171.162362694745;_
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response 140;0.104668705235824;171.162362694745;_
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:14.603 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:14.604 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:14.604 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:14.604 [DEBUG] [Thread-68079 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:14.604 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:14.604 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:14.605 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:14.605 [DEBUG] [Thread-68079 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:14.605 [DEBUG] [Thread-68079 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:14.605 [DEBUG] [Thread-68079 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:14.608 [DEBUG] [Thread-68079 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58343)
2025-11-17T14:00:14.608 [DEBUG] [Thread-68079 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:14.608 [DEBUG] [Thread-68079 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:14.608 [DEBUG] [Thread-68079 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:14.608 [DEBUG] [Thread-68079 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:14.609 [DEBUG] [Thread-68079 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:14.615 [DEBUG] [Thread-68079 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:14.616 [DEBUG] [Thread-68079 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:14.616 [INFO] [Thread-68079 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00016898, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668705235824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992803, telescope_ra=20.1582941, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.17804, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.13255094982, telescope_dec_j2k=-24.3303343313981, observability=1)
2025-11-17T14:00:15.003 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:15.003 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.3875737190246582s
2025-11-17T14:00:15.004 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3875737190246582
2025-11-17T14:00:17.018 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.018 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.018 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:17.018 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:17.018 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:00:17.019 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:17.020 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:17.021 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:00:17.022 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:17.023 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Park
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:00:17.024 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:00:17.025 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 29;20.1589682;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17872;2460997.00019705;14.00470278;1.3;_Park Command Successful
2025-11-17T14:00:18.025 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:00:18.025 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:00:18.026 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:00:18.027 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:00:18.027 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:00:19.027 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:00:19.027 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:00:19.028 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:00:19.028 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:00:19.028 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:00:19.885 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:19.885 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Status age = 5.269378185272217s
2025-11-17T14:00:19.885 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:19.885 [DEBUG] [Thread-68080 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:19.885 [DEBUG] [Thread-68080 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:19.886 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:19.886 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:19.886 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:19.887 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:19.888 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 17;20.159772;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17952;2460997.00023019;14.00550444;1.3;_
2025-11-17T14:00:19.888 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response 17;20.159772;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17952;2460997.00023019;14.00550444;1.3;_
2025-11-17T14:00:19.888 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:19.888 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:19.888 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:19.889 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:19.889 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:19.889 [INFO] [Thread-68080 (handle)] [driver.py] [get_status()] Telra = 20.159772, teldec = -24.256352
2025-11-17T14:00:19.889 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] UnCookCoordinates 20.159772 -24.256352
2025-11-17T14:00:19.889 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.159772 -24.256352
2025-11-17T14:00:19.889 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.159772 -24.256352
2025-11-17T14:00:19.890 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 17;20.159772;-24.256352;50.108271;89.992803;50.08601;90.12017;17.17952;2460997.00023021;14.00550444;1.3;_20.1340295750196 -24.3303818526407
2025-11-17T14:00:19.890 [INFO] [Thread-68080 (handle)] [driver.py] [get_status()] ra_j2k = 20.1340295750196     dec_j2k = -24.3303818526407
2025-11-17T14:00:19.890 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:19.890 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:19.890 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162351965909;_
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162351965909;_
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:19.891 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:19.892 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:19.893 [DEBUG] [Thread-68080 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:19.893 [DEBUG] [Thread-68080 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:19.893 [DEBUG] [Thread-68080 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:19.897 [DEBUG] [Thread-68080 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54161)
2025-11-17T14:00:19.897 [DEBUG] [Thread-68080 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:19.897 [DEBUG] [Thread-68080 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:19.897 [DEBUG] [Thread-68080 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:19.898 [DEBUG] [Thread-68080 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:19.898 [DEBUG] [Thread-68080 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:19.905 [DEBUG] [Thread-68080 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:19.905 [INFO] [Thread-68080 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00023019, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992803, telescope_ra=20.159772, telescope_dec=-24.256352, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.17952, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1340295750196, telescope_dec_j2k=-24.3303818526407, observability=1)
2025-11-17T14:00:20.028 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:00:20.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:00:20.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:00:20.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:00:20.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:00:21.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:00:21.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:00:21.029 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:21.030 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:00:21.031 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:00:21.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:22.032 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:00:22.033 [DEBUG] [ThreadPoolExecutor-2876_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:22.034 [INFO] [ThreadPoolExecutor-2876_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.58164381980896s
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:32.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:32.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:32.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.163283;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18303;2460997.00037603;14.00900583;1.3;_
2025-11-17T14:00:32.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.163283;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18303;2460997.00037603;14.00900583;1.3;_
2025-11-17T14:00:32.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:32.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:32.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:32.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:32.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:32.490 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.163283, teldec = -24.256351
2025-11-17T14:00:32.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.163283 -24.256351
2025-11-17T14:00:32.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.163283 -24.256351
2025-11-17T14:00:32.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.163283 -24.256351
2025-11-17T14:00:32.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.163283;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18303;2460997.00037605;14.00900583;1.3;_20.1375423001685 -24.3304937037022
2025-11-17T14:00:32.491 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.1375423001685     dec_j2k = -24.3304937037022
2025-11-17T14:00:32.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:32.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:32.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104669066243309;171.162368059163;_
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104669066243309;171.162368059163;_
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:32.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:32.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:32.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:32.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:32.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47409)
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:32.495 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:32.503 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:00:32.503 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00037603, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669066243309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992802, telescope_ra=20.163283, telescope_dec=-24.256351, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.18303, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1375423001685, telescope_dec_j2k=-24.3304937037022, observability=1)
2025-11-17T14:00:32.503 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03755760192871 seconds ago
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Status age = 5.448923349380493s
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:37.952 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:37.953 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:37.954 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 17;20.1647885;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18454;2460997.00043928;14.01050722;1.3;_
2025-11-17T14:00:37.954 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response 17;20.1647885;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18454;2460997.00043928;14.01050722;1.3;_
2025-11-17T14:00:37.954 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:37.954 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:37.954 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:37.955 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:37.955 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:37.955 [INFO] [Thread-68081 (handle)] [driver.py] [get_status()] Telra = 20.1647885, teldec = -24.256351
2025-11-17T14:00:37.955 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1647885 -24.256351
2025-11-17T14:00:37.955 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1647885 -24.256351
2025-11-17T14:00:37.955 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1647885 -24.256351
2025-11-17T14:00:37.956 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 17;20.1647885;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18454;2460997.00043931;14.01050722;1.3;_20.1390485407542 -24.3305420747825
2025-11-17T14:00:37.956 [INFO] [Thread-68081 (handle)] [driver.py] [get_status()] ra_j2k = 20.1390485407542     dec_j2k = -24.3305420747825
2025-11-17T14:00:37.956 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:37.956 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:37.956 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 140;0.104669026131366;171.162357330327;_
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response 140;0.104669026131366;171.162357330327;_
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:37.957 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:37.958 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:37.959 [DEBUG] [Thread-68081 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:37.959 [DEBUG] [Thread-68081 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:37.959 [DEBUG] [Thread-68081 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:37.963 [DEBUG] [Thread-68081 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40589)
2025-11-17T14:00:37.963 [DEBUG] [Thread-68081 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:37.963 [DEBUG] [Thread-68081 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:37.963 [DEBUG] [Thread-68081 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:37.964 [DEBUG] [Thread-68081 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:37.964 [DEBUG] [Thread-68081 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:37.970 [DEBUG] [Thread-68081 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:37.971 [DEBUG] [Thread-68081 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:37.971 [INFO] [Thread-68081 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00043928, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669026131366, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992802, telescope_ra=20.1647885, telescope_dec=-24.256351, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.18454, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1390485407542, telescope_dec_j2k=-24.3305420747825, observability=1)
2025-11-17T14:00:47.549 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:00:47
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.57793641090393s
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:47.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:47.550 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:47.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1674622;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18721;2460997.00055036;14.01317361;1.3;_
2025-11-17T14:00:47.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.1674622;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18721;2460997.00055036;14.01317361;1.3;_
2025-11-17T14:00:47.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:47.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:47.551 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:47.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:47.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:47.552 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.1674622, teldec = -24.256351
2025-11-17T14:00:47.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1674622 -24.256351
2025-11-17T14:00:47.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1674622 -24.256351
2025-11-17T14:00:47.552 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1674622 -24.256351
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1674622;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18721;2460997.00055038;14.01317361;1.3;_20.1417235573673 -24.3306279516784
2025-11-17T14:00:47.553 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.1417235573673     dec_j2k = -24.3306279516784
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162346601491;_
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162346601491;_
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:47.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:47.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:47.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:47.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44385)
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:47.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:47.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:47.567 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:47.567 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:47.567 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:47.568 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:47.568 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:47.568 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:47.568 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:47.568 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:47.568 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00055036, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992802, telescope_ra=20.1674622, telescope_dec=-24.256351, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.18721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1417235573673, telescope_dec_j2k=-24.3306279516784, observability=1)
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.9570252895355225s
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:51.525 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:51.526 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:51.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1685842;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18833;2460997.00059638;14.0142925;1.3;_
2025-11-17T14:00:51.527 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.1685842;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18833;2460997.00059638;14.0142925;1.3;_
2025-11-17T14:00:51.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:51.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:51.527 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:51.528 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:51.528 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:51.528 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.1685842, teldec = -24.256351
2025-11-17T14:00:51.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1685842 -24.256351
2025-11-17T14:00:51.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1685842 -24.256351
2025-11-17T14:00:51.529 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1685842 -24.256351
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.1685842;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18833;2460997.0005964;14.0142925;1.3;_20.1428461103957 -24.330663978669
2025-11-17T14:00:51.530 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.1428461103957     dec_j2k = -24.330663978669
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668143668625;171.162362694745;_
2025-11-17T14:00:51.530 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162362694745;_
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:51.531 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:51.532 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:51.532 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:51.532 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45937)
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:51.538 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:51.545 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:51.545 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:51.545 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:51.546 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:51.546 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00059638, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992802, telescope_ra=20.1685842, telescope_dec=-24.256351, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.18833, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1428461103957, telescope_dec_j2k=-24.330663978669, observability=1)
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Status age = 4.474434852600098s
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:56.020 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:00:56.021 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:00:56.022 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 17;20.1698368;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18959;2460997.0006484;14.01554167;1.3;_
2025-11-17T14:00:56.022 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response 17;20.1698368;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18959;2460997.0006484;14.01554167;1.3;_
2025-11-17T14:00:56.022 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:00:56.022 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:00:56.022 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:00:56.023 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:56.023 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:00:56.023 [INFO] [Thread-68082 (handle)] [driver.py] [get_status()] Telra = 20.1698368, teldec = -24.256351
2025-11-17T14:00:56.024 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1698368 -24.256351
2025-11-17T14:00:56.024 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1698368 -24.256351
2025-11-17T14:00:56.024 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1698368 -24.256351
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 17;20.1698368;-24.256351;50.108271;89.992802;50.08601;90.12017;17.18959;2460997.00064843;14.01554167;1.3;_20.1440993281598 -24.330704191722
2025-11-17T14:00:56.025 [INFO] [Thread-68082 (handle)] [driver.py] [get_status()] ra_j2k = 20.1440993281598     dec_j2k = -24.330704191722
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162351965909;_
2025-11-17T14:00:56.025 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162351965909;_
2025-11-17T14:00:56.026 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:00:56.026 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:56.026 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:56.026 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:00:56.027 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:00:56.028 [DEBUG] [Thread-68082 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:56.028 [DEBUG] [Thread-68082 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:00:56.028 [DEBUG] [Thread-68082 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55297)
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:56.035 [DEBUG] [Thread-68082 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:56.042 [DEBUG] [Thread-68082 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:56.042 [DEBUG] [Thread-68082 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:56.042 [DEBUG] [Thread-68082 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:00:56.043 [DEBUG] [Thread-68082 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:00:56.043 [INFO] [Thread-68082 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0006484, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992802, telescope_ra=20.1698368, telescope_dec=-24.256351, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.18959, lcu_permission=False, lcu_permission_timestamp='2025-11-17T13:59:56.141801', telescope_ra_j2k=20.1440993281598, telescope_dec_j2k=-24.330704191722, observability=1)
2025-11-17T14:00:56.285 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:56.285 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:56.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:56.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:56.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:56.287 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:56.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:56.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:56.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:56.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:56.288 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:00:56.288 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:56.288 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:56.288 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:56.288 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:56.288 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:00:56.289 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:00:56.290 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:57.290 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:57.290 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:57.290 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:57.290 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:57.290 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:00:57.291 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:00:57.292 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:00:57.293 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:00:57.293 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:00:57.293 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:00:57.293 [DEBUG] [ThreadPoolExecutor-2878_0] [payload.py] [to_registers()] [0]
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34507)
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:00:57.294 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:00:57.302 [DEBUG] [ThreadPoolExecutor-2878_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Status age = 18.10133409500122s
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:14.144 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:01:14.146 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:01:14.147 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 17;20.1748808;-24.25635;50.108271;89.992801;50.08601;90.12017;17.19463;2460997.00085818;14.02057194;1.3;_
2025-11-17T14:01:14.147 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response 17;20.1748808;-24.25635;50.108271;89.992801;50.08601;90.12017;17.19463;2460997.00085818;14.02057194;1.3;_
2025-11-17T14:01:14.147 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:01:14.147 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:01:14.147 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:01:14.148 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:14.148 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:14.148 [INFO] [Thread-68083 (handle)] [driver.py] [get_status()] Telra = 20.1748808, teldec = -24.25635
2025-11-17T14:01:14.148 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1748808 -24.25635
2025-11-17T14:01:14.148 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1748808 -24.25635
2025-11-17T14:01:14.148 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1748808 -24.25635
2025-11-17T14:01:14.149 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 17;20.1748808;-24.25635;50.108271;89.992801;50.08601;90.12017;17.19463;2460997.00085821;14.02057194;1.3;_20.1491458198394 -24.330865043037
2025-11-17T14:01:14.149 [INFO] [Thread-68083 (handle)] [driver.py] [get_status()] ra_j2k = 20.1491458198394     dec_j2k = -24.330865043037
2025-11-17T14:01:14.149 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:01:14.149 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:01:14.149 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 140;0.104668103556682;171.162357330327;_
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response 140;0.104668103556682;171.162357330327;_
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:14.150 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:14.151 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:14.152 [DEBUG] [Thread-68083 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:14.152 [DEBUG] [Thread-68083 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:14.152 [DEBUG] [Thread-68083 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57659)
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:01:14.157 [DEBUG] [Thread-68083 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:01:14.164 [DEBUG] [Thread-68083 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:01:14.164 [DEBUG] [Thread-68083 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:01:14.165 [DEBUG] [Thread-68083 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:01:14.165 [INFO] [Thread-68083 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00085818, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668103556682, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108271, telescope_az=89.992801, telescope_ra=20.1748808, telescope_dec=-24.25635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.19463, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:00:56.285265', telescope_ra_j2k=20.1491458198394, telescope_dec_j2k=-24.330865043037, observability=1)
2025-11-17T14:01:14.652 [DEBUG] [Thread-68084 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:14.652 [DEBUG] [Thread-68084 (handle)] [server.py] [get_status()] Status age = 0.4868128299713135s
2025-11-17T14:01:14.652 [DEBUG] [Thread-68084 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4868128299713135
2025-11-17T14:01:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8408694267272949s
2025-11-17T14:01:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8408694267272949
2025-11-17T14:01:22.302 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:22.302 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:22.302 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:22.302 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:22.302 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:22.303 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:01:22.304 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:01:22.305 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Status age = 18.043854236602783s
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:32.209 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:01:32.210 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:01:32.211 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 17;20.1798942;-24.25635;50.10827;89.9928;50.08601;90.12017;17.19967;2460997.00106726;14.02559944;1.3;_
2025-11-17T14:01:32.211 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response 17;20.1798942;-24.25635;50.10827;89.9928;50.08601;90.12017;17.19967;2460997.00106726;14.02559944;1.3;_
2025-11-17T14:01:32.211 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:01:32.211 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:01:32.211 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:01:32.212 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:32.212 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:32.212 [INFO] [Thread-68085 (handle)] [driver.py] [get_status()] Telra = 20.1798942, teldec = -24.25635
2025-11-17T14:01:32.213 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1798942 -24.25635
2025-11-17T14:01:32.213 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1798942 -24.25635
2025-11-17T14:01:32.213 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1798942 -24.25635
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 17;20.1799221;-24.25635;50.10827;89.9928;50.08601;90.12017;17.19967;2460997.00106728;14.02559944;1.3;_20.1541617023899 -24.331025785673
2025-11-17T14:01:32.214 [INFO] [Thread-68085 (handle)] [driver.py] [get_status()] ra_j2k = 20.1541617023899     dec_j2k = -24.331025785673
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 140;0.104668544788053;171.162362694745;_
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response 140;0.104668544788053;171.162362694745;_
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:32.214 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.0033;_GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.0033;_GetRotatorData
2025-11-17T14:01:32.215 [DEBUG] [Thread-68085 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.0033 sky_angle  = 0
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42935)
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:01:32.219 [DEBUG] [Thread-68085 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:01:32.226 [DEBUG] [Thread-68085 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:01:32.226 [INFO] [Thread-68085 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00106726, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.0033, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668544788053, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.9928, telescope_ra=20.1798942, telescope_dec=-24.25635, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.19967, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:00:56.285265', telescope_ra_j2k=20.1541617023899, telescope_dec_j2k=-24.331025785673, observability=1)
2025-11-17T14:01:32.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:01:32.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3362886905670166s
2025-11-17T14:01:32.563 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3362886905670166
2025-11-17T14:01:32.563 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01395606994629 seconds ago
2025-11-17T14:01:47.629 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:01:47
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.402572393417358s
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:47.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:01:47.630 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1842118;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20396;2460997.00124572;14.0298775;1.3;_
2025-11-17T14:01:47.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.1842118;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20396;2460997.00124572;14.0298775;1.3;_
2025-11-17T14:01:47.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:01:47.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:01:47.631 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:01:47.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:47.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:47.632 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.1842118, teldec = -24.256349
2025-11-17T14:01:47.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1842118 -24.256349
2025-11-17T14:01:47.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1842118 -24.256349
2025-11-17T14:01:47.632 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1842118 -24.256349
2025-11-17T14:01:47.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.1842118;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20396;2460997.00124575;14.0298775;1.3;_20.1584814454803 -24.3311631178001
2025-11-17T14:01:47.633 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.1584814454803     dec_j2k = -24.3311631178001
2025-11-17T14:01:47.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:01:47.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:01:47.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:01:47.633 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104667943108911;171.162351965909;_
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104667943108911;171.162351965909;_
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:47.634 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:47.635 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40873)
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:01:47.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:01:47.644 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:01:47.644 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00124572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104667943108911, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.9928, telescope_ra=20.1842118, telescope_dec=-24.256349, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.20396, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:00:56.285265', telescope_ra_j2k=20.1584814454803, telescope_dec_j2k=-24.3311631178001, observability=1)
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Status age = 2.6316921710968018s
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:50.276 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:01:50.277 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 17;20.1849408;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20469;2460997.00127637;14.03060444;1.3;_
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response 17;20.1849408;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20469;2460997.00127637;14.03060444;1.3;_
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:01:50.278 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:01:50.279 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:50.279 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:01:50.279 [INFO] [Thread-68086 (handle)] [driver.py] [get_status()] Telra = 20.1849408, teldec = -24.256349
2025-11-17T14:01:50.280 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1849408 -24.256349
2025-11-17T14:01:50.280 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1849408 -24.256349
2025-11-17T14:01:50.280 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1849408 -24.256349
2025-11-17T14:01:50.281 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 17;20.1849408;-24.256349;50.10827;89.9928;50.08601;90.12017;17.20469;2460997.00127639;14.03060444;1.3;_20.1592108077476 -24.3311864650294
2025-11-17T14:01:50.281 [INFO] [Thread-68086 (handle)] [driver.py] [get_status()] ra_j2k = 20.1592108077476     dec_j2k = -24.3311864650294
2025-11-17T14:01:50.281 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:01:50.281 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:01:50.281 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 140;0.104668705235824;171.162357330327;_
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response 140;0.104668705235824;171.162357330327;_
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:50.282 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:50.283 [DEBUG] [Thread-68086 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:50.283 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:01:50.283 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:01:50.283 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:01:50.284 [DEBUG] [Thread-68086 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:50.284 [DEBUG] [Thread-68086 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:01:50.284 [DEBUG] [Thread-68086 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:01:50.291 [DEBUG] [Thread-68086 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45169)
2025-11-17T14:01:50.291 [DEBUG] [Thread-68086 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:01:50.291 [DEBUG] [Thread-68086 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:01:50.291 [DEBUG] [Thread-68086 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:01:50.291 [DEBUG] [Thread-68086 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:01:50.292 [DEBUG] [Thread-68086 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:01:50.298 [DEBUG] [Thread-68086 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:01:50.299 [DEBUG] [Thread-68086 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:01:50.299 [INFO] [Thread-68086 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00127637, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668705235824, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.9928, telescope_ra=20.1849408, telescope_dec=-24.256349, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.20469, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:00:56.285265', telescope_ra_j2k=20.1592108077476, telescope_dec_j2k=-24.3311864650294, observability=1)
2025-11-17T14:01:50.634 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:01:50.634 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.335524320602417s
2025-11-17T14:01:50.634 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.335524320602417
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:56.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:56.429 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:01:56.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:01:56.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:01:56.430 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:01:56.430 [INFO] [ThreadPoolExecutor-2879_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:01:56.430 [INFO] [ThreadPoolExecutor-2879_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Status age = 18.07502794265747s
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:08.374 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:08.375 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 17;20.1899807;-24.256349;50.10827;89.992799;50.08601;90.12017;17.20973;2460997.00148582;14.03563056;1.3;_
2025-11-17T14:02:08.376 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response 17;20.1899807;-24.256349;50.10827;89.992799;50.08601;90.12017;17.20973;2460997.00148582;14.03563056;1.3;_
2025-11-17T14:02:08.376 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:08.376 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:08.376 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:08.377 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:08.377 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:08.377 [INFO] [Thread-68087 (handle)] [driver.py] [get_status()] Telra = 20.1899807, teldec = -24.256349
2025-11-17T14:02:08.377 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1899807 -24.256349
2025-11-17T14:02:08.377 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1899807 -24.256349
2025-11-17T14:02:08.377 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1899807 -24.256349
2025-11-17T14:02:08.378 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 17;20.1899807;-24.256349;50.10827;89.992799;50.08601;90.12017;17.20973;2460997.00148586;14.03563056;1.3;_20.1642532158075 -24.3313478013445
2025-11-17T14:02:08.378 [INFO] [Thread-68087 (handle)] [driver.py] [get_status()] ra_j2k = 20.1642532158075     dec_j2k = -24.3313478013445
2025-11-17T14:02:08.378 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:08.378 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:08.378 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 140;0.104668143668625;171.162357330327;_
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162357330327;_
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:08.379 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:08.380 [DEBUG] [Thread-68087 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47717)
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:08.386 [DEBUG] [Thread-68087 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:08.393 [DEBUG] [Thread-68087 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:08.394 [DEBUG] [Thread-68087 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:08.394 [DEBUG] [Thread-68087 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:08.394 [INFO] [Thread-68087 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00148582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.992799, telescope_ra=20.1899807, telescope_dec=-24.256349, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.20973, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1642532158075, telescope_dec_j2k=-24.3313478013445, observability=1)
2025-11-17T14:02:14.684 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Status age = 6.290940761566162s
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:14.685 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:14.686 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:14.687 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 17;20.191736;-24.256349;50.10827;89.992799;50.08601;90.12017;17.21149;2460997.00155888;14.03738111;1.3;_
2025-11-17T14:02:14.687 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response 17;20.191736;-24.256349;50.10827;89.992799;50.08601;90.12017;17.21149;2460997.00155888;14.03738111;1.3;_
2025-11-17T14:02:14.687 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:14.687 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:14.687 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:14.688 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:14.688 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:14.689 [INFO] [Thread-68088 (handle)] [driver.py] [get_status()] Telra = 20.191736, teldec = -24.256349
2025-11-17T14:02:14.689 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] UnCookCoordinates 20.191736 -24.256349
2025-11-17T14:02:14.689 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.191736 -24.256349
2025-11-17T14:02:14.689 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.191736 -24.256349
2025-11-17T14:02:14.689 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 17;20.191736;-24.256349;50.10827;89.992799;50.08601;90.12017;17.21149;2460997.0015589;14.03738111;1.3;_20.1660093907702 -24.3314039615175
2025-11-17T14:02:14.690 [INFO] [Thread-68088 (handle)] [driver.py] [get_status()] ra_j2k = 20.1660093907702     dec_j2k = -24.3314039615175
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 140;0.10466822389251;171.162351965909;_
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response 140;0.10466822389251;171.162351965909;_
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:14.690 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:14.691 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:14.692 [DEBUG] [Thread-68088 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:14.692 [DEBUG] [Thread-68088 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:14.692 [DEBUG] [Thread-68088 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:14.695 [DEBUG] [Thread-68088 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57049)
2025-11-17T14:02:14.695 [DEBUG] [Thread-68088 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:14.696 [DEBUG] [Thread-68088 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:14.696 [DEBUG] [Thread-68088 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:14.696 [DEBUG] [Thread-68088 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:14.696 [DEBUG] [Thread-68088 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:14.702 [DEBUG] [Thread-68088 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:14.702 [DEBUG] [Thread-68088 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:14.702 [DEBUG] [Thread-68088 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:14.702 [DEBUG] [Thread-68088 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:14.703 [DEBUG] [Thread-68088 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:14.703 [DEBUG] [Thread-68088 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:14.703 [DEBUG] [Thread-68088 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:14.703 [DEBUG] [Thread-68088 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:14.703 [DEBUG] [Thread-68088 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:14.703 [INFO] [Thread-68088 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00155888, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466822389251, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.992799, telescope_ra=20.191736, telescope_dec=-24.256349, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.21149, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1660093907702, telescope_dec_j2k=-24.3314039615175, observability=1)
2025-11-17T14:02:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.27392101287841797s
2025-11-17T14:02:14.977 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.27392101287841797
2025-11-17T14:02:17.305 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.305 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.305 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:17.305 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:17.305 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:02:17.306 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:17.307 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:17.308 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:02:17.309 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:17.310 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Park
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:02:17.311 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:02:17.312 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 29;20.1924658;-24.256349;50.10827;89.992799;50.08601;90.12017;17.21222;2460997.00158926;14.03810889;1.3;_Park Command Successful
2025-11-17T14:02:18.312 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:02:18.312 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:02:18.312 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:02:18.313 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:02:18.313 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:02:19.313 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:02:19.313 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:02:19.313 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:02:19.314 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:02:19.314 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:02:20.314 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:02:20.314 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:02:20.314 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:02:20.315 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:02:20.315 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:02:21.315 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:02:21.315 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:02:21.315 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:21.316 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:02:21.317 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:02:21.318 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:22.318 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:22.318 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:22.318 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:22.318 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:22.319 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:22.319 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:22.319 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:02:22.320 [DEBUG] [ThreadPoolExecutor-2878_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:22.321 [INFO] [ThreadPoolExecutor-2878_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Status age = 11.74022626876831s
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:26.443 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:26.444 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:26.445 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 17;20.1950239;-24.256348;50.10827;89.992799;50.08601;90.12017;17.21477;2460997.00169497;14.04066;1.3;_
2025-11-17T14:02:26.445 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response 17;20.1950239;-24.256348;50.10827;89.992799;50.08601;90.12017;17.21477;2460997.00169497;14.04066;1.3;_
2025-11-17T14:02:26.445 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:26.445 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:26.445 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:26.446 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:26.446 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:26.446 [INFO] [Thread-68089 (handle)] [driver.py] [get_status()] Telra = 20.1950239, teldec = -24.256348
2025-11-17T14:02:26.446 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] UnCookCoordinates 20.1950239 -24.256348
2025-11-17T14:02:26.446 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.1950239 -24.256348
2025-11-17T14:02:26.446 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1950239 -24.256348
2025-11-17T14:02:26.447 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 17;20.1950239;-24.256348;50.10827;89.992799;50.08601;90.12017;17.21477;2460997.00169499;14.04066;1.3;_20.1692989318779 -24.3315081147702
2025-11-17T14:02:26.447 [INFO] [Thread-68089 (handle)] [driver.py] [get_status()] ra_j2k = 20.1692989318779     dec_j2k = -24.3315081147702
2025-11-17T14:02:26.447 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:26.447 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:26.447 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 140;0.104668625011938;171.162362694745;_
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response 140;0.104668625011938;171.162362694745;_
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:26.448 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:26.449 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:26.450 [DEBUG] [Thread-68089 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:26.450 [DEBUG] [Thread-68089 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:26.450 [DEBUG] [Thread-68089 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:26.453 [DEBUG] [Thread-68089 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56063)
2025-11-17T14:02:26.453 [DEBUG] [Thread-68089 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:26.454 [DEBUG] [Thread-68089 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:26.454 [DEBUG] [Thread-68089 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:26.454 [DEBUG] [Thread-68089 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:26.454 [DEBUG] [Thread-68089 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:26.461 [DEBUG] [Thread-68089 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:26.461 [INFO] [Thread-68089 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00169497, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668625011938, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.992799, telescope_ra=20.1950239, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.21477, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1692989318779, telescope_dec_j2k=-24.3315081147702, observability=1)
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.161819934844971s
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:32.623 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:32.624 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:32.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1967511;-24.256348;50.10827;89.992798;50.08601;90.12017;17.2165;2460997.00176649;14.0423825;1.3;_
2025-11-17T14:02:32.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.1967511;-24.256348;50.10827;89.992798;50.08601;90.12017;17.2165;2460997.00176649;14.0423825;1.3;_
2025-11-17T14:02:32.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:32.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:32.625 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:32.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:32.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:32.626 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.1967511, teldec = -24.256348
2025-11-17T14:02:32.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.1967511 -24.256348
2025-11-17T14:02:32.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.1967511 -24.256348
2025-11-17T14:02:32.626 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.1967511 -24.256348
2025-11-17T14:02:32.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.1967511;-24.256348;50.10827;89.992798;50.08601;90.12017;17.2165;2460997.00176652;14.0423825;1.3;_20.1710269949498 -24.3315633318874
2025-11-17T14:02:32.627 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.1710269949498     dec_j2k = -24.3315633318874
2025-11-17T14:02:32.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:32.627 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104668023332796;171.162357330327;_
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104668023332796;171.162357330327;_
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:32.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:32.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:32.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:32.632 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46671)
2025-11-17T14:02:32.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:32.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:32.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:32.633 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:32.633 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:32.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:02:32.640 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00176649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668023332796, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10827, telescope_az=89.992798, telescope_ra=20.1967511, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.2165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1710269949498, telescope_dec_j2k=-24.3315633318874, observability=1)
2025-11-17T14:02:32.640 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.011497497558594 seconds ago
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Status age = 11.879124402999878s
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:44.519 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:44.520 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:44.521 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:44.521 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:44.521 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:44.522 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 17;20.2000387;-24.256348;50.108269;89.992798;50.08601;90.12017;17.21979;2460997.00190418;14.04566111;1.3;_
2025-11-17T14:02:44.522 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response 17;20.2000387;-24.256348;50.108269;89.992798;50.08601;90.12017;17.21979;2460997.00190418;14.04566111;1.3;_
2025-11-17T14:02:44.522 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:44.522 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:44.522 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:44.523 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:44.523 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:44.523 [INFO] [Thread-68090 (handle)] [driver.py] [get_status()] Telra = 20.2000387, teldec = -24.256348
2025-11-17T14:02:44.523 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2000387 -24.256348
2025-11-17T14:02:44.523 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2000387 -24.256348
2025-11-17T14:02:44.523 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2000387 -24.256348
2025-11-17T14:02:44.524 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 17;20.2000387;-24.256348;50.108269;89.992798;50.08601;90.12017;17.21979;2460997.00190421;14.04566111;1.3;_20.1743162397518 -24.3316683918346
2025-11-17T14:02:44.524 [INFO] [Thread-68090 (handle)] [driver.py] [get_status()] ra_j2k = 20.1743162397518     dec_j2k = -24.3316683918346
2025-11-17T14:02:44.524 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:44.524 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:44.524 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 140;0.104668424452224;171.162357330327;_
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response 140;0.104668424452224;171.162357330327;_
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:44.525 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:44.526 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:44.527 [DEBUG] [Thread-68090 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:44.527 [DEBUG] [Thread-68090 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:44.527 [DEBUG] [Thread-68090 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32801)
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:44.530 [DEBUG] [Thread-68090 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:44.537 [DEBUG] [Thread-68090 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:44.538 [DEBUG] [Thread-68090 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:44.538 [DEBUG] [Thread-68090 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:44.538 [INFO] [Thread-68090 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00190418, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668424452224, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992798, telescope_ra=20.2000387, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.21979, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1743162397518, telescope_dec_j2k=-24.3316683918346, observability=1)
2025-11-17T14:02:47.705 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:02:47
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.167400598526001s
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:47.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:47.706 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:47.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2009359;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22069;2460997.00194105;14.04655583;1.3;_
2025-11-17T14:02:47.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.2009359;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22069;2460997.00194105;14.04655583;1.3;_
2025-11-17T14:02:47.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:47.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:47.707 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:47.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:47.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:47.708 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.2009359, teldec = -24.256348
2025-11-17T14:02:47.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2009359 -24.256348
2025-11-17T14:02:47.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2009359 -24.256348
2025-11-17T14:02:47.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2009359 -24.256348
2025-11-17T14:02:47.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2009359;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22069;2460997.00194108;14.04655583;1.3;_20.1752138890822 -24.3316970536053
2025-11-17T14:02:47.709 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.1752138890822     dec_j2k = -24.3316970536053
2025-11-17T14:02:47.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:47.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:47.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668143668625;171.162346601491;_
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668143668625;171.162346601491;_
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:47.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:47.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:47.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:47.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:47.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44555)
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:47.719 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:47.726 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:47.727 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00194105, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668143668625, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992798, telescope_ra=20.2009359, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.22069, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1752138890822, telescope_dec_j2k=-24.3316970536053, observability=1)
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9974327087402344s
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:49.724 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:02:49.725 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:02:49.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2014957;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22125;2460997.00196442;14.04711417;1.3;_
2025-11-17T14:02:49.726 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.2014957;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22125;2460997.00196442;14.04711417;1.3;_
2025-11-17T14:02:49.726 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:02:49.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:02:49.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:02:49.727 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:49.728 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:02:49.728 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.2014957, teldec = -24.256348
2025-11-17T14:02:49.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2014957 -24.256348
2025-11-17T14:02:49.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2014957 -24.256348
2025-11-17T14:02:49.728 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2014957 -24.256348
2025-11-17T14:02:49.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2014957;-24.256348;50.108269;89.992798;50.08601;90.12017;17.22125;2460997.00196446;14.04711417;1.3;_20.1757739695372 -24.3317149347908
2025-11-17T14:02:49.729 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.1757739695372     dec_j2k = -24.3317149347908
2025-11-17T14:02:49.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:02:49.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:02:49.729 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104668183780567;171.162357330327;_
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104668183780567;171.162357330327;_
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:02:49.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:02:49.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:02:49.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:49.731 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:02:49.731 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36075)
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:49.734 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:02:49.741 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:02:49.742 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00196442, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668183780567, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992798, telescope_ra=20.2014957, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.22125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:01:56.427795', telescope_ra_j2k=20.1757739695372, telescope_dec_j2k=-24.3317149347908, observability=1)
2025-11-17T14:02:56.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:56.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:56.571 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:56.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:56.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:56.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:56.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:56.572 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:56.573 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:56.574 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:56.574 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:02:56.574 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:02:56.574 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:02:56.574 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:57.575 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:57.575 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:57.575 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:57.575 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:57.575 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:57.576 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:57.576 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:57.576 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:57.576 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:57.576 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:02:57.577 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:02:57.578 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:02:57.578 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:02:57.578 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:02:57.579 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:02:57.579 [DEBUG] [ThreadPoolExecutor-2880_0] [payload.py] [to_registers()] [0]
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44895)
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:02:57.583 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:02:57.590 [DEBUG] [ThreadPoolExecutor-2880_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Status age = 12.914489030838013s
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:02.656 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:02.657 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 17;20.2051103;-24.256348;50.108269;89.992797;50.08601;90.12017;17.22486;2460997.0021141;14.05071889;1.3;_
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response 17;20.2051103;-24.256348;50.108269;89.992797;50.08601;90.12017;17.22486;2460997.0021141;14.05071889;1.3;_
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:02.658 [INFO] [Thread-68091 (handle)] [driver.py] [get_status()] Telra = 20.2051103, teldec = -24.256348
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2051103 -24.256348
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2051103 -24.256348
2025-11-17T14:03:02.658 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2051103 -24.256348
2025-11-17T14:03:02.659 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 17;20.2051103;-24.256348;50.108269;89.992797;50.08601;90.12017;17.22486;2460997.00211411;14.05071889;1.3;_20.1793903822565 -24.3318303543191
2025-11-17T14:03:02.659 [INFO] [Thread-68091 (handle)] [driver.py] [get_status()] ra_j2k = 20.1793903822565     dec_j2k = -24.3318303543191
2025-11-17T14:03:02.659 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:02.659 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:02.659 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:02.660 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 140;0.104668344228339;171.162351965909;_
2025-11-17T14:03:02.660 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response 140;0.104668344228339;171.162351965909;_
2025-11-17T14:03:02.660 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:02.660 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:02.660 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:02.661 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:02.662 [DEBUG] [Thread-68091 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:02.662 [DEBUG] [Thread-68091 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:02.662 [DEBUG] [Thread-68091 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:02.664 [DEBUG] [Thread-68091 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52877)
2025-11-17T14:03:02.664 [DEBUG] [Thread-68091 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:02.664 [DEBUG] [Thread-68091 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:02.664 [DEBUG] [Thread-68091 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:02.665 [DEBUG] [Thread-68091 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:02.665 [DEBUG] [Thread-68091 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:02.672 [DEBUG] [Thread-68091 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:02.672 [INFO] [Thread-68091 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0021141, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668344228339, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992797, telescope_ra=20.2051103, telescope_dec=-24.256348, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.22486, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.1793903822565, telescope_dec_j2k=-24.3318303543191, observability=1)
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Status age = 12.06680679321289s
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:14.739 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:14.741 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:14.742 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 17;20.2084617;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22821;2460997.00225396;14.05406111;1.3;_
2025-11-17T14:03:14.742 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response 17;20.2084617;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22821;2460997.00225396;14.05406111;1.3;_
2025-11-17T14:03:14.742 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:14.742 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:14.742 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:14.743 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:14.743 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:14.743 [INFO] [Thread-68092 (handle)] [driver.py] [get_status()] Telra = 20.2084617, teldec = -24.256347
2025-11-17T14:03:14.743 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2084617 -24.256347
2025-11-17T14:03:14.743 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2084617 -24.256347
2025-11-17T14:03:14.743 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2084617 -24.256347
2025-11-17T14:03:14.744 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 17;20.2084617;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22821;2460997.00225398;14.05406111;1.3;_20.1827434659911 -24.3319363101391
2025-11-17T14:03:14.744 [INFO] [Thread-68092 (handle)] [driver.py] [get_status()] ra_j2k = 20.1827434659911     dec_j2k = -24.3319363101391
2025-11-17T14:03:14.744 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:14.744 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:14.744 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 140;0.104668905795538;171.162362694745;_
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response 140;0.104668905795538;171.162362694745;_
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:14.745 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:14.746 [DEBUG] [Thread-68092 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:14.746 [DEBUG] [Thread-68092 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:14.746 [DEBUG] [Thread-68092 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58307)
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:14.750 [DEBUG] [Thread-68092 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:14.757 [DEBUG] [Thread-68092 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:14.758 [INFO] [Thread-68092 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00225396, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668905795538, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992797, telescope_ra=20.2084617, telescope_dec=-24.256347, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.22821, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.1827434659911, telescope_dec_j2k=-24.3319363101391, observability=1)
2025-11-17T14:03:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.23956036567687988s
2025-11-17T14:03:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.23956036567687988
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Status age = 5.961268663406372s
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:20.719 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:20.720 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:20.721 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 17;20.2101265;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22988;2460997.00232316;14.05572139;1.3;_
2025-11-17T14:03:20.721 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response 17;20.2101265;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22988;2460997.00232316;14.05572139;1.3;_
2025-11-17T14:03:20.721 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:20.721 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:20.721 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:20.722 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:20.722 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:20.722 [INFO] [Thread-68093 (handle)] [driver.py] [get_status()] Telra = 20.2101265, teldec = -24.256347
2025-11-17T14:03:20.722 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2101265 -24.256347
2025-11-17T14:03:20.722 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2101265 -24.256347
2025-11-17T14:03:20.723 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2101265 -24.256347
2025-11-17T14:03:20.723 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 17;20.2101265;-24.256347;50.108269;89.992797;50.08601;90.12017;17.22988;2460997.00232318;14.05572139;1.3;_20.1844091033126 -24.331989418856
2025-11-17T14:03:20.723 [INFO] [Thread-68093 (handle)] [driver.py] [get_status()] ra_j2k = 20.1844091033126     dec_j2k = -24.331989418856
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 140;0.104668063444739;171.162351965909;_
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response 140;0.104668063444739;171.162351965909;_
2025-11-17T14:03:20.724 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:20.725 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:20.725 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:20.725 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:20.726 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:20.727 [DEBUG] [Thread-68093 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:20.727 [DEBUG] [Thread-68093 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:20.727 [DEBUG] [Thread-68093 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51987)
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:20.731 [DEBUG] [Thread-68093 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:20.738 [DEBUG] [Thread-68093 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:20.739 [INFO] [Thread-68093 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00232316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668063444739, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992797, telescope_ra=20.2101265, telescope_dec=-24.256347, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.22988, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.1844091033126, telescope_dec_j2k=-24.331989418856, observability=1)
2025-11-17T14:03:22.590 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:22.590 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:22.590 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:22.591 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:22.591 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:22.591 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:22.591 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:22.592 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:03:22.593 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:03:22.594 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.961636781692505s
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:32.700 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:32.701 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:32.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2134748;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23323;2460997.00246183;14.05906056;1.3;_
2025-11-17T14:03:32.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.2134748;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23323;2460997.00246183;14.05906056;1.3;_
2025-11-17T14:03:32.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:32.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:32.702 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:32.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:32.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:32.703 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.2134748, teldec = -24.256347
2025-11-17T14:03:32.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.2134748 -24.256347
2025-11-17T14:03:32.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.2134748 -24.256347
2025-11-17T14:03:32.703 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2134748 -24.256347
2025-11-17T14:03:32.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2134748;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23323;2460997.00246185;14.05906056;1.3;_20.1877590894006 -24.33209619
2025-11-17T14:03:32.704 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.1877590894006     dec_j2k = -24.33209619
2025-11-17T14:03:32.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:32.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:32.704 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:32.705 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10466750187754;171.162362694745;_
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10466750187754;171.162362694745;_
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:32.706 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:32.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:32.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:32.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:32.712 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41405)
2025-11-17T14:03:32.712 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:32.713 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:32.713 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:32.713 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:32.713 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:32.720 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:03:32.720 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00246183, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466750187754, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992796, telescope_ra=20.2134748, telescope_dec=-24.256347, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.23323, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.1877590894006, telescope_dec_j2k=-24.33209619, observability=1)
2025-11-17T14:03:32.720 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.015225887298584 seconds ago
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Status age = 6.0719640254974365s
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:38.792 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:38.793 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:38.793 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:38.793 [DEBUG] [Thread-68094 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:38.793 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:38.794 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:38.794 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:38.794 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:38.795 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 17;20.2151742;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23492;2460997.00253234;14.06075528;1.3;_
2025-11-17T14:03:38.795 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response 17;20.2151742;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23492;2460997.00253234;14.06075528;1.3;_
2025-11-17T14:03:38.795 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:38.795 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:38.795 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:38.796 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:38.796 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:38.796 [INFO] [Thread-68094 (handle)] [driver.py] [get_status()] Telra = 20.2151742, teldec = -24.256347
2025-11-17T14:03:38.796 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2151742 -24.256347
2025-11-17T14:03:38.796 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2151742 -24.256347
2025-11-17T14:03:38.796 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2151742 -24.256347
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 17;20.2151742;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23492;2460997.00253237;14.06075528;1.3;_20.1894593462017 -24.3321503588352
2025-11-17T14:03:38.797 [INFO] [Thread-68094 (handle)] [driver.py] [get_status()] ra_j2k = 20.1894593462017     dec_j2k = -24.3321503588352
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 140;0.104668745347767;171.162368059163;_
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response 140;0.104668745347767;171.162368059163;_
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:38.797 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:38.798 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:38.799 [DEBUG] [Thread-68094 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:38.799 [DEBUG] [Thread-68094 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:38.799 [DEBUG] [Thread-68094 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51915)
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:38.805 [DEBUG] [Thread-68094 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:38.812 [DEBUG] [Thread-68094 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:38.812 [INFO] [Thread-68094 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00253234, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668745347767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992796, telescope_ra=20.2151742, telescope_dec=-24.256347, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.23492, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.1894593462017, telescope_dec_j2k=-24.3321503588352, observability=1)
2025-11-17T14:03:47.787 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:03:47
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.974693536758423s
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:47.787 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:47.788 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:47.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2176852;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23744;2460997.00263645;14.06325944;1.3;_
2025-11-17T14:03:47.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.2176852;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23744;2460997.00263645;14.06325944;1.3;_
2025-11-17T14:03:47.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:47.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:47.789 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:47.790 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:47.790 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:47.790 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.2176852, teldec = -24.256347
2025-11-17T14:03:47.790 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2176852 -24.256347
2025-11-17T14:03:47.790 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2176852 -24.256347
2025-11-17T14:03:47.790 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2176852 -24.256347
2025-11-17T14:03:47.791 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2176852;-24.256347;50.108269;89.992796;50.08601;90.12017;17.23744;2460997.00263647;14.06325944;1.3;_20.191971613478 -24.3322303706038
2025-11-17T14:03:47.791 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.191971613478     dec_j2k = -24.3322303706038
2025-11-17T14:03:47.791 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:47.791 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:47.791 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104668865683595;171.162362694745;_
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104668865683595;171.162362694745;_
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:47.792 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:47.793 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:47.794 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:47.794 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:47.794 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48869)
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:47.797 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:47.804 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:47.805 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:47.805 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:47.805 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:47.805 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00263645, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668865683595, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992796, telescope_ra=20.2176852, telescope_dec=-24.256347, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.23744, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.191971613478, telescope_dec_j2k=-24.3322303706038, observability=1)
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.0300264358520508s
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:48.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:48.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:48.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:48.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2179649;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23772;2460997.00264858;14.06353833;1.3;_
2025-11-17T14:03:48.837 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.2179649;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23772;2460997.00264858;14.06353833;1.3;_
2025-11-17T14:03:48.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:48.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:48.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:48.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:48.839 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:48.839 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.2179649, teldec = -24.256346
2025-11-17T14:03:48.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2179649 -24.256346
2025-11-17T14:03:48.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2179649 -24.256346
2025-11-17T14:03:48.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2179649 -24.256346
2025-11-17T14:03:48.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2179649;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23772;2460997.00264861;14.06353833;1.3;_20.192251454905 -24.3322382812011
2025-11-17T14:03:48.840 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.192251454905     dec_j2k = -24.3322382812011
2025-11-17T14:03:48.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:48.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:48.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:48.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10466850467611;171.162357330327;_
2025-11-17T14:03:48.841 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10466850467611;171.162357330327;_
2025-11-17T14:03:48.841 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:48.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:48.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:48.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:48.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:48.843 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:48.843 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:48.843 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46727)
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:48.849 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:48.857 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:48.857 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00264858, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10466850467611, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992796, telescope_ra=20.2179649, telescope_dec=-24.256346, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.23772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:02:56.570402', telescope_ra_j2k=20.192251454905, telescope_dec_j2k=-24.3322382812011, observability=1)
2025-11-17T14:03:56.712 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:56.712 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:56.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:56.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:56.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:56.713 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:56.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:56.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:56.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:56.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:56.714 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:03:56.714 [INFO] [ThreadPoolExecutor-2881_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:03:56.714 [INFO] [ThreadPoolExecutor-2881_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Status age = 8.046022415161133s
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:03:56.903 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:03:56.904 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:03:56.905 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 17;20.2202143;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23996;2460997.00274196;14.06578167;1.3;_
2025-11-17T14:03:56.905 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response 17;20.2202143;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23996;2460997.00274196;14.06578167;1.3;_
2025-11-17T14:03:56.905 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:03:56.905 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:03:56.905 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:03:56.906 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:56.906 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:03:56.906 [INFO] [Thread-68095 (handle)] [driver.py] [get_status()] Telra = 20.2202143, teldec = -24.256346
2025-11-17T14:03:56.906 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2202143 -24.256346
2025-11-17T14:03:56.906 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2202143 -24.256346
2025-11-17T14:03:56.906 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2202143 -24.256346
2025-11-17T14:03:56.907 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 17;20.2202143;-24.256346;50.108269;89.992796;50.08601;90.12017;17.23996;2460997.00274198;14.06578167;1.3;_20.1945019916071 -24.3323099265841
2025-11-17T14:03:56.907 [INFO] [Thread-68095 (handle)] [driver.py] [get_status()] ra_j2k = 20.1945019916071     dec_j2k = -24.3323099265841
2025-11-17T14:03:56.907 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:03:56.907 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:03:56.907 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 140;0.104668745347767;171.162351965909;_
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response 140;0.104668745347767;171.162351965909;_
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:56.908 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:03:56.909 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:03:56.910 [DEBUG] [Thread-68095 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:56.910 [DEBUG] [Thread-68095 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:03:56.910 [DEBUG] [Thread-68095 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:03:56.917 [DEBUG] [Thread-68095 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54291)
2025-11-17T14:03:56.917 [DEBUG] [Thread-68095 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:03:56.917 [DEBUG] [Thread-68095 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:03:56.918 [DEBUG] [Thread-68095 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:03:56.918 [DEBUG] [Thread-68095 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:03:56.918 [DEBUG] [Thread-68095 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:03:56.925 [DEBUG] [Thread-68095 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:03:56.925 [INFO] [Thread-68095 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00274196, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668745347767, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108269, telescope_az=89.992796, telescope_ra=20.2202143, telescope_dec=-24.256346, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.23996, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:03:56.711954', telescope_ra_j2k=20.1945019916071, telescope_dec_j2k=-24.3323099265841, observability=1)
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Status age = 17.865733861923218s
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:14.791 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 17;20.2252013;-24.256346;50.108268;89.992795;50.08601;90.12017;17.24495;2460997.00294898;14.070755;1.3;_
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response 17;20.2252013;-24.256346;50.108268;89.992795;50.08601;90.12017;17.24495;2460997.00294898;14.070755;1.3;_
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:04:14.792 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:04:14.793 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:14.793 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:14.793 [INFO] [Thread-68096 (handle)] [driver.py] [get_status()] Telra = 20.2252013, teldec = -24.256346
2025-11-17T14:04:14.793 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2252013 -24.256346
2025-11-17T14:04:14.793 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2252013 -24.256346
2025-11-17T14:04:14.793 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2252013 -24.256346
2025-11-17T14:04:14.794 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 17;20.2252013;-24.256346;50.108268;89.992795;50.08601;90.12017;17.24495;2460997.002949;14.070755;1.3;_20.199491516095 -24.3324686744409
2025-11-17T14:04:14.794 [INFO] [Thread-68096 (handle)] [driver.py] [get_status()] ra_j2k = 20.199491516095     dec_j2k = -24.3324686744409
2025-11-17T14:04:14.794 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:04:14.794 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 140;0.104669066243309;171.162346601491;_
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response 140;0.104669066243309;171.162346601491;_
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:14.795 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:14.796 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:14.797 [DEBUG] [Thread-68096 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:14.797 [DEBUG] [Thread-68096 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:14.797 [DEBUG] [Thread-68096 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43417)
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:04:14.799 [DEBUG] [Thread-68096 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:04:14.806 [DEBUG] [Thread-68096 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:04:14.807 [INFO] [Thread-68096 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00294898, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669066243309, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992795, telescope_ra=20.2252013, telescope_dec=-24.256346, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.24495, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:03:56.711954', telescope_ra_j2k=20.199491516095, telescope_dec_j2k=-24.3324686744409, observability=1)
2025-11-17T14:04:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.15810871124267578s
2025-11-17T14:04:14.965 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.15810871124267578
2025-11-17T14:04:14.970 [DEBUG] [Thread-68097 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:14.970 [DEBUG] [Thread-68097 (handle)] [server.py] [get_status()] Status age = 0.16263532638549805s
2025-11-17T14:04:14.970 [DEBUG] [Thread-68097 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.16263532638549805
2025-11-17T14:04:17.594 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.594 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.594 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:17.594 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:17.594 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:04:17.595 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:17.596 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:17.597 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:04:17.598 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:17.599 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Park
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:04:17.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 29;20.2259862;-24.256346;50.108268;89.992795;50.08601;90.12017;17.24574;2460997.00298148;14.07153778;1.3;_Park Command Successful
2025-11-17T14:04:18.600 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:04:18.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:04:18.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:04:18.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:04:18.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:04:19.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:04:19.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:04:19.601 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:04:19.602 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:04:19.602 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:04:20.602 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:04:20.602 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:04:20.602 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:04:20.603 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:04:20.603 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:04:21.604 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:04:21.604 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:04:21.604 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:21.605 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:04:21.606 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:22.607 [DEBUG] [ThreadPoolExecutor-2880_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:22.608 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:04:22.608 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:04:22.608 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:04:22.608 [DEBUG] [ThreadPoolExecutor-2880_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:22.608 [INFO] [ThreadPoolExecutor-2880_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 17.973034858703613s
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:32.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:04:32.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:04:32.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:04:32.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2301958;-24.256345;50.108268;89.992794;50.08601;90.12017;17.24995;2460997.00315721;14.07573583;1.3;_
2025-11-17T14:04:32.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.2301958;-24.256345;50.108268;89.992794;50.08601;90.12017;17.24995;2460997.00315721;14.07573583;1.3;_
2025-11-17T14:04:32.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:04:32.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:04:32.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:04:32.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:32.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:32.784 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.2301958, teldec = -24.256345
2025-11-17T14:04:32.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.2301958 -24.256345
2025-11-17T14:04:32.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.2301958 -24.256345
2025-11-17T14:04:32.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2301958 -24.256345
2025-11-17T14:04:32.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2301958;-24.256345;50.108268;89.992794;50.08601;90.12017;17.24995;2460997.00315723;14.07573583;1.3;_20.2044885505952 -24.332626533114
2025-11-17T14:04:32.785 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.2044885505952     dec_j2k = -24.332626533114
2025-11-17T14:04:32.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:04:32.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:04:32.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104669186579138;171.162357330327;_
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104669186579138;171.162357330327;_
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:32.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:32.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:32.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:32.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:32.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:32.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:32.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:32.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:32.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35237)
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:04:32.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:04:32.801 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:04:32.802 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00315721, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669186579138, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992794, telescope_ra=20.2301958, telescope_dec=-24.256345, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.24995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:03:56.711954', telescope_ra_j2k=20.2044885505952, telescope_dec_j2k=-24.332626533114, observability=1)
2025-11-17T14:04:32.802 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01471567153931 seconds ago
2025-11-17T14:04:33.040 [DEBUG] [Thread-68098 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:33.040 [DEBUG] [Thread-68098 (handle)] [server.py] [get_status()] Status age = 0.2381284236907959s
2025-11-17T14:04:33.040 [DEBUG] [Thread-68098 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2381284236907959
2025-11-17T14:04:47.865 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:04:47
2025-11-17T14:04:47.865 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:47.865 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.063884019851685s
2025-11-17T14:04:47.865 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:04:47.865 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:47.866 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:47.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:47.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:47.866 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2343975;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25415;2460997.00333179;14.07992611;1.3;_
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.2343975;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25415;2460997.00333179;14.07992611;1.3;_
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:04:47.867 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:04:47.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:04:47.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:47.868 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:47.868 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.2343975, teldec = -24.256345
2025-11-17T14:04:47.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2343975 -24.256345
2025-11-17T14:04:47.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2343975 -24.256345
2025-11-17T14:04:47.869 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2343975 -24.256345
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2343975;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25415;2460997.00333182;14.07992611;1.3;_20.208692387322 -24.332760075915
2025-11-17T14:04:47.870 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.208692387322     dec_j2k = -24.332760075915
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104669427250794;171.162357330327;_
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104669427250794;171.162357330327;_
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:47.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:47.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:47.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:47.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:47.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47375)
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:04:47.873 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:04:47.881 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:04:47.882 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00333179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669427250794, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992794, telescope_ra=20.2343975, telescope_dec=-24.256345, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.25415, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:03:56.711954', telescope_ra_j2k=20.208692387322, telescope_dec_j2k=-24.332760075915, observability=1)
2025-11-17T14:04:47.945 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:47.945 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.06319904327392578s
2025-11-17T14:04:47.945 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.06319904327392578
2025-11-17T14:04:51.164 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:04:51.164 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Status age = 3.2828359603881836s
2025-11-17T14:04:51.164 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:04:51.164 [DEBUG] [Thread-68099 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:51.164 [DEBUG] [Thread-68099 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:04:51.165 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:04:51.166 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 17;20.2353217;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25507;2460997.00336998;14.08084778;1.3;_
2025-11-17T14:04:51.166 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response 17;20.2353217;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25507;2460997.00336998;14.08084778;1.3;_
2025-11-17T14:04:51.166 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:04:51.166 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:04:51.166 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:04:51.167 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:51.167 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:04:51.167 [INFO] [Thread-68099 (handle)] [driver.py] [get_status()] Telra = 20.2353217, teldec = -24.256345
2025-11-17T14:04:51.167 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2353217 -24.256345
2025-11-17T14:04:51.167 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2353217 -24.256345
2025-11-17T14:04:51.167 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2353217 -24.256345
2025-11-17T14:04:51.168 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 17;20.2353217;-24.256345;50.108268;89.992794;50.08601;90.12017;17.25507;2460997.00337;14.08084778;1.3;_20.2096170578872 -24.3327894375937
2025-11-17T14:04:51.168 [INFO] [Thread-68099 (handle)] [driver.py] [get_status()] ra_j2k = 20.2096170578872     dec_j2k = -24.3327894375937
2025-11-17T14:04:51.168 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:04:51.168 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:04:51.168 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:04:51.168 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 140;0.104669708034394;171.162362694745;_
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response 140;0.104669708034394;171.162362694745;_
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:04:51.169 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:04:51.170 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:04:51.170 [DEBUG] [Thread-68099 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:51.171 [DEBUG] [Thread-68099 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:04:51.171 [DEBUG] [Thread-68099 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60605)
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:04:51.174 [DEBUG] [Thread-68099 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:04:51.181 [DEBUG] [Thread-68099 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:04:51.182 [DEBUG] [Thread-68099 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:04:51.182 [INFO] [Thread-68099 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00336998, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669708034394, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992794, telescope_ra=20.2353217, telescope_dec=-24.256345, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.25507, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:03:56.711954', telescope_ra_j2k=20.2096170578872, telescope_dec_j2k=-24.3327894375937, observability=1)
2025-11-17T14:04:56.857 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:56.858 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:56.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:56.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:56.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:56.859 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:56.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:56.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:56.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:56.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:56.860 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:04:56.860 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:56.860 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:56.860 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:56.860 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:56.860 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:04:56.861 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:04:56.862 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:57.862 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:57.862 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:57.862 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:57.862 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:57.863 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:57.863 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:57.863 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:04:57.864 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:57.865 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:04:57.865 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:04:57.865 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:04:57.865 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:04:57.865 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:04:57.866 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:04:57.866 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:04:57.866 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:04:57.866 [DEBUG] [ThreadPoolExecutor-2882_0] [payload.py] [to_registers()] [0]
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37327)
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:04:57.873 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:04:57.881 [DEBUG] [ThreadPoolExecutor-2882_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:09.227 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:09.227 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Status age = 18.045423984527588s
2025-11-17T14:05:09.227 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:09.227 [DEBUG] [Thread-68100 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:09.227 [DEBUG] [Thread-68100 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:09.228 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:09.229 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 17;20.2403663;-24.256345;50.108268;89.992793;50.08601;90.12017;17.26012;2460997.00357904;14.08587861;1.3;_
2025-11-17T14:05:09.229 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response 17;20.2403663;-24.256345;50.108268;89.992793;50.08601;90.12017;17.26012;2460997.00357904;14.08587861;1.3;_
2025-11-17T14:05:09.229 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:09.229 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:09.229 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:09.230 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:09.230 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:09.230 [INFO] [Thread-68100 (handle)] [driver.py] [get_status()] Telra = 20.2403663, teldec = -24.256345
2025-11-17T14:05:09.230 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2403663 -24.256345
2025-11-17T14:05:09.230 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2403663 -24.256345
2025-11-17T14:05:09.230 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2403663 -24.256345
2025-11-17T14:05:09.231 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 17;20.2403663;-24.256345;50.108268;89.992793;50.08601;90.12017;17.26012;2460997.00357906;14.08587861;1.3;_20.2146642300389 -24.3329496259886
2025-11-17T14:05:09.231 [INFO] [Thread-68100 (handle)] [driver.py] [get_status()] ra_j2k = 20.2146642300389     dec_j2k = -24.3329496259886
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 140;0.104668945907481;171.162346601491;_
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response 140;0.104668945907481;171.162346601491;_
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:09.232 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:09.233 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:09.233 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:09.233 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:09.234 [DEBUG] [Thread-68100 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:09.235 [DEBUG] [Thread-68100 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38249)
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:09.236 [DEBUG] [Thread-68100 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:09.243 [DEBUG] [Thread-68100 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:05:09.244 [INFO] [Thread-68100 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00357904, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104668945907481, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992793, telescope_ra=20.2403663, telescope_dec=-24.256345, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.26012, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.2146642300389, telescope_dec_j2k=-24.3329496259886, observability=1)
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Status age = 5.5965189933776855s
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:14.840 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:14.841 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:14.842 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 17;20.2419264;-24.256344;50.108268;89.992793;50.08601;90.12017;17.26168;2460997.003644;14.08743444;1.3;_
2025-11-17T14:05:14.842 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response 17;20.2419264;-24.256344;50.108268;89.992793;50.08601;90.12017;17.26168;2460997.003644;14.08743444;1.3;_
2025-11-17T14:05:14.842 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:14.842 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:14.842 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:14.843 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:14.843 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:14.843 [INFO] [Thread-68101 (handle)] [driver.py] [get_status()] Telra = 20.2419264, teldec = -24.256344
2025-11-17T14:05:14.843 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2419264 -24.256344
2025-11-17T14:05:14.843 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2419264 -24.256344
2025-11-17T14:05:14.843 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2419264 -24.256344
2025-11-17T14:05:14.844 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 17;20.2419264;-24.256344;50.108268;89.992793;50.08601;90.12017;17.26168;2460997.00364403;14.08743444;1.3;_20.216225126923 -24.3329981395497
2025-11-17T14:05:14.844 [INFO] [Thread-68101 (handle)] [driver.py] [get_status()] ra_j2k = 20.216225126923     dec_j2k = -24.3329981395497
2025-11-17T14:05:14.844 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:14.844 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:14.844 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 140;0.104669667922451;171.162362694745;_
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response 140;0.104669667922451;171.162362694745;_
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:14.845 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:14.846 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:14.846 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:14.846 [DEBUG] [Thread-68101 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:14.846 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:14.846 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:14.847 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:14.847 [DEBUG] [Thread-68101 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:14.847 [DEBUG] [Thread-68101 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:14.847 [DEBUG] [Thread-68101 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:14.853 [DEBUG] [Thread-68101 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56835)
2025-11-17T14:05:14.854 [DEBUG] [Thread-68101 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:14.854 [DEBUG] [Thread-68101 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:14.854 [DEBUG] [Thread-68101 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:14.854 [DEBUG] [Thread-68101 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:14.854 [DEBUG] [Thread-68101 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:14.861 [DEBUG] [Thread-68101 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:05:14.861 [INFO] [Thread-68101 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.003644, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669667922451, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108268, telescope_az=89.992793, telescope_ra=20.2419264, telescope_dec=-24.256344, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.26168, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.216225126923, telescope_dec_j2k=-24.3329981395497, observability=1)
2025-11-17T14:05:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.10885262489318848s
2025-11-17T14:05:14.970 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.10885262489318848
2025-11-17T14:05:22.881 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:22.881 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:22.881 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:22.881 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:22.881 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:22.882 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:05:22.883 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:05:22.884 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Status age = 12.49869704246521s
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:27.360 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:27.361 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:27.361 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:27.361 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:27.362 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 17;20.2454015;-24.256344;50.108267;89.992793;50.08601;90.12017;17.26515;2460997.00378891;14.0909;1.3;_
2025-11-17T14:05:27.362 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response 17;20.2454015;-24.256344;50.108267;89.992793;50.08601;90.12017;17.26515;2460997.00378891;14.0909;1.3;_
2025-11-17T14:05:27.362 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:27.362 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:27.362 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:27.363 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:27.363 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:27.363 [INFO] [Thread-68102 (handle)] [driver.py] [get_status()] Telra = 20.2454015, teldec = -24.256344
2025-11-17T14:05:27.363 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2454015 -24.256344
2025-11-17T14:05:27.363 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2454015 -24.256344
2025-11-17T14:05:27.363 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2454015 -24.256344
2025-11-17T14:05:27.364 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 17;20.2454015;-24.256344;50.108267;89.992793;50.08601;90.12017;17.26515;2460997.00378894;14.0909;1.3;_20.2197020037091 -24.333108384812
2025-11-17T14:05:27.364 [INFO] [Thread-68102 (handle)] [driver.py] [get_status()] ra_j2k = 20.2197020037091     dec_j2k = -24.333108384812
2025-11-17T14:05:27.364 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:27.364 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:27.364 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 140;0.104669146467195;171.162346601491;_
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response 140;0.104669146467195;171.162346601491;_
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:27.365 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:27.366 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:27.367 [DEBUG] [Thread-68102 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:27.367 [DEBUG] [Thread-68102 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:27.367 [DEBUG] [Thread-68102 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33241)
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:27.374 [DEBUG] [Thread-68102 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:27.381 [DEBUG] [Thread-68102 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:05:27.381 [INFO] [Thread-68102 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00378891, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669146467195, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992793, telescope_ra=20.2454015, telescope_dec=-24.256344, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.26515, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.2197020037091, telescope_dec_j2k=-24.333108384812, observability=1)
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.48046875s
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:32.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:32.863 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:32.863 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:32.863 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:32.863 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:32.863 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2469354;-24.256344;50.108267;89.992792;50.08601;90.12017;17.26669;2460997.00385259;14.09242972;1.3;_
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.2469354;-24.256344;50.108267;89.992792;50.08601;90.12017;17.26669;2460997.00385259;14.09242972;1.3;_
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:32.864 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:32.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:32.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:32.866 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.2469354, teldec = -24.256344
2025-11-17T14:05:32.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.2469354 -24.256344
2025-11-17T14:05:32.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.2469354 -24.256344
2025-11-17T14:05:32.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2469354 -24.256344
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2469354;-24.256344;50.108267;89.992792;50.08601;90.12017;17.26669;2460997.00385263;14.09242972;1.3;_20.2212366889069 -24.3331570268866
2025-11-17T14:05:32.867 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.2212366889069     dec_j2k = -24.3331570268866
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104669186579138;171.162368059163;_
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104669186579138;171.162368059163;_
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:32.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:32.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:32.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:32.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:32.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:32.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:32.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:32.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:32.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:32.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:32.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:32.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44519)
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:32.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:32.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:32.883 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:32.883 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:05:32.883 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00385259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669186579138, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992792, telescope_ra=20.2469354, telescope_dec=-24.256344, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.26669, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.2212366889069, telescope_dec_j2k=-24.3331570268866, observability=1)
2025-11-17T14:05:32.883 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01756954193115 seconds ago
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Status age = 12.549592018127441s
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:45.432 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:45.433 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:45.433 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:45.433 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 17;20.2504525;-24.256344;50.108267;89.992792;50.08601;90.12017;17.2702;2460997.00399808;14.09593722;1.3;_
2025-11-17T14:05:45.434 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response 17;20.2504525;-24.256344;50.108267;89.992792;50.08601;90.12017;17.2702;2460997.00399808;14.09593722;1.3;_
2025-11-17T14:05:45.435 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:45.435 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:45.435 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:45.436 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:45.436 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:45.436 [INFO] [Thread-68103 (handle)] [driver.py] [get_status()] Telra = 20.2504525, teldec = -24.256344
2025-11-17T14:05:45.436 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2504525 -24.256344
2025-11-17T14:05:45.436 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2504525 -24.256344
2025-11-17T14:05:45.436 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2504525 -24.256344
2025-11-17T14:05:45.437 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 17;20.2504525;-24.256344;50.108267;89.992792;50.08601;90.12017;17.2702;2460997.00399811;14.09593722;1.3;_20.2247555914451 -24.3332685129022
2025-11-17T14:05:45.437 [INFO] [Thread-68103 (handle)] [driver.py] [get_status()] ra_j2k = 20.2247555914451     dec_j2k = -24.3332685129022
2025-11-17T14:05:45.437 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:45.437 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:45.437 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 140;0.104670430049365;171.162357330327;_
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response 140;0.104670430049365;171.162357330327;_
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:45.438 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:45.439 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:45.440 [DEBUG] [Thread-68103 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:45.440 [DEBUG] [Thread-68103 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:45.440 [DEBUG] [Thread-68103 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:45.444 [DEBUG] [Thread-68103 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51967)
2025-11-17T14:05:45.444 [DEBUG] [Thread-68103 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:45.444 [DEBUG] [Thread-68103 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:45.444 [DEBUG] [Thread-68103 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:45.445 [DEBUG] [Thread-68103 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:45.445 [DEBUG] [Thread-68103 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:45.452 [DEBUG] [Thread-68103 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:05:45.452 [INFO] [Thread-68103 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00399808, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670430049365, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992792, telescope_ra=20.2504525, telescope_dec=-24.256344, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.2702, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.2247555914451, telescope_dec_j2k=-24.3332685129022, observability=1)
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.580580234527588s
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:47.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:05:47.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:05:47.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.250892;-24.256344;50.108267;89.992792;50.08601;90.12017;17.27064;2460997.00401661;14.09637556;1.3;_
2025-11-17T14:05:47.035 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.250892;-24.256344;50.108267;89.992792;50.08601;90.12017;17.27064;2460997.00401661;14.09637556;1.3;_
2025-11-17T14:05:47.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:05:47.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:05:47.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:05:47.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:47.036 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:05:47.036 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.250892, teldec = -24.256344
2025-11-17T14:05:47.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.250892 -24.256344
2025-11-17T14:05:47.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.250892 -24.256344
2025-11-17T14:05:47.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.250892 -24.256344
2025-11-17T14:05:47.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.250892;-24.256344;50.108267;89.992792;50.08601;90.12017;17.27064;2460997.00401663;14.09637556;1.3;_20.2251953169021 -24.3332824397842
2025-11-17T14:05:47.037 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.2251953169021     dec_j2k = -24.3332824397842
2025-11-17T14:05:47.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:05:47.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104670911392678;171.162368059163;_
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104670911392678;171.162368059163;_
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:47.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:05:47.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:05:47.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:47.040 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:05:47.040 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:05:47.046 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40931)
2025-11-17T14:05:47.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:05:47.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:05:47.047 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:05:47.047 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:05:47.047 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:05:47.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:05:47.054 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:05:47.054 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00401661, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670911392678, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992792, telescope_ra=20.250892, telescope_dec=-24.256344, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.27064, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:04:56.857448', telescope_ra_j2k=20.2251953169021, telescope_dec_j2k=-24.3332824397842, observability=1)
2025-11-17T14:05:47.943 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:05:47
2025-11-17T14:05:47.943 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:05:47.943 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.8889234066009521s
2025-11-17T14:05:47.943 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8889234066009521
2025-11-17T14:05:56.999 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:56.999 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:56.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:56.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:56.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:57.000 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:05:57.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:05:57.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:05:57.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:05:57.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:05:57.001 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:05:57.001 [INFO] [ThreadPoolExecutor-2883_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:05:57.001 [INFO] [ThreadPoolExecutor-2883_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:06:03.497 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Status age = 16.444249629974365s
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:03.498 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:03.499 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:03.500 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:03.501 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 17;20.2554653;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27522;2460997.00420719;14.10093639;1.3;_
2025-11-17T14:06:03.501 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response 17;20.2554653;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27522;2460997.00420719;14.10093639;1.3;_
2025-11-17T14:06:03.501 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:03.501 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:03.501 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:03.502 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:03.502 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:03.502 [INFO] [Thread-68104 (handle)] [driver.py] [get_status()] Telra = 20.2554653, teldec = -24.256343
2025-11-17T14:06:03.502 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2554653 -24.256343
2025-11-17T14:06:03.502 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2554653 -24.256343
2025-11-17T14:06:03.502 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2554653 -24.256343
2025-11-17T14:06:03.503 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 17;20.2554653;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27522;2460997.00420721;14.10093639;1.3;_20.2297709658757 -24.3334262991238
2025-11-17T14:06:03.503 [INFO] [Thread-68104 (handle)] [driver.py] [get_status()] ra_j2k = 20.2297709658757     dec_j2k = -24.3334262991238
2025-11-17T14:06:03.503 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:03.503 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:03.503 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 140;0.104670269601593;171.162357330327;_
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response 140;0.104670269601593;171.162357330327;_
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:03.504 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:03.505 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:03.506 [DEBUG] [Thread-68104 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:03.506 [DEBUG] [Thread-68104 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:03.506 [DEBUG] [Thread-68104 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56499)
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:03.510 [DEBUG] [Thread-68104 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:03.517 [DEBUG] [Thread-68104 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:03.518 [DEBUG] [Thread-68104 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:03.518 [INFO] [Thread-68104 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00420719, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670269601593, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992791, telescope_ra=20.2554653, telescope_dec=-24.256343, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.27522, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2297709658757, telescope_dec_j2k=-24.3334262991238, observability=1)
2025-11-17T14:06:14.899 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:14.899 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Status age = 11.381760358810425s
2025-11-17T14:06:14.899 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:14.899 [DEBUG] [Thread-68105 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:14.899 [DEBUG] [Thread-68105 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:14.900 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:14.901 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 17;20.258644;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27839;2460997.00433913;14.10410639;1.3;_
2025-11-17T14:06:14.901 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response 17;20.258644;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27839;2460997.00433913;14.10410639;1.3;_
2025-11-17T14:06:14.901 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:14.901 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:14.901 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:14.902 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:14.902 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:14.902 [INFO] [Thread-68105 (handle)] [driver.py] [get_status()] Telra = 20.258644, teldec = -24.256343
2025-11-17T14:06:14.902 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] UnCookCoordinates 20.258644 -24.256343
2025-11-17T14:06:14.902 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.258644 -24.256343
2025-11-17T14:06:14.902 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.258644 -24.256343
2025-11-17T14:06:14.903 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 17;20.258644;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27839;2460997.00433916;14.10410639;1.3;_20.2329513014018 -24.3335269203465
2025-11-17T14:06:14.903 [INFO] [Thread-68105 (handle)] [driver.py] [get_status()] ra_j2k = 20.2329513014018     dec_j2k = -24.3335269203465
2025-11-17T14:06:14.903 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:14.903 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:14.903 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 140;0.104669988817994;171.162351965909;_
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response 140;0.104669988817994;171.162351965909;_
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:14.905 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:14.906 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:14.906 [DEBUG] [Thread-68105 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:14.906 [DEBUG] [Thread-68105 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:14.906 [DEBUG] [Thread-68105 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:14.912 [DEBUG] [Thread-68105 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35075)
2025-11-17T14:06:14.913 [DEBUG] [Thread-68105 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:14.913 [DEBUG] [Thread-68105 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:14.913 [DEBUG] [Thread-68105 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:14.913 [DEBUG] [Thread-68105 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:14.913 [DEBUG] [Thread-68105 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:14.920 [DEBUG] [Thread-68105 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:14.920 [INFO] [Thread-68105 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00433913, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104669988817994, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992791, telescope_ra=20.258644, telescope_dec=-24.256343, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.27839, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2329513014018, telescope_dec_j2k=-24.3335269203465, observability=1)
2025-11-17T14:06:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:14.991 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.07043290138244629s
2025-11-17T14:06:14.991 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.07043290138244629
2025-11-17T14:06:17.884 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.885 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.885 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:17.885 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:17.885 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:06:17.886 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:17.887 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:17.888 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:06:17.889 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:17.890 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:17.891 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:17.891 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Park
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:06:17.892 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 29;20.2594769;-24.256343;50.108267;89.992791;50.08601;90.12017;17.27923;2460997.00437375;14.10493694;1.3;_Park Command Successful
2025-11-17T14:06:18.893 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:06:18.893 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:06:18.893 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:06:18.893 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:06:18.894 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:06:19.894 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:06:19.894 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:06:19.894 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:06:19.895 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:06:19.895 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:06:20.895 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:06:20.895 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:06:20.895 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:06:20.896 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:06:20.896 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Status age = 6.692933797836304s
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:21.613 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:21.614 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:21.614 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:21.615 [DEBUG] [Thread-68106 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:21.615 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:21.615 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:21.615 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:21.615 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:21.616 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 17;20.2605072;-24.256343;50.108267;89.992791;50.08601;90.12017;17.28026;2460997.00441685;14.10596444;1.3;_
2025-11-17T14:06:21.616 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response 17;20.2605072;-24.256343;50.108267;89.992791;50.08601;90.12017;17.28026;2460997.00441685;14.10596444;1.3;_
2025-11-17T14:06:21.616 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:21.616 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:21.616 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:21.617 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:21.617 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:21.617 [INFO] [Thread-68106 (handle)] [driver.py] [get_status()] Telra = 20.2605072, teldec = -24.256343
2025-11-17T14:06:21.617 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2605072 -24.256343
2025-11-17T14:06:21.617 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2605072 -24.256343
2025-11-17T14:06:21.617 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2605072 -24.256343
2025-11-17T14:06:21.618 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 17;20.2605072;-24.256343;50.108267;89.992791;50.08601;90.12017;17.28026;2460997.00441688;14.10596444;1.3;_20.2348154612018 -24.333585875173
2025-11-17T14:06:21.618 [INFO] [Thread-68106 (handle)] [driver.py] [get_status()] ra_j2k = 20.2348154612018     dec_j2k = -24.333585875173
2025-11-17T14:06:21.618 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:21.618 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:21.618 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 140;0.104670349825479;171.162351965909;_
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response 140;0.104670349825479;171.162351965909;_
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:21.619 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:21.620 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:21.621 [DEBUG] [Thread-68106 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:21.621 [DEBUG] [Thread-68106 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:21.621 [DEBUG] [Thread-68106 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:21.625 [DEBUG] [Thread-68106 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47439)
2025-11-17T14:06:21.625 [DEBUG] [Thread-68106 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:21.625 [DEBUG] [Thread-68106 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:21.625 [DEBUG] [Thread-68106 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:21.625 [DEBUG] [Thread-68106 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:21.626 [DEBUG] [Thread-68106 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:21.632 [DEBUG] [Thread-68106 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:21.633 [DEBUG] [Thread-68106 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:21.633 [INFO] [Thread-68106 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00441685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670349825479, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.992791, telescope_ra=20.2605072, telescope_dec=-24.256343, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.28026, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2348154612018, telescope_dec_j2k=-24.333585875173, observability=1)
2025-11-17T14:06:21.896 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:06:21.896 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:06:21.897 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:21.898 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:06:21.899 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:06:21.900 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:22.900 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:22.900 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:22.900 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:22.900 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:22.900 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:06:22.901 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:06:22.902 [DEBUG] [ThreadPoolExecutor-2882_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:22.902 [INFO] [ThreadPoolExecutor-2882_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.309724569320679s
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:32.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:32.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:32.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.263687;-24.256343;50.108267;89.99279;50.08601;90.12017;17.28344;2460997.00454797;14.10913556;1.3;_
2025-11-17T14:06:32.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.263687;-24.256343;50.108267;89.99279;50.08601;90.12017;17.28344;2460997.00454797;14.10913556;1.3;_
2025-11-17T14:06:32.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:32.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:32.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:32.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:32.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:32.946 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.263687, teldec = -24.256343
2025-11-17T14:06:32.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.263687 -24.256343
2025-11-17T14:06:32.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.263687 -24.256343
2025-11-17T14:06:32.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.263687 -24.256343
2025-11-17T14:06:32.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.263687;-24.256343;50.108267;89.99279;50.08601;90.12017;17.28344;2460997.004548;14.10913556;1.3;_20.2379969011637 -24.3336864476659
2025-11-17T14:06:32.947 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.2379969011637     dec_j2k = -24.3336864476659
2025-11-17T14:06:32.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:32.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:32.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104670229489651;171.162357330327;_
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104670229489651;171.162357330327;_
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:32.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:32.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:32.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:06:32.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:06:32.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48513)
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:32.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:32.962 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:06:32.962 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00454797, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670229489651, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.99279, telescope_ra=20.263687, telescope_dec=-24.256343, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.28344, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2379969011637, telescope_dec_j2k=-24.3336864476659, observability=1)
2025-11-17T14:06:32.962 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01954507827759 seconds ago
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Status age = 6.724190950393677s
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:39.686 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:39.687 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 17;20.2655543;-24.256342;50.108267;89.99279;50.08601;90.12017;17.2853;2460997.00462602;14.11099778;1.3;_
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response 17;20.2655543;-24.256342;50.108267;89.99279;50.08601;90.12017;17.2853;2460997.00462602;14.11099778;1.3;_
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:39.688 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:39.689 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:39.689 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:39.690 [INFO] [Thread-68107 (handle)] [driver.py] [get_status()] Telra = 20.2655543, teldec = -24.256342
2025-11-17T14:06:39.690 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2655543 -24.256342
2025-11-17T14:06:39.690 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2655543 -24.256342
2025-11-17T14:06:39.690 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2655543 -24.256342
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 17;20.2655543;-24.256342;50.108267;89.99279;50.08601;90.12017;17.2853;2460997.00462605;14.11099778;1.3;_20.2398651655177 -24.3337444831762
2025-11-17T14:06:39.691 [INFO] [Thread-68107 (handle)] [driver.py] [get_status()] ra_j2k = 20.2398651655177     dec_j2k = -24.3337444831762
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 140;0.10467079105685;171.162357330327;_
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response 140;0.10467079105685;171.162357330327;_
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:39.691 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:39.692 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:39.693 [DEBUG] [Thread-68107 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:39.693 [DEBUG] [Thread-68107 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:39.693 [DEBUG] [Thread-68107 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45769)
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:39.695 [DEBUG] [Thread-68107 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:39.703 [DEBUG] [Thread-68107 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:39.703 [DEBUG] [Thread-68107 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:39.703 [DEBUG] [Thread-68107 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:39.703 [DEBUG] [Thread-68107 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:39.703 [DEBUG] [Thread-68107 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:39.704 [DEBUG] [Thread-68107 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:39.704 [DEBUG] [Thread-68107 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:39.704 [DEBUG] [Thread-68107 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:39.704 [DEBUG] [Thread-68107 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:39.704 [INFO] [Thread-68107 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00462602, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467079105685, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.99279, telescope_ra=20.2655543, telescope_dec=-24.256342, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.2853, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2398651655177, telescope_dec_j2k=-24.3337444831762, observability=1)
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.4430623054504395s
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:46.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:46.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:46.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2673656;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28712;2460997.0047008;14.11280417;1.3;_
2025-11-17T14:06:46.149 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.2673656;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28712;2460997.0047008;14.11280417;1.3;_
2025-11-17T14:06:46.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:46.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:46.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:46.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:46.150 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:46.150 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.2673656, teldec = -24.256342
2025-11-17T14:06:46.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2673656 -24.256342
2025-11-17T14:06:46.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2673656 -24.256342
2025-11-17T14:06:46.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2673656 -24.256342
2025-11-17T14:06:46.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2673656;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28712;2460997.00470082;14.11280417;1.3;_20.2416774015902 -24.3338017307281
2025-11-17T14:06:46.151 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.2416774015902     dec_j2k = -24.3338017307281
2025-11-17T14:06:46.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:46.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:46.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:46.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104670630609079;171.162357330327;_
2025-11-17T14:06:46.152 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104670630609079;171.162357330327;_
2025-11-17T14:06:46.152 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:46.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:46.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:46.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:46.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:46.153 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:46.154 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:46.155 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56955)
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:46.159 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:46.166 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:46.166 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0047008, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104670630609079, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.99279, telescope_ra=20.2673656, telescope_dec=-24.256342, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.28712, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2416774015902, telescope_dec_j2k=-24.3338017307281, observability=1)
2025-11-17T14:06:48.004 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:06:48
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.8374228477478027s
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:48.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:48.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:48.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2678609;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28761;2460997.00472229;14.11329806;1.3;_
2025-11-17T14:06:48.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.2678609;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28761;2460997.00472229;14.11329806;1.3;_
2025-11-17T14:06:48.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:48.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:48.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:48.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:48.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:48.007 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.2678609, teldec = -24.256342
2025-11-17T14:06:48.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2678609 -24.256342
2025-11-17T14:06:48.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2678609 -24.256342
2025-11-17T14:06:48.007 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2678609 -24.256342
2025-11-17T14:06:48.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2678609;-24.256342;50.108267;89.99279;50.08601;90.12017;17.28761;2460997.00472232;14.11329806;1.3;_20.2421729576969 -24.3338173820859
2025-11-17T14:06:48.008 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.2421729576969     dec_j2k = -24.3338173820859
2025-11-17T14:06:48.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:48.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:48.008 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104671071840449;171.162357330327;_
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104671071840449;171.162357330327;_
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:48.009 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:48.010 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:48.011 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:48.011 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:48.011 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34515)
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:48.013 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:48.020 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:48.021 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00472229, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671071840449, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108267, telescope_az=89.99279, telescope_ra=20.2678609, telescope_dec=-24.256342, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.28761, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:05:56.999057', telescope_ra_j2k=20.2421729576969, telescope_dec_j2k=-24.3338173820859, observability=1)
2025-11-17T14:06:57.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:57.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:57.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:57.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:57.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:57.142 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:57.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:57.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:57.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:57.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:57.143 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:06:57.143 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:57.143 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:06:57.144 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:06:57.145 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Status age = 9.726280689239502s
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:57.747 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:06:57.748 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:06:57.749 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 17;20.2705911;-24.256342;50.108266;89.99279;50.08601;90.12017;17.29034;2460997.00483506;14.11602083;1.3;_
2025-11-17T14:06:57.749 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response 17;20.2705911;-24.256342;50.108266;89.99279;50.08601;90.12017;17.29034;2460997.00483506;14.11602083;1.3;_
2025-11-17T14:06:57.749 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:06:57.749 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:06:57.749 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:06:57.750 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:57.750 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:06:57.750 [INFO] [Thread-68108 (handle)] [driver.py] [get_status()] Telra = 20.2705911, teldec = -24.256342
2025-11-17T14:06:57.750 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2705911 -24.256342
2025-11-17T14:06:57.750 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2705911 -24.256342
2025-11-17T14:06:57.750 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2705911 -24.256342
2025-11-17T14:06:57.751 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 17;20.2705911;-24.256342;50.108266;89.99279;50.08601;90.12017;17.29034;2460997.00483508;14.11602083;1.3;_20.2449045704736 -24.3339036327024
2025-11-17T14:06:57.751 [INFO] [Thread-68108 (handle)] [driver.py] [get_status()] ra_j2k = 20.2449045704736     dec_j2k = -24.3339036327024
2025-11-17T14:06:57.751 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:06:57.751 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 140;0.104671071840449;171.162351965909;_
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response 140;0.104671071840449;171.162351965909;_
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:06:57.752 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:06:57.753 [DEBUG] [Thread-68108 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:57.753 [DEBUG] [Thread-68108 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:06:57.754 [DEBUG] [Thread-68108 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55945)
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:57.756 [DEBUG] [Thread-68108 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:06:57.763 [DEBUG] [Thread-68108 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:06:57.763 [INFO] [Thread-68108 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00483506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671071840449, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.99279, telescope_ra=20.2705911, telescope_dec=-24.256342, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.29034, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2449045704736, telescope_dec_j2k=-24.3339036327024, observability=1)
2025-11-17T14:06:58.145 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:58.145 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:58.146 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:58.146 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:58.146 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:58.146 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:58.146 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:06:58.147 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:06:58.148 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:06:58.149 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:06:58.149 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:06:58.149 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:06:58.149 [DEBUG] [ThreadPoolExecutor-2884_0] [payload.py] [to_registers()] [0]
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41241)
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:06:58.150 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:06:58.157 [DEBUG] [ThreadPoolExecutor-2884_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Status age = 17.189671993255615s
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:14.953 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:07:14.954 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:07:14.955 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 17;20.2753845;-24.256341;50.108266;89.992789;50.08601;90.12017;17.29513;2460997.0050342;14.12080111;1.3;_
2025-11-17T14:07:14.955 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response 17;20.2753845;-24.256341;50.108266;89.992789;50.08601;90.12017;17.29513;2460997.0050342;14.12080111;1.3;_
2025-11-17T14:07:14.955 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:07:14.955 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:07:14.955 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:07:14.956 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:14.956 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:14.956 [INFO] [Thread-68109 (handle)] [driver.py] [get_status()] Telra = 20.2753845, teldec = -24.256341
2025-11-17T14:07:14.956 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2753845 -24.256341
2025-11-17T14:07:14.956 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2753845 -24.256341
2025-11-17T14:07:14.956 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2753845 -24.256341
2025-11-17T14:07:14.957 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 17;20.2753845;-24.256341;50.108266;89.992789;50.08601;90.12017;17.29513;2460997.00503422;14.12080111;1.3;_20.2497004553928 -24.3340539682014
2025-11-17T14:07:14.957 [INFO] [Thread-68109 (handle)] [driver.py] [get_status()] ra_j2k = 20.2497004553928     dec_j2k = -24.3340539682014
2025-11-17T14:07:14.957 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:07:14.957 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:07:14.957 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 140;0.104671111952392;171.162351965909;_
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response 140;0.104671111952392;171.162351965909;_
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:14.958 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:14.959 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:14.960 [DEBUG] [Thread-68109 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:14.960 [DEBUG] [Thread-68109 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:14.960 [DEBUG] [Thread-68109 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52855)
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:07:14.966 [DEBUG] [Thread-68109 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:07:14.973 [DEBUG] [Thread-68109 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:07:14.974 [DEBUG] [Thread-68109 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:07:14.974 [INFO] [Thread-68109 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0050342, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671111952392, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992789, telescope_ra=20.2753845, telescope_dec=-24.256341, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.29513, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2497004553928, telescope_dec_j2k=-24.3340539682014, observability=1)
2025-11-17T14:07:14.994 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:14.994 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.01997232437133789s
2025-11-17T14:07:14.994 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.01997232437133789
2025-11-17T14:07:15.871 [DEBUG] [Thread-68110 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:15.871 [DEBUG] [Thread-68110 (handle)] [server.py] [get_status()] Status age = 0.8973562717437744s
2025-11-17T14:07:15.871 [DEBUG] [Thread-68110 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8973562717437744
2025-11-17T14:07:23.157 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:23.157 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:23.157 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:23.158 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:23.158 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:23.159 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:07:23.160 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:07:23.161 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 18.04833674430847s
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:33.022 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:07:33.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:07:33.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2804065;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30016;2460997.00524333;14.12580944;1.3;_
2025-11-17T14:07:33.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.2804065;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30016;2460997.00524333;14.12580944;1.3;_
2025-11-17T14:07:33.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:07:33.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:07:33.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:07:33.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:33.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:33.025 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.2804065, teldec = -24.256341
2025-11-17T14:07:33.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.2804065 -24.256341
2025-11-17T14:07:33.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.2804065 -24.256341
2025-11-17T14:07:33.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2804065 -24.256341
2025-11-17T14:07:33.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2804065;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30016;2460997.00524336;14.12580944;1.3;_20.2547250645768 -24.3342123916016
2025-11-17T14:07:33.027 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.2547250645768     dec_j2k = -24.3342123916016
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104671192176278;171.162357330327;_
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104671192176278;171.162357330327;_
2025-11-17T14:07:33.027 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:07:33.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:33.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:33.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:33.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:33.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:33.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:33.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44191)
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:07:33.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:07:33.040 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:07:33.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:33.041 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:07:33.041 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:07:33.041 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00524333, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671192176278, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992788, telescope_ra=20.2804065, telescope_dec=-24.256341, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.30016, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2547250645768, telescope_dec_j2k=-24.3342123916016, observability=1)
2025-11-17T14:07:33.041 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03713536262512 seconds ago
2025-11-17T14:07:33.942 [DEBUG] [Thread-68111 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:33.942 [DEBUG] [Thread-68111 (handle)] [server.py] [get_status()] Status age = 0.9017665386199951s
2025-11-17T14:07:33.943 [DEBUG] [Thread-68111 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9017665386199951
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.21697473526001s
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:45.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:07:45.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:07:45.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2838053;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30356;2460997.00538495;14.12919889;1.3;_
2025-11-17T14:07:45.260 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.2838053;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30356;2460997.00538495;14.12919889;1.3;_
2025-11-17T14:07:45.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:07:45.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:07:45.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:07:45.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:45.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:45.261 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.2838053, teldec = -24.256341
2025-11-17T14:07:45.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2838053 -24.256341
2025-11-17T14:07:45.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2838053 -24.256341
2025-11-17T14:07:45.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2838053 -24.256341
2025-11-17T14:07:45.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.2838328;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30358;2460997.00538498;14.12922639;1.3;_20.2581256338695 -24.3343195345343
2025-11-17T14:07:45.262 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.2581256338695     dec_j2k = -24.3343195345343
2025-11-17T14:07:45.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:07:45.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:07:45.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104671673519592;171.162362694745;_
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104671673519592;171.162362694745;_
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:45.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:45.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:45.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:45.265 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:45.265 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46037)
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:07:45.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:07:45.277 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:07:45.277 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:07:45.278 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:07:45.278 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00538495, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671673519592, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992788, telescope_ra=20.2838053, telescope_dec=-24.256341, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.30356, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2581256338695, telescope_dec_j2k=-24.3343195345343, observability=1)
2025-11-17T14:07:48.081 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:07:48
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.8033649921417236s
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:48.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:48.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:07:48.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:07:48.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2846077;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30436;2460997.00541764;14.12999917;1.3;_
2025-11-17T14:07:48.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.2846077;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30436;2460997.00541764;14.12999917;1.3;_
2025-11-17T14:07:48.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:07:48.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:07:48.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:07:48.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:48.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:48.085 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.2846077, teldec = -24.256341
2025-11-17T14:07:48.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2846077 -24.256341
2025-11-17T14:07:48.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2846077 -24.256341
2025-11-17T14:07:48.085 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2846077 -24.256341
2025-11-17T14:07:48.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.2846077;-24.256341;50.108266;89.992788;50.08601;90.12017;17.30436;2460997.00541766;14.12999917;1.3;_20.2589284519755 -24.3343448203256
2025-11-17T14:07:48.086 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.2589284519755     dec_j2k = -24.3343448203256
2025-11-17T14:07:48.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:07:48.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:07:48.086 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104671914191248;171.162357330327;_
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104671914191248;171.162357330327;_
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:48.087 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:48.088 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50489)
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:07:48.095 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:07:48.102 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:07:48.103 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00541764, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671914191248, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992788, telescope_ra=20.2846077, telescope_dec=-24.256341, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.30436, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2589284519755, telescope_dec_j2k=-24.3343448203256, observability=1)
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Status age = 3.898249387741089s
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:52.001 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:07:52.002 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:07:52.003 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 17;20.2856994;-24.256334;50.108266;89.992777;50.08601;90.12016;17.30545;2460997.005463;14.13108806;1.3;_
2025-11-17T14:07:52.003 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response 17;20.2856994;-24.256334;50.108266;89.992777;50.08601;90.12016;17.30545;2460997.005463;14.13108806;1.3;_
2025-11-17T14:07:52.003 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:07:52.003 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:07:52.003 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:07:52.004 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:52.004 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:07:52.004 [INFO] [Thread-68112 (handle)] [driver.py] [get_status()] Telra = 20.2856994, teldec = -24.256334
2025-11-17T14:07:52.004 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2856994 -24.256334
2025-11-17T14:07:52.004 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2856994 -24.256334
2025-11-17T14:07:52.004 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2856994 -24.256334
2025-11-17T14:07:52.005 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 17;20.2856994;-24.256334;50.108266;89.992777;50.08601;90.12016;17.30545;2460997.00546302;14.13108806;1.3;_20.2600207222552 -24.3343722179534
2025-11-17T14:07:52.005 [INFO] [Thread-68112 (handle)] [driver.py] [get_status()] ra_j2k = 20.2600207222552     dec_j2k = -24.3343722179534
2025-11-17T14:07:52.005 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:07:52.005 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:07:52.005 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 140;0.104671553183763;171.162357330327;_
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response 140;0.104671553183763;171.162357330327;_
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:52.006 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:07:52.007 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:07:52.008 [DEBUG] [Thread-68112 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:52.008 [DEBUG] [Thread-68112 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:07:52.008 [DEBUG] [Thread-68112 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49825)
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:07:52.013 [DEBUG] [Thread-68112 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:07:52.021 [DEBUG] [Thread-68112 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:07:52.021 [INFO] [Thread-68112 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.005463, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104671553183763, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992777, telescope_ra=20.2856994, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.30545, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:06:57.140884', telescope_ra_j2k=20.2600207222552, telescope_dec_j2k=-24.3343722179534, observability=1)
2025-11-17T14:07:57.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:57.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:57.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:57.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:57.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:57.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:57.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:57.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:57.284 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:07:57.284 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:07:57.284 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:07:57.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:07:57.285 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:07:57.286 [INFO] [ThreadPoolExecutor-2885_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:07:57.286 [INFO] [ThreadPoolExecutor-2885_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Status age = 18.117433071136475s
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:10.139 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:10.140 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:10.141 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 17;20.2907434;-24.25634;50.108266;89.992787;50.08601;90.12017;17.31049;2460997.00567293;14.13611806;1.3;_
2025-11-17T14:08:10.141 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response 17;20.2907434;-24.25634;50.108266;89.992787;50.08601;90.12017;17.31049;2460997.00567293;14.13611806;1.3;_
2025-11-17T14:08:10.141 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:10.141 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:10.141 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:10.142 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:10.142 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:10.143 [INFO] [Thread-68113 (handle)] [driver.py] [get_status()] Telra = 20.2907434, teldec = -24.25634
2025-11-17T14:08:10.143 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2907434 -24.25634
2025-11-17T14:08:10.143 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2907434 -24.25634
2025-11-17T14:08:10.143 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2907434 -24.25634
2025-11-17T14:08:10.143 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 17;20.2907434;-24.25634;50.108266;89.992787;50.08601;90.12017;17.31049;2460997.00567295;14.13611806;1.3;_20.2650673543852 -24.3345370607495
2025-11-17T14:08:10.144 [INFO] [Thread-68113 (handle)] [driver.py] [get_status()] ra_j2k = 20.2650673543852     dec_j2k = -24.3345370607495
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 140;0.104672475758448;171.162362694745;_
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response 140;0.104672475758448;171.162362694745;_
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:10.144 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:10.145 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:10.145 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:10.146 [DEBUG] [Thread-68113 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53559)
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:10.153 [DEBUG] [Thread-68113 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:10.160 [DEBUG] [Thread-68113 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:10.160 [INFO] [Thread-68113 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00567293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672475758448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108266, telescope_az=89.992787, telescope_ra=20.2907434, telescope_dec=-24.25634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.31049, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.2650673543852, telescope_dec_j2k=-24.3345370607495, observability=1)
2025-11-17T14:08:15.003 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:15.003 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Status age = 4.843084096908569s
2025-11-17T14:08:15.003 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:15.003 [DEBUG] [Thread-68114 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:15.003 [DEBUG] [Thread-68114 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:15.004 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:15.005 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572922;14.13747694;1.3;_
2025-11-17T14:08:15.005 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572922;14.13747694;1.3;_
2025-11-17T14:08:15.005 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:15.005 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:15.005 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:15.006 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:15.006 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:15.006 [INFO] [Thread-68114 (handle)] [driver.py] [get_status()] Telra = 20.292106, teldec = -24.25634
2025-11-17T14:08:15.006 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.006 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.007 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.007 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572925;14.13747694;1.3;_20.266430666758 -24.3345799481027
2025-11-17T14:08:15.008 [INFO] [Thread-68114 (handle)] [driver.py] [get_status()] ra_j2k = 20.266430666758     dec_j2k = -24.3345799481027
2025-11-17T14:08:15.008 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:15.008 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:15.008 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:15.008 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 140;0.104672435646505;171.162362694745;_
2025-11-17T14:08:15.008 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response 140;0.104672435646505;171.162362694745;_
2025-11-17T14:08:15.009 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:15.009 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:15.009 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:15.009 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:15.009 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:15.010 [DEBUG] [Thread-68114 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.011 [DEBUG] [Thread-68114 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.011 [DEBUG] [Thread-68114 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50745)
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:15.012 [DEBUG] [Thread-68114 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.853152513504028s
2025-11-17T14:08:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572935;14.13747694;1.3;_
2025-11-17T14:08:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572935;14.13747694;1.3;_
2025-11-17T14:08:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:15.017 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.292106, teldec = -24.25634
2025-11-17T14:08:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.292106 -24.25634
2025-11-17T14:08:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.292106;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31186;2460997.00572938;14.13747694;1.3;_20.266430666758 -24.3345799481027
2025-11-17T14:08:15.018 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.266430666758     dec_j2k = -24.3345799481027
2025-11-17T14:08:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:15.019 [DEBUG] [Thread-68114 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:15.019 [INFO] [Thread-68114 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00572922, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672435646505, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992787, telescope_ra=20.292106, telescope_dec=-24.25634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.31186, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.266430666758, telescope_dec_j2k=-24.3345799481027, observability=1)
2025-11-17T14:08:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104672194974848;171.162362694745;_
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104672194974848;171.162362694745;_
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55259)
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:15.034 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00572935, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672194974848, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992787, telescope_ra=20.292106, telescope_dec=-24.25634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.31186, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.266430666758, telescope_dec_j2k=-24.3345799481027, observability=1)
2025-11-17T14:08:18.161 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.161 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.161 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:18.161 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:18.161 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:08:18.162 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:18.163 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:18.164 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:08:18.165 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:18.166 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Park
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:08:18.167 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:08:18.168 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 29;20.2929965;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31275;2460997.00576583;14.138365;1.3;_Park Command Successful
2025-11-17T14:08:19.168 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:08:19.168 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:08:19.168 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:08:19.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:08:19.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:08:20.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:08:20.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:08:20.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:08:20.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:08:20.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:08:21.169 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:08:21.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:08:21.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:08:21.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:08:21.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:08:22.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:08:22.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:08:22.170 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:08:22.171 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:08:22.171 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:08:22.171 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:22.171 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:22.172 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:22.172 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:22.172 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:08:22.173 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:08:22.174 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:23.174 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:23.174 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:23.174 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:23.174 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:23.174 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:08:23.175 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:08:23.176 [DEBUG] [ThreadPoolExecutor-2884_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:23.176 [INFO] [ThreadPoolExecutor-2884_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Status age = 13.162909269332886s
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:28.197 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 17;20.2957877;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31554;2460997.00588192;14.14114861;1.3;_
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response 17;20.2957877;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31554;2460997.00588192;14.14114861;1.3;_
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:28.198 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:28.199 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:28.199 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:28.199 [INFO] [Thread-68115 (handle)] [driver.py] [get_status()] Telra = 20.2957877, teldec = -24.25634
2025-11-17T14:08:28.199 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] UnCookCoordinates 20.2957877 -24.25634
2025-11-17T14:08:28.199 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.2957877 -24.25634
2025-11-17T14:08:28.199 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2957877 -24.25634
2025-11-17T14:08:28.200 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 17;20.2957877;-24.25634;50.108265;89.992787;50.08601;90.12017;17.31554;2460997.00588194;14.14114861;1.3;_20.2701142937961 -24.3346957792517
2025-11-17T14:08:28.200 [INFO] [Thread-68115 (handle)] [driver.py] [get_status()] ra_j2k = 20.2701142937961     dec_j2k = -24.3346957792517
2025-11-17T14:08:28.200 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:28.200 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:28.200 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 140;0.104672395534562;171.162362694745;_
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response 140;0.104672395534562;171.162362694745;_
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:28.201 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:28.202 [DEBUG] [Thread-68115 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:28.202 [DEBUG] [Thread-68115 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:28.202 [DEBUG] [Thread-68115 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:28.206 [DEBUG] [Thread-68115 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34299)
2025-11-17T14:08:28.206 [DEBUG] [Thread-68115 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:28.206 [DEBUG] [Thread-68115 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:28.206 [DEBUG] [Thread-68115 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:28.207 [DEBUG] [Thread-68115 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:28.207 [DEBUG] [Thread-68115 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:28.213 [DEBUG] [Thread-68115 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:28.214 [DEBUG] [Thread-68115 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:28.214 [INFO] [Thread-68115 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00588192, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672395534562, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992787, telescope_ra=20.2957877, telescope_dec=-24.25634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.31554, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.2701142937961, telescope_dec_j2k=-24.3346957792517, observability=1)
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.886745452880859s
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:33.101 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:33.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:33.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2971509;-24.25634;50.108265;89.992786;50.08601;90.12017;17.3169;2460997.00593869;14.14250806;1.3;_
2025-11-17T14:08:33.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.2971509;-24.25634;50.108265;89.992786;50.08601;90.12017;17.3169;2460997.00593869;14.14250806;1.3;_
2025-11-17T14:08:33.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:33.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:33.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:33.104 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:33.104 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:33.104 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.2971509, teldec = -24.25634
2025-11-17T14:08:33.104 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.2971509 -24.25634
2025-11-17T14:08:33.104 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.2971509 -24.25634
2025-11-17T14:08:33.104 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.2971509 -24.25634
2025-11-17T14:08:33.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.2971509;-24.25634;50.108265;89.992786;50.08601;90.12017;17.3169;2460997.00593872;14.14250806;1.3;_20.271478208134 -24.3347386491438
2025-11-17T14:08:33.105 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.271478208134     dec_j2k = -24.3347386491438
2025-11-17T14:08:33.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:33.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:33.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104672957101761;171.162351965909;_
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104672957101761;171.162351965909;_
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:33.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:33.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:33.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:33.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:33.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39967)
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:33.110 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:33.117 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:08:33.117 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00593869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672957101761, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992786, telescope_ra=20.2971509, telescope_dec=-24.25634, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.3169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.271478208134, telescope_dec_j2k=-24.3347386491438, observability=1)
2025-11-17T14:08:33.118 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.036426305770874 seconds ago
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.247601747512817s
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:44.365 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:44.366 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:44.367 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:44.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3002964;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32005;2460997.00606907;14.145645;1.3;_
2025-11-17T14:08:44.368 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3002964;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32005;2460997.00606907;14.145645;1.3;_
2025-11-17T14:08:44.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:44.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:44.368 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:44.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:44.369 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:44.369 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3002964, teldec = -24.256339
2025-11-17T14:08:44.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3002964 -24.256339
2025-11-17T14:08:44.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3002964 -24.256339
2025-11-17T14:08:44.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3002964 -24.256339
2025-11-17T14:08:44.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3002964;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32005;2460997.0060691;14.145645;1.3;_20.2746253582947 -24.3348365313357
2025-11-17T14:08:44.370 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.2746253582947     dec_j2k = -24.3348365313357
2025-11-17T14:08:44.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:44.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:44.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104672997213704;171.162357330327;_
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104672997213704;171.162357330327;_
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:44.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:44.372 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60157)
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:44.377 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:44.384 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:44.384 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00606907, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672997213704, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992786, telescope_ra=20.3002964, telescope_dec=-24.256339, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.32005, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.2746253582947, telescope_dec_j2k=-24.3348365313357, observability=1)
2025-11-17T14:08:46.268 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:46.268 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Status age = 1.8840153217315674s
2025-11-17T14:08:46.268 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:46.268 [DEBUG] [Thread-68116 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:46.269 [DEBUG] [Thread-68116 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:46.269 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:46.269 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:46.269 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:46.270 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:46.271 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 17;20.3008008;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32055;2460997.0060911;14.14614806;1.3;_
2025-11-17T14:08:46.271 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response 17;20.3008008;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32055;2460997.0060911;14.14614806;1.3;_
2025-11-17T14:08:46.271 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:46.271 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:46.271 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:46.272 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:46.272 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:46.272 [INFO] [Thread-68116 (handle)] [driver.py] [get_status()] Telra = 20.3008008, teldec = -24.256339
2025-11-17T14:08:46.272 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3008008 -24.256339
2025-11-17T14:08:46.272 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3008008 -24.256339
2025-11-17T14:08:46.272 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3008008 -24.256339
2025-11-17T14:08:46.273 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 17;20.3008008;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32055;2460997.00609112;14.14614806;1.3;_20.2751300231019 -24.3348523828038
2025-11-17T14:08:46.273 [INFO] [Thread-68116 (handle)] [driver.py] [get_status()] ra_j2k = 20.2751300231019     dec_j2k = -24.3348523828038
2025-11-17T14:08:46.273 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:46.273 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:46.273 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 140;0.104672836765933;171.162357330327;_
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response 140;0.104672836765933;171.162357330327;_
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:46.274 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:46.275 [DEBUG] [Thread-68116 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:46.275 [DEBUG] [Thread-68116 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:46.275 [DEBUG] [Thread-68116 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34309)
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:46.277 [DEBUG] [Thread-68116 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:46.284 [DEBUG] [Thread-68116 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:46.284 [INFO] [Thread-68116 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0060911, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672836765933, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992786, telescope_ra=20.3008008, telescope_dec=-24.256339, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.32055, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.2751300231019, telescope_dec_j2k=-24.3348523828038, observability=1)
2025-11-17T14:08:48.164 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:08:48
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.8792870044708252s
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:48.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:08:48.165 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:08:48.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3013323;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32108;2460997.00611303;14.14667806;1.3;_
2025-11-17T14:08:48.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3013323;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32108;2460997.00611303;14.14667806;1.3;_
2025-11-17T14:08:48.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:08:48.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:08:48.166 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:08:48.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:48.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:08:48.167 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3013323, teldec = -24.256339
2025-11-17T14:08:48.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3013323 -24.256339
2025-11-17T14:08:48.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3013323 -24.256339
2025-11-17T14:08:48.167 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3013323 -24.256339
2025-11-17T14:08:48.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3013323;-24.256339;50.108265;89.992786;50.08601;90.12017;17.32108;2460997.00611306;14.14667806;1.3;_20.2756618022024 -24.3348690844678
2025-11-17T14:08:48.168 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.2756618022024     dec_j2k = -24.3348690844678
2025-11-17T14:08:48.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:08:48.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:08:48.168 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104673197773418;171.162362694745;_
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104673197773418;171.162362694745;_
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:48.169 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:08:48.170 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:08:48.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:48.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:08:48.171 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34911)
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:48.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:48.180 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:48.180 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:48.180 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:08:48.181 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:08:48.181 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00611303, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673197773418, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992786, telescope_ra=20.3013323, telescope_dec=-24.256339, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.32108, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:07:57.283105', telescope_ra_j2k=20.2756618022024, telescope_dec_j2k=-24.3348690844678, observability=1)
2025-11-17T14:08:57.426 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:57.426 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:57.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:57.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:57.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:57.428 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:57.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:57.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:57.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:57.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:57.429 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:08:57.429 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:57.429 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:57.429 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:57.429 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:08:57.430 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:08:57.431 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:58.431 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:58.431 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:58.431 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:58.431 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:58.432 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:08:58.433 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:08:58.434 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:08:58.435 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:08:58.435 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:08:58.435 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:08:58.435 [DEBUG] [ThreadPoolExecutor-2886_0] [payload.py] [to_registers()] [0]
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54539)
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:08:58.439 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:08:58.446 [DEBUG] [ThreadPoolExecutor-2886_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Status age = 16.209203481674194s
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:04.390 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:04.391 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:04.392 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 17;20.3058736;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32562;2460997.00630083;14.15120694;1.3;_
2025-11-17T14:09:04.392 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response 17;20.3058736;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32562;2460997.00630083;14.15120694;1.3;_
2025-11-17T14:09:04.392 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:04.392 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:04.392 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:04.393 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:04.393 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:04.393 [INFO] [Thread-68117 (handle)] [driver.py] [get_status()] Telra = 20.3058736, teldec = -24.256339
2025-11-17T14:09:04.393 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3058736 -24.256339
2025-11-17T14:09:04.393 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3058736 -24.256339
2025-11-17T14:09:04.393 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3058736 -24.256339
2025-11-17T14:09:04.394 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 17;20.3058736;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32562;2460997.00630086;14.15120694;1.3;_20.2802054896861 -24.3350117275431
2025-11-17T14:09:04.394 [INFO] [Thread-68117 (handle)] [driver.py] [get_status()] ra_j2k = 20.2802054896861     dec_j2k = -24.3350117275431
2025-11-17T14:09:04.394 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:04.394 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:04.394 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 140;0.104672475758448;171.162357330327;_
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response 140;0.104672475758448;171.162357330327;_
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:04.395 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:04.396 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:04.397 [DEBUG] [Thread-68117 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:04.397 [DEBUG] [Thread-68117 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:04.397 [DEBUG] [Thread-68117 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40045)
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:04.402 [DEBUG] [Thread-68117 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:04.409 [DEBUG] [Thread-68117 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:04.410 [INFO] [Thread-68117 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00630083, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672475758448, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992785, telescope_ra=20.3058736, telescope_dec=-24.256339, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.32562, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2802054896861, telescope_dec_j2k=-24.3350117275431, observability=1)
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.575159311294556s
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:14.985 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3088197;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32857;2460997.00642345;14.154145;1.3;_
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.3088197;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32857;2460997.00642345;14.154145;1.3;_
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:14.986 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:14.987 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:14.987 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.3088197, teldec = -24.256339
2025-11-17T14:09:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3088197 -24.256339
2025-11-17T14:09:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3088197 -24.256339
2025-11-17T14:09:14.988 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3088197 -24.256339
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3088197;-24.256339;50.108265;89.992785;50.08601;90.12017;17.32857;2460997.00642347;14.154145;1.3;_20.2831531411743 -24.3351042065262
2025-11-17T14:09:14.989 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.2831531411743     dec_j2k = -24.3351042065262
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104672235086791;171.162357330327;_
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104672235086791;171.162357330327;_
2025-11-17T14:09:14.989 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:14.994 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47895)
2025-11-17T14:09:14.994 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:14.994 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:14.994 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:14.995 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:14.995 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:15.002 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:15.002 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00642345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672235086791, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992785, telescope_ra=20.3088197, telescope_dec=-24.256339, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.32857, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2831531411743, telescope_dec_j2k=-24.3351042065262, observability=1)
2025-11-17T14:09:15.053 [DEBUG] [Thread-68118 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:15.053 [DEBUG] [Thread-68118 (handle)] [server.py] [get_status()] Status age = 0.05142045021057129s
2025-11-17T14:09:15.053 [DEBUG] [Thread-68118 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.05142045021057129
2025-11-17T14:09:22.463 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:22.463 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Status age = 7.461442470550537s
2025-11-17T14:09:22.463 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:22.464 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:22.465 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:22.465 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:22.465 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 17;20.3108878;-24.256338;50.108265;89.992785;50.08601;90.12017;17.33064;2460997.00651001;14.1562075;1.3;_
2025-11-17T14:09:22.466 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response 17;20.3108878;-24.256338;50.108265;89.992785;50.08601;90.12017;17.33064;2460997.00651001;14.1562075;1.3;_
2025-11-17T14:09:22.466 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:22.466 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:22.466 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:22.467 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:22.467 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:22.467 [INFO] [Thread-68119 (handle)] [driver.py] [get_status()] Telra = 20.3108878, teldec = -24.256338
2025-11-17T14:09:22.467 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3108878 -24.256338
2025-11-17T14:09:22.467 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3108878 -24.256338
2025-11-17T14:09:22.467 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3108878 -24.256338
2025-11-17T14:09:22.468 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 17;20.3108878;-24.256338;50.108265;89.992785;50.08601;90.12017;17.33064;2460997.00651005;14.1562075;1.3;_20.2852223316965 -24.3351680973468
2025-11-17T14:09:22.468 [INFO] [Thread-68119 (handle)] [driver.py] [get_status()] ra_j2k = 20.2852223316965     dec_j2k = -24.3351680973468
2025-11-17T14:09:22.468 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:22.468 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:22.468 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 140;0.104672997213704;171.162357330327;_
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response 140;0.104672997213704;171.162357330327;_
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:22.469 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:22.470 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:22.471 [DEBUG] [Thread-68119 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:22.471 [DEBUG] [Thread-68119 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:22.471 [DEBUG] [Thread-68119 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33007)
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:22.476 [DEBUG] [Thread-68119 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:22.483 [DEBUG] [Thread-68119 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:22.484 [DEBUG] [Thread-68119 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:22.484 [DEBUG] [Thread-68119 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:22.484 [DEBUG] [Thread-68119 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:22.484 [INFO] [Thread-68119 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00651001, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672997213704, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992785, telescope_ra=20.3108878, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.33064, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2852223316965, telescope_dec_j2k=-24.3351680973468, observability=1)
2025-11-17T14:09:23.446 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:23.447 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:23.448 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:23.448 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:23.448 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:09:23.449 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.694018363952637s
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:33.178 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:33.179 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:33.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3138707;-24.256338;50.108265;89.992784;50.08601;90.12017;17.33362;2460997.00663403;14.15918222;1.3;_
2025-11-17T14:09:33.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3138707;-24.256338;50.108265;89.992784;50.08601;90.12017;17.33362;2460997.00663403;14.15918222;1.3;_
2025-11-17T14:09:33.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:33.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:33.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:33.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:33.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:33.181 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3138707, teldec = -24.256338
2025-11-17T14:09:33.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3138707 -24.256338
2025-11-17T14:09:33.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3138707 -24.256338
2025-11-17T14:09:33.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3138707 -24.256338
2025-11-17T14:09:33.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3138707;-24.256338;50.108265;89.992784;50.08601;90.12017;17.33362;2460997.00663405;14.15918222;1.3;_20.2882068061607 -24.3352616516365
2025-11-17T14:09:33.182 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.2882068061607     dec_j2k = -24.3352616516365
2025-11-17T14:09:33.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:33.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:33.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104672756542047;171.162357330327;_
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104672756542047;171.162357330327;_
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:33.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:33.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:33.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:33.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:33.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:33.187 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59345)
2025-11-17T14:09:33.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:33.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:33.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:33.188 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:33.188 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:33.195 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:09:33.196 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00663403, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672756542047, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108265, telescope_az=89.992784, telescope_ra=20.3138707, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.33362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2882068061607, telescope_dec_j2k=-24.3352616516365, observability=1)
2025-11-17T14:09:33.196 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03209614753723 seconds ago
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Status age = 7.341338157653809s
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:40.537 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:40.538 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:40.538 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:40.538 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 17;20.3159288;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33568;2460997.00671919;14.16123472;1.3;_
2025-11-17T14:09:40.538 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response 17;20.3159288;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33568;2460997.00671919;14.16123472;1.3;_
2025-11-17T14:09:40.539 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:40.539 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:40.539 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:40.540 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:40.540 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:40.540 [INFO] [Thread-68120 (handle)] [driver.py] [get_status()] Telra = 20.3159288, teldec = -24.256338
2025-11-17T14:09:40.540 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3159288 -24.256338
2025-11-17T14:09:40.540 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3159288 -24.256338
2025-11-17T14:09:40.540 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3159288 -24.256338
2025-11-17T14:09:40.541 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 17;20.3159288;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33568;2460997.00671922;14.16123472;1.3;_20.2902659937298 -24.335326173292
2025-11-17T14:09:40.541 [INFO] [Thread-68120 (handle)] [driver.py] [get_status()] ra_j2k = 20.2902659937298     dec_j2k = -24.335326173292
2025-11-17T14:09:40.541 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:40.541 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:40.541 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 140;0.104672636206219;171.162357330327;_
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response 140;0.104672636206219;171.162357330327;_
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:40.542 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:40.543 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:40.544 [DEBUG] [Thread-68120 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:40.544 [DEBUG] [Thread-68120 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:40.544 [DEBUG] [Thread-68120 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47971)
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:40.546 [DEBUG] [Thread-68120 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:40.553 [DEBUG] [Thread-68120 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:40.553 [DEBUG] [Thread-68120 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:40.553 [DEBUG] [Thread-68120 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:40.554 [DEBUG] [Thread-68120 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:40.554 [INFO] [Thread-68120 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00671919, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672636206219, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992784, telescope_ra=20.3159288, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.33568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2902659937298, telescope_dec_j2k=-24.335326173292, observability=1)
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.917868137359619s
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:43.472 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:43.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:43.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3167327;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33648;2460997.00675316;14.16203639;1.3;_
2025-11-17T14:09:43.473 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3167327;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33648;2460997.00675316;14.16203639;1.3;_
2025-11-17T14:09:43.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:43.473 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:43.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:43.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:43.474 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:43.474 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3167327, teldec = -24.256338
2025-11-17T14:09:43.474 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3167327 -24.256338
2025-11-17T14:09:43.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3167327 -24.256338
2025-11-17T14:09:43.475 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3167327 -24.256338
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3167327;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33648;2460997.00675318;14.16203639;1.3;_20.2910703188129 -24.3353513695096
2025-11-17T14:09:43.476 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.2910703188129     dec_j2k = -24.3353513695096
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104673037325647;171.162362694745;_
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104673037325647;171.162362694745;_
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:43.476 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:43.477 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:43.478 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:43.478 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:43.478 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56039)
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:43.481 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:43.489 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:43.489 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00675316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673037325647, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992784, telescope_ra=20.3167327, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.33648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2910703188129, telescope_dec_j2k=-24.3353513695096, observability=1)
2025-11-17T14:09:48.242 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:09:48
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.752588272094727s
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:48.242 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:48.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:48.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:48.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:48.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3180716;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33782;2460997.00680837;14.16337167;1.3;_
2025-11-17T14:09:48.243 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3180716;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33782;2460997.00680837;14.16337167;1.3;_
2025-11-17T14:09:48.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:48.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:48.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:48.244 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:48.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:48.245 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3180716, teldec = -24.256338
2025-11-17T14:09:48.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3180716 -24.256338
2025-11-17T14:09:48.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3180716 -24.256338
2025-11-17T14:09:48.245 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3180716 -24.256338
2025-11-17T14:09:48.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3180716;-24.256338;50.108264;89.992784;50.08601;90.12017;17.33782;2460997.0068084;14.16337167;1.3;_20.2924099271345 -24.3353933262999
2025-11-17T14:09:48.246 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.2924099271345     dec_j2k = -24.3353933262999
2025-11-17T14:09:48.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:48.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:48.246 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104672676318162;171.162362694745;_
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104672676318162;171.162362694745;_
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:48.247 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:48.248 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:48.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:48.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:48.249 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46453)
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:48.251 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:48.258 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:48.258 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00680837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672676318162, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992784, telescope_ra=20.3180716, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.33782, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:08:57.426299', telescope_ra_j2k=20.2924099271345, telescope_dec_j2k=-24.3353933262999, observability=1)
2025-11-17T14:09:57.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:57.569 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:57.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:57.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:57.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:57.570 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:57.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:57.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:57.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:57.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:57.571 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:09:57.572 [INFO] [ThreadPoolExecutor-2887_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:09:57.572 [INFO] [ThreadPoolExecutor-2887_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Status age = 10.392423868179321s
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:09:58.651 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:09:58.652 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:09:58.653 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 17;20.3209718;-24.256338;50.108264;89.992784;50.08601;90.12017;17.34072;2460997.00692885;14.16626389;1.3;_
2025-11-17T14:09:58.653 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response 17;20.3209718;-24.256338;50.108264;89.992784;50.08601;90.12017;17.34072;2460997.00692885;14.16626389;1.3;_
2025-11-17T14:09:58.653 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:09:58.653 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:09:58.653 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:09:58.654 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:58.654 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:09:58.654 [INFO] [Thread-68121 (handle)] [driver.py] [get_status()] Telra = 20.3209718, teldec = -24.256338
2025-11-17T14:09:58.654 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3209718 -24.256338
2025-11-17T14:09:58.654 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3209718 -24.256338
2025-11-17T14:09:58.655 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3209718 -24.256338
2025-11-17T14:09:58.655 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 17;20.3209718;-24.256338;50.108264;89.992784;50.08601;90.12017;17.34072;2460997.00692888;14.16626389;1.3;_20.2953116629052 -24.3354841763603
2025-11-17T14:09:58.655 [INFO] [Thread-68121 (handle)] [driver.py] [get_status()] ra_j2k = 20.2953116629052     dec_j2k = -24.3354841763603
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 140;0.10467279665399;171.162346601491;_
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response 140;0.10467279665399;171.162346601491;_
2025-11-17T14:09:58.656 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:58.657 [DEBUG] [Thread-68121 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:09:58.658 [DEBUG] [Thread-68121 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38813)
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:09:58.664 [DEBUG] [Thread-68121 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:09:58.671 [DEBUG] [Thread-68121 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:09:58.672 [INFO] [Thread-68121 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00692885, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467279665399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992784, telescope_ra=20.3209718, telescope_dec=-24.256338, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.34072, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.2953116629052, telescope_dec_j2k=-24.3354841763603, observability=1)
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 16.321710348129272s
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.32551;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34526;2460997.00711801;14.17078972;1.3;_
2025-11-17T14:10:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.32551;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34526;2460997.00711801;14.17078972;1.3;_
2025-11-17T14:10:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:14.997 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.32551, teldec = -24.256337
2025-11-17T14:10:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.32551 -24.256337
2025-11-17T14:10:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.32551 -24.256337
2025-11-17T14:10:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.32551 -24.256337
2025-11-17T14:10:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3255381;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34529;2460997.00711803;14.17081778;1.3;_20.2998522702657 -24.3356252473858
2025-11-17T14:10:14.998 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.2998522702657     dec_j2k = -24.3356252473858
2025-11-17T14:10:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104672836765933;171.162351965909;_
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104672836765933;171.162351965909;_
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:15.007 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33611)
2025-11-17T14:10:15.007 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:15.007 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:15.008 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:15.008 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:15.008 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:15.015 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00711801, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672836765933, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992783, telescope_ra=20.32551, telescope_dec=-24.256337, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.34526, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.2998522702657, telescope_dec_j2k=-24.3356252473858, observability=1)
2025-11-17T14:10:15.086 [DEBUG] [Thread-68122 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:15.087 [DEBUG] [Thread-68122 (handle)] [server.py] [get_status()] Status age = 0.07111740112304688s
2025-11-17T14:10:15.087 [DEBUG] [Thread-68122 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.07111740112304688
2025-11-17T14:10:16.716 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:16.716 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Status age = 1.7009899616241455s
2025-11-17T14:10:16.716 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:16.716 [DEBUG] [Thread-68123 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:16.716 [DEBUG] [Thread-68123 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:16.717 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:16.717 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:16.717 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:16.718 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:16.719 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 17;20.326015;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34577;2460997.00713795;14.17129333;1.3;_
2025-11-17T14:10:16.719 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response 17;20.326015;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34577;2460997.00713795;14.17129333;1.3;_
2025-11-17T14:10:16.719 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:16.719 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:16.719 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:16.720 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:16.720 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:16.720 [INFO] [Thread-68123 (handle)] [driver.py] [get_status()] Telra = 20.326015, teldec = -24.256337
2025-11-17T14:10:16.720 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] UnCookCoordinates 20.326015 -24.256337
2025-11-17T14:10:16.720 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.326015 -24.256337
2025-11-17T14:10:16.720 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.326015 -24.256337
2025-11-17T14:10:16.721 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 17;20.326015;-24.256337;50.108264;89.992783;50.08601;90.12017;17.34577;2460997.00713797;14.17129333;1.3;_20.3003575384367 -24.3356410498848
2025-11-17T14:10:16.721 [INFO] [Thread-68123 (handle)] [driver.py] [get_status()] ra_j2k = 20.3003575384367     dec_j2k = -24.3356410498848
2025-11-17T14:10:16.721 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:16.722 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:16.722 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 140;0.104673157661475;171.162351965909;_
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response 140;0.104673157661475;171.162351965909;_
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:16.723 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:16.724 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:16.724 [DEBUG] [Thread-68123 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:16.724 [DEBUG] [Thread-68123 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:16.724 [DEBUG] [Thread-68123 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44847)
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:16.730 [DEBUG] [Thread-68123 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:16.737 [DEBUG] [Thread-68123 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:16.737 [INFO] [Thread-68123 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00713795, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673157661475, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992783, telescope_ra=20.326015, telescope_dec=-24.256337, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.34577, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.3003575384367, telescope_dec_j2k=-24.3356410498848, observability=1)
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:18.450 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:10:18.451 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:18.452 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:18.453 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:10:18.454 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:18.455 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Park
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:10:18.456 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:10:18.457 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 29;20.3264911;-24.256331;50.108264;89.992772;50.08601;90.12016;17.34624;2460997.00715807;14.17176833;1.3;_Park Command Successful
2025-11-17T14:10:19.457 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:10:19.457 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:10:19.457 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:10:19.458 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:10:19.458 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:10:20.458 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:10:20.458 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:10:20.458 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:10:20.459 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:10:20.459 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:10:21.459 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:10:21.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:10:21.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:10:21.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:10:21.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:10:22.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:10:22.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:10:22.460 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:10:22.461 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:10:22.461 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:22.462 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:10:22.463 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:10:23.464 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:10:23.465 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:10:23.465 [DEBUG] [ThreadPoolExecutor-2886_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:23.465 [INFO] [ThreadPoolExecutor-2886_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.518414974212646s
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:33.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3306114;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35036;2460997.00732936;14.17587722;1.3;_
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3306114;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35036;2460997.00732936;14.17587722;1.3;_
2025-11-17T14:10:33.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:33.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:33.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:33.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:33.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:33.259 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3306114, teldec = -24.256337
2025-11-17T14:10:33.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3306114 -24.256337
2025-11-17T14:10:33.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3306114 -24.256337
2025-11-17T14:10:33.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3306114 -24.256337
2025-11-17T14:10:33.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3306114;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35036;2460997.0073294;14.17587722;1.3;_20.3049563820727 -24.3357848179786
2025-11-17T14:10:33.260 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3049563820727     dec_j2k = -24.3357848179786
2025-11-17T14:10:33.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:33.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:33.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104672435646505;171.162357330327;_
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104672435646505;171.162357330327;_
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:33.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:33.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:33.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:33.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:33.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37255)
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:33.266 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:33.273 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:33.273 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:33.274 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:10:33.274 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00732936, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672435646505, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992782, telescope_ra=20.3306114, telescope_dec=-24.256337, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.35036, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.3049563820727, telescope_dec_j2k=-24.3357848179786, observability=1)
2025-11-17T14:10:33.274 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.032376527786255 seconds ago
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Status age = 1.560142993927002s
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:34.834 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:34.835 [DEBUG] [Thread-68124 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:34.835 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:34.835 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:34.835 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:34.835 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:34.836 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 17;20.3310599;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35081;2460997.00734763;14.17632444;1.3;_
2025-11-17T14:10:34.836 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response 17;20.3310599;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35081;2460997.00734763;14.17632444;1.3;_
2025-11-17T14:10:34.836 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:34.836 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:34.836 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:34.837 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:34.837 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:34.837 [INFO] [Thread-68124 (handle)] [driver.py] [get_status()] Telra = 20.3310599, teldec = -24.256337
2025-11-17T14:10:34.837 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3310599 -24.256337
2025-11-17T14:10:34.837 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3310599 -24.256337
2025-11-17T14:10:34.837 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3310599 -24.256337
2025-11-17T14:10:34.838 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 17;20.3310599;-24.256337;50.108264;89.992782;50.08601;90.12017;17.35081;2460997.00734766;14.17632444;1.3;_20.305405120784 -24.3357988402812
2025-11-17T14:10:34.838 [INFO] [Thread-68124 (handle)] [driver.py] [get_status()] ra_j2k = 20.305405120784     dec_j2k = -24.3357988402812
2025-11-17T14:10:34.838 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:34.838 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:34.838 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 140;0.104672435646505;171.162362694745;_
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response 140;0.104672435646505;171.162362694745;_
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:34.839 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:34.840 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:34.841 [DEBUG] [Thread-68124 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:34.841 [DEBUG] [Thread-68124 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:34.841 [DEBUG] [Thread-68124 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52343)
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:34.843 [DEBUG] [Thread-68124 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:34.851 [DEBUG] [Thread-68124 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:34.851 [INFO] [Thread-68124 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00734763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672435646505, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992782, telescope_ra=20.3310599, telescope_dec=-24.256337, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.35081, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.305405120784, telescope_dec_j2k=-24.3357988402812, observability=1)
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.7278337478637695s
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:42.579 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:42.580 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:42.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3332071;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35296;2460997.00743728;14.17846583;1.3;_
2025-11-17T14:10:42.581 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3332071;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35296;2460997.00743728;14.17846583;1.3;_
2025-11-17T14:10:42.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:42.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:42.581 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:42.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:42.582 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:42.582 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3332071, teldec = -24.256336
2025-11-17T14:10:42.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3332071 -24.256336
2025-11-17T14:10:42.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3332071 -24.256336
2025-11-17T14:10:42.582 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3332071 -24.256336
2025-11-17T14:10:42.583 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3332071;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35296;2460997.0074373;14.17846583;1.3;_20.3075534644506 -24.3358649573893
2025-11-17T14:10:42.583 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.3075534644506     dec_j2k = -24.3358649573893
2025-11-17T14:10:42.583 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:42.583 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:42.583 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104673037325647;171.162357330327;_
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104673037325647;171.162357330327;_
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:42.584 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:42.585 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:42.586 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:42.586 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:42.586 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:42.590 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53619)
2025-11-17T14:10:42.590 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:42.590 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:42.590 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:42.591 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:42.591 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:42.597 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:42.598 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:42.598 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00743728, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673037325647, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992782, telescope_ra=20.3332071, telescope_dec=-24.256336, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.35296, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.3075534644506, telescope_dec_j2k=-24.3358649573893, observability=1)
2025-11-17T14:10:48.319 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:10:48
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.721141338348389s
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:48.319 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3347945;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35454;2460997.0075037;14.18004889;1.3;_
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3347945;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35454;2460997.0075037;14.18004889;1.3;_
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:48.320 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:48.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:48.321 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:48.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:48.322 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3347945, teldec = -24.256336
2025-11-17T14:10:48.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3347945 -24.256336
2025-11-17T14:10:48.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3347945 -24.256336
2025-11-17T14:10:48.322 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3347945 -24.256336
2025-11-17T14:10:48.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3347945;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35454;2460997.00750374;14.18004889;1.3;_20.309141710534 -24.3359145603018
2025-11-17T14:10:48.323 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.309141710534     dec_j2k = -24.3359145603018
2025-11-17T14:10:48.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:48.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:48.323 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104673558780903;171.162357330327;_
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104673558780903;171.162357330327;_
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:48.324 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:48.325 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:48.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:48.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:48.326 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53601)
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:48.327 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:48.334 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:48.335 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:48.335 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:48.335 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:48.335 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0075037, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673558780903, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992782, telescope_ra=20.3347945, telescope_dec=-24.256336, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.35454, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.309141710534, telescope_dec_j2k=-24.3359145603018, observability=1)
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Status age = 4.567093849182129s
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:10:52.902 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:10:52.903 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:10:52.903 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 17;20.3360733;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35582;2460997.00755675;14.18132417;1.3;_
2025-11-17T14:10:52.903 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response 17;20.3360733;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35582;2460997.00755675;14.18132417;1.3;_
2025-11-17T14:10:52.904 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:10:52.904 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:10:52.904 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:10:52.904 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:52.904 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:10:52.905 [INFO] [Thread-68125 (handle)] [driver.py] [get_status()] Telra = 20.3360733, teldec = -24.256336
2025-11-17T14:10:52.905 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3360733 -24.256336
2025-11-17T14:10:52.905 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3360733 -24.256336
2025-11-17T14:10:52.905 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3360733 -24.256336
2025-11-17T14:10:52.906 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 17;20.3360733;-24.256336;50.108264;89.992782;50.08601;90.12017;17.35582;2460997.00755678;14.18132417;1.3;_20.3104211925712 -24.3359545102663
2025-11-17T14:10:52.906 [INFO] [Thread-68125 (handle)] [driver.py] [get_status()] ra_j2k = 20.3104211925712     dec_j2k = -24.3359545102663
2025-11-17T14:10:52.906 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:10:52.906 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:10:52.906 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 140;0.104672555982333;171.162357330327;_
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response 140;0.104672555982333;171.162357330327;_
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:52.907 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:10:52.908 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:10:52.909 [DEBUG] [Thread-68125 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:52.909 [DEBUG] [Thread-68125 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:10:52.909 [DEBUG] [Thread-68125 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:10:52.915 [DEBUG] [Thread-68125 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36767)
2025-11-17T14:10:52.916 [DEBUG] [Thread-68125 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:52.916 [DEBUG] [Thread-68125 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:52.916 [DEBUG] [Thread-68125 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:10:52.916 [DEBUG] [Thread-68125 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:52.916 [DEBUG] [Thread-68125 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:10:52.923 [DEBUG] [Thread-68125 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:10:52.923 [INFO] [Thread-68125 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00755675, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672555982333, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108264, telescope_az=89.992782, telescope_ra=20.3360733, telescope_dec=-24.256336, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.35582, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:09:57.569051', telescope_ra_j2k=20.3104211925712, telescope_dec_j2k=-24.3359545102663, observability=1)
2025-11-17T14:10:57.712 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:57.712 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:57.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:57.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:57.712 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:57.713 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:57.713 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:57.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:57.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:57.714 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:57.714 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:10:57.714 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:57.714 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:57.714 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:57.714 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:57.714 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:10:57.715 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:10:57.716 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:58.716 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:58.716 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:58.716 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:58.716 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:58.716 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:10:58.717 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:10:58.718 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:10:58.719 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:10:58.719 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:10:58.719 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:10:58.719 [DEBUG] [ThreadPoolExecutor-2888_0] [payload.py] [to_registers()] [0]
2025-11-17T14:10:58.723 [DEBUG] [ThreadPoolExecutor-2888_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40205)
2025-11-17T14:10:58.723 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:10:58.723 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:10:58.724 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:10:58.724 [DEBUG] [ThreadPoolExecutor-2888_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:10:58.724 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:10:58.731 [DEBUG] [ThreadPoolExecutor-2888_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:10.962 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Status age = 18.03948736190796s
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:10.963 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 17;20.3411158;-24.256329;50.108263;89.99277;50.08601;90.12016;17.36087;2460997.00776579;14.18635306;1.3;_
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response 17;20.3411158;-24.256329;50.108263;89.99277;50.08601;90.12016;17.36087;2460997.00776579;14.18635306;1.3;_
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:10.964 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:10.965 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:10.965 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:10.965 [INFO] [Thread-68126 (handle)] [driver.py] [get_status()] Telra = 20.3411158, teldec = -24.256329
2025-11-17T14:11:10.965 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3411158 -24.256329
2025-11-17T14:11:10.965 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3411158 -24.256329
2025-11-17T14:11:10.965 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3411158 -24.256329
2025-11-17T14:11:10.966 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 17;20.3411158;-24.256329;50.108263;89.99277;50.08601;90.12016;17.36087;2460997.00776581;14.18635306;1.3;_20.3154663869171 -24.3361049538984
2025-11-17T14:11:10.966 [INFO] [Thread-68126 (handle)] [driver.py] [get_status()] ra_j2k = 20.3154663869171     dec_j2k = -24.3361049538984
2025-11-17T14:11:10.966 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:10.966 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:10.966 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 140;0.10467279665399;171.162362694745;_
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response 140;0.10467279665399;171.162362694745;_
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:10.967 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:10.968 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:10.969 [DEBUG] [Thread-68126 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:10.969 [DEBUG] [Thread-68126 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:10.969 [DEBUG] [Thread-68126 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54919)
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:10.976 [DEBUG] [Thread-68126 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:10.983 [DEBUG] [Thread-68126 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:10.983 [INFO] [Thread-68126 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00776579, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467279665399, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.99277, telescope_ra=20.3411158, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.36087, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3154663869171, telescope_dec_j2k=-24.3361049538984, observability=1)
2025-11-17T14:11:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.013035297393799s
2025-11-17T14:11:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3422279;-24.256336;50.108263;89.992781;50.08601;90.12017;17.36198;2460997.00781248;14.18746194;1.3;_
2025-11-17T14:11:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.3422279;-24.256336;50.108263;89.992781;50.08601;90.12017;17.36198;2460997.00781248;14.18746194;1.3;_
2025-11-17T14:11:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:15.000 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.3422279, teldec = -24.256336
2025-11-17T14:11:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3422279 -24.256336
2025-11-17T14:11:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3422279 -24.256336
2025-11-17T14:11:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3422279 -24.256336
2025-11-17T14:11:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3422279;-24.256336;50.108263;89.992781;50.08601;90.12017;17.36198;2460997.00781251;14.18746194;1.3;_20.3165790805321 -24.3361466581318
2025-11-17T14:11:15.001 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.3165790805321     dec_j2k = -24.3361466581318
2025-11-17T14:11:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:15.001 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104672596094276;171.162362694745;_
2025-11-17T14:11:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104672596094276;171.162362694745;_
2025-11-17T14:11:15.002 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:15.002 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:15.003 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:15.004 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:15.005 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39325)
2025-11-17T14:11:15.005 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:15.005 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:15.006 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:15.014 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00781248, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672596094276, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992781, telescope_ra=20.3422279, telescope_dec=-24.256336, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.36198, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3165790805321, telescope_dec_j2k=-24.3361466581318, observability=1)
2025-11-17T14:11:15.117 [DEBUG] [Thread-68127 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:15.117 [DEBUG] [Thread-68127 (handle)] [server.py] [get_status()] Status age = 0.10351967811584473s
2025-11-17T14:11:15.117 [DEBUG] [Thread-68127 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.10351967811584473
2025-11-17T14:11:23.731 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:23.731 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:23.731 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:23.731 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:23.731 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:23.732 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:11:23.733 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:11:23.734 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:29.100 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:29.100 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Status age = 14.08694338798523s
2025-11-17T14:11:29.100 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:29.101 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:29.102 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 17;20.3461628;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36591;2460997.00797571;14.19138611;1.3;_
2025-11-17T14:11:29.102 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response 17;20.3461628;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36591;2460997.00797571;14.19138611;1.3;_
2025-11-17T14:11:29.102 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:29.102 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:29.102 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:29.103 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:29.103 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:29.103 [INFO] [Thread-68128 (handle)] [driver.py] [get_status()] Telra = 20.3461628, teldec = -24.256335
2025-11-17T14:11:29.103 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3461628 -24.256335
2025-11-17T14:11:29.103 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3461628 -24.256335
2025-11-17T14:11:29.103 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3461628 -24.256335
2025-11-17T14:11:29.104 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 17;20.3461628;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36591;2460997.00797574;14.19138611;1.3;_20.3205160875665 -24.3362683996588
2025-11-17T14:11:29.104 [INFO] [Thread-68128 (handle)] [driver.py] [get_status()] ra_j2k = 20.3205160875665     dec_j2k = -24.3362683996588
2025-11-17T14:11:29.104 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:29.104 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:29.104 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 140;0.104673478557018;171.162357330327;_
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response 140;0.104673478557018;171.162357330327;_
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:29.105 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:29.106 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:29.106 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:29.106 [DEBUG] [Thread-68128 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:29.106 [DEBUG] [Thread-68128 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:29.106 [DEBUG] [Thread-68128 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47771)
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:29.110 [DEBUG] [Thread-68128 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:29.117 [DEBUG] [Thread-68128 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:29.118 [DEBUG] [Thread-68128 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:29.118 [DEBUG] [Thread-68128 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:29.118 [DEBUG] [Thread-68128 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:29.118 [INFO] [Thread-68128 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00797571, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673478557018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.99278, telescope_ra=20.3461628, telescope_dec=-24.256335, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.36591, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3205160875665, telescope_dec_j2k=-24.3362683996588, observability=1)
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.215986013412476s
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:33.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:33.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:33.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3473296;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36708;2460997.00802472;14.19254972;1.3;_
2025-11-17T14:11:33.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3473296;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36708;2460997.00802472;14.19254972;1.3;_
2025-11-17T14:11:33.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:33.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:33.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:33.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:33.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:33.337 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3473296, teldec = -24.256335
2025-11-17T14:11:33.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3473296 -24.256335
2025-11-17T14:11:33.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3473296 -24.256335
2025-11-17T14:11:33.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3473296 -24.256335
2025-11-17T14:11:33.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3473296;-24.256335;50.108263;89.99278;50.08601;90.12017;17.36708;2460997.00802474;14.19254972;1.3;_20.3216835130166 -24.3363047796208
2025-11-17T14:11:33.338 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3216835130166     dec_j2k = -24.3363047796208
2025-11-17T14:11:33.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:33.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:33.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10467307743759;171.162362694745;_
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10467307743759;171.162362694745;_
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:33.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:33.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:33.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:33.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:33.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:33.342 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36269)
2025-11-17T14:11:33.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:33.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:33.342 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:33.342 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:33.343 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:33.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:33.351 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:33.351 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:11:33.351 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00802472, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467307743759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.99278, telescope_ra=20.3473296, telescope_dec=-24.256335, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.36708, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3216835130166, telescope_dec_j2k=-24.3363047796208, observability=1)
2025-11-17T14:11:33.351 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03185439109802 seconds ago
2025-11-17T14:11:41.690 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.339981317520142s
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:41.691 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:41.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3496736;-24.256329;50.108263;89.992769;50.08601;90.12016;17.36942;2460997.00812144;14.1948875;1.3;_
2025-11-17T14:11:41.692 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3496736;-24.256329;50.108263;89.992769;50.08601;90.12016;17.36942;2460997.00812144;14.1948875;1.3;_
2025-11-17T14:11:41.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:41.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:41.692 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:41.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:41.693 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:41.693 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3496736, teldec = -24.256329
2025-11-17T14:11:41.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3496736 -24.256329
2025-11-17T14:11:41.693 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3496736 -24.256329
2025-11-17T14:11:41.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3496736 -24.256329
2025-11-17T14:11:41.694 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3496736;-24.256329;50.108263;89.992769;50.08601;90.12016;17.36942;2460997.00812146;14.1948875;1.3;_20.3240287714721 -24.3363718421516
2025-11-17T14:11:41.694 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.3240287714721     dec_j2k = -24.3363718421516
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104673478557018;171.162357330327;_
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104673478557018;171.162357330327;_
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:41.695 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:41.696 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:41.697 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:41.697 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:41.697 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57243)
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:41.703 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:41.710 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:41.711 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00812144, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673478557018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992769, telescope_ra=20.3496736, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.36942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3240287714721, telescope_dec_j2k=-24.3363718421516, observability=1)
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Status age = 5.453536033630371s
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:47.164 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:47.165 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 17;20.3512047;-24.256328;50.108263;89.992769;50.08601;90.12016;17.37096;2460997.00818479;14.19641444;1.3;_
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response 17;20.3512047;-24.256328;50.108263;89.992769;50.08601;90.12016;17.37096;2460997.00818479;14.19641444;1.3;_
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:47.166 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:47.167 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:47.167 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:47.167 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:47.168 [INFO] [Thread-68129 (handle)] [driver.py] [get_status()] Telra = 20.3512047, teldec = -24.256328
2025-11-17T14:11:47.168 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3512047 -24.256328
2025-11-17T14:11:47.168 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3512047 -24.256328
2025-11-17T14:11:47.168 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3512047 -24.256328
2025-11-17T14:11:47.169 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 17;20.3512047;-24.256328;50.108263;89.992769;50.08601;90.12016;17.37096;2460997.00818483;14.19641444;1.3;_20.3255606937143 -24.3364185502639
2025-11-17T14:11:47.169 [INFO] [Thread-68129 (handle)] [driver.py] [get_status()] ra_j2k = 20.3255606937143     dec_j2k = -24.3364185502639
2025-11-17T14:11:47.169 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:47.169 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:47.169 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 140;0.104672836765933;171.162351965909;_
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response 140;0.104672836765933;171.162351965909;_
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:47.170 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:47.171 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:47.172 [DEBUG] [Thread-68129 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:47.172 [DEBUG] [Thread-68129 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:47.172 [DEBUG] [Thread-68129 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56153)
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:47.178 [DEBUG] [Thread-68129 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:47.185 [DEBUG] [Thread-68129 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:47.185 [DEBUG] [Thread-68129 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:47.185 [DEBUG] [Thread-68129 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:47.185 [DEBUG] [Thread-68129 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:47.186 [DEBUG] [Thread-68129 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:47.186 [DEBUG] [Thread-68129 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:47.186 [DEBUG] [Thread-68129 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:47.186 [DEBUG] [Thread-68129 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:47.186 [DEBUG] [Thread-68129 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:47.186 [INFO] [Thread-68129 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00818479, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672836765933, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992769, telescope_ra=20.3512047, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.37096, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3255606937143, telescope_dec_j2k=-24.3364185502639, observability=1)
2025-11-17T14:11:48.396 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:11:48
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.209951639175415s
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:48.396 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:11:48.397 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:11:48.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3515408;-24.256335;50.108263;89.99278;50.08601;90.12017;17.37129;2460997.00819905;14.19674944;1.3;_
2025-11-17T14:11:48.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3515408;-24.256335;50.108263;89.99278;50.08601;90.12017;17.37129;2460997.00819905;14.19674944;1.3;_
2025-11-17T14:11:48.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:11:48.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:11:48.398 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:11:48.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:48.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:11:48.399 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3515408, teldec = -24.256335
2025-11-17T14:11:48.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3515408 -24.256335
2025-11-17T14:11:48.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3515408 -24.256335
2025-11-17T14:11:48.399 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3515408 -24.256335
2025-11-17T14:11:48.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3515408;-24.256335;50.108263;89.99278;50.08601;90.12017;17.37129;2460997.00819907;14.19674944;1.3;_20.3258969730805 -24.3364360205512
2025-11-17T14:11:48.400 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.3258969730805     dec_j2k = -24.3364360205512
2025-11-17T14:11:48.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:11:48.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:11:48.400 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104673197773418;171.162357330327;_
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104673197773418;171.162357330327;_
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:48.401 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:48.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:48.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:48.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:48.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:11:48.402 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:11:48.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:11:48.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:48.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:11:48.403 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39351)
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:11:48.407 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:11:48.414 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:11:48.414 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00819905, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673197773418, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.99278, telescope_ra=20.3515408, telescope_dec=-24.256335, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.37129, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:10:57.711899', telescope_ra_j2k=20.3258969730805, telescope_dec_j2k=-24.3364360205512, observability=1)
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:57.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:57.856 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:11:57.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:11:57.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:11:57.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:11:57.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:11:57.857 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:11:57.857 [INFO] [ThreadPoolExecutor-2889_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:11:57.857 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Status age = 16.826453685760498s
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:05.241 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:05.242 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:05.243 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 17;20.3562191;-24.256334;50.108263;89.992779;50.08601;90.12017;17.37597;2460997.00839402;14.201415;1.3;_
2025-11-17T14:12:05.243 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response 17;20.3562191;-24.256334;50.108263;89.992779;50.08601;90.12017;17.37597;2460997.00839402;14.201415;1.3;_
2025-11-17T14:12:05.243 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:05.243 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:05.244 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:05.244 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:05.244 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:05.245 [INFO] [Thread-68130 (handle)] [driver.py] [get_status()] Telra = 20.3562191, teldec = -24.256334
2025-11-17T14:12:05.245 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3562191 -24.256334
2025-11-17T14:12:05.245 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3562191 -24.256334
2025-11-17T14:12:05.245 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3562191 -24.256334
2025-11-17T14:12:05.246 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 17;20.3562191;-24.256334;50.108263;89.992779;50.08601;90.12017;17.37597;2460997.00839404;14.201415;1.3;_20.3305777889439 -24.3365807061402
2025-11-17T14:12:05.246 [INFO] [Thread-68130 (handle)] [driver.py] [get_status()] ra_j2k = 20.3305777889439     dec_j2k = -24.3365807061402
2025-11-17T14:12:05.246 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:05.246 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:05.246 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 140;0.10467307743759;171.162357330327;_
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response 140;0.10467307743759;171.162357330327;_
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:05.247 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:05.248 [DEBUG] [Thread-68130 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33927)
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:05.249 [DEBUG] [Thread-68130 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:05.257 [DEBUG] [Thread-68130 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:05.257 [INFO] [Thread-68130 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00839402, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467307743759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992779, telescope_ra=20.3562191, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.37597, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3305777889439, telescope_dec_j2k=-24.3365807061402, observability=1)
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.758722305297852s
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3589538;-24.256334;50.108263;89.992779;50.08601;90.12017;17.3787;2460997.00850715;14.20414222;1.3;_
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.3589538;-24.256334;50.108263;89.992779;50.08601;90.12017;17.3787;2460997.00850715;14.20414222;1.3;_
2025-11-17T14:12:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:15.020 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.3589538, teldec = -24.256334
2025-11-17T14:12:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3589538 -24.256334
2025-11-17T14:12:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3589538 -24.256334
2025-11-17T14:12:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3589538 -24.256334
2025-11-17T14:12:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3589538;-24.256334;50.108263;89.992779;50.08601;90.12017;17.3787;2460997.00850719;14.20414222;1.3;_20.3333139619058 -24.336665811673
2025-11-17T14:12:15.021 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.3333139619058     dec_j2k = -24.336665811673
2025-11-17T14:12:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104672876877876;171.162357330327;_
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104672876877876;171.162357330327;_
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37805)
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:15.037 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00850715, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104672876877876, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992779, telescope_ra=20.3589538, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.3787, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3333139619058, telescope_dec_j2k=-24.336665811673, observability=1)
2025-11-17T14:12:15.171 [DEBUG] [Thread-68131 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:15.171 [DEBUG] [Thread-68131 (handle)] [server.py] [get_status()] Status age = 0.1341712474822998s
2025-11-17T14:12:15.171 [DEBUG] [Thread-68131 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.1341712474822998
2025-11-17T14:12:18.734 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.734 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.734 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:18.734 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:18.734 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:12:18.735 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:18.736 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:18.737 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:12:18.738 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:18.739 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Park
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:12:18.740 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:12:18.741 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 29;20.3599814;-24.256334;50.108263;89.992779;50.08601;90.12017;17.37973;2460997.00855024;14.20516694;1.3;_Park Command Successful
2025-11-17T14:12:19.741 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:12:19.742 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:12:19.742 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:12:19.742 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:12:19.742 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:12:20.742 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:12:20.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:12:20.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:12:20.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:12:20.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:12:21.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:12:21.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:12:21.743 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:12:21.745 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:12:21.745 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:12:22.745 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:12:22.745 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:12:22.745 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:22.746 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:12:22.747 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:12:22.748 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Status age = 8.308418989181519s
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:23.345 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:23.346 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:23.347 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 17;20.3612883;-24.256334;50.108263;89.992779;50.08601;90.12017;17.38104;2460997.00860355;14.20647028;1.3;_
2025-11-17T14:12:23.347 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response 17;20.3612883;-24.256334;50.108263;89.992779;50.08601;90.12017;17.38104;2460997.00860355;14.20647028;1.3;_
2025-11-17T14:12:23.347 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:23.347 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:23.347 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:23.348 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:23.348 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:23.348 [INFO] [Thread-68132 (handle)] [driver.py] [get_status()] Telra = 20.3612883, teldec = -24.256334
2025-11-17T14:12:23.348 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3612883 -24.256334
2025-11-17T14:12:23.348 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3612883 -24.256334
2025-11-17T14:12:23.348 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3612883 -24.256334
2025-11-17T14:12:23.349 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 17;20.3612883;-24.256334;50.108263;89.992779;50.08601;90.12017;17.38104;2460997.00860358;14.20647028;1.3;_20.3356497207194 -24.3367384306397
2025-11-17T14:12:23.349 [INFO] [Thread-68132 (handle)] [driver.py] [get_status()] ra_j2k = 20.3356497207194     dec_j2k = -24.3367384306397
2025-11-17T14:12:23.349 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:23.349 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:23.349 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 140;0.10467307743759;171.162357330327;_
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response 140;0.10467307743759;171.162357330327;_
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:23.350 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:23.351 [DEBUG] [Thread-68132 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50085)
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:23.355 [DEBUG] [Thread-68132 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:23.362 [DEBUG] [Thread-68132 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:23.362 [INFO] [Thread-68132 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00860355, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467307743759, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108263, telescope_az=89.992779, telescope_ra=20.3612883, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.38104, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3356497207194, telescope_dec_j2k=-24.3367384306397, observability=1)
2025-11-17T14:12:23.748 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:23.748 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:23.748 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:23.748 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:23.748 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:12:23.749 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:12:23.750 [DEBUG] [ThreadPoolExecutor-2888_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:23.750 [INFO] [ThreadPoolExecutor-2888_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.04849362373352s
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:33.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3640789;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38383;2460997.00872005;14.20925333;1.3;_
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3640789;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38383;2460997.00872005;14.20925333;1.3;_
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:33.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:33.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:33.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:33.413 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3640789, teldec = -24.256334
2025-11-17T14:12:33.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3640789 -24.256334
2025-11-17T14:12:33.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3640789 -24.256334
2025-11-17T14:12:33.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3640789 -24.256334
2025-11-17T14:12:33.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3640789;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38383;2460997.00872007;14.20925333;1.3;_20.3384418271719 -24.3368251986135
2025-11-17T14:12:33.414 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3384418271719     dec_j2k = -24.3368251986135
2025-11-17T14:12:33.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:33.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:33.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104673478557018;171.162362694745;_
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104673478557018;171.162362694745;_
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:33.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:33.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:33.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:33.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:33.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:33.418 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35957)
2025-11-17T14:12:33.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:33.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:33.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:33.419 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:33.419 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:33.426 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:12:33.426 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00872005, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673478557018, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992778, telescope_ra=20.3640789, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.38383, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3384418271719, telescope_dec_j2k=-24.3368251986135, observability=1)
2025-11-17T14:12:33.426 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03079128265381 seconds ago
2025-11-17T14:12:40.808 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.382354497909546s
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:40.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:40.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:40.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:40.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3661423;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38589;2460997.00880567;14.21131111;1.3;_
2025-11-17T14:12:40.811 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3661423;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38589;2460997.00880567;14.21131111;1.3;_
2025-11-17T14:12:40.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:40.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:40.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:40.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:40.812 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:40.812 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3661423, teldec = -24.256334
2025-11-17T14:12:40.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3661423 -24.256334
2025-11-17T14:12:40.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3661423 -24.256334
2025-11-17T14:12:40.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3661423 -24.256334
2025-11-17T14:12:40.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3661423;-24.256334;50.108262;89.992778;50.08601;90.12017;17.38589;2460997.00880571;14.21131111;1.3;_20.3405063422492 -24.3368893285777
2025-11-17T14:12:40.813 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.3405063422492     dec_j2k = -24.3368893285777
2025-11-17T14:12:40.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:40.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:40.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104674200571988;171.162362694745;_
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104674200571988;171.162362694745;_
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:40.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:40.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:40.815 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:40.815 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:40.817 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40001)
2025-11-17T14:12:40.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:40.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:40.817 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:40.818 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:40.818 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:40.824 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:40.824 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:40.825 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:40.825 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00880567, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104674200571988, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992778, telescope_ra=20.3661423, telescope_dec=-24.256334, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.38589, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3405063422492, telescope_dec_j2k=-24.3368893285777, observability=1)
2025-11-17T14:12:41.422 [DEBUG] [Thread-68133 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:41.423 [DEBUG] [Thread-68133 (handle)] [server.py] [get_status()] Status age = 0.5976605415344238s
2025-11-17T14:12:41.423 [DEBUG] [Thread-68133 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5976605415344238
2025-11-17T14:12:48.475 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:12:48
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.650191307067871s
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:48.475 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:48.476 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:48.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3682801;-24.256333;50.108262;89.992778;50.08601;90.12017;17.38803;2460997.00889441;14.21344306;1.3;_
2025-11-17T14:12:48.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3682801;-24.256333;50.108262;89.992778;50.08601;90.12017;17.38803;2460997.00889441;14.21344306;1.3;_
2025-11-17T14:12:48.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:48.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:48.477 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:48.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:48.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:48.478 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3682801, teldec = -24.256333
2025-11-17T14:12:48.478 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3682801 -24.256333
2025-11-17T14:12:48.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3682801 -24.256333
2025-11-17T14:12:48.479 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3682801 -24.256333
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3682801;-24.256333;50.108262;89.992778;50.08601;90.12017;17.38803;2460997.00889443;14.21344306;1.3;_20.3426452987657 -24.3369547465391
2025-11-17T14:12:48.480 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.3426452987657     dec_j2k = -24.3369547465391
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104673919788389;171.162357330327;_
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104673919788389;171.162357330327;_
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:48.480 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:48.481 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:48.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:48.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:48.482 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47297)
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:48.484 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:48.491 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:48.491 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:48.491 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:48.492 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:48.492 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.00889441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104673919788389, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992778, telescope_ra=20.3682801, telescope_dec=-24.256333, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.38803, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:11:57.855008', telescope_ra_j2k=20.3426452987657, telescope_dec_j2k=-24.3369547465391, observability=1)
2025-11-17T14:12:57.996 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:57.997 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:57.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:57.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:57.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:57.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:57.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:57.998 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:12:57.998 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:12:57.999 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:12:58.000 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:12:58.000 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:59.000 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:59.001 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:59.001 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:59.001 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:59.001 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:12:59.002 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:59.003 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:59.004 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:59.004 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:59.004 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:59.004 [DEBUG] [ThreadPoolExecutor-2890_0] [payload.py] [to_registers()] [0]
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39581)
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:59.010 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:59.017 [DEBUG] [ThreadPoolExecutor-2890_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Status age = 10.993860721588135s
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:12:59.486 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:12:59.487 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:12:59.487 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 17;20.3713532;-24.256333;50.108262;89.992777;50.08601;90.12017;17.3911;2460997.00902185;14.21650778;1.3;_
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response 17;20.3713532;-24.256333;50.108262;89.992777;50.08601;90.12017;17.3911;2460997.00902185;14.21650778;1.3;_
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:12:59.488 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:12:59.489 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:59.489 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:12:59.489 [INFO] [Thread-68134 (handle)] [driver.py] [get_status()] Telra = 20.3713532, teldec = -24.256333
2025-11-17T14:12:59.490 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3713532 -24.256333
2025-11-17T14:12:59.490 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3713532 -24.256333
2025-11-17T14:12:59.490 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3713532 -24.256333
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 17;20.3713532;-24.256333;50.108262;89.992777;50.08601;90.12017;17.3911;2460997.00902189;14.21650778;1.3;_20.345720062927 -24.3370501790101
2025-11-17T14:12:59.491 [INFO] [Thread-68134 (handle)] [driver.py] [get_status()] ra_j2k = 20.345720062927     dec_j2k = -24.3370501790101
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 140;0.104674320907817;171.162362694745;_
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response 140;0.104674320907817;171.162362694745;_
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:59.491 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:12:59.492 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:12:59.493 [DEBUG] [Thread-68134 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:59.493 [DEBUG] [Thread-68134 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:12:59.493 [DEBUG] [Thread-68134 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58203)
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:12:59.498 [DEBUG] [Thread-68134 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:12:59.506 [DEBUG] [Thread-68134 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:12:59.506 [INFO] [Thread-68134 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00902185, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104674320907817, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992777, telescope_ra=20.3713532, telescope_dec=-24.256333, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.3911, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.345720062927, telescope_dec_j2k=-24.3370501790101, observability=1)
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 15.513652324676514s
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3756647;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39542;2460997.00920163;14.2208075;1.3;_
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.3756647;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39542;2460997.00920163;14.2208075;1.3;_
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:15.023 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.3756647, teldec = -24.256333
2025-11-17T14:13:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3756647 -24.256333
2025-11-17T14:13:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3756647 -24.256333
2025-11-17T14:13:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3756647 -24.256333
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3756647;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39542;2460997.00920166;14.2208075;1.3;_20.3500339014912 -24.3371839821284
2025-11-17T14:13:15.024 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.3500339014912     dec_j2k = -24.3371839821284
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104674521467531;171.162351965909;_
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104674521467531;171.162351965909;_
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47823)
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:15.038 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:15.039 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00920163, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104674521467531, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992777, telescope_ra=20.3756647, telescope_dec=-24.256333, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.39542, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3500339014912, telescope_dec_j2k=-24.3371839821284, observability=1)
2025-11-17T14:13:15.204 [DEBUG] [Thread-68135 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:15.204 [DEBUG] [Thread-68135 (handle)] [server.py] [get_status()] Status age = 0.16535258293151855s
2025-11-17T14:13:15.204 [DEBUG] [Thread-68135 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.16535258293151855
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Status age = 2.5621683597564697s
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:17.601 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:17.602 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:17.603 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 17;20.3763945;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39614;2460997.00923152;14.22153528;1.3;_
2025-11-17T14:13:17.603 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response 17;20.3763945;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39614;2460997.00923152;14.22153528;1.3;_
2025-11-17T14:13:17.603 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:17.603 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:17.603 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:17.604 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:17.604 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:17.604 [INFO] [Thread-68136 (handle)] [driver.py] [get_status()] Telra = 20.3763945, teldec = -24.256333
2025-11-17T14:13:17.604 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3763945 -24.256333
2025-11-17T14:13:17.604 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3763945 -24.256333
2025-11-17T14:13:17.604 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3763945 -24.256333
2025-11-17T14:13:17.605 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 17;20.3763945;-24.256333;50.108262;89.992777;50.08601;90.12017;17.39614;2460997.00923154;14.22153528;1.3;_20.3507640977722 -24.3372066207057
2025-11-17T14:13:17.605 [INFO] [Thread-68136 (handle)] [driver.py] [get_status()] ra_j2k = 20.3507640977722     dec_j2k = -24.3372066207057
2025-11-17T14:13:17.605 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:17.605 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:17.605 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 140;0.104674922586959;171.162346601491;_
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response 140;0.104674922586959;171.162346601491;_
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:17.607 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:17.608 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:17.609 [DEBUG] [Thread-68136 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:17.609 [DEBUG] [Thread-68136 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:17.609 [DEBUG] [Thread-68136 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60955)
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:17.610 [DEBUG] [Thread-68136 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:17.617 [DEBUG] [Thread-68136 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:17.617 [DEBUG] [Thread-68136 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:17.617 [DEBUG] [Thread-68136 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:17.618 [DEBUG] [Thread-68136 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:17.618 [INFO] [Thread-68136 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00923152, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104674922586959, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992777, telescope_ra=20.3763945, telescope_dec=-24.256333, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.39614, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3507640977722, telescope_dec_j2k=-24.3372066207057, observability=1)
2025-11-17T14:13:24.017 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:24.017 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:24.017 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:24.018 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:13:24.019 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:13:24.020 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.868173122406006s
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:33.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:33.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:33.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3808247;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40058;2460997.00941537;14.22595333;1.3;_
2025-11-17T14:13:33.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3808247;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40058;2460997.00941537;14.22595333;1.3;_
2025-11-17T14:13:33.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:33.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:33.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:33.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:33.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:33.489 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3808247, teldec = -24.256332
2025-11-17T14:13:33.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3808247 -24.256332
2025-11-17T14:13:33.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3808247 -24.256332
2025-11-17T14:13:33.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3808247 -24.256332
2025-11-17T14:13:33.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3808247;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40058;2460997.00941539;14.22595333;1.3;_20.3551967062445 -24.3373429842429
2025-11-17T14:13:33.490 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3551967062445     dec_j2k = -24.3373429842429
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104675564378044;171.162357330327;_
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104675564378044;171.162357330327;_
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:33.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:33.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:33.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:33.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:33.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38811)
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:33.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:33.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:33.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:33.505 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:13:33.505 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00941537, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104675564378044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992776, telescope_ra=20.3808247, telescope_dec=-24.256332, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.40058, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3551967062445, telescope_dec_j2k=-24.3373429842429, observability=1)
2025-11-17T14:13:33.505 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03018069267273 seconds ago
2025-11-17T14:13:35.668 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:35.668 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Status age = 2.1635429859161377s
2025-11-17T14:13:35.668 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:35.669 [DEBUG] [Thread-68137 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:35.669 [DEBUG] [Thread-68137 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:35.669 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:35.669 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:35.669 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:35.670 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:35.671 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 17;20.3814124;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40116;2460997.00944064;14.22653944;1.3;_
2025-11-17T14:13:35.671 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response 17;20.3814124;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40116;2460997.00944064;14.22653944;1.3;_
2025-11-17T14:13:35.671 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:35.671 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:35.671 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:35.672 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:35.672 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:35.672 [INFO] [Thread-68137 (handle)] [driver.py] [get_status()] Telra = 20.3814124, teldec = -24.256332
2025-11-17T14:13:35.672 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3814124 -24.256332
2025-11-17T14:13:35.672 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3814124 -24.256332
2025-11-17T14:13:35.672 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3814124 -24.256332
2025-11-17T14:13:35.673 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 17;20.3814124;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40116;2460997.00944066;14.22653944;1.3;_20.3557847260743 -24.3373611984929
2025-11-17T14:13:35.673 [INFO] [Thread-68137 (handle)] [driver.py] [get_status()] ra_j2k = 20.3557847260743     dec_j2k = -24.3373611984929
2025-11-17T14:13:35.673 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:35.673 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:35.673 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 140;0.10467508303473;171.162351965909;_
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response 140;0.10467508303473;171.162351965909;_
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:35.674 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:35.675 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:35.676 [DEBUG] [Thread-68137 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:35.676 [DEBUG] [Thread-68137 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:35.676 [DEBUG] [Thread-68137 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42825)
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:35.678 [DEBUG] [Thread-68137 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:35.685 [DEBUG] [Thread-68137 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:35.686 [INFO] [Thread-68137 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00944064, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467508303473, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992776, telescope_ra=20.3814124, telescope_dec=-24.256332, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.40116, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3557847260743, telescope_dec_j2k=-24.3373611984929, observability=1)
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.228525161743164s
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:39.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:39.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:39.915 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:39.916 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:39.916 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:39.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:39.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:39.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:39.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3826079;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40236;2460997.00948978;14.22773167;1.3;_
2025-11-17T14:13:39.917 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3826079;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40236;2460997.00948978;14.22773167;1.3;_
2025-11-17T14:13:39.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:39.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:39.917 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:39.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:39.918 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:39.918 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3826079, teldec = -24.256332
2025-11-17T14:13:39.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3826079 -24.256332
2025-11-17T14:13:39.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3826079 -24.256332
2025-11-17T14:13:39.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3826079 -24.256332
2025-11-17T14:13:39.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3826079;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40236;2460997.0094898;14.22773167;1.3;_20.356980876925 -24.3373982441068
2025-11-17T14:13:39.919 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.356980876925     dec_j2k = -24.3373982441068
2025-11-17T14:13:39.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:39.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:39.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104675403930272;171.162351965909;_
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104675403930272;171.162351965909;_
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:39.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:39.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:39.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:39.921 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:39.921 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:39.924 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45137)
2025-11-17T14:13:39.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:39.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:39.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:39.925 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:39.925 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:39.932 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:39.932 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00948978, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104675403930272, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992776, telescope_ra=20.3826079, telescope_dec=-24.256332, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.40236, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.356980876925, telescope_dec_j2k=-24.3373982441068, observability=1)
2025-11-17T14:13:48.553 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:13:48
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.620697736740112s
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:48.553 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:48.554 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:48.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3850066;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40476;2460997.00958976;14.23012389;1.3;_
2025-11-17T14:13:48.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.3850066;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40476;2460997.00958976;14.23012389;1.3;_
2025-11-17T14:13:48.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:48.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:48.555 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:48.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:48.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:48.556 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.3850066, teldec = -24.256332
2025-11-17T14:13:48.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3850066 -24.256332
2025-11-17T14:13:48.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3850066 -24.256332
2025-11-17T14:13:48.556 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3850066 -24.256332
2025-11-17T14:13:48.557 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.3850066;-24.256332;50.108262;89.992776;50.08601;90.12017;17.40476;2460997.00958978;14.23012389;1.3;_20.3593808838396 -24.3374725503324
2025-11-17T14:13:48.557 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.3593808838396     dec_j2k = -24.3374725503324
2025-11-17T14:13:48.557 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:48.557 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:48.557 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104675764937758;171.162351965909;_
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104675764937758;171.162351965909;_
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:48.558 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:48.559 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:48.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:48.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:48.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59743)
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:48.565 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:48.572 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:48.572 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00958976, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104675764937758, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992776, telescope_ra=20.3850066, telescope_dec=-24.256332, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.40476, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3593808838396, telescope_dec_j2k=-24.3374725503324, observability=1)
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Status age = 5.164352655410767s
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:53.737 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:13:53.738 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 17;20.3864542;-24.256332;50.108262;89.992776;50.08601;90.12017;17.4062;2460997.00964976;14.2315675;1.3;_
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response 17;20.3864542;-24.256332;50.108262;89.992776;50.08601;90.12017;17.4062;2460997.00964976;14.2315675;1.3;_
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:13:53.739 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:13:53.740 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:53.740 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:13:53.740 [INFO] [Thread-68138 (handle)] [driver.py] [get_status()] Telra = 20.3864542, teldec = -24.256332
2025-11-17T14:13:53.740 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3864542 -24.256332
2025-11-17T14:13:53.741 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3864542 -24.256332
2025-11-17T14:13:53.741 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3864542 -24.256332
2025-11-17T14:13:53.742 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 17;20.3864542;-24.256332;50.108262;89.992776;50.08601;90.12017;17.4062;2460997.00964978;14.2315675;1.3;_20.3608292732136 -24.3375173784053
2025-11-17T14:13:53.742 [INFO] [Thread-68138 (handle)] [driver.py] [get_status()] ra_j2k = 20.3608292732136     dec_j2k = -24.3375173784053
2025-11-17T14:13:53.742 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:13:53.742 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:13:53.742 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:13:53.742 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 140;0.104676446840785;171.162351965909;_
2025-11-17T14:13:53.743 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response 140;0.104676446840785;171.162351965909;_
2025-11-17T14:13:53.743 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:13:53.743 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:53.743 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:53.743 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:13:53.744 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:13:53.745 [DEBUG] [Thread-68138 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:53.745 [DEBUG] [Thread-68138 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:13:53.745 [DEBUG] [Thread-68138 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35937)
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:13:53.746 [DEBUG] [Thread-68138 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:13:53.753 [DEBUG] [Thread-68138 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:13:53.753 [DEBUG] [Thread-68138 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:53.753 [DEBUG] [Thread-68138 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:13:53.753 [DEBUG] [Thread-68138 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:13:53.753 [DEBUG] [Thread-68138 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:13:53.754 [DEBUG] [Thread-68138 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:13:53.754 [DEBUG] [Thread-68138 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:13:53.754 [DEBUG] [Thread-68138 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:13:53.754 [DEBUG] [Thread-68138 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:13:53.754 [INFO] [Thread-68138 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00964976, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676446840785, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108262, telescope_az=89.992776, telescope_ra=20.3864542, telescope_dec=-24.256332, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.4062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:12:57.996457', telescope_ra_j2k=20.3608292732136, telescope_dec_j2k=-24.3375173784053, observability=1)
2025-11-17T14:13:58.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:58.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:58.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:58.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:58.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:58.140 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:13:58.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:13:58.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:13:58.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:13:58.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:13:58.141 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:13:58.141 [INFO] [ThreadPoolExecutor-2891_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:13:58.142 [INFO] [ThreadPoolExecutor-2891_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Status age = 18.102959156036377s
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:11.857 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:11.858 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 17;20.3914977;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41125;2460997.00985947;14.23659722;1.3;_
2025-11-17T14:14:11.858 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response 17;20.3914977;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41125;2460997.00985947;14.23659722;1.3;_
2025-11-17T14:14:11.858 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:11.858 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:11.858 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:11.859 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:11.859 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:11.859 [INFO] [Thread-68139 (handle)] [driver.py] [get_status()] Telra = 20.3914977, teldec = -24.256331
2025-11-17T14:14:11.860 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3914977 -24.256331
2025-11-17T14:14:11.860 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3914977 -24.256331
2025-11-17T14:14:11.860 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3914977 -24.256331
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 17;20.3914977;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41125;2460997.00985949;14.23659722;1.3;_20.3658755274666 -24.3376724716117
2025-11-17T14:14:11.861 [INFO] [Thread-68139 (handle)] [driver.py] [get_status()] ra_j2k = 20.3658755274666     dec_j2k = -24.3376724716117
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 140;0.104676005609415;171.162362694745;_
2025-11-17T14:14:11.861 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response 140;0.104676005609415;171.162362694745;_
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:11.862 [DEBUG] [Thread-68139 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:11.863 [DEBUG] [Thread-68139 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33887)
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:11.868 [DEBUG] [Thread-68139 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:11.875 [DEBUG] [Thread-68139 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:11.876 [DEBUG] [Thread-68139 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:14:11.876 [INFO] [Thread-68139 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00985947, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676005609415, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992775, telescope_ra=20.3914977, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.41125, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3658755274666, telescope_dec_j2k=-24.3376724716117, observability=1)
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1146240234375s
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:14.990 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:14.991 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3923846;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41214;2460997.00989574;14.23748167;1.3;_
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.3923846;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41214;2460997.00989574;14.23748167;1.3;_
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:14.993 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.3923846, teldec = -24.256331
2025-11-17T14:14:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3923846 -24.256331
2025-11-17T14:14:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3923846 -24.256331
2025-11-17T14:14:14.993 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3923846 -24.256331
2025-11-17T14:14:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.3923846;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41214;2460997.00989576;14.23748167;1.3;_20.3667629123954 -24.3376999061603
2025-11-17T14:14:14.994 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.3667629123954     dec_j2k = -24.3376999061603
2025-11-17T14:14:14.994 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104676527064671;171.162357330327;_
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104676527064671;171.162357330327;_
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39623)
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:15.004 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:15.011 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:14:15.012 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.00989574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676527064671, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992775, telescope_ra=20.3923846, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.41214, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3667629123954, telescope_dec_j2k=-24.3376999061603, observability=1)
2025-11-17T14:14:15.238 [DEBUG] [Thread-68140 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:15.238 [DEBUG] [Thread-68140 (handle)] [server.py] [get_status()] Status age = 0.22610187530517578s
2025-11-17T14:14:15.238 [DEBUG] [Thread-68140 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.22610187530517578
2025-11-17T14:14:19.020 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.020 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.020 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:19.020 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:14:19.021 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:14:19.022 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.022 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.022 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.022 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:19.022 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:19.023 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:19.023 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.023 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:19.023 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:19.024 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:14:19.025 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:19.026 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Park
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:14:19.027 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:14:19.028 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 29;20.3935049;-24.256331;50.108261;89.992775;50.08601;90.12017;17.41326;2460997.00994245;14.23859889;1.3;_Park Command Successful
2025-11-17T14:14:20.028 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:14:20.028 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:14:20.028 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:14:20.029 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:14:20.029 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:14:21.029 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:14:21.029 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:14:21.029 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:14:21.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:14:21.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:14:22.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:14:22.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:14:22.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:14:22.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:14:22.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:14:23.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:14:23.030 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:14:23.031 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:23.032 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:14:23.033 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:14:23.034 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:24.034 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:24.034 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:24.034 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:24.034 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:24.035 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:24.035 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:14:24.036 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:14:24.037 [DEBUG] [ThreadPoolExecutor-2890_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:24.037 [INFO] [ThreadPoolExecutor-2890_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Status age = 14.909875869750977s
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:29.922 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:29.923 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:29.924 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 17;20.3965395;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41629;2460997.01006856;14.24162528;1.3;_
2025-11-17T14:14:29.924 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response 17;20.3965395;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41629;2460997.01006856;14.24162528;1.3;_
2025-11-17T14:14:29.924 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:29.924 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:29.924 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:29.925 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:29.925 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:29.925 [INFO] [Thread-68141 (handle)] [driver.py] [get_status()] Telra = 20.3965395, teldec = -24.256331
2025-11-17T14:14:29.925 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3965395 -24.256331
2025-11-17T14:14:29.925 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3965395 -24.256331
2025-11-17T14:14:29.925 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3965395 -24.256331
2025-11-17T14:14:29.926 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 17;20.3965395;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41629;2460997.01006859;14.24162528;1.3;_20.3709200866406 -24.3378283724227
2025-11-17T14:14:29.926 [INFO] [Thread-68141 (handle)] [driver.py] [get_status()] ra_j2k = 20.3709200866406     dec_j2k = -24.3378283724227
2025-11-17T14:14:29.926 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:29.926 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:29.926 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 140;0.104677008407985;171.162362694745;_
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response 140;0.104677008407985;171.162362694745;_
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:29.927 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:29.928 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:29.929 [DEBUG] [Thread-68141 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:29.929 [DEBUG] [Thread-68141 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:29.929 [DEBUG] [Thread-68141 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44259)
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:29.934 [DEBUG] [Thread-68141 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:29.942 [DEBUG] [Thread-68141 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:14:29.942 [INFO] [Thread-68141 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01006856, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677008407985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992774, telescope_ra=20.3965395, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.41629, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3709200866406, telescope_dec_j2k=-24.3378283724227, observability=1)
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.6223196983337402s
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:33.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:33.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:33.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3975375;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41729;2460997.01011074;14.24262056;1.3;_
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.3975375;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41729;2460997.01011074;14.24262056;1.3;_
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:33.568 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.3975375, teldec = -24.256331
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.3975375 -24.256331
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.3975375 -24.256331
2025-11-17T14:14:33.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3975375 -24.256331
2025-11-17T14:14:33.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.3975375;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41729;2460997.01011075;14.24262056;1.3;_20.3719186335185 -24.3378592156539
2025-11-17T14:14:33.569 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3719186335185     dec_j2k = -24.3378592156539
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104676767736328;171.162368059163;_
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104676767736328;171.162368059163;_
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:33.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:33.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:33.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:33.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:33.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:33.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:33.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39103)
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:33.573 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:33.580 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:14:33.581 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01011074, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676767736328, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992774, telescope_ra=20.3975375, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.41729, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3719186335185, telescope_dec_j2k=-24.3378592156539, observability=1)
2025-11-17T14:14:33.581 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.027695178985596 seconds ago
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.446375608444214s
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:39.027 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3990779;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41883;2460997.01017394;14.24415667;1.3;_
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.3990779;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41883;2460997.01017394;14.24415667;1.3;_
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:39.028 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:39.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:39.029 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:39.029 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.3990779, teldec = -24.256331
2025-11-17T14:14:39.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.3990779 -24.256331
2025-11-17T14:14:39.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.3990779 -24.256331
2025-11-17T14:14:39.029 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.3990779 -24.256331
2025-11-17T14:14:39.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.3990779;-24.256331;50.108261;89.992774;50.08601;90.12017;17.41883;2460997.01017396;14.24415667;1.3;_20.3734598780794 -24.3379068110119
2025-11-17T14:14:39.030 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.3734598780794     dec_j2k = -24.3379068110119
2025-11-17T14:14:39.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:39.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:39.030 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104676928184099;171.162346601491;_
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104676928184099;171.162346601491;_
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:39.031 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:39.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:39.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:39.033 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:39.033 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42103)
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:39.034 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:39.041 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:14:39.041 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01017394, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676928184099, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992774, telescope_ra=20.3990779, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.41883, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3734598780794, telescope_dec_j2k=-24.3379068110119, observability=1)
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Status age = 8.945428371429443s
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:14:47.987 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:14:47.988 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 17;20.4015566;-24.25633;50.108261;89.992774;50.08601;90.12017;17.42131;2460997.01027764;14.24662861;1.3;_
2025-11-17T14:14:47.988 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response 17;20.4015566;-24.25633;50.108261;89.992774;50.08601;90.12017;17.42131;2460997.01027764;14.24662861;1.3;_
2025-11-17T14:14:47.988 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:14:47.988 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:14:47.988 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:14:47.989 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:47.989 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:14:47.989 [INFO] [Thread-68142 (handle)] [driver.py] [get_status()] Telra = 20.4015566, teldec = -24.25633
2025-11-17T14:14:47.989 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4015566 -24.25633
2025-11-17T14:14:47.989 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4015566 -24.25633
2025-11-17T14:14:47.989 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4015566 -24.25633
2025-11-17T14:14:47.990 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 17;20.4015566;-24.25633;50.108261;89.992774;50.08601;90.12017;17.42131;2460997.01027766;14.24662861;1.3;_20.3759399384278 -24.337982370655
2025-11-17T14:14:47.990 [INFO] [Thread-68142 (handle)] [driver.py] [get_status()] ra_j2k = 20.3759399384278     dec_j2k = -24.337982370655
2025-11-17T14:14:47.990 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:14:47.991 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:14:47.991 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 140;0.104677008407985;171.162357330327;_
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response 140;0.104677008407985;171.162357330327;_
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:47.992 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:14:47.993 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:14:47.994 [DEBUG] [Thread-68142 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:47.994 [DEBUG] [Thread-68142 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:14:47.994 [DEBUG] [Thread-68142 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56353)
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:47.999 [DEBUG] [Thread-68142 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:14:48.007 [DEBUG] [Thread-68142 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:14:48.007 [INFO] [Thread-68142 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01027764, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677008407985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992774, telescope_ra=20.4015566, telescope_dec=-24.25633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.42131, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:13:58.138811', telescope_ra_j2k=20.3759399384278, telescope_dec_j2k=-24.337982370655, observability=1)
2025-11-17T14:14:48.633 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:14:48
2025-11-17T14:14:48.633 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:14:48.633 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.6260740756988525s
2025-11-17T14:14:48.633 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6260740756988525
2025-11-17T14:14:58.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:58.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:58.282 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:58.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:58.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:58.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:58.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:58.283 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:14:58.283 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:58.283 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:58.283 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:58.283 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:14:58.284 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:14:58.285 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:59.285 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:59.285 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:59.285 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:59.285 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:59.285 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:14:59.286 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:14:59.287 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:14:59.288 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:14:59.288 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:14:59.288 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:14:59.288 [DEBUG] [ThreadPoolExecutor-2892_0] [payload.py] [to_registers()] [0]
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60027)
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:14:59.292 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:14:59.300 [DEBUG] [ThreadPoolExecutor-2892_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Status age = 18.10191249847412s
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:06.109 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:06.110 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:06.110 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:06.110 [DEBUG] [Thread-68143 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:06.110 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:06.111 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:06.111 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:06.111 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:06.112 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 17;20.4065998;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42635;2460997.01048741;14.25165806;1.3;_
2025-11-17T14:15:06.112 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response 17;20.4065998;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42635;2460997.01048741;14.25165806;1.3;_
2025-11-17T14:15:06.112 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:06.112 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:06.112 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:06.113 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:06.113 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:06.113 [INFO] [Thread-68143 (handle)] [driver.py] [get_status()] Telra = 20.4065998, teldec = -24.25633
2025-11-17T14:15:06.113 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4065998 -24.25633
2025-11-17T14:15:06.113 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4065998 -24.25633
2025-11-17T14:15:06.113 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4065998 -24.25633
2025-11-17T14:15:06.114 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 17;20.4065998;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42635;2460997.01048743;14.25165806;1.3;_20.3809859103565 -24.3381380352039
2025-11-17T14:15:06.114 [INFO] [Thread-68143 (handle)] [driver.py] [get_status()] ra_j2k = 20.3809859103565     dec_j2k = -24.3381380352039
2025-11-17T14:15:06.114 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:06.114 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:06.114 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 140;0.104676968296042;171.162357330327;_
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response 140;0.104676968296042;171.162357330327;_
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:06.115 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:06.116 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:06.117 [DEBUG] [Thread-68143 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:06.117 [DEBUG] [Thread-68143 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:06.117 [DEBUG] [Thread-68143 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43219)
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:06.121 [DEBUG] [Thread-68143 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:06.128 [DEBUG] [Thread-68143 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:06.129 [DEBUG] [Thread-68143 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:06.129 [DEBUG] [Thread-68143 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:06.129 [INFO] [Thread-68143 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01048741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676968296042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992773, telescope_ra=20.4065998, telescope_dec=-24.25633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.42635, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3809859103565, telescope_dec_j2k=-24.3381380352039, observability=1)
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.881275177001953s
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4091022;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42885;2460997.01059042;14.25415361;1.3;_
2025-11-17T14:15:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.4091022;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42885;2460997.01059042;14.25415361;1.3;_
2025-11-17T14:15:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:15.013 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.4091022, teldec = -24.25633
2025-11-17T14:15:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4091022 -24.25633
2025-11-17T14:15:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4091022 -24.25633
2025-11-17T14:15:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4091022 -24.25633
2025-11-17T14:15:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4091022;-24.25633;50.108261;89.992773;50.08601;90.12017;17.42885;2460997.01059044;14.25415361;1.3;_20.3834896879964 -24.3382152226893
2025-11-17T14:15:15.014 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.3834896879964     dec_j2k = -24.3382152226893
2025-11-17T14:15:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677730422955;171.162357330327;_
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677730422955;171.162357330327;_
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60559)
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:15.027 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:15.027 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:15.028 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:15.028 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:15.028 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:15.028 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01059042, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677730422955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992773, telescope_ra=20.4091022, telescope_dec=-24.25633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.42885, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3834896879964, telescope_dec_j2k=-24.3382152226893, observability=1)
2025-11-17T14:15:15.274 [DEBUG] [Thread-68144 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:15.274 [DEBUG] [Thread-68144 (handle)] [server.py] [get_status()] Status age = 0.24617266654968262s
2025-11-17T14:15:15.274 [DEBUG] [Thread-68144 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.24617266654968262
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Status age = 9.147291421890259s
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:24.175 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:24.176 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:24.176 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 17;20.4116427;-24.25633;50.108261;89.992773;50.08601;90.12017;17.43139;2460997.01069649;14.25668722;1.3;_
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response 17;20.4116427;-24.25633;50.108261;89.992773;50.08601;90.12017;17.43139;2460997.01069649;14.25668722;1.3;_
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:24.177 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:24.178 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:24.178 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:24.178 [INFO] [Thread-68145 (handle)] [driver.py] [get_status()] Telra = 20.4116427, teldec = -24.25633
2025-11-17T14:15:24.178 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4116427 -24.25633
2025-11-17T14:15:24.178 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4116427 -24.25633
2025-11-17T14:15:24.178 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4116427 -24.25633
2025-11-17T14:15:24.179 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 17;20.4116427;-24.25633;50.108261;89.992773;50.08601;90.12017;17.43139;2460997.01069652;14.25668722;1.3;_20.3860315881228 -24.3382935499495
2025-11-17T14:15:24.179 [INFO] [Thread-68145 (handle)] [driver.py] [get_status()] ra_j2k = 20.3860315881228     dec_j2k = -24.3382935499495
2025-11-17T14:15:24.179 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:24.179 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:24.179 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 140;0.104677449639356;171.162357330327;_
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response 140;0.104677449639356;171.162357330327;_
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:24.180 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:24.181 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:24.182 [DEBUG] [Thread-68145 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:24.182 [DEBUG] [Thread-68145 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:24.182 [DEBUG] [Thread-68145 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39509)
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:24.189 [DEBUG] [Thread-68145 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:24.196 [DEBUG] [Thread-68145 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:24.197 [DEBUG] [Thread-68145 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:24.197 [DEBUG] [Thread-68145 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:24.197 [DEBUG] [Thread-68145 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:24.197 [INFO] [Thread-68145 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01069649, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677449639356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108261, telescope_az=89.992773, telescope_ra=20.4116427, telescope_dec=-24.25633, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.43139, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3860315881228, telescope_dec_j2k=-24.3382935499495, observability=1)
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:24.301 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:24.302 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:24.303 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:15:24.303 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:15:24.303 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:15:24.303 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.44395112991333s
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:33.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:33.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:33.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4142844;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43403;2460997.01080605;14.25932167;1.3;_
2025-11-17T14:15:33.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.4142844;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43403;2460997.01080605;14.25932167;1.3;_
2025-11-17T14:15:33.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:33.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:33.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:33.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:33.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:33.644 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.4142844, teldec = -24.256329
2025-11-17T14:15:33.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.4142844 -24.256329
2025-11-17T14:15:33.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.4142844 -24.256329
2025-11-17T14:15:33.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4142844 -24.256329
2025-11-17T14:15:33.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4142844;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43403;2460997.01080608;14.25932167;1.3;_20.3886747458019 -24.3383739595448
2025-11-17T14:15:33.646 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.3886747458019     dec_j2k = -24.3383739595448
2025-11-17T14:15:33.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:33.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:33.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677971094612;171.162351965909;_
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162351965909;_
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:33.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:33.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:33.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:33.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:33.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57435)
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:33.655 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:33.662 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:33.662 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:33.663 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:15:33.663 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01080605, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992772, telescope_ra=20.4142844, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.43403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3886747458019, telescope_dec_j2k=-24.3383739595448, observability=1)
2025-11-17T14:15:33.663 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.03027677536011 seconds ago
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.471254348754883s
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:38.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:38.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:38.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.415545;-24.256329;50.10826;89.992772;50.08601;90.12017;17.4353;2460997.01085806;14.26057889;1.3;_
2025-11-17T14:15:38.136 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.415545;-24.256329;50.10826;89.992772;50.08601;90.12017;17.4353;2460997.01085806;14.26057889;1.3;_
2025-11-17T14:15:38.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:38.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:38.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:38.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:38.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:38.137 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.415545, teldec = -24.256329
2025-11-17T14:15:38.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.415545 -24.256329
2025-11-17T14:15:38.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.415545 -24.256329
2025-11-17T14:15:38.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.415545 -24.256329
2025-11-17T14:15:38.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.415545;-24.256329;50.10826;89.992772;50.08601;90.12017;17.4353;2460997.01085808;14.26057889;1.3;_20.3899360418969 -24.3384127939352
2025-11-17T14:15:38.138 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.3899360418969     dec_j2k = -24.3384127939352
2025-11-17T14:15:38.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:38.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:38.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678051318498;171.162368059163;_
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162368059163;_
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:38.139 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:38.140 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:38.141 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:38.141 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:38.141 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:38.142 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58959)
2025-11-17T14:15:38.142 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:38.143 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:38.143 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:38.143 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:38.143 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:38.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:38.150 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:38.150 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:38.150 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:38.151 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:38.151 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:38.151 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:38.151 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:38.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:38.151 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01085806, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992772, telescope_ra=20.415545, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.4353, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3899360418969, telescope_dec_j2k=-24.3384127939352, observability=1)
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Status age = 4.140532493591309s
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:42.291 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:42.292 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:42.293 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:42.294 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 17;20.4166857;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43644;2460997.01090618;14.26171639;1.3;_
2025-11-17T14:15:42.294 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response 17;20.4166857;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43644;2460997.01090618;14.26171639;1.3;_
2025-11-17T14:15:42.294 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:42.294 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:42.294 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:42.295 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:42.295 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:42.295 [INFO] [Thread-68146 (handle)] [driver.py] [get_status()] Telra = 20.4166857, teldec = -24.256329
2025-11-17T14:15:42.295 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4166857 -24.256329
2025-11-17T14:15:42.295 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4166857 -24.256329
2025-11-17T14:15:42.295 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4166857 -24.256329
2025-11-17T14:15:42.296 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 17;20.4166857;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43644;2460997.0109062;14.26171639;1.3;_20.3910773721067 -24.3384479270587
2025-11-17T14:15:42.296 [INFO] [Thread-68146 (handle)] [driver.py] [get_status()] ra_j2k = 20.3910773721067     dec_j2k = -24.3384479270587
2025-11-17T14:15:42.296 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:42.296 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:42.296 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162368059163;_
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162368059163;_
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:42.297 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:42.298 [DEBUG] [Thread-68146 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:42.299 [DEBUG] [Thread-68146 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:42.299 [DEBUG] [Thread-68146 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:42.302 [DEBUG] [Thread-68146 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50267)
2025-11-17T14:15:42.303 [DEBUG] [Thread-68146 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:42.303 [DEBUG] [Thread-68146 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:42.303 [DEBUG] [Thread-68146 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:42.303 [DEBUG] [Thread-68146 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:42.303 [DEBUG] [Thread-68146 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:42.310 [DEBUG] [Thread-68146 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:42.310 [INFO] [Thread-68146 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01090618, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992772, telescope_ra=20.4166857, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.43644, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3910773721067, telescope_dec_j2k=-24.3384479270587, observability=1)
2025-11-17T14:15:48.694 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:15:48
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.383929967880249s
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:48.694 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:15:48.695 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:15:48.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4184694;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43822;2460997.01098028;14.26349528;1.3;_
2025-11-17T14:15:48.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.4184694;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43822;2460997.01098028;14.26349528;1.3;_
2025-11-17T14:15:48.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:15:48.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:15:48.696 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:15:48.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:48.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:15:48.697 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.4184694, teldec = -24.256329
2025-11-17T14:15:48.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4184694 -24.256329
2025-11-17T14:15:48.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4184694 -24.256329
2025-11-17T14:15:48.697 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4184694 -24.256329
2025-11-17T14:15:48.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4184694;-24.256329;50.10826;89.992772;50.08601;90.12017;17.43822;2460997.0109803;14.26349528;1.3;_20.3928620581734 -24.3385028498659
2025-11-17T14:15:48.698 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.3928620581734     dec_j2k = -24.3385028498659
2025-11-17T14:15:48.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:15:48.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:15:48.698 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677449639356;171.162362694745;_
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677449639356;171.162362694745;_
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:48.699 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:15:48.700 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48089)
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:15:48.703 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:15:48.710 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:15:48.710 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01098028, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677449639356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992772, telescope_ra=20.4184694, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.43822, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:14:58.281374', telescope_ra_j2k=20.3928620581734, telescope_dec_j2k=-24.3385028498659, observability=1)
2025-11-17T14:15:58.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:58.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:58.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:58.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:58.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:58.424 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:15:58.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:15:58.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:15:58.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:15:58.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:15:58.425 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:15:58.425 [INFO] [ThreadPoolExecutor-2893_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:15:58.425 [INFO] [ThreadPoolExecutor-2893_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Status age = 11.656626224517822s
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:00.367 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:00.368 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:00.369 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 17;20.4217297;-24.256329;50.10826;89.992771;50.08601;90.12017;17.44148;2460997.01111538;14.26674667;1.3;_
2025-11-17T14:16:00.369 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response 17;20.4217297;-24.256329;50.10826;89.992771;50.08601;90.12017;17.44148;2460997.01111538;14.26674667;1.3;_
2025-11-17T14:16:00.369 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:00.369 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:00.369 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:00.370 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:00.370 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:00.370 [INFO] [Thread-68147 (handle)] [driver.py] [get_status()] Telra = 20.4217297, teldec = -24.256329
2025-11-17T14:16:00.370 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4217297 -24.256329
2025-11-17T14:16:00.370 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4217297 -24.256329
2025-11-17T14:16:00.370 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4217297 -24.256329
2025-11-17T14:16:00.371 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 17;20.4217297;-24.256329;50.10826;89.992771;50.08601;90.12017;17.44148;2460997.01111541;14.26674667;1.3;_20.3961241624724 -24.338603193754
2025-11-17T14:16:00.371 [INFO] [Thread-68147 (handle)] [driver.py] [get_status()] ra_j2k = 20.3961241624724     dec_j2k = -24.338603193754
2025-11-17T14:16:00.371 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:00.371 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162357330327;_
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162357330327;_
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:00.372 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:00.373 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:00.374 [DEBUG] [Thread-68147 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:00.374 [DEBUG] [Thread-68147 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:00.374 [DEBUG] [Thread-68147 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:00.380 [DEBUG] [Thread-68147 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50825)
2025-11-17T14:16:00.380 [DEBUG] [Thread-68147 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:00.380 [DEBUG] [Thread-68147 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:00.380 [DEBUG] [Thread-68147 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:00.381 [DEBUG] [Thread-68147 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:00.381 [DEBUG] [Thread-68147 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:00.387 [DEBUG] [Thread-68147 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:00.388 [DEBUG] [Thread-68147 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:00.388 [INFO] [Thread-68147 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01111538, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992771, telescope_ra=20.4217297, telescope_dec=-24.256329, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.44148, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.3961241624724, telescope_dec_j2k=-24.338603193754, observability=1)
2025-11-17T14:16:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 14.625378370285034s
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.425795;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44555;2460997.0112849;14.27080083;1.3;_
2025-11-17T14:16:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.425795;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44555;2460997.0112849;14.27080083;1.3;_
2025-11-17T14:16:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.425795, teldec = -24.256328
2025-11-17T14:16:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.425795 -24.256328
2025-11-17T14:16:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.425795 -24.256328
2025-11-17T14:16:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.425795 -24.256328
2025-11-17T14:16:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.425795;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44555;2460997.01128492;14.27080083;1.3;_20.400191715941 -24.3387272308512
2025-11-17T14:16:15.017 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.400191715941     dec_j2k = -24.3387272308512
2025-11-17T14:16:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678171654326;171.162362694745;_
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678171654326;171.162362694745;_
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:15.022 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51477)
2025-11-17T14:16:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:15.023 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:15.023 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:15.030 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0112849, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678171654326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992771, telescope_ra=20.425795, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.44555, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.400191715941, telescope_dec_j2k=-24.3387272308512, observability=1)
2025-11-17T14:16:15.308 [DEBUG] [Thread-68148 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:15.308 [DEBUG] [Thread-68148 (handle)] [server.py] [get_status()] Status age = 0.27762317657470703s
2025-11-17T14:16:15.308 [DEBUG] [Thread-68148 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.27762317657470703
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Status age = 3.4127447605133057s
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:18.443 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:18.444 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:18.445 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 17;20.4267662;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44652;2460997.01132459;14.27176944;1.3;_
2025-11-17T14:16:18.445 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response 17;20.4267662;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44652;2460997.01132459;14.27176944;1.3;_
2025-11-17T14:16:18.445 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:18.445 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:18.445 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:18.446 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:18.446 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:18.446 [INFO] [Thread-68149 (handle)] [driver.py] [get_status()] Telra = 20.4267662, teldec = -24.256328
2025-11-17T14:16:18.446 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4267662 -24.256328
2025-11-17T14:16:18.446 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4267662 -24.256328
2025-11-17T14:16:18.446 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4267662 -24.256328
2025-11-17T14:16:18.447 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 17;20.4267662;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44652;2460997.01132462;14.27176944;1.3;_20.4011634548308 -24.338757088576
2025-11-17T14:16:18.447 [INFO] [Thread-68149 (handle)] [driver.py] [get_status()] ra_j2k = 20.4011634548308     dec_j2k = -24.338757088576
2025-11-17T14:16:18.447 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:18.447 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:18.447 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 140;0.104678251878212;171.162357330327;_
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response 140;0.104678251878212;171.162357330327;_
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:18.448 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:18.449 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:18.450 [DEBUG] [Thread-68149 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:18.450 [DEBUG] [Thread-68149 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:18.450 [DEBUG] [Thread-68149 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56043)
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:18.453 [DEBUG] [Thread-68149 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:18.461 [DEBUG] [Thread-68149 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:18.462 [DEBUG] [Thread-68149 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:18.462 [DEBUG] [Thread-68149 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:18.462 [DEBUG] [Thread-68149 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:18.462 [INFO] [Thread-68149 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01132459, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678251878212, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.992771, telescope_ra=20.4267662, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.44652, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.4011634548308, telescope_dec_j2k=-24.338757088576, observability=1)
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:16:19.304 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:16:19.305 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.305 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.305 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.305 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:19.305 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:19.306 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:19.306 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.306 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:19.306 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.307 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:16:19.308 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:19.309 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Park
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:16:19.310 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:16:19.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 29;20.4269902;-24.256328;50.10826;89.992771;50.08601;90.12017;17.44674;2460997.01133462;14.27199278;1.3;_Park Command Successful
2025-11-17T14:16:20.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:16:20.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:16:20.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:16:20.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:16:20.311 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:16:21.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:16:21.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:16:21.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:16:21.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:16:21.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:16:22.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:16:22.312 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:16:22.313 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:16:22.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:16:22.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:16:23.314 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:23.315 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:16:23.316 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:16:24.317 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:16:24.318 [DEBUG] [ThreadPoolExecutor-2892_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:24.318 [INFO] [ThreadPoolExecutor-2892_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.26152515411377s
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:33.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4310076;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45076;2460997.01150144;14.27599917;1.3;_
2025-11-17T14:16:33.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.4310076;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45076;2460997.01150144;14.27599917;1.3;_
2025-11-17T14:16:33.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:33.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:33.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:33.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:33.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:33.726 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.4310076, teldec = -24.256328
2025-11-17T14:16:33.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.4310076 -24.256328
2025-11-17T14:16:33.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.4310076 -24.256328
2025-11-17T14:16:33.726 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4310076 -24.256328
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4310076;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45076;2460997.01150147;14.27599917;1.3;_20.405407210857 -24.3388874208874
2025-11-17T14:16:33.727 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.405407210857     dec_j2k = -24.3388874208874
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677890870726;171.162357330327;_
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677890870726;171.162357330327;_
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:33.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:33.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43901)
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:33.731 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:33.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:16:33.738 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01150144, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677890870726, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.99277, telescope_ra=20.4310076, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.45076, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.405407210857, telescope_dec_j2k=-24.3388874208874, observability=1)
2025-11-17T14:16:33.738 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04456377029419 seconds ago
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Status age = 2.823004961013794s
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:36.561 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:36.562 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:36.563 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:36.563 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:36.563 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:36.563 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 17;20.4318122;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45156;2460997.01153429;14.27680167;1.3;_
2025-11-17T14:16:36.564 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response 17;20.4318122;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45156;2460997.01153429;14.27680167;1.3;_
2025-11-17T14:16:36.564 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:36.564 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:36.564 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:36.565 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:36.565 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:36.565 [INFO] [Thread-68150 (handle)] [driver.py] [get_status()] Telra = 20.4318122, teldec = -24.256328
2025-11-17T14:16:36.565 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4318122 -24.256328
2025-11-17T14:16:36.565 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4318122 -24.256328
2025-11-17T14:16:36.565 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4318122 -24.256328
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 17;20.4318122;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45156;2460997.01153433;14.27680167;1.3;_20.406212258276 -24.3389121338058
2025-11-17T14:16:36.566 [INFO] [Thread-68150 (handle)] [driver.py] [get_status()] ra_j2k = 20.406212258276     dec_j2k = -24.3389121338058
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 140;0.104677289191584;171.162357330327;_
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response 140;0.104677289191584;171.162357330327;_
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:36.566 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:36.567 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:36.568 [DEBUG] [Thread-68150 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:36.568 [DEBUG] [Thread-68150 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:36.568 [DEBUG] [Thread-68150 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:36.574 [DEBUG] [Thread-68150 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39047)
2025-11-17T14:16:36.574 [DEBUG] [Thread-68150 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:36.574 [DEBUG] [Thread-68150 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:36.574 [DEBUG] [Thread-68150 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:36.574 [DEBUG] [Thread-68150 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:36.575 [DEBUG] [Thread-68150 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:36.581 [DEBUG] [Thread-68150 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:36.582 [DEBUG] [Thread-68150 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:36.582 [INFO] [Thread-68150 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01153429, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677289191584, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.99277, telescope_ra=20.4318122, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.45156, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.406212258276, telescope_dec_j2k=-24.3389121338058, observability=1)
2025-11-17T14:16:37.233 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:37.234 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.6513965129852295s
2025-11-17T14:16:37.234 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6513965129852295
2025-11-17T14:16:48.771 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:16:48
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.188956499099731s
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:48.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:48.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:48.772 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:48.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:48.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:48.772 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:48.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4352118;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45496;2460997.0116756;14.28019194;1.3;_
2025-11-17T14:16:48.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.4352118;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45496;2460997.0116756;14.28019194;1.3;_
2025-11-17T14:16:48.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:48.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:48.773 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:48.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:48.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:48.774 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.4352118, teldec = -24.256328
2025-11-17T14:16:48.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4352118 -24.256328
2025-11-17T14:16:48.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4352118 -24.256328
2025-11-17T14:16:48.774 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4352118 -24.256328
2025-11-17T14:16:48.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4352118;-24.256328;50.10826;89.99277;50.08601;90.12017;17.45496;2460997.01167564;14.28019194;1.3;_20.4096137503931 -24.3390165110672
2025-11-17T14:16:48.775 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4096137503931     dec_j2k = -24.3390165110672
2025-11-17T14:16:48.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:48.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:48.775 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162346601491;_
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162346601491;_
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:48.776 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:48.777 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51833)
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:48.783 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:48.790 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:48.791 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0116756, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.99277, telescope_ra=20.4352118, telescope_dec=-24.256328, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.45496, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.4096137503931, telescope_dec_j2k=-24.3390165110672, observability=1)
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Status age = 5.82255220413208s
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:54.613 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:16:54.614 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:16:54.615 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 17;20.4368262;-24.256327;50.10826;89.99277;50.08601;90.12017;17.45658;2460997.01174323;14.28180194;1.3;_
2025-11-17T14:16:54.615 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response 17;20.4368262;-24.256327;50.10826;89.99277;50.08601;90.12017;17.45658;2460997.01174323;14.28180194;1.3;_
2025-11-17T14:16:54.615 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:16:54.615 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:16:54.615 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:16:54.616 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:54.616 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:16:54.616 [INFO] [Thread-68151 (handle)] [driver.py] [get_status()] Telra = 20.4368262, teldec = -24.256327
2025-11-17T14:16:54.616 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4368262 -24.256327
2025-11-17T14:16:54.616 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4368262 -24.256327
2025-11-17T14:16:54.616 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4368262 -24.256327
2025-11-17T14:16:54.617 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 17;20.4368262;-24.256327;50.10826;89.99277;50.08601;90.12017;17.45658;2460997.01174325;14.28180194;1.3;_20.4112290500358 -24.3390650551668
2025-11-17T14:16:54.617 [INFO] [Thread-68151 (handle)] [driver.py] [get_status()] ra_j2k = 20.4112290500358     dec_j2k = -24.3390650551668
2025-11-17T14:16:54.617 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:16:54.617 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:16:54.617 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 140;0.10467837221404;171.162362694745;_
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response 140;0.10467837221404;171.162362694745;_
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:54.618 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:16:54.619 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:16:54.620 [DEBUG] [Thread-68151 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:54.620 [DEBUG] [Thread-68151 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:16:54.620 [DEBUG] [Thread-68151 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60793)
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:54.625 [DEBUG] [Thread-68151 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:54.632 [DEBUG] [Thread-68151 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:54.632 [DEBUG] [Thread-68151 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:54.632 [DEBUG] [Thread-68151 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:16:54.632 [DEBUG] [Thread-68151 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:16:54.633 [DEBUG] [Thread-68151 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:54.633 [DEBUG] [Thread-68151 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:54.633 [DEBUG] [Thread-68151 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:16:54.633 [DEBUG] [Thread-68151 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:16:54.633 [DEBUG] [Thread-68151 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:16:54.633 [INFO] [Thread-68151 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01174323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467837221404, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10826, telescope_az=89.99277, telescope_ra=20.4368262, telescope_dec=-24.256327, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.45658, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:15:58.422696', telescope_ra_j2k=20.4112290500358, telescope_dec_j2k=-24.3390650551668, observability=1)
2025-11-17T14:16:58.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:58.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:58.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:58.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:58.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:58.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:58.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:58.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:58.568 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:58.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:58.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:58.569 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:58.569 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:16:58.570 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:16:58.571 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:59.571 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:59.571 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:59.571 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:59.571 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:59.571 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:16:59.572 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:16:59.573 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:16:59.574 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:16:59.574 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:16:59.574 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:16:59.574 [DEBUG] [ThreadPoolExecutor-2894_0] [payload.py] [to_registers()] [0]
2025-11-17T14:16:59.579 [DEBUG] [ThreadPoolExecutor-2894_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49609)
2025-11-17T14:16:59.579 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:16:59.579 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:16:59.580 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:16:59.580 [DEBUG] [ThreadPoolExecutor-2894_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:16:59.580 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:16:59.587 [DEBUG] [ThreadPoolExecutor-2894_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Status age = 18.04794716835022s
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:12.681 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:12.682 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:12.683 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 17;20.441875;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46163;2460997.01195235;14.28683694;1.3;_
2025-11-17T14:17:12.683 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response 17;20.441875;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46163;2460997.01195235;14.28683694;1.3;_
2025-11-17T14:17:12.683 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:12.683 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:12.684 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:12.684 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:12.684 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:12.685 [INFO] [Thread-68152 (handle)] [driver.py] [get_status()] Telra = 20.441875, teldec = -24.256327
2025-11-17T14:17:12.685 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] UnCookCoordinates 20.441875 -24.256327
2025-11-17T14:17:12.685 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.441875 -24.256327
2025-11-17T14:17:12.685 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.441875 -24.256327
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 17;20.441875;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46163;2460997.01195238;14.28683694;1.3;_20.4162806669731 -24.3392199027279
2025-11-17T14:17:12.686 [INFO] [Thread-68152 (handle)] [driver.py] [get_status()] ra_j2k = 20.4162806669731     dec_j2k = -24.3392199027279
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:12.686 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:12.687 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:12.688 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:12.688 [DEBUG] [Thread-68152 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:12.688 [DEBUG] [Thread-68152 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:12.689 [DEBUG] [Thread-68152 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53923)
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:12.695 [DEBUG] [Thread-68152 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:12.703 [DEBUG] [Thread-68152 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:12.703 [INFO] [Thread-68152 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01195235, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992769, telescope_ra=20.441875, telescope_dec=-24.256327, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.46163, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4162806669731, telescope_dec_j2k=-24.3392199027279, observability=1)
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.3180758953094482s
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4425126;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46226;2460997.01197943;14.28747278;1.3;_
2025-11-17T14:17:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.4425126;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46226;2460997.01197943;14.28747278;1.3;_
2025-11-17T14:17:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:15.024 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.4425126, teldec = -24.256327
2025-11-17T14:17:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4425126 -24.256327
2025-11-17T14:17:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4425126 -24.256327
2025-11-17T14:17:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4425126 -24.256327
2025-11-17T14:17:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4425126;-24.256327;50.108259;89.992769;50.08601;90.12017;17.46226;2460997.01197946;14.28747278;1.3;_20.4169186231425 -24.3392394478815
2025-11-17T14:17:15.025 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.4169186231425     dec_j2k = -24.3392394478815
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677610087127;171.162351965909;_
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677610087127;171.162351965909;_
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:15.034 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54333)
2025-11-17T14:17:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:15.035 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:15.042 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01197943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677610087127, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992769, telescope_ra=20.4425126, telescope_dec=-24.256327, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.46226, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4169186231425, telescope_dec_j2k=-24.3392394478815, observability=1)
2025-11-17T14:17:15.336 [DEBUG] [Thread-68153 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:15.336 [DEBUG] [Thread-68153 (handle)] [server.py] [get_status()] Status age = 0.2940840721130371s
2025-11-17T14:17:15.336 [DEBUG] [Thread-68153 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2940840721130371
2025-11-17T14:17:24.587 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:24.587 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:24.587 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:24.587 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:24.587 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:24.588 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:17:24.589 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:17:24.590 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Status age = 15.761788129806519s
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:30.804 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 17;20.4469107;-24.256327;50.108259;89.992768;50.08601;90.12017;17.46666;2460997.0121621;14.29185889;1.3;_
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response 17;20.4469107;-24.256327;50.108259;89.992768;50.08601;90.12017;17.46666;2460997.0121621;14.29185889;1.3;_
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:30.805 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:30.806 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:30.806 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:30.806 [INFO] [Thread-68154 (handle)] [driver.py] [get_status()] Telra = 20.4469107, teldec = -24.256327
2025-11-17T14:17:30.807 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4469107 -24.256327
2025-11-17T14:17:30.807 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4469107 -24.256327
2025-11-17T14:17:30.807 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4469107 -24.256327
2025-11-17T14:17:30.808 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 17;20.4469107;-24.256327;50.108259;89.992768;50.08601;90.12017;17.46666;2460997.01216213;14.29185889;1.3;_20.4213191825607 -24.3393742062979
2025-11-17T14:17:30.808 [INFO] [Thread-68154 (handle)] [driver.py] [get_status()] ra_j2k = 20.4213191825607     dec_j2k = -24.3393742062979
2025-11-17T14:17:30.808 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:30.808 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:30.808 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:30.808 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162362694745;_
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162362694745;_
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:30.809 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:30.810 [DEBUG] [Thread-68154 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:30.810 [DEBUG] [Thread-68154 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:30.810 [DEBUG] [Thread-68154 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39637)
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:30.815 [DEBUG] [Thread-68154 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:30.822 [DEBUG] [Thread-68154 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:30.822 [INFO] [Thread-68154 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0121621, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992768, telescope_ra=20.4469107, telescope_dec=-24.256327, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.46666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4213191825607, telescope_dec_j2k=-24.3393742062979, observability=1)
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.9755499362945557s
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:33.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:33.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:33.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4477519;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4675;2460997.01219675;14.29269778;1.3;_
2025-11-17T14:17:33.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.4477519;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4675;2460997.01219675;14.29269778;1.3;_
2025-11-17T14:17:33.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:33.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:33.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:33.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:33.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:33.801 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.4477519, teldec = -24.256326
2025-11-17T14:17:33.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.4477519 -24.256326
2025-11-17T14:17:33.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.4477519 -24.256326
2025-11-17T14:17:33.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4477519 -24.256326
2025-11-17T14:17:33.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4477519;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4675;2460997.01219678;14.29269778;1.3;_20.4221608536406 -24.3393989685217
2025-11-17T14:17:33.802 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.4221608536406     dec_j2k = -24.3393989685217
2025-11-17T14:17:33.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:33.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:33.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678011206555;171.162362694745;_
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162362694745;_
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:33.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:33.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:33.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:33.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:33.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56787)
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:33.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:33.816 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:33.817 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:17:33.817 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01219675, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992768, telescope_ra=20.4477519, telescope_dec=-24.256326, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.4675, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4221608536406, telescope_dec_j2k=-24.3393989685217, observability=1)
2025-11-17T14:17:33.817 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04578924179077 seconds ago
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5100860595703125s
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:36.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:36.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:36.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4484516;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4682;2460997.01222603;14.29339556;1.3;_
2025-11-17T14:17:36.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.4484516;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4682;2460997.01222603;14.29339556;1.3;_
2025-11-17T14:17:36.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:36.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:36.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:36.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:36.330 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:36.330 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.4484516, teldec = -24.256326
2025-11-17T14:17:36.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4484516 -24.256326
2025-11-17T14:17:36.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4484516 -24.256326
2025-11-17T14:17:36.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4484516 -24.256326
2025-11-17T14:17:36.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4484516;-24.256326;50.108259;89.992768;50.08601;90.12017;17.4682;2460997.01222605;14.29339556;1.3;_20.4228609454693 -24.3394203941234
2025-11-17T14:17:36.331 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.4228609454693     dec_j2k = -24.3394203941234
2025-11-17T14:17:36.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:36.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:36.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:36.333 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:36.333 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:36.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:36.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:36.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:36.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:36.334 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:36.334 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57863)
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:36.339 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:36.347 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:36.347 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01222603, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992768, telescope_ra=20.4484516, telescope_dec=-24.256326, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.4682, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4228609454693, telescope_dec_j2k=-24.3394203941234, observability=1)
2025-11-17T14:17:48.851 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:17:48
2025-11-17T14:17:48.851 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.504480123519897s
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:48.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:48.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237098;14.29686917;1.3;_
2025-11-17T14:17:48.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237098;14.29686917;1.3;_
2025-11-17T14:17:48.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:48.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:48.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:48.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:48.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:48.854 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.4519347, teldec = -24.256326
2025-11-17T14:17:48.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237101;14.29686917;1.3;_20.4263459976962 -24.3395270096518
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:17:48.856 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4263459976962     dec_j2k = -24.3395270096518
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Status age = 12.50866174697876s
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162351965909;_
2025-11-17T14:17:48.856 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162351965909;_
2025-11-17T14:17:48.856 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:48.857 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:48.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:48.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:48.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:48.857 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:48.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:48.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:17:48.858 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:17:48.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:48.859 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237105;14.29686917;1.3;_
2025-11-17T14:17:48.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:48.859 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237105;14.29686917;1.3;_
2025-11-17T14:17:48.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:48.859 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:17:48.859 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:17:48.859 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:48.859 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:17:48.860 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:48.860 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:17:48.860 [INFO] [Thread-68155 (handle)] [driver.py] [get_status()] Telra = 20.4519347, teldec = -24.256326
2025-11-17T14:17:48.860 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.860 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.860 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4519347 -24.256326
2025-11-17T14:17:48.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:48.861 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 17;20.4519347;-24.256326;50.108259;89.992768;50.08601;90.12017;17.47169;2460997.01237108;14.29686917;1.3;_20.4263459976962 -24.3395270096518
2025-11-17T14:17:48.861 [INFO] [Thread-68155 (handle)] [driver.py] [get_status()] ra_j2k = 20.4263459976962     dec_j2k = -24.3395270096518
2025-11-17T14:17:48.861 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:17:48.861 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:17:48.861 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:17:48.861 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50147)
2025-11-17T14:17:48.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:48.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:48.861 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162351965909;_
2025-11-17T14:17:48.862 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162351965909;_
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:17:48.862 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:48.862 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:17:48.863 [DEBUG] [Thread-68155 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48299)
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:48.869 [DEBUG] [Thread-68155 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:48.869 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:48.870 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01237098, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992768, telescope_ra=20.4519347, telescope_dec=-24.256326, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.47169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4263459976962, telescope_dec_j2k=-24.3395270096518, observability=1)
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:17:48.877 [DEBUG] [Thread-68155 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:17:48.877 [INFO] [Thread-68155 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01237105, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992768, telescope_ra=20.4519347, telescope_dec=-24.256326, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.47169, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:16:58.565956', telescope_ra_j2k=20.4263459976962, telescope_dec_j2k=-24.3395270096518, observability=1)
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:58.710 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:17:58.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:17:58.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:17:58.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:17:58.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:17:58.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:17:58.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:17:58.712 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:17:58.712 [INFO] [ThreadPoolExecutor-2895_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:17:58.712 [INFO] [ThreadPoolExecutor-2895_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Status age = 18.047515392303467s
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:06.925 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:06.926 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:06.927 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 17;20.4569774;-24.256326;50.108259;89.992767;50.08601;90.12017;17.47673;2460997.01258017;14.30189806;1.3;_
2025-11-17T14:18:06.927 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response 17;20.4569774;-24.256326;50.108259;89.992767;50.08601;90.12017;17.47673;2460997.01258017;14.30189806;1.3;_
2025-11-17T14:18:06.927 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:06.927 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:06.927 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:06.928 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:06.928 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:06.928 [INFO] [Thread-68156 (handle)] [driver.py] [get_status()] Telra = 20.4569774, teldec = -24.256326
2025-11-17T14:18:06.928 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4569774 -24.256326
2025-11-17T14:18:06.928 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4569774 -24.256326
2025-11-17T14:18:06.928 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4569774 -24.256326
2025-11-17T14:18:06.929 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 17;20.4569774;-24.256326;50.108259;89.992767;50.08601;90.12017;17.47673;2460997.0125802;14.30189806;1.3;_20.4313915290927 -24.3396812426912
2025-11-17T14:18:06.929 [INFO] [Thread-68156 (handle)] [driver.py] [get_status()] ra_j2k = 20.4313915290927     dec_j2k = -24.3396812426912
2025-11-17T14:18:06.929 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:06.929 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:06.929 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:06.930 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:06.931 [DEBUG] [Thread-68156 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45159)
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:06.936 [DEBUG] [Thread-68156 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:06.943 [DEBUG] [Thread-68156 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:06.944 [DEBUG] [Thread-68156 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:06.944 [INFO] [Thread-68156 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01258017, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992767, telescope_ra=20.4569774, telescope_dec=-24.256326, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.47673, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4313915290927, telescope_dec_j2k=-24.3396812426912, observability=1)
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.048195838928223s
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:14.992 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4592268;-24.256325;50.108259;89.992767;50.08601;90.12017;17.47898;2460997.01267355;14.30414139;1.3;_
2025-11-17T14:18:14.995 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.4592268;-24.256325;50.108259;89.992767;50.08601;90.12017;17.47898;2460997.01267355;14.30414139;1.3;_
2025-11-17T14:18:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:14.996 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:14.997 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.4592268, teldec = -24.256325
2025-11-17T14:18:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4592268 -24.256325
2025-11-17T14:18:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4592268 -24.256325
2025-11-17T14:18:14.997 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4592268 -24.256325
2025-11-17T14:18:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4592268;-24.256325;50.108259;89.992767;50.08601;90.12017;17.47898;2460997.01267359;14.30414139;1.3;_20.4336421941793 -24.3397489954249
2025-11-17T14:18:14.998 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.4336421941793     dec_j2k = -24.3397489954249
2025-11-17T14:18:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:14.998 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:14.999 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:15.000 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56969)
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:15.006 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:15.013 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:15.014 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01267355, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992767, telescope_ra=20.4592268, telescope_dec=-24.256325, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.47898, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4336421941793, telescope_dec_j2k=-24.3397489954249, observability=1)
2025-11-17T14:18:15.374 [DEBUG] [Thread-68157 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:15.375 [DEBUG] [Thread-68157 (handle)] [server.py] [get_status()] Status age = 0.36063241958618164s
2025-11-17T14:18:15.375 [DEBUG] [Thread-68157 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.36063241958618164
2025-11-17T14:18:19.590 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.590 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.590 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:19.590 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:19.590 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:18:19.591 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:19.592 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:19.593 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:18:19.594 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:19.595 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:19.596 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:19.596 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:19.596 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:19.596 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Park
2025-11-17T14:18:19.596 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:18:19.597 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:18:19.597 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 29;20.4605084;-24.256325;50.108259;89.992767;50.08601;90.12017;17.48026;2460997.01272682;14.30541944;1.3;_Park Command Successful
2025-11-17T14:18:20.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:18:20.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:18:20.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:18:20.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:18:20.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:18:21.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:18:21.598 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:18:21.599 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:18:21.600 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:18:21.600 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:18:22.600 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:18:22.600 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:18:22.600 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:18:22.601 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:18:22.601 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:18:23.601 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:18:23.601 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:18:23.601 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:23.602 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:23.603 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:18:23.604 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:18:23.605 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:24.605 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:24.605 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:24.605 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:24.605 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:24.605 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:18:24.606 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:18:24.607 [DEBUG] [ThreadPoolExecutor-2894_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:24.607 [INFO] [ThreadPoolExecutor-2894_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Status age = 10.049418210983276s
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:25.063 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:25.064 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:25.065 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 17;20.4620158;-24.256325;50.108259;89.992766;50.08601;90.12017;17.48177;2460997.0127901;14.30692278;1.3;_
2025-11-17T14:18:25.065 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response 17;20.4620158;-24.256325;50.108259;89.992766;50.08601;90.12017;17.48177;2460997.0127901;14.30692278;1.3;_
2025-11-17T14:18:25.065 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:25.065 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:25.065 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:25.066 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:25.066 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:25.066 [INFO] [Thread-68158 (handle)] [driver.py] [get_status()] Telra = 20.4620158, teldec = -24.256325
2025-11-17T14:18:25.066 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4620158 -24.256325
2025-11-17T14:18:25.066 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4620158 -24.256325
2025-11-17T14:18:25.066 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4620158 -24.256325
2025-11-17T14:18:25.067 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 17;20.4620158;-24.256325;50.108259;89.992766;50.08601;90.12017;17.48177;2460997.01279013;14.30692278;1.3;_20.4364327641841 -24.3398342012616
2025-11-17T14:18:25.067 [INFO] [Thread-68158 (handle)] [driver.py] [get_status()] ra_j2k = 20.4364327641841     dec_j2k = -24.3398342012616
2025-11-17T14:18:25.067 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:25.067 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:25.067 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162362694745;_
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162362694745;_
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:25.068 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:25.069 [DEBUG] [Thread-68158 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:25.070 [DEBUG] [Thread-68158 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:25.075 [DEBUG] [Thread-68158 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45817)
2025-11-17T14:18:25.075 [DEBUG] [Thread-68158 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:25.075 [DEBUG] [Thread-68158 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:25.076 [DEBUG] [Thread-68158 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:25.076 [DEBUG] [Thread-68158 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:25.076 [DEBUG] [Thread-68158 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:25.083 [DEBUG] [Thread-68158 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:25.083 [INFO] [Thread-68158 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0127901, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108259, telescope_az=89.992766, telescope_ra=20.4620158, telescope_dec=-24.256325, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.48177, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4364327641841, telescope_dec_j2k=-24.3398342012616, observability=1)
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.793671131134033s
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:33.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:33.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:33.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4644727;-24.256331;50.108258;89.992777;50.08601;90.12018;17.48422;2460997.01289212;14.30937278;1.3;_
2025-11-17T14:18:33.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.4644727;-24.256331;50.108258;89.992777;50.08601;90.12018;17.48422;2460997.01289212;14.30937278;1.3;_
2025-11-17T14:18:33.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:33.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:33.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:33.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:33.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:33.880 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.4644727, teldec = -24.256331
2025-11-17T14:18:33.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.4644727 -24.256331
2025-11-17T14:18:33.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.4644727 -24.256331
2025-11-17T14:18:33.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4644727 -24.256331
2025-11-17T14:18:33.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4644727;-24.256331;50.108258;89.992777;50.08601;90.12018;17.48422;2460997.01289214;14.30937278;1.3;_20.4388910477682 -24.3399152242831
2025-11-17T14:18:33.881 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.4388910477682     dec_j2k = -24.3399152242831
2025-11-17T14:18:33.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:33.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:33.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678051318498;171.162357330327;_
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162357330327;_
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:33.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:33.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44007)
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:33.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:33.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:33.893 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:33.893 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:18:33.893 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01289212, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992777, telescope_ra=20.4644727, telescope_dec=-24.256331, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.48422, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4388910477682, telescope_dec_j2k=-24.3399152242831, observability=1)
2025-11-17T14:18:33.893 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04141616821289 seconds ago
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.5464868545532227s
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:35.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:35.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:35.440 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:35.441 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:35.441 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:35.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:35.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:35.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:35.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4649113;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48466;2460997.0129102;14.30981028;1.3;_
2025-11-17T14:18:35.442 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.4649113;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48466;2460997.0129102;14.30981028;1.3;_
2025-11-17T14:18:35.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:35.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:35.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:35.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:35.443 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:35.443 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.4649113, teldec = -24.256325
2025-11-17T14:18:35.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4649113 -24.256325
2025-11-17T14:18:35.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4649113 -24.256325
2025-11-17T14:18:35.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4649113 -24.256325
2025-11-17T14:18:35.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4649113;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48466;2460997.01291023;14.30981028;1.3;_20.4393298960659 -24.339922614303
2025-11-17T14:18:35.444 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.4393298960659     dec_j2k = -24.339922614303
2025-11-17T14:18:35.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:35.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:35.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:35.445 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:35.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:35.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:35.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:35.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:35.447 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:35.447 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:35.453 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42309)
2025-11-17T14:18:35.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:35.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:35.453 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:35.454 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:35.454 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:35.461 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:35.461 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0129102, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992766, telescope_ra=20.4649113, telescope_dec=-24.256325, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.48466, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4393298960659, telescope_dec_j2k=-24.339922614303, observability=1)
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Status age = 7.67053484916687s
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:43.132 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:43.133 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:43.133 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:43.133 [DEBUG] [Thread-68159 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:43.133 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:43.134 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:43.134 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:43.134 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:43.135 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 17;20.4670621;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48681;2460997.01299924;14.31195528;1.3;_
2025-11-17T14:18:43.135 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response 17;20.4670621;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48681;2460997.01299924;14.31195528;1.3;_
2025-11-17T14:18:43.135 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:43.135 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:43.135 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:43.136 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:43.136 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:43.136 [INFO] [Thread-68159 (handle)] [driver.py] [get_status()] Telra = 20.4670621, teldec = -24.256325
2025-11-17T14:18:43.136 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4670621 -24.256325
2025-11-17T14:18:43.136 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4670621 -24.256325
2025-11-17T14:18:43.136 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4670621 -24.256325
2025-11-17T14:18:43.137 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 17;20.4670621;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48681;2460997.01299927;14.31195528;1.3;_20.4414819095093 -24.3399882575459
2025-11-17T14:18:43.137 [INFO] [Thread-68159 (handle)] [driver.py] [get_status()] ra_j2k = 20.4414819095093     dec_j2k = -24.3399882575459
2025-11-17T14:18:43.137 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:43.137 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:43.137 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 140;0.104678893669297;171.162357330327;_
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response 140;0.104678893669297;171.162357330327;_
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:43.138 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:43.139 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:43.140 [DEBUG] [Thread-68159 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:43.140 [DEBUG] [Thread-68159 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:43.140 [DEBUG] [Thread-68159 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37599)
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:43.147 [DEBUG] [Thread-68159 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:43.154 [DEBUG] [Thread-68159 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:43.154 [INFO] [Thread-68159 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01299924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678893669297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992766, telescope_ra=20.4670621, telescope_dec=-24.256325, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.48681, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4414819095093, telescope_dec_j2k=-24.3399882575459, observability=1)
2025-11-17T14:18:48.930 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:18:48
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.776187896728516s
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:48.931 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:18:48.932 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4686788;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48843;2460997.01306634;14.3135675;1.3;_
2025-11-17T14:18:48.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.4686788;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48843;2460997.01306634;14.3135675;1.3;_
2025-11-17T14:18:48.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:18:48.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:18:48.933 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:18:48.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:48.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:18:48.934 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.4686788, teldec = -24.256325
2025-11-17T14:18:48.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4686788 -24.256325
2025-11-17T14:18:48.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4686788 -24.256325
2025-11-17T14:18:48.934 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4686788 -24.256325
2025-11-17T14:18:48.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4686788;-24.256325;50.108258;89.992766;50.08601;90.12017;17.48843;2460997.01306638;14.3135675;1.3;_20.4430995223348 -24.3400375826344
2025-11-17T14:18:48.935 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4430995223348     dec_j2k = -24.3400375826344
2025-11-17T14:18:48.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:18:48.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:18:48.935 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678452437926;171.162346601491;_
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678452437926;171.162346601491;_
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:48.936 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:18:48.937 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:18:48.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:48.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:18:48.938 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:18:48.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44561)
2025-11-17T14:18:48.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:48.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:48.944 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:18:48.944 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:48.945 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:48.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:48.951 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:18:48.952 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:18:48.952 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01306634, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678452437926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992766, telescope_ra=20.4686788, telescope_dec=-24.256325, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.48843, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:17:58.709733', telescope_ra_j2k=20.4430995223348, telescope_dec_j2k=-24.3400375826344, observability=1)
2025-11-17T14:18:58.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:58.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:58.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:58.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:58.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:58.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:58.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:58.854 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:58.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:58.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:58.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:58.855 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:18:58.855 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:58.855 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:58.855 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:58.855 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:58.855 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:18:58.856 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:18:58.857 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:59.857 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:59.857 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:59.857 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:59.857 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:59.857 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:18:59.858 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:18:59.859 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:18:59.860 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:18:59.860 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:18:59.860 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:18:59.860 [DEBUG] [ThreadPoolExecutor-2896_0] [payload.py] [to_registers()] [0]
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41747)
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:18:59.862 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:18:59.869 [DEBUG] [ThreadPoolExecutor-2896_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Status age = 12.246323823928833s
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:01.198 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:01.199 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:01.199 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:01.199 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:01.199 [DEBUG] [Thread-68160 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:01.199 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 17;20.4720797;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49183;2460997.01320833;14.31695917;1.3;_
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response 17;20.4720797;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49183;2460997.01320833;14.31695917;1.3;_
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:01.200 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:01.201 [INFO] [Thread-68160 (handle)] [driver.py] [get_status()] Telra = 20.4720797, teldec = -24.256324
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4720797 -24.256324
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4720797 -24.256324
2025-11-17T14:19:01.201 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4720797 -24.256324
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 17;20.4721076;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49186;2460997.01320836;14.31698694;1.3;_20.4465023447167 -24.3401402950088
2025-11-17T14:19:01.202 [INFO] [Thread-68160 (handle)] [driver.py] [get_status()] ra_j2k = 20.4465023447167     dec_j2k = -24.3401402950088
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 140;0.104678211766269;171.162357330327;_
2025-11-17T14:19:01.202 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response 140;0.104678211766269;171.162357330327;_
2025-11-17T14:19:01.203 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:01.203 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:01.203 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:01.203 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:01.204 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:01.205 [DEBUG] [Thread-68160 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:01.205 [DEBUG] [Thread-68160 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:01.205 [DEBUG] [Thread-68160 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47933)
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:01.212 [DEBUG] [Thread-68160 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:01.219 [DEBUG] [Thread-68160 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:01.220 [INFO] [Thread-68160 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01320833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678211766269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992765, telescope_ra=20.4720797, telescope_dec=-24.256324, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.49183, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4465023447167, telescope_dec_j2k=-24.3401402950088, observability=1)
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 13.792535543441772s
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4759472;-24.256324;50.108258;89.992765;50.08601;90.12017;17.4957;2460997.01336822;14.32081611;1.3;_
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.4759472;-24.256324;50.108258;89.992765;50.08601;90.12017;17.4957;2460997.01336822;14.32081611;1.3;_
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:15.015 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.4759472, teldec = -24.256324
2025-11-17T14:19:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4759472 -24.256324
2025-11-17T14:19:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4759472 -24.256324
2025-11-17T14:19:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4759472 -24.256324
2025-11-17T14:19:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4759472;-24.256324;50.108258;89.992765;50.08601;90.12017;17.4957;2460997.01336824;14.32081611;1.3;_20.4503720339442 -24.3402581568896
2025-11-17T14:19:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.4503720339442     dec_j2k = -24.3402581568896
2025-11-17T14:19:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678171654326;171.162351965909;_
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678171654326;171.162351965909;_
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48953)
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:15.033 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01336822, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678171654326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992765, telescope_ra=20.4759472, telescope_dec=-24.256324, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.4957, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4503720339442, telescope_dec_j2k=-24.3402581568896, observability=1)
2025-11-17T14:19:15.418 [DEBUG] [Thread-68161 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:15.418 [DEBUG] [Thread-68161 (handle)] [server.py] [get_status()] Status age = 0.3855102062225342s
2025-11-17T14:19:15.418 [DEBUG] [Thread-68161 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3855102062225342
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Status age = 4.29312539100647s
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:19.326 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:19.327 [DEBUG] [Thread-68162 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:19.327 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:19.327 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:19.327 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:19.327 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:19.328 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 17;20.4771444;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49689;2460997.01341815;14.32201;1.3;_
2025-11-17T14:19:19.328 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response 17;20.4771444;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49689;2460997.01341815;14.32201;1.3;_
2025-11-17T14:19:19.328 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:19.328 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:19.328 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:19.329 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:19.329 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:19.329 [INFO] [Thread-68162 (handle)] [driver.py] [get_status()] Telra = 20.4771444, teldec = -24.256324
2025-11-17T14:19:19.329 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4771444 -24.256324
2025-11-17T14:19:19.329 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4771444 -24.256324
2025-11-17T14:19:19.329 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4771444 -24.256324
2025-11-17T14:19:19.330 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 17;20.4771444;-24.256324;50.108258;89.992765;50.08601;90.12017;17.49689;2460997.01341817;14.32201;1.3;_20.451569912336 -24.340294624312
2025-11-17T14:19:19.330 [INFO] [Thread-68162 (handle)] [driver.py] [get_status()] ra_j2k = 20.451569912336     dec_j2k = -24.340294624312
2025-11-17T14:19:19.330 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:19.330 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:19.330 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 140;0.104677610087127;171.162351965909;_
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response 140;0.104677610087127;171.162351965909;_
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:19.331 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:19.332 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:19.333 [DEBUG] [Thread-68162 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:19.333 [DEBUG] [Thread-68162 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:19.333 [DEBUG] [Thread-68162 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:19.339 [DEBUG] [Thread-68162 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40289)
2025-11-17T14:19:19.340 [DEBUG] [Thread-68162 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:19.340 [DEBUG] [Thread-68162 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:19.340 [DEBUG] [Thread-68162 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:19.340 [DEBUG] [Thread-68162 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:19.340 [DEBUG] [Thread-68162 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:19.347 [DEBUG] [Thread-68162 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:19.347 [INFO] [Thread-68162 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01341815, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677610087127, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992765, telescope_ra=20.4771444, telescope_dec=-24.256324, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.49689, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.451569912336, telescope_dec_j2k=-24.340294624312, observability=1)
2025-11-17T14:19:24.870 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:24.870 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:24.870 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:24.870 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:24.870 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:24.871 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:19:24.872 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:19:24.873 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.605267763137817s
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:33.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4812175;-24.256324;50.108258;89.992764;50.08601;90.12017;17.50097;2460997.01358743;14.32607194;1.3;_
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.4812175;-24.256324;50.108258;89.992764;50.08601;90.12017;17.50097;2460997.01358743;14.32607194;1.3;_
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:33.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:33.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:33.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:33.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:33.956 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.4812175, teldec = -24.256324
2025-11-17T14:19:33.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.4812175 -24.256324
2025-11-17T14:19:33.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.4812175 -24.256324
2025-11-17T14:19:33.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4812175 -24.256324
2025-11-17T14:19:33.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.4812175;-24.256324;50.108258;89.992764;50.08601;90.12017;17.50097;2460997.01358747;14.32607194;1.3;_20.4556453228567 -24.3404186324239
2025-11-17T14:19:33.957 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.4556453228567     dec_j2k = -24.3404186324239
2025-11-17T14:19:33.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:33.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:33.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677770534898;171.162346601491;_
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677770534898;171.162346601491;_
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:33.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:33.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:33.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:33.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:33.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:33.964 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52491)
2025-11-17T14:19:33.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:33.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:33.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:33.965 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:33.965 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:33.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:33.972 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:19:33.972 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01358743, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677770534898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992764, telescope_ra=20.4812175, telescope_dec=-24.256324, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.50097, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4556453228567, telescope_dec_j2k=-24.3404186324239, observability=1)
2025-11-17T14:19:33.972 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.04155206680298 seconds ago
2025-11-17T14:19:34.552 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:34.552 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5803990364074707s
2025-11-17T14:19:34.552 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5803990364074707
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Status age = 3.4250402450561523s
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:37.397 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:37.398 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:37.398 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:37.398 [DEBUG] [Thread-68163 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 17;20.4821876;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50194;2460997.0136273;14.32703944;1.3;_
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response 17;20.4821876;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50194;2460997.0136273;14.32703944;1.3;_
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:37.399 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:37.400 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:37.400 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:37.400 [INFO] [Thread-68163 (handle)] [driver.py] [get_status()] Telra = 20.4821876, teldec = -24.256323
2025-11-17T14:19:37.400 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4821876 -24.256323
2025-11-17T14:19:37.400 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4821876 -24.256323
2025-11-17T14:19:37.400 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4821876 -24.256323
2025-11-17T14:19:37.401 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 17;20.4821876;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50194;2460997.01362733;14.32703944;1.3;_20.4566159738923 -24.3404471539313
2025-11-17T14:19:37.401 [INFO] [Thread-68163 (handle)] [driver.py] [get_status()] ra_j2k = 20.4566159738923     dec_j2k = -24.3404471539313
2025-11-17T14:19:37.401 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:37.401 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:37.401 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:37.402 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:37.403 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:37.404 [DEBUG] [Thread-68163 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:37.404 [DEBUG] [Thread-68163 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:37.404 [DEBUG] [Thread-68163 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36313)
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:37.407 [DEBUG] [Thread-68163 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:37.414 [DEBUG] [Thread-68163 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:37.414 [INFO] [Thread-68163 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0136273, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992764, telescope_ra=20.4821876, telescope_dec=-24.256323, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.50194, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4566159738923, telescope_dec_j2k=-24.3404471539313, observability=1)
2025-11-17T14:19:49.013 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:19:49
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.598644018173218s
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:49.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4853991;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50515;2460997.01376174;14.33024222;1.3;_
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.4853991;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50515;2460997.01376174;14.33024222;1.3;_
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:49.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:49.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:49.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:49.015 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.4853991, teldec = -24.256323
2025-11-17T14:19:49.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4853991 -24.256323
2025-11-17T14:19:49.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4853991 -24.256323
2025-11-17T14:19:49.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4853991 -24.256323
2025-11-17T14:19:49.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.4853991;-24.256323;50.108258;89.992764;50.08601;90.12017;17.50515;2460997.01376176;14.33024222;1.3;_20.4598292991128 -24.3405448458923
2025-11-17T14:19:49.016 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4598292991128     dec_j2k = -24.3405448458923
2025-11-17T14:19:49.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:49.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162351965909;_
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162351965909;_
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:49.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:19:49.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52787)
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:49.024 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:49.031 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:49.032 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:49.032 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:49.032 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01376174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992764, telescope_ra=20.4853991, telescope_dec=-24.256323, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.50515, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4598292991128, telescope_dec_j2k=-24.3405448458923, observability=1)
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Status age = 6.426506042480469s
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:55.458 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 17;20.4872024;-24.256323;50.108258;89.992763;50.08601;90.12017;17.50695;2460997.01383633;14.33204056;1.3;_
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response 17;20.4872024;-24.256323;50.108258;89.992763;50.08601;90.12017;17.50695;2460997.01383633;14.33204056;1.3;_
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:19:55.459 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:19:55.460 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:55.460 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:19:55.460 [INFO] [Thread-68164 (handle)] [driver.py] [get_status()] Telra = 20.4872024, teldec = -24.256323
2025-11-17T14:19:55.460 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4872024 -24.256323
2025-11-17T14:19:55.460 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4872024 -24.256323
2025-11-17T14:19:55.460 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4872024 -24.256323
2025-11-17T14:19:55.461 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 17;20.4872024;-24.256323;50.108258;89.992763;50.08601;90.12017;17.50695;2460997.01383635;14.33204056;1.3;_20.4616336250522 -24.3405996754958
2025-11-17T14:19:55.461 [INFO] [Thread-68164 (handle)] [driver.py] [get_status()] ra_j2k = 20.4616336250522     dec_j2k = -24.3405996754958
2025-11-17T14:19:55.461 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:19:55.462 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:19:55.462 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162351965909;_
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162351965909;_
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:55.463 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:19:55.464 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:19:55.465 [DEBUG] [Thread-68164 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:55.465 [DEBUG] [Thread-68164 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:19:55.465 [DEBUG] [Thread-68164 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60837)
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:19:55.468 [DEBUG] [Thread-68164 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:19:55.475 [DEBUG] [Thread-68164 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:19:55.475 [INFO] [Thread-68164 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01383633, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108258, telescope_az=89.992763, telescope_ra=20.4872024, telescope_dec=-24.256323, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.50695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:18:58.851931', telescope_ra_j2k=20.4616336250522, telescope_dec_j2k=-24.3405996754958, observability=1)
2025-11-17T14:19:58.995 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:58.995 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:58.996 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:19:58.996 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:19:58.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:19:58.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:19:58.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:19:58.997 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:19:58.997 [INFO] [ThreadPoolExecutor-2897_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:19:58.997 [INFO] [ThreadPoolExecutor-2897_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Status age = 18.101746559143066s
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:13.577 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:20:13.579 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:20:13.580 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 17;20.4922484;-24.256323;50.108257;89.992763;50.08601;90.12017;17.512;2460997.01404606;14.33707278;1.3;_
2025-11-17T14:20:13.580 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response 17;20.4922484;-24.256323;50.108257;89.992763;50.08601;90.12017;17.512;2460997.01404606;14.33707278;1.3;_
2025-11-17T14:20:13.580 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:20:13.580 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:20:13.580 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:20:13.581 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:13.581 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:13.581 [INFO] [Thread-68165 (handle)] [driver.py] [get_status()] Telra = 20.4922484, teldec = -24.256323
2025-11-17T14:20:13.581 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4922484 -24.256323
2025-11-17T14:20:13.581 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4922484 -24.256323
2025-11-17T14:20:13.581 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4922484 -24.256323
2025-11-17T14:20:13.582 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 17;20.4922484;-24.256323;50.108257;89.992763;50.08601;90.12017;17.512;2460997.01404609;14.33707278;1.3;_20.466682499864 -24.3407530014051
2025-11-17T14:20:13.582 [INFO] [Thread-68165 (handle)] [driver.py] [get_status()] ra_j2k = 20.466682499864     dec_j2k = -24.3407530014051
2025-11-17T14:20:13.582 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:20:13.582 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:20:13.582 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 140;0.104678813445411;171.162357330327;_
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response 140;0.104678813445411;171.162357330327;_
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:13.583 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:13.584 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:13.584 [DEBUG] [Thread-68165 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:13.584 [DEBUG] [Thread-68165 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:13.584 [DEBUG] [Thread-68165 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:13.587 [DEBUG] [Thread-68165 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34407)
2025-11-17T14:20:13.587 [DEBUG] [Thread-68165 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:20:13.587 [DEBUG] [Thread-68165 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:20:13.587 [DEBUG] [Thread-68165 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:20:13.587 [DEBUG] [Thread-68165 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:20:13.588 [DEBUG] [Thread-68165 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:20:13.595 [DEBUG] [Thread-68165 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:20:13.595 [INFO] [Thread-68165 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01404606, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678813445411, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992763, telescope_ra=20.4922484, telescope_dec=-24.256323, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.512, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:19:58.995331', telescope_ra_j2k=20.466682499864, telescope_dec_j2k=-24.3407530014051, observability=1)
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.4211182594299316s
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4926414;-24.256323;50.108257;89.992763;50.08601;90.12017;17.51239;2460997.01406271;14.33746472;1.3;_
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.4926414;-24.256323;50.108257;89.992763;50.08601;90.12017;17.51239;2460997.01406271;14.33746472;1.3;_
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:20:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:20:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:20:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:15.020 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.4926414, teldec = -24.256323
2025-11-17T14:20:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4926414 -24.256323
2025-11-17T14:20:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4926414 -24.256323
2025-11-17T14:20:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4926414 -24.256323
2025-11-17T14:20:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.4926414;-24.256323;50.108257;89.992763;50.08601;90.12017;17.51239;2460997.01406274;14.33746472;1.3;_20.4670757240132 -24.340764936864
2025-11-17T14:20:15.021 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.4670757240132     dec_j2k = -24.340764936864
2025-11-17T14:20:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:20:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:20:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677730422955;171.162351965909;_
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677730422955;171.162351965909;_
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58445)
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:20:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:20:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:20:15.038 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01406271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677730422955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992763, telescope_ra=20.4926414, telescope_dec=-24.256323, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.51239, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:19:58.995331', telescope_ra_j2k=20.4670757240132, telescope_dec_j2k=-24.340764936864, observability=1)
2025-11-17T14:20:15.451 [DEBUG] [Thread-68166 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:15.451 [DEBUG] [Thread-68166 (handle)] [server.py] [get_status()] Status age = 0.41390299797058105s
2025-11-17T14:20:15.451 [DEBUG] [Thread-68166 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.41390299797058105
2025-11-17T14:20:19.873 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.873 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.873 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:19.873 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:19.873 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:20:19.874 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:19.875 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:19.876 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:20:19.877 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:19.878 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Park
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:20:19.879 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:20:19.880 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 29;20.4940074;-24.256322;50.108257;89.992763;50.08601;90.12017;17.51376;2460997.01411898;14.33882694;1.3;_Park Command Successful
2025-11-17T14:20:20.880 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:20:20.880 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:20:20.880 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:20:20.881 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:20:20.881 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:20:21.881 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:20:21.881 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:20:21.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:20:21.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:20:21.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:20:22.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:20:22.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:20:22.882 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:20:22.883 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:20:22.883 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:20:23.883 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:20:23.883 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:20:23.883 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:23.884 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:20:23.885 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:20:23.886 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:24.886 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:24.886 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:24.886 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:24.886 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:24.886 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:20:24.887 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:20:24.888 [DEBUG] [ThreadPoolExecutor-2896_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:24.888 [INFO] [ThreadPoolExecutor-2896_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Status age = 16.606350660324097s
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:31.644 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:20:31.645 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:20:31.646 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:20:31.646 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 17;20.49729;-24.256322;50.108257;89.992762;50.08601;90.12017;17.51704;2460997.01425516;14.34210056;1.3;_
2025-11-17T14:20:31.646 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response 17;20.49729;-24.256322;50.108257;89.992762;50.08601;90.12017;17.51704;2460997.01425516;14.34210056;1.3;_
2025-11-17T14:20:31.646 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:20:31.646 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:20:31.647 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:20:31.647 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:31.648 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:31.648 [INFO] [Thread-68167 (handle)] [driver.py] [get_status()] Telra = 20.49729, teldec = -24.256322
2025-11-17T14:20:31.648 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] UnCookCoordinates 20.49729 -24.256322
2025-11-17T14:20:31.648 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.49729 -24.256322
2025-11-17T14:20:31.648 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.49729 -24.256322
2025-11-17T14:20:31.649 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 17;20.49729;-24.256322;50.108257;89.992762;50.08601;90.12017;17.51704;2460997.0142552;14.34210056;1.3;_20.4717269782502 -24.3409050486061
2025-11-17T14:20:31.649 [INFO] [Thread-68167 (handle)] [driver.py] [get_status()] ra_j2k = 20.4717269782502     dec_j2k = -24.3409050486061
2025-11-17T14:20:31.649 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:20:31.649 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:20:31.649 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 140;0.104678051318498;171.162357330327;_
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162357330327;_
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:31.650 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:31.651 [DEBUG] [Thread-68167 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49559)
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:20:31.656 [DEBUG] [Thread-68167 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:20:31.663 [DEBUG] [Thread-68167 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:20:31.664 [DEBUG] [Thread-68167 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:20:31.664 [DEBUG] [Thread-68167 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:20:31.664 [INFO] [Thread-68167 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01425516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992762, telescope_ra=20.49729, telescope_dec=-24.256322, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.51704, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:19:58.995331', telescope_ra_j2k=20.4717269782502, telescope_dec_j2k=-24.3409050486061, observability=1)
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9832556247711182s
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:33.647 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4978507;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5176;2460997.01427833;14.34265972;1.3;_
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.4978507;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5176;2460997.01427833;14.34265972;1.3;_
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:20:33.648 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:20:33.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:33.649 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:33.649 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.4978507, teldec = -24.256322
2025-11-17T14:20:33.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.4978507 -24.256322
2025-11-17T14:20:33.649 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.4978507 -24.256322
2025-11-17T14:20:33.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.4978507 -24.256322
2025-11-17T14:20:33.650 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.4978507;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5176;2460997.01427836;14.34265972;1.3;_20.4722879987163 -24.340922060719
2025-11-17T14:20:33.651 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.4722879987163     dec_j2k = -24.340922060719
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:20:33.651 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:20:33.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:33.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:33.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:33.652 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:33.653 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:33.653 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:33.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:33.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:33.653 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:33.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:33.654 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:33.654 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33177)
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:20:33.661 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:20:33.668 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:20:33.668 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01427833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992762, telescope_ra=20.4978507, telescope_dec=-24.256322, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.5176, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:19:58.995331', telescope_ra_j2k=20.4722879987163, telescope_dec_j2k=-24.340922060719, observability=1)
2025-11-17T14:20:34.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:20:34.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.3634307384490967s
2025-11-17T14:20:34.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.3634307384490967
2025-11-17T14:20:34.032 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01899003982544 seconds ago
2025-11-17T14:20:49.093 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:20:49
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.424379825592041s
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:49.093 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:20:49.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:20:49.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:20:49.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:20:49.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5021449;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5219;2460997.01445711;14.34694222;1.3;_
2025-11-17T14:20:49.094 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.5021449;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5219;2460997.01445711;14.34694222;1.3;_
2025-11-17T14:20:49.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:20:49.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:20:49.095 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:20:49.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:49.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:20:49.096 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.5021449, teldec = -24.256322
2025-11-17T14:20:49.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5021449 -24.256322
2025-11-17T14:20:49.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5021449 -24.256322
2025-11-17T14:20:49.096 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5021449 -24.256322
2025-11-17T14:20:49.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5021449;-24.256322;50.108257;89.992762;50.08601;90.12017;17.5219;2460997.01445714;14.34694222;1.3;_20.4765846554749 -24.3410522907518
2025-11-17T14:20:49.097 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4765846554749     dec_j2k = -24.3410522907518
2025-11-17T14:20:49.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:20:49.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:20:49.097 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678211766269;171.162357330327;_
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678211766269;171.162357330327;_
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:49.098 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:20:49.099 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:20:49.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:49.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:20:49.100 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:20:49.104 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39607)
2025-11-17T14:20:49.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:20:49.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:20:49.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:20:49.105 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:20:49.105 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:20:49.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:20:49.112 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01445711, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678211766269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992762, telescope_ra=20.5021449, telescope_dec=-24.256322, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.5219, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:19:58.995331', telescope_ra_j2k=20.4765846554749, telescope_dec_j2k=-24.3410522907518, observability=1)
2025-11-17T14:20:49.771 [DEBUG] [Thread-68168 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:20:49.771 [DEBUG] [Thread-68168 (handle)] [server.py] [get_status()] Status age = 0.659024715423584s
2025-11-17T14:20:49.771 [DEBUG] [Thread-68168 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.659024715423584
2025-11-17T14:20:59.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:59.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:59.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:59.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:59.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:59.140 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:59.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:59.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:59.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:59.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:59.141 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:20:59.141 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:20:59.142 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:20:59.143 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:20:59.143 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:00.143 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:21:00.144 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:21:00.145 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:00.145 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:00.145 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:00.145 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:00.145 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:00.146 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:00.146 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:00.146 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:00.146 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:00.146 [DEBUG] [ThreadPoolExecutor-2898_0] [payload.py] [to_registers()] [0]
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46763)
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:00.152 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:00.159 [DEBUG] [ThreadPoolExecutor-2898_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Status age = 18.726154565811157s
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:07.838 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:07.839 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:07.840 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 17;20.50738;-24.256321;50.108257;89.992761;50.08601;90.12017;17.52713;2460997.01467407;14.35216306;1.3;_
2025-11-17T14:21:07.840 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response 17;20.50738;-24.256321;50.108257;89.992761;50.08601;90.12017;17.52713;2460997.01467407;14.35216306;1.3;_
2025-11-17T14:21:07.840 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:07.840 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:07.840 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:07.841 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:07.841 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:07.841 [INFO] [Thread-68169 (handle)] [driver.py] [get_status()] Telra = 20.50738, teldec = -24.256321
2025-11-17T14:21:07.841 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] UnCookCoordinates 20.50738 -24.256321
2025-11-17T14:21:07.841 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.50738 -24.256321
2025-11-17T14:21:07.842 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.50738 -24.256321
2025-11-17T14:21:07.842 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 17;20.50738;-24.256321;50.108257;89.992761;50.08601;90.12017;17.52713;2460997.0146741;14.35216306;1.3;_20.4818227564905 -24.3412099126493
2025-11-17T14:21:07.842 [INFO] [Thread-68169 (handle)] [driver.py] [get_status()] ra_j2k = 20.4818227564905     dec_j2k = -24.3412099126493
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162368059163;_
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162368059163;_
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:07.843 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:07.844 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:07.845 [DEBUG] [Thread-68169 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:07.845 [DEBUG] [Thread-68169 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:07.846 [DEBUG] [Thread-68169 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:07.846 [DEBUG] [Thread-68169 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49007)
2025-11-17T14:21:07.846 [DEBUG] [Thread-68169 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:07.846 [DEBUG] [Thread-68169 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:07.847 [DEBUG] [Thread-68169 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:07.847 [DEBUG] [Thread-68169 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:07.847 [DEBUG] [Thread-68169 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:07.854 [DEBUG] [Thread-68169 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:07.854 [INFO] [Thread-68169 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01467407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992761, telescope_ra=20.50738, telescope_dec=-24.256321, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.52713, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4818227564905, telescope_dec_j2k=-24.3412099126493, observability=1)
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.164974212646484s
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5093532;-24.256321;50.108257;89.992761;50.08601;90.12017;17.5291;2460997.01475719;14.35413083;1.3;_
2025-11-17T14:21:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.5093532;-24.256321;50.108257;89.992761;50.08601;90.12017;17.5291;2460997.01475719;14.35413083;1.3;_
2025-11-17T14:21:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:15.022 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.5093532, teldec = -24.256321
2025-11-17T14:21:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5093532 -24.256321
2025-11-17T14:21:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5093532 -24.256321
2025-11-17T14:21:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5093532 -24.256321
2025-11-17T14:21:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5093813;-24.256321;50.108257;89.992761;50.08601;90.12017;17.52913;2460997.01475721;14.35415889;1.3;_20.4837970892156 -24.3412696591677
2025-11-17T14:21:15.023 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.4837970892156     dec_j2k = -24.3412696591677
2025-11-17T14:21:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678612885697;171.162351965909;_
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678612885697;171.162351965909;_
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54213)
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:15.039 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01475719, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678612885697, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.992761, telescope_ra=20.5093532, telescope_dec=-24.256321, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.5291, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4837970892156, telescope_dec_j2k=-24.3412696591677, observability=1)
2025-11-17T14:21:15.484 [DEBUG] [Thread-68170 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:15.484 [DEBUG] [Thread-68170 (handle)] [server.py] [get_status()] Status age = 0.4454782009124756s
2025-11-17T14:21:15.485 [DEBUG] [Thread-68170 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4454782009124756
2025-11-17T14:21:25.159 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:25.160 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:25.161 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:21:25.162 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:25.905 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:25.905 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Status age = 10.866353273391724s
2025-11-17T14:21:25.905 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:25.905 [DEBUG] [Thread-68171 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:25.905 [DEBUG] [Thread-68171 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:25.906 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:25.907 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:25.907 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:25.907 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:25.908 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 17;20.5123937;-24.256321;50.108257;89.99276;50.08601;90.12017;17.53214;2460997.01488318;14.35716306;1.3;_
2025-11-17T14:21:25.908 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response 17;20.5123937;-24.256321;50.108257;89.99276;50.08601;90.12017;17.53214;2460997.01488318;14.35716306;1.3;_
2025-11-17T14:21:25.908 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:25.908 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:25.908 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:25.909 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:25.909 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:25.909 [INFO] [Thread-68171 (handle)] [driver.py] [get_status()] Telra = 20.5123937, teldec = -24.256321
2025-11-17T14:21:25.909 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5123937 -24.256321
2025-11-17T14:21:25.909 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5123937 -24.256321
2025-11-17T14:21:25.909 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5123937 -24.256321
2025-11-17T14:21:25.910 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 17;20.5123937;-24.256321;50.108257;89.99276;50.08601;90.12017;17.53214;2460997.01488322;14.35716306;1.3;_20.4868393363985 -24.3413616786887
2025-11-17T14:21:25.910 [INFO] [Thread-68171 (handle)] [driver.py] [get_status()] ra_j2k = 20.4868393363985     dec_j2k = -24.3413616786887
2025-11-17T14:21:25.910 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:25.910 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:25.910 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:25.911 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:25.912 [DEBUG] [Thread-68171 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:25.917 [DEBUG] [Thread-68171 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41073)
2025-11-17T14:21:25.917 [DEBUG] [Thread-68171 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:25.917 [DEBUG] [Thread-68171 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:25.918 [DEBUG] [Thread-68171 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:25.918 [DEBUG] [Thread-68171 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:25.918 [DEBUG] [Thread-68171 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:25.925 [DEBUG] [Thread-68171 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:25.925 [INFO] [Thread-68171 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01488318, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108257, telescope_az=89.99276, telescope_ra=20.5123937, telescope_dec=-24.256321, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.53214, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4868393363985, telescope_dec_j2k=-24.3413616786887, observability=1)
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.836696147918701s
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:32.762 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:32.763 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:32.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:32.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5143198;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53407;2460997.01496255;14.35908389;1.3;_
2025-11-17T14:21:32.764 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5143198;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53407;2460997.01496255;14.35908389;1.3;_
2025-11-17T14:21:32.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:32.764 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:32.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:32.765 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:32.765 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:32.766 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5143198, teldec = -24.256321
2025-11-17T14:21:32.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5143198 -24.256321
2025-11-17T14:21:32.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5143198 -24.256321
2025-11-17T14:21:32.766 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5143198 -24.256321
2025-11-17T14:21:32.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5143198;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53407;2460997.01496258;14.35908389;1.3;_20.4887665443159 -24.3414199438466
2025-11-17T14:21:32.767 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.4887665443159     dec_j2k = -24.3414199438466
2025-11-17T14:21:32.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:32.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:32.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:32.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:32.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:32.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:32.769 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37839)
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:32.776 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:32.783 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:32.784 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:32.784 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01496255, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.99276, telescope_ra=20.5143198, telescope_dec=-24.256321, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.53407, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4887665443159, telescope_dec_j2k=-24.3414199438466, observability=1)
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.308051586151123s
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:34.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:34.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:34.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:34.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:34.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5146836;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53443;2460997.01497793;14.35944667;1.3;_
2025-11-17T14:21:34.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5146836;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53443;2460997.01497793;14.35944667;1.3;_
2025-11-17T14:21:34.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:34.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:34.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:34.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:34.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:34.095 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5146836, teldec = -24.256321
2025-11-17T14:21:34.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5146836 -24.256321
2025-11-17T14:21:34.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5146836 -24.256321
2025-11-17T14:21:34.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5146836 -24.256321
2025-11-17T14:21:34.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5146836;-24.256321;50.108256;89.99276;50.08601;90.12017;17.53443;2460997.01497796;14.35944667;1.3;_20.4891305536749 -24.3414309465206
2025-11-17T14:21:34.096 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.4891305536749     dec_j2k = -24.3414309465206
2025-11-17T14:21:34.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:34.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:34.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678011206555;171.162351965909;_
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162351965909;_
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:34.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:34.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:34.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:34.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:34.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55137)
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:34.100 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:34.107 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:21:34.108 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01497793, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.99276, telescope_ra=20.5146836, telescope_dec=-24.256321, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.53443, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4891305536749, telescope_dec_j2k=-24.3414309465206, observability=1)
2025-11-17T14:21:34.108 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01503348350525 seconds ago
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Status age = 9.926623344421387s
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:44.034 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:44.035 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:44.036 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:44.036 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 17;20.5174383;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53719;2460997.01509301;14.36219389;1.3;_
2025-11-17T14:21:44.036 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response 17;20.5174383;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53719;2460997.01509301;14.36219389;1.3;_
2025-11-17T14:21:44.037 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:44.037 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:44.037 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:44.037 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:44.038 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:44.038 [INFO] [Thread-68172 (handle)] [driver.py] [get_status()] Telra = 20.5174383, teldec = -24.25632
2025-11-17T14:21:44.038 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5174383 -24.25632
2025-11-17T14:21:44.038 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5174383 -24.25632
2025-11-17T14:21:44.038 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5174383 -24.25632
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 17;20.5174662;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53722;2460997.01509304;14.36222167;1.3;_20.4918868401027 -24.3415132343387
2025-11-17T14:21:44.039 [INFO] [Thread-68172 (handle)] [driver.py] [get_status()] ra_j2k = 20.4918868401027     dec_j2k = -24.3415132343387
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:44.039 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:44.040 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:44.041 [DEBUG] [Thread-68172 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:44.041 [DEBUG] [Thread-68172 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:44.041 [DEBUG] [Thread-68172 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57373)
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:44.048 [DEBUG] [Thread-68172 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:44.055 [DEBUG] [Thread-68172 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:44.055 [INFO] [Thread-68172 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01509301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.99276, telescope_ra=20.5174383, telescope_dec=-24.25632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.53719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4918868401027, telescope_dec_j2k=-24.3415132343387, observability=1)
2025-11-17T14:21:49.173 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:21:49
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.117771863937378s
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:49.173 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:21:49.174 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:21:49.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.518885;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53864;2460997.01515249;14.36363667;1.3;_
2025-11-17T14:21:49.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.518885;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53864;2460997.01515249;14.36363667;1.3;_
2025-11-17T14:21:49.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:21:49.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:21:49.175 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:21:49.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:49.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:21:49.176 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.518885, teldec = -24.25632
2025-11-17T14:21:49.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.518885 -24.25632
2025-11-17T14:21:49.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.518885 -24.25632
2025-11-17T14:21:49.176 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.518885 -24.25632
2025-11-17T14:21:49.177 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.518885;-24.25632;50.108256;89.99276;50.08601;90.12017;17.53864;2460997.01515251;14.36363667;1.3;_20.4933343738746 -24.3415569574826
2025-11-17T14:21:49.177 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.4933343738746     dec_j2k = -24.3415569574826
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162346601491;_
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162346601491;_
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:49.178 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:21:49.179 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:21:49.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:49.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:21:49.180 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57361)
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:21:49.182 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:21:49.190 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:21:49.190 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01515249, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.99276, telescope_ra=20.518885, telescope_dec=-24.25632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.53864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:20:59.138882', telescope_ra_j2k=20.4933343738746, telescope_dec_j2k=-24.3415569574826, observability=1)
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:59.283 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:21:59.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:21:59.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:21:59.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:21:59.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:21:59.284 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:21:59.285 [INFO] [ThreadPoolExecutor-2899_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:21:59.285 [INFO] [ThreadPoolExecutor-2899_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:22:02.107 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:02.107 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Status age = 12.916996717453003s
2025-11-17T14:22:02.107 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:02.107 [DEBUG] [Thread-68173 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:02.107 [DEBUG] [Thread-68173 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:02.108 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:02.108 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:02.108 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 17;20.5224824;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54223;2460997.01530219;14.36722417;1.3;_
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response 17;20.5224824;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54223;2460997.01530219;14.36722417;1.3;_
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:02.109 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:02.110 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:02.110 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:02.110 [INFO] [Thread-68173 (handle)] [driver.py] [get_status()] Telra = 20.5224824, teldec = -24.25632
2025-11-17T14:22:02.110 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5224824 -24.25632
2025-11-17T14:22:02.110 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5224824 -24.25632
2025-11-17T14:22:02.110 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5224824 -24.25632
2025-11-17T14:22:02.111 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 17;20.5224824;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54223;2460997.01530221;14.36722417;1.3;_20.4969338492546 -24.3416656282441
2025-11-17T14:22:02.111 [INFO] [Thread-68173 (handle)] [driver.py] [get_status()] ra_j2k = 20.4969338492546     dec_j2k = -24.3416656282441
2025-11-17T14:22:02.111 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:02.111 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 140;0.104678332102097;171.162357330327;_
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162357330327;_
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:02.112 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:02.113 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:02.113 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:02.113 [DEBUG] [Thread-68173 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:02.113 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:02.114 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:02.114 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:02.114 [DEBUG] [Thread-68173 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:02.115 [DEBUG] [Thread-68173 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:02.115 [DEBUG] [Thread-68173 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48495)
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:02.118 [DEBUG] [Thread-68173 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:02.126 [DEBUG] [Thread-68173 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:02.126 [INFO] [Thread-68173 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01530219, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992759, telescope_ra=20.5224824, telescope_dec=-24.25632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.54223, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.4969338492546, telescope_dec_j2k=-24.3416656282441, observability=1)
2025-11-17T14:22:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.880351781845093s
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5260777;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54583;2460997.01545149;14.37080972;1.3;_
2025-11-17T14:22:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.5260777;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54583;2460997.01545149;14.37080972;1.3;_
2025-11-17T14:22:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:15.010 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.5260777, teldec = -24.25632
2025-11-17T14:22:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5260777 -24.25632
2025-11-17T14:22:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5260777 -24.25632
2025-11-17T14:22:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5260777 -24.25632
2025-11-17T14:22:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5260777;-24.25632;50.108256;89.992759;50.08601;90.12017;17.54583;2460997.01545152;14.37080972;1.3;_20.5005312264173 -24.341774160972
2025-11-17T14:22:15.011 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.5005312264173     dec_j2k = -24.341774160972
2025-11-17T14:22:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678452437926;171.162368059163;_
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678452437926;171.162368059163;_
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36947)
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:15.020 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:15.027 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01545149, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678452437926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992759, telescope_ra=20.5260777, telescope_dec=-24.25632, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.54583, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.5005312264173, telescope_dec_j2k=-24.341774160972, observability=1)
2025-11-17T14:22:15.523 [DEBUG] [Thread-68174 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:15.523 [DEBUG] [Thread-68174 (handle)] [server.py] [get_status()] Status age = 0.49605655670166016s
2025-11-17T14:22:15.523 [DEBUG] [Thread-68174 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.49605655670166016
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:22:20.163 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:20.164 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:20.165 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.165 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:20.165 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:20.165 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.165 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:20.166 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:22:20.167 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.168 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.168 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.168 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:20.168 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:20.168 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Park
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:22:20.169 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:22:20.170 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 29;20.5275253;-24.256319;50.108256;89.992758;50.08601;90.12017;17.54728;2460997.01551122;14.37225333;1.3;_Park Command Successful
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Status age = 5.149844408035278s
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:20.177 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:20.178 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 29;20.5275253;-24.256319;50.108256;89.992758;50.08601;90.12017;17.54728;2460997.01551133;14.37225333;1.3;_
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response 29;20.5275253;-24.256319;50.108256;89.992758;50.08601;90.12017;17.54728;2460997.01551133;14.37225333;1.3;_
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:20.179 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:20.180 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:20.180 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:20.180 [INFO] [Thread-68175 (handle)] [driver.py] [get_status()] Telra = 20.5275253, teldec = -24.256319
2025-11-17T14:22:20.180 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5275253 -24.256319
2025-11-17T14:22:20.180 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5275253 -24.256319
2025-11-17T14:22:20.180 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5275253 -24.256319
2025-11-17T14:22:20.181 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 29;20.5275253;-24.256319;50.108256;89.992758;50.08601;90.12017;17.54728;2460997.01551135;14.37225333;1.3;_20.5019796637657 -24.3418168392552
2025-11-17T14:22:20.182 [INFO] [Thread-68175 (handle)] [driver.py] [get_status()] ra_j2k = 20.5019796637657     dec_j2k = -24.3418168392552
2025-11-17T14:22:20.182 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:20.182 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:20.182 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:20.182 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:22:20.182 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:20.183 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:20.184 [DEBUG] [Thread-68175 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:20.185 [DEBUG] [Thread-68175 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:20.186 [DEBUG] [Thread-68175 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33231)
2025-11-17T14:22:20.186 [DEBUG] [Thread-68175 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:20.186 [DEBUG] [Thread-68175 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:20.186 [DEBUG] [Thread-68175 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:20.186 [DEBUG] [Thread-68175 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:20.187 [DEBUG] [Thread-68175 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:20.193 [DEBUG] [Thread-68175 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:20.193 [DEBUG] [Thread-68175 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:20.194 [DEBUG] [Thread-68175 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:20.194 [INFO] [Thread-68175 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01551133, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992758, telescope_ra=20.5275253, telescope_dec=-24.256319, telescope_slewing=True, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.54728, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.5019796637657, telescope_dec_j2k=-24.3418168392552, observability=1)
2025-11-17T14:22:21.170 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:22:21.170 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:22:21.170 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:22:21.171 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:22:21.171 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:22:22.171 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:22:22.171 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:22:22.171 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:22:22.172 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:22:22.172 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:22:23.172 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:22:23.173 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:22:23.173 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:22:23.173 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:22:23.173 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:22:24.174 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:22:24.174 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:22:24.174 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:24.175 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:22:24.176 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:22:24.177 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:25.177 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:25.177 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:25.177 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:25.177 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:25.177 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:22:25.178 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:22:25.179 [DEBUG] [ThreadPoolExecutor-2898_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:25.179 [INFO] [ThreadPoolExecutor-2898_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.680136680603027s
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:31.874 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:31.875 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:31.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5307834;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55053;2460997.01564671;14.3755025;1.3;_
2025-11-17T14:22:31.877 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5307834;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55053;2460997.01564671;14.3755025;1.3;_
2025-11-17T14:22:31.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:31.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:31.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:31.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:31.878 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:31.878 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5307834, teldec = -24.256319
2025-11-17T14:22:31.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5307834 -24.256319
2025-11-17T14:22:31.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5307834 -24.256319
2025-11-17T14:22:31.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5307834 -24.256319
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5307834;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55053;2460997.01564675;14.3755025;1.3;_20.5052396497882 -24.3419151010343
2025-11-17T14:22:31.879 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.5052396497882     dec_j2k = -24.3419151010343
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678171654326;171.162351965909;_
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678171654326;171.162351965909;_
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:31.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:31.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:31.880 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:31.880 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:31.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:31.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:31.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:31.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:31.882 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:31.882 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51947)
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:31.888 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:31.895 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:31.896 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:31.896 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01564671, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678171654326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992758, telescope_ra=20.5307834, telescope_dec=-24.256319, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.55053, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.5052396497882, telescope_dec_j2k=-24.3419151010343, observability=1)
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2721424102783203s
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:34.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:34.169 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:34.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5313998;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55115;2460997.01567326;14.37611722;1.3;_
2025-11-17T14:22:34.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5313998;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55115;2460997.01567326;14.37611722;1.3;_
2025-11-17T14:22:34.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:34.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:34.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:34.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:34.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:34.172 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5313998, teldec = -24.256319
2025-11-17T14:22:34.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5313998 -24.256319
2025-11-17T14:22:34.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5313998 -24.256319
2025-11-17T14:22:34.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5313998 -24.256319
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5313998;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55115;2460997.0156733;14.37611722;1.3;_20.505856406881 -24.3419336842745
2025-11-17T14:22:34.173 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.505856406881     dec_j2k = -24.3419336842745
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678452437926;171.162351965909;_
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678452437926;171.162351965909;_
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:34.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:34.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:34.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:34.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:34.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39897)
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:34.181 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:34.189 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:22:34.189 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01567326, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678452437926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992758, telescope_ra=20.5313998, telescope_dec=-24.256319, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.55115, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.505856406881, telescope_dec_j2k=-24.3419336842745, observability=1)
2025-11-17T14:22:34.189 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01626896858215 seconds ago
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Status age = 4.097984790802002s
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:38.287 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:38.288 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:38.288 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:38.289 [DEBUG] [Thread-68176 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:38.289 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:38.289 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:38.289 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:38.289 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:38.290 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 17;20.5325668;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55232;2460997.01572095;14.37728111;1.3;_
2025-11-17T14:22:38.290 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response 17;20.5325668;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55232;2460997.01572095;14.37728111;1.3;_
2025-11-17T14:22:38.290 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:38.290 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:38.290 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:38.291 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:38.291 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:38.291 [INFO] [Thread-68176 (handle)] [driver.py] [get_status()] Telra = 20.5325668, teldec = -24.256319
2025-11-17T14:22:38.291 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5325668 -24.256319
2025-11-17T14:22:38.291 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5325668 -24.256319
2025-11-17T14:22:38.291 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5325668 -24.256319
2025-11-17T14:22:38.292 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 17;20.5325668;-24.256319;50.108256;89.992758;50.08601;90.12017;17.55232;2460997.01572097;14.37728111;1.3;_20.507024083188 -24.341968860992
2025-11-17T14:22:38.292 [INFO] [Thread-68176 (handle)] [driver.py] [get_status()] ra_j2k = 20.507024083188     dec_j2k = -24.341968860992
2025-11-17T14:22:38.292 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:38.292 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:38.292 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:38.293 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:38.294 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:38.295 [DEBUG] [Thread-68176 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:38.295 [DEBUG] [Thread-68176 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:38.295 [DEBUG] [Thread-68176 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42655)
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:38.300 [DEBUG] [Thread-68176 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:38.307 [DEBUG] [Thread-68176 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:38.307 [INFO] [Thread-68176 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01572095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992758, telescope_ra=20.5325668, telescope_dec=-24.256319, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.55232, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.507024083188, telescope_dec_j2k=-24.341968860992, observability=1)
2025-11-17T14:22:49.251 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:22:49
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.943814754486084s
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:49.251 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:49.252 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:49.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5356007;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55535;2460997.01584784;14.38030667;1.3;_
2025-11-17T14:22:49.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.5356007;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55535;2460997.01584784;14.38030667;1.3;_
2025-11-17T14:22:49.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:49.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:49.253 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:49.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:49.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:49.254 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.5356007, teldec = -24.256319
2025-11-17T14:22:49.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5356007 -24.256319
2025-11-17T14:22:49.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5356007 -24.256319
2025-11-17T14:22:49.254 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5356007 -24.256319
2025-11-17T14:22:49.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5356007;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55535;2460997.01584786;14.38030667;1.3;_20.5100597428853 -24.3420602745081
2025-11-17T14:22:49.255 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5100597428853     dec_j2k = -24.3420602745081
2025-11-17T14:22:49.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:49.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:49.255 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162351965909;_
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162351965909;_
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:49.256 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:49.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:49.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:49.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:49.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:49.257 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:49.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:49.258 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:49.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:49.259 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36055)
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:49.261 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:49.268 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:49.269 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01584784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992757, telescope_ra=20.5356007, telescope_dec=-24.256319, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.55535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.5100597428853, telescope_dec_j2k=-24.3420602745081, observability=1)
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Status age = 7.076382637023926s
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:56.345 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 17;20.53758;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55733;2460997.01592993;14.38228056;1.3;_
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response 17;20.53758;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55733;2460997.01592993;14.38228056;1.3;_
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:22:56.346 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:22:56.347 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:56.347 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:22:56.347 [INFO] [Thread-68177 (handle)] [driver.py] [get_status()] Telra = 20.53758, teldec = -24.256319
2025-11-17T14:22:56.348 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] UnCookCoordinates 20.53758 -24.256319
2025-11-17T14:22:56.348 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.53758 -24.256319
2025-11-17T14:22:56.348 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.53758 -24.256319
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 17;20.53758;-24.256319;50.108256;89.992757;50.08601;90.12017;17.55733;2460997.01592995;14.38228056;1.3;_20.5120401920488 -24.3421198834386
2025-11-17T14:22:56.349 [INFO] [Thread-68177 (handle)] [driver.py] [get_status()] ra_j2k = 20.5120401920488     dec_j2k = -24.3421198834386
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:56.349 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:22:56.350 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:22:56.351 [DEBUG] [Thread-68177 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:56.351 [DEBUG] [Thread-68177 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:22:56.351 [DEBUG] [Thread-68177 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37793)
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:22:56.353 [DEBUG] [Thread-68177 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:22:56.360 [DEBUG] [Thread-68177 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:22:56.360 [INFO] [Thread-68177 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01592993, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108256, telescope_az=89.992757, telescope_ra=20.53758, telescope_dec=-24.256319, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.55733, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:21:59.282709', telescope_ra_j2k=20.5120401920488, telescope_dec_j2k=-24.3421198834386, observability=1)
2025-11-17T14:22:59.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:59.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:59.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:59.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:59.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:59.425 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:59.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:59.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:59.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:59.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:59.426 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:22:59.427 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:59.427 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:59.427 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:22:59.429 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:22:59.430 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:22:59.430 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:00.430 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:00.431 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:00.431 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:00.431 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:00.431 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:23:00.432 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:00.433 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:00.434 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:00.434 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:00.434 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:00.434 [DEBUG] [ThreadPoolExecutor-2900_0] [payload.py] [to_registers()] [0]
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49269)
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:00.435 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:00.442 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:00.442 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:23:00.442 [DEBUG] [ThreadPoolExecutor-2900_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:23:00.442 [DEBUG] [ThreadPoolExecutor-2900_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:23:00.442 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:00.443 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:00.443 [DEBUG] [ThreadPoolExecutor-2900_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Status age = 18.055627822875977s
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:14.416 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:14.417 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:14.418 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 17;20.5426254;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56238;2460997.0161391;14.38731222;1.3;_
2025-11-17T14:23:14.418 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response 17;20.5426254;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56238;2460997.0161391;14.38731222;1.3;_
2025-11-17T14:23:14.418 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:14.418 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:14.419 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:14.419 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:14.419 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:14.420 [INFO] [Thread-68178 (handle)] [driver.py] [get_status()] Telra = 20.5426254, teldec = -24.256318
2025-11-17T14:23:14.420 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5426254 -24.256318
2025-11-17T14:23:14.420 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5426254 -24.256318
2025-11-17T14:23:14.420 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5426254 -24.256318
2025-11-17T14:23:14.421 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 17;20.5426254;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56238;2460997.01613913;14.38731222;1.3;_20.5170885256155 -24.3422707288161
2025-11-17T14:23:14.421 [INFO] [Thread-68178 (handle)] [driver.py] [get_status()] ra_j2k = 20.5170885256155     dec_j2k = -24.3422707288161
2025-11-17T14:23:14.421 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:14.421 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:14.421 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:14.421 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 140;0.104678051318498;171.162362694745;_
2025-11-17T14:23:14.422 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162362694745;_
2025-11-17T14:23:14.422 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:14.422 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:14.422 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:14.422 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:14.423 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:14.424 [DEBUG] [Thread-68178 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:14.424 [DEBUG] [Thread-68178 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:14.424 [DEBUG] [Thread-68178 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40617)
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:14.431 [DEBUG] [Thread-68178 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:14.438 [DEBUG] [Thread-68178 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:14.439 [DEBUG] [Thread-68178 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:14.439 [DEBUG] [Thread-68178 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:14.439 [DEBUG] [Thread-68178 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:14.439 [INFO] [Thread-68178 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0161391, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992757, telescope_ra=20.5426254, telescope_dec=-24.256318, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.56238, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5170885256155, telescope_dec_j2k=-24.3422707288161, observability=1)
2025-11-17T14:23:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.5707361698150635s
2025-11-17T14:23:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5707361698150635
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Status age = 1.128190279006958s
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:15.567 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:15.568 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 17;20.5429346;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56268;2460997.01615242;14.38762056;1.3;_
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response 17;20.5429346;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56268;2460997.01615242;14.38762056;1.3;_
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:15.569 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:15.570 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:15.570 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:15.570 [INFO] [Thread-68179 (handle)] [driver.py] [get_status()] Telra = 20.5429346, teldec = -24.256318
2025-11-17T14:23:15.570 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5429346 -24.256318
2025-11-17T14:23:15.570 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5429346 -24.256318
2025-11-17T14:23:15.570 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5429346 -24.256318
2025-11-17T14:23:15.571 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 17;20.5429346;-24.256318;50.108255;89.992757;50.08601;90.12017;17.56268;2460997.01615244;14.38762056;1.3;_20.5173979055761 -24.3422800296256
2025-11-17T14:23:15.571 [INFO] [Thread-68179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5173979055761     dec_j2k = -24.3422800296256
2025-11-17T14:23:15.571 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:15.571 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:15.572 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 140;0.104677690311012;171.162351965909;_
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162351965909;_
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:15.573 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:15.574 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:15.575 [DEBUG] [Thread-68179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:15.575 [DEBUG] [Thread-68179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:15.575 [DEBUG] [Thread-68179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:15.579 [DEBUG] [Thread-68179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49885)
2025-11-17T14:23:15.579 [DEBUG] [Thread-68179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:15.580 [DEBUG] [Thread-68179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:15.580 [DEBUG] [Thread-68179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:15.580 [DEBUG] [Thread-68179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:15.580 [DEBUG] [Thread-68179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:15.587 [DEBUG] [Thread-68179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:15.587 [INFO] [Thread-68179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01615242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992757, telescope_ra=20.5429346, telescope_dec=-24.256318, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.56268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5173979055761, telescope_dec_j2k=-24.3422800296256, observability=1)
2025-11-17T14:23:25.443 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:25.443 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:25.443 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:25.443 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:25.443 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:25.444 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:23:25.445 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:23:25.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:30.982 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 15.395297050476074s
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:30.983 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:30.984 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:30.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5472274;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56698;2460997.01633084;14.39190167;1.3;_
2025-11-17T14:23:30.985 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5472274;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56698;2460997.01633084;14.39190167;1.3;_
2025-11-17T14:23:30.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:30.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:30.985 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:30.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:30.986 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:30.986 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5472274, teldec = -24.256318
2025-11-17T14:23:30.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5472274 -24.256318
2025-11-17T14:23:30.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5472274 -24.256318
2025-11-17T14:23:30.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5472274 -24.256318
2025-11-17T14:23:30.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5472274;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56698;2460997.01633087;14.39190167;1.3;_20.5216932063507 -24.342409100637
2025-11-17T14:23:30.988 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.5216932063507     dec_j2k = -24.342409100637
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678452437926;171.162357330327;_
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678452437926;171.162357330327;_
2025-11-17T14:23:30.988 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:30.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:30.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:30.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:30.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:30.989 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:30.990 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:30.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:30.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:30.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:30.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:30.991 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:30.991 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34471)
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:30.997 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:31.004 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:31.005 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01633084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678452437926, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992756, telescope_ra=20.5472274, telescope_dec=-24.256318, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.56698, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5216932063507, telescope_dec_j2k=-24.342409100637, observability=1)
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Status age = 1.5302422046661377s
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:32.535 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:32.536 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:32.537 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 17;20.5476673;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56742;2460997.01634881;14.39234028;1.3;_
2025-11-17T14:23:32.537 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response 17;20.5476673;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56742;2460997.01634881;14.39234028;1.3;_
2025-11-17T14:23:32.537 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:32.537 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:32.537 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:32.538 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:32.538 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:32.538 [INFO] [Thread-68180 (handle)] [driver.py] [get_status()] Telra = 20.5476673, teldec = -24.256318
2025-11-17T14:23:32.538 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5476673 -24.256318
2025-11-17T14:23:32.538 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5476673 -24.256318
2025-11-17T14:23:32.539 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5476673 -24.256318
2025-11-17T14:23:32.539 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 17;20.5476673;-24.256318;50.108255;89.992756;50.08601;90.12017;17.56742;2460997.01634883;14.39234028;1.3;_20.5221333628549 -24.3424223209921
2025-11-17T14:23:32.539 [INFO] [Thread-68180 (handle)] [driver.py] [get_status()] ra_j2k = 20.5221333628549     dec_j2k = -24.3424223209921
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 140;0.104678171654326;171.162362694745;_
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response 140;0.104678171654326;171.162362694745;_
2025-11-17T14:23:32.540 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:32.541 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:32.541 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:32.541 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:32.542 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:32.543 [DEBUG] [Thread-68180 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:32.543 [DEBUG] [Thread-68180 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:32.543 [DEBUG] [Thread-68180 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50097)
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:32.547 [DEBUG] [Thread-68180 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:32.554 [DEBUG] [Thread-68180 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:32.554 [DEBUG] [Thread-68180 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:32.554 [DEBUG] [Thread-68180 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:32.554 [DEBUG] [Thread-68180 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:32.555 [DEBUG] [Thread-68180 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:32.555 [DEBUG] [Thread-68180 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:32.555 [DEBUG] [Thread-68180 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:32.555 [DEBUG] [Thread-68180 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:32.555 [DEBUG] [Thread-68180 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:32.555 [INFO] [Thread-68180 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01634881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678171654326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992756, telescope_ra=20.5476673, telescope_dec=-24.256318, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.56742, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5221333628549, telescope_dec_j2k=-24.3424223209921, observability=1)
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.693871259689331s
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:34.249 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:34.250 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:34.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5481447;-24.256318;50.108255;89.992756;50.08601;90.12017;17.5679;2460997.01636863;14.39281639;1.3;_
2025-11-17T14:23:34.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5481447;-24.256318;50.108255;89.992756;50.08601;90.12017;17.5679;2460997.01636863;14.39281639;1.3;_
2025-11-17T14:23:34.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:34.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:34.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:34.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:34.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:34.252 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5481447, teldec = -24.256318
2025-11-17T14:23:34.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5481447 -24.256318
2025-11-17T14:23:34.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5481447 -24.256318
2025-11-17T14:23:34.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5481447 -24.256318
2025-11-17T14:23:34.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5481447;-24.256318;50.108255;89.992756;50.08601;90.12017;17.5679;2460997.01636867;14.39281639;1.3;_20.5226110412758 -24.3424366670634
2025-11-17T14:23:34.253 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.5226110412758     dec_j2k = -24.3424366670634
2025-11-17T14:23:34.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:34.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:34.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678131542383;171.162351965909;_
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162351965909;_
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:34.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:34.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:34.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:34.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:34.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54231)
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:34.257 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:34.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:34.264 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:34.265 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:23:34.265 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01636863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992756, telescope_ra=20.5481447, telescope_dec=-24.256318, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.5679, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5226110412758, telescope_dec_j2k=-24.3424366670634, observability=1)
2025-11-17T14:23:34.265 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01418709754944 seconds ago
2025-11-17T14:23:49.329 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:23:49
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.064623832702637s
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:49.330 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:49.331 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:49.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5523528;-24.256317;50.108255;89.992755;50.08601;90.12017;17.5721;2460997.01654319;14.39701306;1.3;_
2025-11-17T14:23:49.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.5523528;-24.256317;50.108255;89.992755;50.08601;90.12017;17.5721;2460997.01654319;14.39701306;1.3;_
2025-11-17T14:23:49.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:49.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:49.332 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:49.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:49.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:49.333 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.5523528, teldec = -24.256317
2025-11-17T14:23:49.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5523528 -24.256317
2025-11-17T14:23:49.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5523528 -24.256317
2025-11-17T14:23:49.333 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5523528 -24.256317
2025-11-17T14:23:49.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5523528;-24.256317;50.108255;89.992755;50.08601;90.12017;17.5721;2460997.01654322;14.39701306;1.3;_20.5268215978833 -24.3425620649137
2025-11-17T14:23:49.334 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5268215978833     dec_j2k = -24.3425620649137
2025-11-17T14:23:49.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:49.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:49.334 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677610087127;171.162357330327;_
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677610087127;171.162357330327;_
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:49.335 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:49.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:49.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:49.336 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:49.339 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32785)
2025-11-17T14:23:49.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:49.339 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:49.340 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:49.340 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:49.340 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:49.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:49.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:49.347 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:49.347 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:49.347 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:49.348 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:49.348 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:49.348 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:49.348 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:49.348 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01654319, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677610087127, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992755, telescope_ra=20.5523528, telescope_dec=-24.256317, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.5721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5268215978833, telescope_dec_j2k=-24.3425620649137, observability=1)
2025-11-17T14:23:50.595 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:23:50.595 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Status age = 1.2476391792297363s
2025-11-17T14:23:50.595 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:23:50.595 [DEBUG] [Thread-68181 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:50.595 [DEBUG] [Thread-68181 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:23:50.596 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:23:50.597 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 17;20.5526896;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57244;2460997.01655784;14.39734889;1.3;_
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response 17;20.5526896;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57244;2460997.01655784;14.39734889;1.3;_
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:50.598 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:23:50.599 [INFO] [Thread-68181 (handle)] [driver.py] [get_status()] Telra = 20.5526896, teldec = -24.256317
2025-11-17T14:23:50.599 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5526896 -24.256317
2025-11-17T14:23:50.599 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5526896 -24.256317
2025-11-17T14:23:50.599 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5526896 -24.256317
2025-11-17T14:23:50.600 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 17;20.5526896;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57244;2460997.01655787;14.39734889;1.3;_20.5271585946641 -24.3425721768388
2025-11-17T14:23:50.600 [INFO] [Thread-68181 (handle)] [driver.py] [get_status()] ra_j2k = 20.5271585946641     dec_j2k = -24.3425721768388
2025-11-17T14:23:50.600 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:23:50.600 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:23:50.600 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162357330327;_
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162357330327;_
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:50.601 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:23:50.602 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:23:50.603 [DEBUG] [Thread-68181 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:50.603 [DEBUG] [Thread-68181 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:23:50.603 [DEBUG] [Thread-68181 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53343)
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:23:50.608 [DEBUG] [Thread-68181 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:23:50.615 [DEBUG] [Thread-68181 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:23:50.616 [DEBUG] [Thread-68181 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:23:50.616 [DEBUG] [Thread-68181 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:23:50.616 [INFO] [Thread-68181 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01655784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992755, telescope_ra=20.5526896, telescope_dec=-24.256317, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.57244, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:22:59.423629', telescope_ra_j2k=20.5271585946641, telescope_dec_j2k=-24.3425721768388, observability=1)
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:59.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:59.567 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:23:59.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:23:59.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:23:59.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:23:59.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:23:59.568 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:23:59.568 [INFO] [ThreadPoolExecutor-2901_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:23:59.568 [INFO] [ThreadPoolExecutor-2901_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Status age = 18.045952558517456s
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:08.662 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:08.663 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:08.663 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:08.663 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 17;20.5577308;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57748;2460997.01676693;14.40237639;1.3;_
2025-11-17T14:24:08.663 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response 17;20.5577308;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57748;2460997.01676693;14.40237639;1.3;_
2025-11-17T14:24:08.663 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:08.664 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:08.664 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:08.664 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:08.665 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:08.665 [INFO] [Thread-68182 (handle)] [driver.py] [get_status()] Telra = 20.5577308, teldec = -24.256317
2025-11-17T14:24:08.665 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5577308 -24.256317
2025-11-17T14:24:08.665 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5577308 -24.256317
2025-11-17T14:24:08.665 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5577308 -24.256317
2025-11-17T14:24:08.666 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 17;20.5577308;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57748;2460997.01676697;14.40237639;1.3;_20.5322027431889 -24.3427234523638
2025-11-17T14:24:08.666 [INFO] [Thread-68182 (handle)] [driver.py] [get_status()] ra_j2k = 20.5322027431889     dec_j2k = -24.3427234523638
2025-11-17T14:24:08.666 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:08.666 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:08.666 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 140;0.10467736941547;171.162362694745;_
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response 140;0.10467736941547;171.162362694745;_
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:08.667 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:08.668 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:08.669 [DEBUG] [Thread-68182 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:08.669 [DEBUG] [Thread-68182 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:08.669 [DEBUG] [Thread-68182 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59741)
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:08.672 [DEBUG] [Thread-68182 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:08.679 [DEBUG] [Thread-68182 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:08.679 [INFO] [Thread-68182 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01676693, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467736941547, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992755, telescope_ra=20.5577308, telescope_dec=-24.256317, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.57748, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5322027431889, telescope_dec_j2k=-24.3427234523638, observability=1)
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.333399534225464s
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5594884;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57924;2460997.01684045;14.40412917;1.3;_
2025-11-17T14:24:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.5594884;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57924;2460997.01684045;14.40412917;1.3;_
2025-11-17T14:24:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.5594884, teldec = -24.256317
2025-11-17T14:24:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5594884 -24.256317
2025-11-17T14:24:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5594884 -24.256317
2025-11-17T14:24:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5594884 -24.256317
2025-11-17T14:24:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5594884;-24.256317;50.108255;89.992755;50.08601;90.12017;17.57924;2460997.01684047;14.40412917;1.3;_20.5339613725592 -24.342776159252
2025-11-17T14:24:15.017 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.5339613725592     dec_j2k = -24.342776159252
2025-11-17T14:24:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52523)
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:15.033 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01684045, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992755, telescope_ra=20.5594884, telescope_dec=-24.256317, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.57924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5339613725592, telescope_dec_j2k=-24.342776159252, observability=1)
2025-11-17T14:24:15.616 [DEBUG] [Thread-68183 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:15.616 [DEBUG] [Thread-68183 (handle)] [server.py] [get_status()] Status age = 0.5829954147338867s
2025-11-17T14:24:15.616 [DEBUG] [Thread-68183 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5829954147338867
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.446 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:24:20.447 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:20.448 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:20.449 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:24:20.450 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:20.451 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Park
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:24:20.452 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:24:20.453 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 29;20.5610204;-24.256317;50.108255;89.992754;50.08601;90.12017;17.58077;2460997.01690339;14.40565694;1.3;_Park Command Successful
2025-11-17T14:24:21.453 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:24:21.453 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:24:21.453 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:24:21.454 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:24:21.454 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:24:22.454 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:24:22.454 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:24:22.454 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:24:22.455 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:24:22.455 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:24:23.455 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:24:23.455 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:24:23.455 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:24:23.456 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:24:23.456 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:24:24.456 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:24:24.456 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:24:24.456 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:24.457 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:24:24.458 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:24:24.459 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:25.459 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:25.459 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:25.459 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:25.459 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:25.460 [DEBUG] [ThreadPoolExecutor-2900_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:25.461 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:24:25.461 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:24:25.461 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:24:25.461 [DEBUG] [ThreadPoolExecutor-2900_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:25.461 [INFO] [ThreadPoolExecutor-2900_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Status age = 11.778817176818848s
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:26.812 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:26.813 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:26.814 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 17;20.5627766;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58253;2460997.01697701;14.40740833;1.3;_
2025-11-17T14:24:26.814 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response 17;20.5627766;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58253;2460997.01697701;14.40740833;1.3;_
2025-11-17T14:24:26.814 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:26.814 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:26.814 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:26.815 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:26.815 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:26.815 [INFO] [Thread-68184 (handle)] [driver.py] [get_status()] Telra = 20.5627766, teldec = -24.256316
2025-11-17T14:24:26.815 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5627766 -24.256316
2025-11-17T14:24:26.815 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5627766 -24.256316
2025-11-17T14:24:26.815 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5627766 -24.256316
2025-11-17T14:24:26.816 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 17;20.5627766;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58253;2460997.01697704;14.40740833;1.3;_20.5372515004222 -24.342873717347
2025-11-17T14:24:26.816 [INFO] [Thread-68184 (handle)] [driver.py] [get_status()] ra_j2k = 20.5372515004222     dec_j2k = -24.342873717347
2025-11-17T14:24:26.816 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:26.816 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:26.816 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 140;0.104677690311012;171.162351965909;_
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162351965909;_
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:26.817 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:26.818 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:26.819 [DEBUG] [Thread-68184 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:26.819 [DEBUG] [Thread-68184 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:26.819 [DEBUG] [Thread-68184 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:26.822 [DEBUG] [Thread-68184 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50121)
2025-11-17T14:24:26.822 [DEBUG] [Thread-68184 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:26.822 [DEBUG] [Thread-68184 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:26.822 [DEBUG] [Thread-68184 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:26.822 [DEBUG] [Thread-68184 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:26.823 [DEBUG] [Thread-68184 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:26.830 [DEBUG] [Thread-68184 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:26.831 [DEBUG] [Thread-68184 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:26.831 [DEBUG] [Thread-68184 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:26.831 [INFO] [Thread-68184 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01697701, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992754, telescope_ra=20.5627766, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.58253, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5372515004222, telescope_dec_j2k=-24.342873717347, observability=1)
2025-11-17T14:24:30.097 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:30.097 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.266737699508667s
2025-11-17T14:24:30.097 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:30.097 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:30.097 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:30.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:30.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5636938;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58344;2460997.01701503;14.40832306;1.3;_
2025-11-17T14:24:30.099 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5636938;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58344;2460997.01701503;14.40832306;1.3;_
2025-11-17T14:24:30.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:30.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:30.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:30.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:30.100 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:30.100 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5636938, teldec = -24.256316
2025-11-17T14:24:30.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5636938 -24.256316
2025-11-17T14:24:30.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5636938 -24.256316
2025-11-17T14:24:30.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5636938 -24.256316
2025-11-17T14:24:30.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5636938;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58344;2460997.01701506;14.40832306;1.3;_20.538169238573 -24.3429011975162
2025-11-17T14:24:30.101 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.538169238573     dec_j2k = -24.3429011975162
2025-11-17T14:24:30.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:30.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:30.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678171654326;171.162357330327;_
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678171654326;171.162357330327;_
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:30.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:30.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:30.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:30.104 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:30.104 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:30.108 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60163)
2025-11-17T14:24:30.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:30.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:30.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:30.109 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:30.109 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:30.116 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:30.116 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01701503, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678171654326, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992754, telescope_ra=20.5636938, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.58344, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.538169238573, telescope_dec_j2k=-24.3429011975162, observability=1)
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.2091286182403564s
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:34.325 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:34.326 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5648893;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58464;2460997.01706397;14.40951528;1.3;_
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5648893;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58464;2460997.01706397;14.40951528;1.3;_
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:34.327 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:34.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:34.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:34.328 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5648893, teldec = -24.256316
2025-11-17T14:24:34.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5648893 -24.256316
2025-11-17T14:24:34.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5648893 -24.256316
2025-11-17T14:24:34.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5648893 -24.256316
2025-11-17T14:24:34.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5648893;-24.256316;50.108255;89.992754;50.08601;90.12017;17.58464;2460997.01706399;14.40951528;1.3;_20.5393654403018 -24.3429370084201
2025-11-17T14:24:34.329 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.5393654403018     dec_j2k = -24.3429370084201
2025-11-17T14:24:34.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:34.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:34.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:34.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677850758784;171.162351965909;_
2025-11-17T14:24:34.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162351965909;_
2025-11-17T14:24:34.330 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:34.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56065)
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:34.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:34.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:24:34.344 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01706397, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108255, telescope_az=89.992754, telescope_ra=20.5648893, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.58464, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5393654403018, telescope_dec_j2k=-24.3429370084201, observability=1)
2025-11-17T14:24:34.344 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01498579978943 seconds ago
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Status age = 10.519464015960693s
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:44.864 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:44.865 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 17;20.5678209;-24.256316;50.108254;89.992754;50.08601;90.12017;17.58757;2460997.01718595;14.41243889;1.3;_
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response 17;20.5678209;-24.256316;50.108254;89.992754;50.08601;90.12017;17.58757;2460997.01718595;14.41243889;1.3;_
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:44.866 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:44.867 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:44.867 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:44.867 [INFO] [Thread-68185 (handle)] [driver.py] [get_status()] Telra = 20.5678209, teldec = -24.256316
2025-11-17T14:24:44.867 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5678209 -24.256316
2025-11-17T14:24:44.867 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5678209 -24.256316
2025-11-17T14:24:44.867 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5678209 -24.256316
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 17;20.5678209;-24.256316;50.108254;89.992754;50.08601;90.12017;17.58757;2460997.01718597;14.41243889;1.3;_20.5422987624687 -24.3430247883273
2025-11-17T14:24:44.868 [INFO] [Thread-68185 (handle)] [driver.py] [get_status()] ra_j2k = 20.5422987624687     dec_j2k = -24.3430247883273
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162351965909;_
2025-11-17T14:24:44.868 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162351965909;_
2025-11-17T14:24:44.869 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:44.869 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:44.869 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:44.869 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:44.869 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:44.870 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:44.870 [DEBUG] [Thread-68185 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:44.870 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:44.870 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:44.870 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:44.871 [DEBUG] [Thread-68185 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:44.871 [DEBUG] [Thread-68185 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:44.871 [DEBUG] [Thread-68185 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:44.874 [DEBUG] [Thread-68185 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39221)
2025-11-17T14:24:44.875 [DEBUG] [Thread-68185 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:44.875 [DEBUG] [Thread-68185 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:44.875 [DEBUG] [Thread-68185 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:44.875 [DEBUG] [Thread-68185 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:44.875 [DEBUG] [Thread-68185 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:44.882 [DEBUG] [Thread-68185 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:44.883 [INFO] [Thread-68185 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01718595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992754, telescope_ra=20.5678209, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.58757, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5422987624687, telescope_dec_j2k=-24.3430247883273, observability=1)
2025-11-17T14:24:49.411 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:24:49
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.5283215045928955s
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:49.411 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:24:49.412 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:24:49.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5690729;-24.256316;50.108254;89.992753;50.08601;90.12017;17.58882;2460997.01723858;14.4136875;1.3;_
2025-11-17T14:24:49.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.5690729;-24.256316;50.108254;89.992753;50.08601;90.12017;17.58882;2460997.01723858;14.4136875;1.3;_
2025-11-17T14:24:49.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:24:49.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:24:49.413 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:24:49.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:49.414 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:24:49.414 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.5690729, teldec = -24.256316
2025-11-17T14:24:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5690729 -24.256316
2025-11-17T14:24:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5690729 -24.256316
2025-11-17T14:24:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5690729 -24.256316
2025-11-17T14:24:49.415 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5690729;-24.256316;50.108254;89.992753;50.08601;90.12017;17.58882;2460997.0172386;14.4136875;1.3;_20.5435514985573 -24.3430622611882
2025-11-17T14:24:49.416 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5435514985573     dec_j2k = -24.3430622611882
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:24:49.416 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:24:49.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:49.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:24:49.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54447)
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:24:49.420 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:24:49.427 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:24:49.428 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:24:49.428 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01723858, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992753, telescope_ra=20.5690729, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.58882, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:23:59.565843', telescope_ra_j2k=20.5435514985573, telescope_dec_j2k=-24.3430622611882, observability=1)
2025-11-17T14:24:59.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:59.708 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:59.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:59.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:59.708 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:59.709 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:59.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:59.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:59.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:59.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:59.710 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:24:59.711 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:59.711 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:59.711 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:24:59.711 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:24:59.711 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:24:59.712 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:24:59.713 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:00.713 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:00.713 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:00.713 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:00.713 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:00.713 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:25:00.714 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:00.715 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:00.716 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:00.716 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:00.716 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:00.716 [DEBUG] [ThreadPoolExecutor-2902_0] [payload.py] [to_registers()] [0]
2025-11-17T14:25:00.719 [DEBUG] [ThreadPoolExecutor-2902_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42111)
2025-11-17T14:25:00.719 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:00.719 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:00.719 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:25:00.719 [DEBUG] [ThreadPoolExecutor-2902_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:00.720 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:00.727 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:00.727 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:25:00.727 [DEBUG] [ThreadPoolExecutor-2902_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:25:00.727 [DEBUG] [ThreadPoolExecutor-2902_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:25:00.728 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:00.728 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:00.728 [DEBUG] [ThreadPoolExecutor-2902_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Status age = 13.503055572509766s
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:02.931 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:02.932 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 17;20.5728351;-24.256316;50.108254;89.992753;50.08601;90.12017;17.59259;2460997.01739505;14.41743944;1.3;_
2025-11-17T14:25:02.932 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response 17;20.5728351;-24.256316;50.108254;89.992753;50.08601;90.12017;17.59259;2460997.01739505;14.41743944;1.3;_
2025-11-17T14:25:02.933 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:02.933 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:02.933 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:02.933 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:02.934 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:02.934 [INFO] [Thread-68186 (handle)] [driver.py] [get_status()] Telra = 20.5728351, teldec = -24.256316
2025-11-17T14:25:02.934 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5728351 -24.256316
2025-11-17T14:25:02.934 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5728351 -24.256316
2025-11-17T14:25:02.934 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5728351 -24.256316
2025-11-17T14:25:02.935 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 17;20.5728351;-24.256316;50.108254;89.992753;50.08601;90.12017;17.59259;2460997.01739508;14.41743944;1.3;_20.5473159126348 -24.3431748099989
2025-11-17T14:25:02.935 [INFO] [Thread-68186 (handle)] [driver.py] [get_status()] ra_j2k = 20.5473159126348     dec_j2k = -24.3431748099989
2025-11-17T14:25:02.935 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:02.935 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:02.935 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162346601491;_
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162346601491;_
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:02.936 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:02.937 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:02.938 [DEBUG] [Thread-68186 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:02.938 [DEBUG] [Thread-68186 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:02.938 [DEBUG] [Thread-68186 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:02.939 [DEBUG] [Thread-68186 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55631)
2025-11-17T14:25:02.939 [DEBUG] [Thread-68186 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:02.939 [DEBUG] [Thread-68186 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:02.939 [DEBUG] [Thread-68186 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:02.940 [DEBUG] [Thread-68186 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:02.940 [DEBUG] [Thread-68186 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:02.947 [DEBUG] [Thread-68186 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:02.947 [INFO] [Thread-68186 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01739505, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992753, telescope_ra=20.5728351, telescope_dec=-24.256316, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.59259, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5473159126348, telescope_dec_j2k=-24.3431748099989, observability=1)
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.073955297470093s
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5762311;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59598;2460997.01753499;14.42082611;1.3;_
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.5762311;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59598;2460997.01753499;14.42082611;1.3;_
2025-11-17T14:25:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:15.025 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.5762311, teldec = -24.256315
2025-11-17T14:25:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5762311 -24.256315
2025-11-17T14:25:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5762311 -24.256315
2025-11-17T14:25:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5762311 -24.256315
2025-11-17T14:25:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5762311;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59598;2460997.01753502;14.42082611;1.3;_20.5507139141518 -24.3432753323961
2025-11-17T14:25:15.027 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.5507139141518     dec_j2k = -24.3432753323961
2025-11-17T14:25:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677730422955;171.162357330327;_
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677730422955;171.162357330327;_
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49519)
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:15.040 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01753499, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677730422955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992752, telescope_ra=20.5762311, telescope_dec=-24.256315, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.59598, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5507139141518, telescope_dec_j2k=-24.3432753323961, observability=1)
2025-11-17T14:25:15.649 [DEBUG] [Thread-68187 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:15.649 [DEBUG] [Thread-68187 (handle)] [server.py] [get_status()] Status age = 0.6092917919158936s
2025-11-17T14:25:15.649 [DEBUG] [Thread-68187 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6092917919158936
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Status age = 6.011685132980347s
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:21.051 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:21.052 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:21.052 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:21.052 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:21.052 [DEBUG] [Thread-68188 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:21.052 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 17;20.5779026;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59765;2460997.01760478;14.42249306;1.3;_
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response 17;20.5779026;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59765;2460997.01760478;14.42249306;1.3;_
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:21.053 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:21.054 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:21.054 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:21.054 [INFO] [Thread-68188 (handle)] [driver.py] [get_status()] Telra = 20.5779026, teldec = -24.256315
2025-11-17T14:25:21.054 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5779026 -24.256315
2025-11-17T14:25:21.054 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5779026 -24.256315
2025-11-17T14:25:21.054 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5779026 -24.256315
2025-11-17T14:25:21.055 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 17;20.5779026;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59765;2460997.0176048;14.42249306;1.3;_20.5523864001849 -24.3433252764394
2025-11-17T14:25:21.055 [INFO] [Thread-68188 (handle)] [driver.py] [get_status()] ra_j2k = 20.5523864001849     dec_j2k = -24.3433252764394
2025-11-17T14:25:21.055 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:21.055 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:21.055 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:21.056 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 140;0.104677690311012;171.162346601491;_
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162346601491;_
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:21.057 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:21.058 [DEBUG] [Thread-68188 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:21.058 [DEBUG] [Thread-68188 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:21.058 [DEBUG] [Thread-68188 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51119)
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:21.063 [DEBUG] [Thread-68188 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:21.070 [DEBUG] [Thread-68188 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:21.071 [INFO] [Thread-68188 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01760478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992752, telescope_ra=20.5779026, telescope_dec=-24.256315, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.59765, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5523864001849, telescope_dec_j2k=-24.3433252764394, observability=1)
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:25.728 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:25.729 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:25.730 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:25.730 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:25.730 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:25:25.730 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:25:25.730 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:25:25.731 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 8.140685796737671s
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:29.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:29.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:29.212 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:29.212 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5801557;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59991;2460997.01769922;14.42474;1.3;_
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5801557;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59991;2460997.01769922;14.42474;1.3;_
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:29.213 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:29.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:29.214 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:29.214 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5801557, teldec = -24.256315
2025-11-17T14:25:29.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5801557 -24.256315
2025-11-17T14:25:29.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5801557 -24.256315
2025-11-17T14:25:29.214 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5801557 -24.256315
2025-11-17T14:25:29.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5801557;-24.256315;50.108254;89.992752;50.08601;90.12017;17.59991;2460997.01769925;14.42474;1.3;_20.5546408303232 -24.3433925725449
2025-11-17T14:25:29.215 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.5546408303232     dec_j2k = -24.3433925725449
2025-11-17T14:25:29.215 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677249079642;171.162351965909;_
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677249079642;171.162351965909;_
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:29.216 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:29.217 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:29.218 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:29.223 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39103)
2025-11-17T14:25:29.223 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:29.223 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:29.223 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:29.224 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:29.224 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:29.230 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:29.230 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:29.231 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:29.231 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01769922, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677249079642, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992752, telescope_ra=20.5801557, telescope_dec=-24.256315, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.59991, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5546408303232, telescope_dec_j2k=-24.3433925725449, observability=1)
2025-11-17T14:25:34.404 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:25:34.404 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.1735522747039795s
2025-11-17T14:25:34.404 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:34.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:34.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:34.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:34.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:34.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:34.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:34.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5816052;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60136;2460997.01775934;14.42618556;1.3;_
2025-11-17T14:25:34.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5816052;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60136;2460997.01775934;14.42618556;1.3;_
2025-11-17T14:25:34.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:34.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:34.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:34.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:34.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:34.408 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5816052, teldec = -24.256315
2025-11-17T14:25:34.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5816052 -24.256315
2025-11-17T14:25:34.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5816052 -24.256315
2025-11-17T14:25:34.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5816052 -24.256315
2025-11-17T14:25:34.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5816052;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60136;2460997.01775936;14.42618556;1.3;_20.5560911866642 -24.3434358507427
2025-11-17T14:25:34.409 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.5560911866642     dec_j2k = -24.3434358507427
2025-11-17T14:25:34.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:34.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:34.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677690311012;171.162362694745;_
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162362694745;_
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:34.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:34.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56649)
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:34.413 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:34.420 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:34.420 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:34.420 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:34.421 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:25:34.421 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01775934, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992752, telescope_ra=20.5816052, telescope_dec=-24.256315, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.60136, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5560911866642, telescope_dec_j2k=-24.3434358507427, observability=1)
2025-11-17T14:25:34.421 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01047611236572 seconds ago
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Status age = 4.698355674743652s
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:39.119 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:39.120 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:39.121 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 17;20.5829149;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60267;2460997.0178139;14.42749167;1.3;_
2025-11-17T14:25:39.121 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response 17;20.5829149;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60267;2460997.0178139;14.42749167;1.3;_
2025-11-17T14:25:39.121 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:39.121 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:39.121 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:39.122 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:39.122 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:39.122 [INFO] [Thread-68189 (handle)] [driver.py] [get_status()] Telra = 20.5829149, teldec = -24.256315
2025-11-17T14:25:39.122 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5829149 -24.256315
2025-11-17T14:25:39.122 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5829149 -24.256315
2025-11-17T14:25:39.122 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5829149 -24.256315
2025-11-17T14:25:39.123 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 17;20.5829149;-24.256315;50.108254;89.992752;50.08601;90.12017;17.60267;2460997.01781392;14.42749167;1.3;_20.5574016608278 -24.3434749442415
2025-11-17T14:25:39.123 [INFO] [Thread-68189 (handle)] [driver.py] [get_status()] ra_j2k = 20.5574016608278     dec_j2k = -24.3434749442415
2025-11-17T14:25:39.123 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:39.123 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:39.123 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:39.124 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:39.125 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:39.126 [DEBUG] [Thread-68189 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:39.126 [DEBUG] [Thread-68189 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:39.126 [DEBUG] [Thread-68189 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:39.131 [DEBUG] [Thread-68189 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40733)
2025-11-17T14:25:39.131 [DEBUG] [Thread-68189 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:39.131 [DEBUG] [Thread-68189 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:39.132 [DEBUG] [Thread-68189 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:39.132 [DEBUG] [Thread-68189 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:39.132 [DEBUG] [Thread-68189 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:39.140 [DEBUG] [Thread-68189 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:39.140 [INFO] [Thread-68189 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0178139, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992752, telescope_ra=20.5829149, telescope_dec=-24.256315, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.60267, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5574016608278, telescope_dec_j2k=-24.3434749442415, observability=1)
2025-11-17T14:25:49.488 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:25:49
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.347912311553955s
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:49.488 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:49.489 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:49.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5858139;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60556;2460997.01793391;14.43038278;1.3;_
2025-11-17T14:25:49.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.5858139;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60556;2460997.01793391;14.43038278;1.3;_
2025-11-17T14:25:49.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:49.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:49.490 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:49.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:49.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:49.491 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.5858139, teldec = -24.256314
2025-11-17T14:25:49.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5858139 -24.256314
2025-11-17T14:25:49.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5858139 -24.256314
2025-11-17T14:25:49.491 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5858139 -24.256314
2025-11-17T14:25:49.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.5858139;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60556;2460997.01793394;14.43038278;1.3;_20.5603023759841 -24.3435604412094
2025-11-17T14:25:49.492 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5603023759841     dec_j2k = -24.3435604412094
2025-11-17T14:25:49.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:49.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:49.492 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:49.493 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:49.494 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37615)
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:49.496 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:49.504 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:49.504 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01793391, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992751, telescope_ra=20.5858139, telescope_dec=-24.256314, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.60556, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5603023759841, telescope_dec_j2k=-24.3435604412094, observability=1)
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Status age = 7.724012851715088s
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:57.228 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:25:57.229 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:25:57.230 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 17;20.5879648;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60772;2460997.0180235;14.43252778;1.3;_
2025-11-17T14:25:57.230 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response 17;20.5879648;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60772;2460997.0180235;14.43252778;1.3;_
2025-11-17T14:25:57.230 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:25:57.230 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:25:57.230 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:25:57.231 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:57.231 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:25:57.231 [INFO] [Thread-68190 (handle)] [driver.py] [get_status()] Telra = 20.5879648, teldec = -24.256314
2025-11-17T14:25:57.231 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5879648 -24.256314
2025-11-17T14:25:57.231 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5879648 -24.256314
2025-11-17T14:25:57.231 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5879648 -24.256314
2025-11-17T14:25:57.232 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 17;20.5879648;-24.256314;50.108254;89.992751;50.08601;90.12017;17.60772;2460997.01802352;14.43252778;1.3;_20.5624545496621 -24.3436245851355
2025-11-17T14:25:57.232 [INFO] [Thread-68190 (handle)] [driver.py] [get_status()] ra_j2k = 20.5624545496621     dec_j2k = -24.3436245851355
2025-11-17T14:25:57.232 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:25:57.232 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:25:57.233 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:25:57.233 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:25:57.233 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162357330327;_
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:25:57.234 [DEBUG] [Thread-68190 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46623)
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:25:57.237 [DEBUG] [Thread-68190 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:25:57.245 [DEBUG] [Thread-68190 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:25:57.245 [INFO] [Thread-68190 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0180235, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108254, telescope_az=89.992751, telescope_ra=20.5879648, telescope_dec=-24.256314, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.60772, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:24:59.707812', telescope_ra_j2k=20.5624545496621, telescope_dec_j2k=-24.3436245851355, observability=1)
2025-11-17T14:25:59.851 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:59.851 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:59.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:59.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:59.851 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:59.852 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:25:59.852 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:25:59.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:25:59.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:25:59.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:25:59.853 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:25:59.853 [INFO] [ThreadPoolExecutor-2903_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:25:59.853 [INFO] [ThreadPoolExecutor-2903_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:26:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 17.76344108581543s
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5929247;-24.256314;50.108253;89.99275;50.08601;90.12017;17.61268;2460997.01822929;14.43747417;1.3;_
2025-11-17T14:26:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.5929247;-24.256314;50.108253;89.99275;50.08601;90.12017;17.61268;2460997.01822929;14.43747417;1.3;_
2025-11-17T14:26:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:15.013 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.5929247, teldec = -24.256314
2025-11-17T14:26:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5929247 -24.256314
2025-11-17T14:26:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5929247 -24.256314
2025-11-17T14:26:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5929247 -24.256314
2025-11-17T14:26:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.5929247;-24.256314;50.108253;89.99275;50.08601;90.12017;17.61268;2460997.01822933;14.43747417;1.3;_20.5674173907561 -24.3437723946287
2025-11-17T14:26:15.014 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.5674173907561     dec_j2k = -24.3437723946287
2025-11-17T14:26:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49317)
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:15.031 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:26:15.031 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01822929, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.99275, telescope_ra=20.5929247, telescope_dec=-24.256314, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.61268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.5674173907561, telescope_dec_j2k=-24.3437723946287, observability=1)
2025-11-17T14:26:15.298 [DEBUG] [Thread-68191 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:15.298 [DEBUG] [Thread-68191 (handle)] [server.py] [get_status()] Status age = 0.2670280933380127s
2025-11-17T14:26:15.298 [DEBUG] [Thread-68191 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2670280933380127
2025-11-17T14:26:15.678 [DEBUG] [Thread-68192 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:15.678 [DEBUG] [Thread-68192 (handle)] [server.py] [get_status()] Status age = 0.6474783420562744s
2025-11-17T14:26:15.678 [DEBUG] [Thread-68192 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6474783420562744
2025-11-17T14:26:20.731 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.731 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.731 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:20.731 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:20.731 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:26:20.732 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:20.733 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:20.734 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:26:20.735 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:20.736 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Park
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:26:20.737 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:26:20.739 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 29;20.5945054;-24.256314;50.108253;89.99275;50.08601;90.12017;17.61426;2460997.01829558;14.43905056;1.3;_Park Command Successful
2025-11-17T14:26:21.739 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:26:21.739 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:26:21.739 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:26:21.739 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:26:21.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:26:22.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:26:22.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:26:22.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:26:22.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:26:22.740 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:26:23.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:26:23.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:26:23.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:26:23.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:26:23.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:26:24.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:26:24.741 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:24.742 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:26:24.743 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:26:24.744 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:25.744 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:25.744 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:25.745 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:25.745 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:25.745 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:26:25.746 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:26:25.747 [DEBUG] [ThreadPoolExecutor-2902_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:25.747 [INFO] [ThreadPoolExecutor-2902_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:26:28.326 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.295866966247559s
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:28.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:28.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:28.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5966301;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61638;2460997.01838344;14.44116944;1.3;_
2025-11-17T14:26:28.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.5966301;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61638;2460997.01838344;14.44116944;1.3;_
2025-11-17T14:26:28.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:28.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:28.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:28.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:28.330 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:28.330 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.5966301, teldec = -24.256313
2025-11-17T14:26:28.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5966301 -24.256313
2025-11-17T14:26:28.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5966301 -24.256313
2025-11-17T14:26:28.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5966301 -24.256313
2025-11-17T14:26:28.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.5966301;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61638;2460997.01838346;14.44116944;1.3;_20.5711249917958 -24.3438817240494
2025-11-17T14:26:28.331 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.5711249917958     dec_j2k = -24.3438817240494
2025-11-17T14:26:28.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:28.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:28.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162362694745;_
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162362694745;_
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:28.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:28.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:28.334 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:28.334 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:28.334 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34569)
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:28.337 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:28.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:28.344 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:28.345 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:26:28.345 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01838344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.99275, telescope_ra=20.5966301, telescope_dec=-24.256313, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.61638, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.5711249917958, telescope_dec_j2k=-24.3438817240494, observability=1)
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Status age = 5.016984224319458s
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:33.362 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:33.363 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:33.364 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 17;20.5980493;-24.256313;50.108253;89.99275;50.08601;90.12017;17.6178;2460997.01844171;14.44258472;1.3;_
2025-11-17T14:26:33.364 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response 17;20.5980493;-24.256313;50.108253;89.99275;50.08601;90.12017;17.6178;2460997.01844171;14.44258472;1.3;_
2025-11-17T14:26:33.364 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:33.364 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:33.364 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:33.365 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:33.365 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:33.365 [INFO] [Thread-68193 (handle)] [driver.py] [get_status()] Telra = 20.5980493, teldec = -24.256313
2025-11-17T14:26:33.365 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] UnCookCoordinates 20.5980493 -24.256313
2025-11-17T14:26:33.365 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.5980493 -24.256313
2025-11-17T14:26:33.365 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5980493 -24.256313
2025-11-17T14:26:33.366 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 17;20.5980493;-24.256313;50.108253;89.99275;50.08601;90.12017;17.6178;2460997.01844174;14.44258472;1.3;_20.5725450355834 -24.3439239595986
2025-11-17T14:26:33.366 [INFO] [Thread-68193 (handle)] [driver.py] [get_status()] ra_j2k = 20.5725450355834     dec_j2k = -24.3439239595986
2025-11-17T14:26:33.366 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:33.366 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162351965909;_
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:33.367 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:33.368 [DEBUG] [Thread-68193 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37705)
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:33.374 [DEBUG] [Thread-68193 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:33.383 [DEBUG] [Thread-68193 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:26:33.383 [INFO] [Thread-68193 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01844171, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.99275, telescope_ra=20.5980493, telescope_dec=-24.256313, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.6178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.5725450355834, telescope_dec_j2k=-24.3439239595986, observability=1)
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.0977532863616943s
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:34.481 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5983573;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61811;2460997.01845465;14.44289194;1.3;_
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.5983573;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61811;2460997.01845465;14.44289194;1.3;_
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:34.482 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:34.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:34.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:34.483 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:34.483 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.5983573, teldec = -24.256313
2025-11-17T14:26:34.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.5983573 -24.256313
2025-11-17T14:26:34.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.5983573 -24.256313
2025-11-17T14:26:34.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.5983573 -24.256313
2025-11-17T14:26:34.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.5983573;-24.256313;50.108253;89.99275;50.08601;90.12017;17.61811;2460997.01845468;14.44289194;1.3;_20.572853218766 -24.3439331241369
2025-11-17T14:26:34.485 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.572853218766     dec_j2k = -24.3439331241369
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10467837221404;171.162362694745;_
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10467837221404;171.162362694745;_
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:34.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:34.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:34.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:34.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:34.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41779)
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:34.489 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:34.496 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:26:34.496 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01845465, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467837221404, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.99275, telescope_ra=20.5983573, telescope_dec=-24.256313, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.61811, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.572853218766, telescope_dec_j2k=-24.3439331241369, observability=1)
2025-11-17T14:26:34.496 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00841569900513 seconds ago
2025-11-17T14:26:49.565 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:26:49
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.06901741027832s
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:49.565 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:49.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:49.566 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:49.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:49.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.602539;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62229;2460997.01862926;14.44706222;1.3;_
2025-11-17T14:26:49.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.602539;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62229;2460997.01862926;14.44706222;1.3;_
2025-11-17T14:26:49.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:49.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:49.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:49.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:49.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:49.569 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.602539, teldec = -24.256313
2025-11-17T14:26:49.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.602539 -24.256313
2025-11-17T14:26:49.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.602539 -24.256313
2025-11-17T14:26:49.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.602539 -24.256313
2025-11-17T14:26:49.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.602539;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62229;2460997.01862928;14.44706222;1.3;_20.5770374079726 -24.344057494949
2025-11-17T14:26:49.570 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5770374079726     dec_j2k = -24.344057494949
2025-11-17T14:26:49.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:49.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:49.570 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162357330327;_
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:49.571 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:49.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:49.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:49.572 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:49.573 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60431)
2025-11-17T14:26:49.573 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:49.574 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:49.574 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:49.574 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:49.574 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:49.581 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:26:49.581 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01862926, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992749, telescope_ra=20.602539, telescope_dec=-24.256313, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.62229, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.5770374079726, telescope_dec_j2k=-24.344057494949, observability=1)
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Status age = 1.9078478813171387s
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:26:51.489 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:26:51.490 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 17;20.6030897;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62284;2460997.0186515;14.44761139;1.3;_
2025-11-17T14:26:51.490 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response 17;20.6030897;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62284;2460997.0186515;14.44761139;1.3;_
2025-11-17T14:26:51.490 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:26:51.490 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:26:51.491 [INFO] [Thread-68194 (handle)] [driver.py] [get_status()] Telra = 20.6030897, teldec = -24.256313
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6030897 -24.256313
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6030897 -24.256313
2025-11-17T14:26:51.491 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6030897 -24.256313
2025-11-17T14:26:51.495 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 17;20.6030897;-24.256313;50.108253;89.992749;50.08601;90.12017;17.62284;2460997.01865153;14.44761139;1.3;_20.5775884360809 -24.3440738659668
2025-11-17T14:26:51.495 [INFO] [Thread-68194 (handle)] [driver.py] [get_status()] ra_j2k = 20.5775884360809     dec_j2k = -24.3440738659668
2025-11-17T14:26:51.495 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:26:51.495 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:26:51.495 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162357330327;_
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:51.496 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:26:51.497 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:26:51.498 [DEBUG] [Thread-68194 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:26:51.498 [DEBUG] [Thread-68194 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:26:51.498 [DEBUG] [Thread-68194 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:26:51.501 [DEBUG] [Thread-68194 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35539)
2025-11-17T14:26:51.502 [DEBUG] [Thread-68194 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:26:51.502 [DEBUG] [Thread-68194 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:26:51.502 [DEBUG] [Thread-68194 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:26:51.502 [DEBUG] [Thread-68194 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:26:51.502 [DEBUG] [Thread-68194 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:26:51.509 [DEBUG] [Thread-68194 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:26:51.509 [INFO] [Thread-68194 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0186515, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992749, telescope_ra=20.6030897, telescope_dec=-24.256313, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.62284, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:25:59.850483', telescope_ra_j2k=20.5775884360809, telescope_dec_j2k=-24.3440738659668, observability=1)
2025-11-17T14:27:00.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:00.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:00.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:00.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:00.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:00.001 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:00.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:00.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:00.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:00.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:00.002 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:27:00.002 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:00.002 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:27:00.003 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:27:00.004 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:01.004 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:01.004 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:01.004 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:01.004 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:01.004 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:27:01.005 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:01.006 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:01.007 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:01.007 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:01.007 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:01.007 [DEBUG] [ThreadPoolExecutor-2904_0] [payload.py] [to_registers()] [0]
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38339)
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:01.013 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:01.020 [DEBUG] [ThreadPoolExecutor-2904_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Status age = 18.051620960235596s
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:09.561 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:09.562 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:09.563 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 17;20.6081315;-24.256312;50.108253;89.992749;50.08601;90.12017;17.62788;2460997.01886068;14.45263944;1.3;_
2025-11-17T14:27:09.563 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response 17;20.6081315;-24.256312;50.108253;89.992749;50.08601;90.12017;17.62788;2460997.01886068;14.45263944;1.3;_
2025-11-17T14:27:09.563 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:09.563 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:09.563 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:09.564 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:09.564 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:09.564 [INFO] [Thread-68195 (handle)] [driver.py] [get_status()] Telra = 20.6081315, teldec = -24.256312
2025-11-17T14:27:09.564 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6081315 -24.256312
2025-11-17T14:27:09.564 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6081315 -24.256312
2025-11-17T14:27:09.564 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6081315 -24.256312
2025-11-17T14:27:09.565 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 17;20.6081315;-24.256312;50.108253;89.992749;50.08601;90.12017;17.62788;2460997.01886071;14.45263944;1.3;_20.5826332433747 -24.3442226632189
2025-11-17T14:27:09.565 [INFO] [Thread-68195 (handle)] [driver.py] [get_status()] ra_j2k = 20.5826332433747     dec_j2k = -24.3442226632189
2025-11-17T14:27:09.565 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:09.565 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:09.565 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162351965909;_
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162351965909;_
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:09.566 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48037)
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:09.567 [DEBUG] [Thread-68195 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:09.568 [DEBUG] [Thread-68195 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:09.575 [DEBUG] [Thread-68195 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:09.575 [DEBUG] [Thread-68195 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:09.575 [DEBUG] [Thread-68195 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:09.575 [DEBUG] [Thread-68195 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:09.575 [DEBUG] [Thread-68195 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:09.576 [DEBUG] [Thread-68195 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:09.576 [DEBUG] [Thread-68195 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:09.576 [DEBUG] [Thread-68195 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:09.576 [DEBUG] [Thread-68195 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:27:09.576 [INFO] [Thread-68195 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01886068, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992749, telescope_ra=20.6081315, telescope_dec=-24.256312, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.62788, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5826332433747, telescope_dec_j2k=-24.3442226632189, observability=1)
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.43641996383667s
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6096351;-24.256312;50.108253;89.992748;50.08601;90.12017;17.62939;2460997.01892377;14.45413889;1.3;_
2025-11-17T14:27:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.6096351;-24.256312;50.108253;89.992748;50.08601;90.12017;17.62939;2460997.01892377;14.45413889;1.3;_
2025-11-17T14:27:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:15.015 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.6096351, teldec = -24.256312
2025-11-17T14:27:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6096351 -24.256312
2025-11-17T14:27:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6096351 -24.256312
2025-11-17T14:27:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6096351 -24.256312
2025-11-17T14:27:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6096351;-24.256312;50.108253;89.992748;50.08601;90.12017;17.62939;2460997.0189238;14.45413889;1.3;_20.5841377413059 -24.3442673075042
2025-11-17T14:27:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.5841377413059     dec_j2k = -24.3442673075042
2025-11-17T14:27:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162362694745;_
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55949)
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:15.022 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:27:15.030 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01892377, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992748, telescope_ra=20.6096351, telescope_dec=-24.256312, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.62939, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5841377413059, telescope_dec_j2k=-24.3442673075042, observability=1)
2025-11-17T14:27:15.711 [DEBUG] [Thread-68196 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:15.711 [DEBUG] [Thread-68196 (handle)] [server.py] [get_status()] Status age = 0.6810474395751953s
2025-11-17T14:27:15.711 [DEBUG] [Thread-68196 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6810474395751953
2025-11-17T14:27:26.020 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:26.020 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:26.020 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:26.020 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:26.021 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:26.022 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:26.022 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:26.022 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:26.022 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:26.022 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:26.023 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:26.023 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:27:26.023 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:27:26.023 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:27:26.023 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.404644966125488s
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:27.435 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:27.437 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:27.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6130987;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63285;2460997.01906757;14.45759306;1.3;_
2025-11-17T14:27:27.438 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.6130987;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63285;2460997.01906757;14.45759306;1.3;_
2025-11-17T14:27:27.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:27.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:27.438 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:27.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:27.439 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:27.439 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.6130987, teldec = -24.256312
2025-11-17T14:27:27.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6130987 -24.256312
2025-11-17T14:27:27.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6130987 -24.256312
2025-11-17T14:27:27.439 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6130987 -24.256312
2025-11-17T14:27:27.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6130987;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63285;2460997.01906759;14.45759306;1.3;_20.5876034116864 -24.344370096138
2025-11-17T14:27:27.440 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.5876034116864     dec_j2k = -24.344370096138
2025-11-17T14:27:27.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:27.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:27.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:27.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:27.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:27.443 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:27.443 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:27.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:27.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:27.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:27.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:27.444 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:27.444 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52759)
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:27.450 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:27.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:27.457 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:27.457 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:27.457 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:27.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:27.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:27.458 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:27.458 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:27.458 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:27:27.458 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01906757, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992748, telescope_ra=20.6130987, telescope_dec=-24.256312, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.63285, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5876034116864, telescope_dec_j2k=-24.344370096138, observability=1)
2025-11-17T14:27:27.622 [DEBUG] [Thread-68197 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:27.622 [DEBUG] [Thread-68197 (handle)] [server.py] [get_status()] Status age = 0.16454577445983887s
2025-11-17T14:27:27.622 [DEBUG] [Thread-68197 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.16454577445983887
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.098552942276001s
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:34.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:34.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:34.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6150685;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63482;2460997.01914998;14.4595575;1.3;_
2025-11-17T14:27:34.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.6150685;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63482;2460997.01914998;14.4595575;1.3;_
2025-11-17T14:27:34.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:34.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:34.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:34.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:34.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:34.559 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.6150685, teldec = -24.256312
2025-11-17T14:27:34.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.6150685 -24.256312
2025-11-17T14:27:34.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.6150685 -24.256312
2025-11-17T14:27:34.559 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6150685 -24.256312
2025-11-17T14:27:34.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6150967;-24.256312;50.108253;89.992748;50.08601;90.12017;17.63485;2460997.01915;14.45958556;1.3;_20.5895743903621 -24.344428521673
2025-11-17T14:27:34.560 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.5895743903621     dec_j2k = -24.344428521673
2025-11-17T14:27:34.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:34.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:34.560 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678332102097;171.162362694745;_
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162362694745;_
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:34.562 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:34.563 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:34.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:34.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:34.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47623)
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:34.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:34.574 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:27:34.575 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01914998, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992748, telescope_ra=20.6150685, telescope_dec=-24.256312, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.63482, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5895743903621, telescope_dec_j2k=-24.344428521673, observability=1)
2025-11-17T14:27:34.575 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.009496450424194 seconds ago
2025-11-17T14:27:45.737 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:45.737 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Status age = 11.162903785705566s
2025-11-17T14:27:45.737 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:45.737 [DEBUG] [Thread-68198 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:45.737 [DEBUG] [Thread-68198 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:45.738 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:45.738 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:45.738 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:45.739 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:45.740 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 17;20.6181965;-24.256312;50.108253;89.992747;50.08601;90.12017;17.63795;2460997.0192794;14.46267694;1.3;_
2025-11-17T14:27:45.740 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response 17;20.6181965;-24.256312;50.108253;89.992747;50.08601;90.12017;17.63795;2460997.0192794;14.46267694;1.3;_
2025-11-17T14:27:45.740 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:45.740 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:45.740 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:45.741 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:45.741 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:45.741 [INFO] [Thread-68198 (handle)] [driver.py] [get_status()] Telra = 20.6181965, teldec = -24.256312
2025-11-17T14:27:45.741 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6181965 -24.256312
2025-11-17T14:27:45.741 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6181965 -24.256312
2025-11-17T14:27:45.741 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6181965 -24.256312
2025-11-17T14:27:45.742 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 17;20.6181965;-24.256312;50.108253;89.992747;50.08601;90.12017;17.63795;2460997.01927942;14.46267694;1.3;_20.5927042638903 -24.3445212526431
2025-11-17T14:27:45.742 [INFO] [Thread-68198 (handle)] [driver.py] [get_status()] ra_j2k = 20.5927042638903     dec_j2k = -24.3445212526431
2025-11-17T14:27:45.742 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:45.742 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:45.742 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162357330327;_
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:45.743 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:45.744 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:45.745 [DEBUG] [Thread-68198 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:45.746 [DEBUG] [Thread-68198 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:45.746 [DEBUG] [Thread-68198 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59907)
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:45.751 [DEBUG] [Thread-68198 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:45.758 [DEBUG] [Thread-68198 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:45.759 [DEBUG] [Thread-68198 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:27:45.759 [INFO] [Thread-68198 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0192794, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108253, telescope_az=89.992747, telescope_ra=20.6181965, telescope_dec=-24.256312, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.63795, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5927042638903, telescope_dec_j2k=-24.3445212526431, observability=1)
2025-11-17T14:27:49.642 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:27:49
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.8834245204925537s
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:27:49.642 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:27:49.643 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:27:49.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:27:49.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6192803;-24.256311;50.108252;89.992747;50.08601;90.12017;17.63903;2460997.01932458;14.46375778;1.3;_
2025-11-17T14:27:49.644 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.6192803;-24.256311;50.108252;89.992747;50.08601;90.12017;17.63903;2460997.01932458;14.46375778;1.3;_
2025-11-17T14:27:49.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:27:49.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:27:49.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:27:49.645 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:49.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:27:49.646 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.6192803, teldec = -24.256311
2025-11-17T14:27:49.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6192803 -24.256311
2025-11-17T14:27:49.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6192803 -24.256311
2025-11-17T14:27:49.646 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6192803 -24.256311
2025-11-17T14:27:49.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6192803;-24.256311;50.108252;89.992747;50.08601;90.12017;17.63903;2460997.01932462;14.46375778;1.3;_20.5937887137151 -24.3445523688655
2025-11-17T14:27:49.647 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.5937887137151     dec_j2k = -24.3445523688655
2025-11-17T14:27:49.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:27:49.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:27:49.647 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677168855756;171.162357330327;_
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677168855756;171.162357330327;_
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:49.648 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:27:49.649 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:27:49.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:49.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:27:49.650 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60097)
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:27:49.655 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:27:49.662 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:27:49.662 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01932458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677168855756, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992747, telescope_ra=20.6192803, telescope_dec=-24.256311, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.63903, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:27:00.000222', telescope_ra_j2k=20.5937887137151, telescope_dec_j2k=-24.3445523688655, observability=1)
2025-11-17T14:28:00.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:00.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:00.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:00.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:00.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:00.148 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:00.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:00.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:00.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:00.149 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:00.149 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:28:00.149 [INFO] [ThreadPoolExecutor-2905_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:28:00.149 [INFO] [ThreadPoolExecutor-2905_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Status age = 14.128609657287598s
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:03.791 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 17;20.6232389;-24.256311;50.108252;89.992747;50.08601;90.12017;17.64299;2460997.01948833;14.46770556;1.3;_
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response 17;20.6232389;-24.256311;50.108252;89.992747;50.08601;90.12017;17.64299;2460997.01948833;14.46770556;1.3;_
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:03.792 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:03.793 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:03.793 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:03.793 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:03.793 [INFO] [Thread-68199 (handle)] [driver.py] [get_status()] Telra = 20.6232389, teldec = -24.256311
2025-11-17T14:28:03.794 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6232389 -24.256311
2025-11-17T14:28:03.794 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6232389 -24.256311
2025-11-17T14:28:03.794 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6232389 -24.256311
2025-11-17T14:28:03.795 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 17;20.6232389;-24.256311;50.108252;89.992747;50.08601;90.12017;17.64299;2460997.01948836;14.46770556;1.3;_20.5977496889053 -24.3446696140396
2025-11-17T14:28:03.795 [INFO] [Thread-68199 (handle)] [driver.py] [get_status()] ra_j2k = 20.5977496889053     dec_j2k = -24.3446696140396
2025-11-17T14:28:03.795 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:03.795 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:03.795 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 140;0.104678051318498;171.162362694745;_
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162362694745;_
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:03.796 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:03.797 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:03.798 [DEBUG] [Thread-68199 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:03.798 [DEBUG] [Thread-68199 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:03.798 [DEBUG] [Thread-68199 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40027)
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:03.802 [DEBUG] [Thread-68199 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:03.809 [DEBUG] [Thread-68199 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:03.810 [INFO] [Thread-68199 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01948833, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992747, telescope_ra=20.6232389, telescope_dec=-24.256311, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.64299, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.5977496889053, telescope_dec_j2k=-24.3446696140396, observability=1)
2025-11-17T14:28:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.206045627593994s
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6263571;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64611;2460997.01961825;14.47081528;1.3;_
2025-11-17T14:28:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.6263571;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64611;2460997.01961825;14.47081528;1.3;_
2025-11-17T14:28:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:15.019 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.6263571, teldec = -24.256311
2025-11-17T14:28:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6263571 -24.256311
2025-11-17T14:28:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6263571 -24.256311
2025-11-17T14:28:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6263571 -24.256311
2025-11-17T14:28:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6263571;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64611;2460997.01961829;14.47081528;1.3;_20.6008697623597 -24.3447619024506
2025-11-17T14:28:15.020 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6008697623597     dec_j2k = -24.3447619024506
2025-11-17T14:28:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162362694745;_
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162362694745;_
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56501)
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:15.030 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:15.037 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01961825, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992746, telescope_ra=20.6263571, telescope_dec=-24.256311, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.64611, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6008697623597, telescope_dec_j2k=-24.3447619024506, observability=1)
2025-11-17T14:28:15.761 [DEBUG] [Thread-68200 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:15.762 [DEBUG] [Thread-68200 (handle)] [server.py] [get_status()] Status age = 0.7242827415466309s
2025-11-17T14:28:15.762 [DEBUG] [Thread-68200 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7242827415466309
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:28:21.024 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:28:21.025 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:28:21.025 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.025 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.025 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.025 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:21.026 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:21.026 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:21.026 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.026 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:21.027 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:28:21.028 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:21.029 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Park
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:28:21.030 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:28:21.031 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 29;20.6280289;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64778;2460997.01968786;14.4724825;1.3;_Park Command Successful
2025-11-17T14:28:21.855 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Status age = 6.818302154541016s
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:21.856 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:21.857 [DEBUG] [Thread-68201 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:21.857 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:21.857 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:21.857 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:21.857 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:21.858 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 17;20.6282532;-24.256311;50.108252;89.992746;50.08601;90.12017;17.648;2460997.01969743;14.47270611;1.3;_
2025-11-17T14:28:21.858 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response 17;20.6282532;-24.256311;50.108252;89.992746;50.08601;90.12017;17.648;2460997.01969743;14.47270611;1.3;_
2025-11-17T14:28:21.858 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:21.858 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:21.858 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:21.859 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:21.859 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:21.859 [INFO] [Thread-68201 (handle)] [driver.py] [get_status()] Telra = 20.6282532, teldec = -24.256311
2025-11-17T14:28:21.859 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6282532 -24.256311
2025-11-17T14:28:21.859 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6282532 -24.256311
2025-11-17T14:28:21.859 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6282532 -24.256311
2025-11-17T14:28:21.860 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 17;20.6282532;-24.256311;50.108252;89.992746;50.08601;90.12017;17.648;2460997.01969745;14.47270611;1.3;_20.6027670026419 -24.3448179923059
2025-11-17T14:28:21.860 [INFO] [Thread-68201 (handle)] [driver.py] [get_status()] ra_j2k = 20.6027670026419     dec_j2k = -24.3448179923059
2025-11-17T14:28:21.860 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:21.860 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:21.860 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 140;0.104678332102097;171.162357330327;_
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162357330327;_
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:21.861 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:21.862 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:21.863 [DEBUG] [Thread-68201 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:21.863 [DEBUG] [Thread-68201 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:21.863 [DEBUG] [Thread-68201 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37737)
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:21.866 [DEBUG] [Thread-68201 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:21.873 [DEBUG] [Thread-68201 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:21.873 [INFO] [Thread-68201 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.01969743, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992746, telescope_ra=20.6282532, telescope_dec=-24.256311, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6027670026419, telescope_dec_j2k=-24.3448179923059, observability=1)
2025-11-17T14:28:22.031 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:28:22.031 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:28:22.031 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:28:22.032 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:28:22.032 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:28:23.032 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:28:23.032 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:28:23.032 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:28:23.033 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:28:23.033 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:28:24.033 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:28:24.033 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:28:24.033 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:28:24.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:28:24.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:25.034 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:28:25.035 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:28:25.036 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:28:25.036 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:26.036 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:26.037 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:26.037 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:26.037 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:26.037 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:28:26.038 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:28:26.039 [DEBUG] [ThreadPoolExecutor-2904_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:26.039 [INFO] [ThreadPoolExecutor-2904_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:28:26.549 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.676136255264282s
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:26.550 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:26.551 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:26.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6295603;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64931;2460997.01975176;14.47400972;1.3;_
2025-11-17T14:28:26.552 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.6295603;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64931;2460997.01975176;14.47400972;1.3;_
2025-11-17T14:28:26.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:26.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:26.552 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:26.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:26.553 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:26.553 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.6295603, teldec = -24.256311
2025-11-17T14:28:26.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6295603 -24.256311
2025-11-17T14:28:26.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6295603 -24.256311
2025-11-17T14:28:26.553 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6295603 -24.256311
2025-11-17T14:28:26.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6295603;-24.256311;50.108252;89.992746;50.08601;90.12017;17.64931;2460997.01975178;14.47400972;1.3;_20.6040748891855 -24.3448566460103
2025-11-17T14:28:26.554 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.6040748891855     dec_j2k = -24.3448566460103
2025-11-17T14:28:26.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:26.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:26.554 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162351965909;_
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162351965909;_
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:26.555 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:26.556 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:26.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:26.557 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:26.557 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51925)
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:26.560 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:26.567 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:26.568 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01975176, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992746, telescope_ra=20.6295603, telescope_dec=-24.256311, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.64931, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6040748891855, telescope_dec_j2k=-24.3448566460103, observability=1)
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.06720232963562s
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:34.635 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:34.636 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:34.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6318198;-24.25631;50.108252;89.992746;50.08601;90.12017;17.65157;2460997.01984532;14.47626306;1.3;_
2025-11-17T14:28:34.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.6318198;-24.25631;50.108252;89.992746;50.08601;90.12017;17.65157;2460997.01984532;14.47626306;1.3;_
2025-11-17T14:28:34.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:34.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:34.637 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:34.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:34.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:34.638 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.6318198, teldec = -24.25631
2025-11-17T14:28:34.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.6318198 -24.25631
2025-11-17T14:28:34.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.6318198 -24.25631
2025-11-17T14:28:34.638 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6318198 -24.25631
2025-11-17T14:28:34.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6318198;-24.25631;50.108252;89.992746;50.08601;90.12017;17.65157;2460997.01984536;14.47626306;1.3;_20.6063357499068 -24.3449224401535
2025-11-17T14:28:34.639 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.6063357499068     dec_j2k = -24.3449224401535
2025-11-17T14:28:34.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:34.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:34.639 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162357330327;_
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:34.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:34.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:34.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:34.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:34.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58075)
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:34.649 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:34.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:34.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:34.656 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:34.656 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:34.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:34.657 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:34.657 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:34.657 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:34.657 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:28:34.657 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01984532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992746, telescope_ra=20.6318198, telescope_dec=-24.25631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.65157, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6063357499068, telescope_dec_j2k=-24.3449224401535, observability=1)
2025-11-17T14:28:34.657 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01499080657959 seconds ago
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Status age = 5.353114604949951s
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:40.010 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:40.011 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:40.012 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 17;20.6333228;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65307;2460997.01990755;14.47776194;1.3;_
2025-11-17T14:28:40.012 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response 17;20.6333228;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65307;2460997.01990755;14.47776194;1.3;_
2025-11-17T14:28:40.012 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:40.012 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:40.012 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:40.013 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:40.013 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:40.013 [INFO] [Thread-68202 (handle)] [driver.py] [get_status()] Telra = 20.6333228, teldec = -24.25631
2025-11-17T14:28:40.013 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6333228 -24.25631
2025-11-17T14:28:40.013 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6333228 -24.25631
2025-11-17T14:28:40.013 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6333228 -24.25631
2025-11-17T14:28:40.014 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 17;20.6333228;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65307;2460997.01990757;14.47776194;1.3;_20.6078396555841 -24.3449668540343
2025-11-17T14:28:40.014 [INFO] [Thread-68202 (handle)] [driver.py] [get_status()] ra_j2k = 20.6078396555841     dec_j2k = -24.3449668540343
2025-11-17T14:28:40.014 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:40.014 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:40.014 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:40.015 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:40.016 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:40.017 [DEBUG] [Thread-68202 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:40.017 [DEBUG] [Thread-68202 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:40.017 [DEBUG] [Thread-68202 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39609)
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:40.018 [DEBUG] [Thread-68202 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:40.025 [DEBUG] [Thread-68202 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:40.025 [INFO] [Thread-68202 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.01990755, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992745, telescope_ra=20.6333228, telescope_dec=-24.25631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.65307, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6078396555841, telescope_dec_j2k=-24.3449668540343, observability=1)
2025-11-17T14:28:49.723 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:28:49
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.697680950164795s
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:49.723 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:49.724 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:49.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6360302;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65578;2460997.02001997;14.48046194;1.3;_
2025-11-17T14:28:49.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.6360302;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65578;2460997.02001997;14.48046194;1.3;_
2025-11-17T14:28:49.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:49.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:49.725 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:49.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:49.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:49.726 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.6360302, teldec = -24.25631
2025-11-17T14:28:49.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6360302 -24.25631
2025-11-17T14:28:49.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6360302 -24.25631
2025-11-17T14:28:49.726 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6360302 -24.25631
2025-11-17T14:28:49.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6360302;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65578;2460997.02001999;14.48046194;1.3;_20.6105486883027 -24.3450468239364
2025-11-17T14:28:49.727 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.6105486883027     dec_j2k = -24.3450468239364
2025-11-17T14:28:49.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:49.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:49.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678211766269;171.162362694745;_
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678211766269;171.162362694745;_
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:49.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:49.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42195)
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:49.732 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:49.739 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:49.739 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02001997, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678211766269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992745, telescope_ra=20.6360302, telescope_dec=-24.25631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.65578, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6105486883027, telescope_dec_j2k=-24.3450468239364, observability=1)
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Status age = 8.341907262802124s
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:28:58.081 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:28:58.082 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:28:58.082 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:28:58.083 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:28:58.084 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 17;20.6383362;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65809;2460997.02011671;14.48276167;1.3;_
2025-11-17T14:28:58.084 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response 17;20.6383362;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65809;2460997.02011671;14.48276167;1.3;_
2025-11-17T14:28:58.084 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:28:58.084 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:28:58.084 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:28:58.085 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:58.085 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:28:58.085 [INFO] [Thread-68203 (handle)] [driver.py] [get_status()] Telra = 20.6383362, teldec = -24.25631
2025-11-17T14:28:58.085 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6383362 -24.25631
2025-11-17T14:28:58.085 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6383362 -24.25631
2025-11-17T14:28:58.085 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6383362 -24.25631
2025-11-17T14:28:58.086 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 17;20.6383362;-24.25631;50.108252;89.992745;50.08601;90.12017;17.65809;2460997.02011674;14.48276167;1.3;_20.6128560802663 -24.3451149027812
2025-11-17T14:28:58.086 [INFO] [Thread-68203 (handle)] [driver.py] [get_status()] ra_j2k = 20.6128560802663     dec_j2k = -24.3451149027812
2025-11-17T14:28:58.086 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:28:58.086 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:28:58.086 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 140;0.104677730422955;171.162351965909;_
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response 140;0.104677730422955;171.162351965909;_
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:58.087 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:28:58.088 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:28:58.089 [DEBUG] [Thread-68203 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:58.089 [DEBUG] [Thread-68203 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:28:58.089 [DEBUG] [Thread-68203 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:28:58.095 [DEBUG] [Thread-68203 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56215)
2025-11-17T14:28:58.095 [DEBUG] [Thread-68203 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:28:58.095 [DEBUG] [Thread-68203 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:28:58.096 [DEBUG] [Thread-68203 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:28:58.096 [DEBUG] [Thread-68203 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:28:58.096 [DEBUG] [Thread-68203 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:28:58.103 [DEBUG] [Thread-68203 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:28:58.103 [INFO] [Thread-68203 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02011671, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677730422955, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992745, telescope_ra=20.6383362, telescope_dec=-24.25631, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.65809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:28:00.147271', telescope_ra_j2k=20.6128560802663, telescope_dec_j2k=-24.3451149027812, observability=1)
2025-11-17T14:29:00.291 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:00.291 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:00.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:00.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:00.292 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:00.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:00.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:00.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:00.293 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:00.293 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:29:00.293 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:00.293 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:00.293 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:00.293 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:29:00.294 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:29:00.295 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:01.295 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:01.296 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:01.296 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:01.296 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:01.296 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:01.297 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:01.297 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:01.297 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:01.297 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:01.298 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:01.299 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:01.299 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:01.299 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:01.299 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:01.299 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:01.300 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:01.300 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:01.300 [DEBUG] [ThreadPoolExecutor-2906_0] [payload.py] [to_registers()] [0]
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40781)
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:01.306 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:01.313 [DEBUG] [ThreadPoolExecutor-2906_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 16.931362867355347s
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6430806;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66283;2460997.02031292;14.48749306;1.3;_
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.6430806;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66283;2460997.02031292;14.48749306;1.3;_
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:15.037 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.6430806, teldec = -24.256309
2025-11-17T14:29:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6430806 -24.256309
2025-11-17T14:29:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6430806 -24.256309
2025-11-17T14:29:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6430806 -24.256309
2025-11-17T14:29:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6430806;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66283;2460997.02031294;14.48749306;1.3;_20.6176033480658 -24.3452538688513
2025-11-17T14:29:15.038 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6176033480658     dec_j2k = -24.3452538688513
2025-11-17T14:29:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677409527413;171.162357330327;_
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677409527413;171.162357330327;_
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58215)
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:15.052 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:15.052 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02031292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677409527413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992744, telescope_ra=20.6430806, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.66283, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.6176033480658, telescope_dec_j2k=-24.3452538688513, observability=1)
2025-11-17T14:29:15.795 [DEBUG] [Thread-68204 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:15.795 [DEBUG] [Thread-68204 (handle)] [server.py] [get_status()] Status age = 0.7429559230804443s
2025-11-17T14:29:15.795 [DEBUG] [Thread-68204 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7429559230804443
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Status age = 1.0909216403961182s
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:16.143 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:16.144 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:16.144 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:16.145 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:16.146 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 17;20.64338;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66313;2460997.02032576;14.48779167;1.3;_
2025-11-17T14:29:16.146 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response 17;20.64338;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66313;2460997.02032576;14.48779167;1.3;_
2025-11-17T14:29:16.146 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:16.146 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:16.146 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:16.147 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:16.147 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:16.147 [INFO] [Thread-68205 (handle)] [driver.py] [get_status()] Telra = 20.64338, teldec = -24.256309
2025-11-17T14:29:16.147 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] UnCookCoordinates 20.64338 -24.256309
2025-11-17T14:29:16.147 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.64338 -24.256309
2025-11-17T14:29:16.147 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.64338 -24.256309
2025-11-17T14:29:16.148 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 17;20.64338;-24.256309;50.108252;89.992744;50.08601;90.12017;17.66313;2460997.02032579;14.48779167;1.3;_20.6179029292024 -24.3452626970004
2025-11-17T14:29:16.148 [INFO] [Thread-68205 (handle)] [driver.py] [get_status()] ra_j2k = 20.6179029292024     dec_j2k = -24.3452626970004
2025-11-17T14:29:16.148 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:16.148 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:16.148 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 140;0.104677489751298;171.162351965909;_
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response 140;0.104677489751298;171.162351965909;_
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:16.149 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:16.150 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:16.150 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:16.150 [DEBUG] [Thread-68205 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:16.150 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:16.151 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:16.151 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:16.151 [DEBUG] [Thread-68205 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:16.151 [DEBUG] [Thread-68205 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:16.151 [DEBUG] [Thread-68205 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35263)
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:16.158 [DEBUG] [Thread-68205 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:16.165 [DEBUG] [Thread-68205 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:16.165 [INFO] [Thread-68205 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02032576, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677489751298, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108252, telescope_az=89.992744, telescope_ra=20.64338, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.66313, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.6179029292024, telescope_dec_j2k=-24.3452626970004, observability=1)
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.496517419815063s
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:25.662 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:25.663 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:25.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6460323;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66578;2460997.02043593;14.49043667;1.3;_
2025-11-17T14:29:25.664 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.6460323;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66578;2460997.02043593;14.49043667;1.3;_
2025-11-17T14:29:25.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:25.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:25.664 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:25.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:25.665 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:25.665 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.6460323, teldec = -24.256309
2025-11-17T14:29:25.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6460323 -24.256309
2025-11-17T14:29:25.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6460323 -24.256309
2025-11-17T14:29:25.665 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6460323 -24.256309
2025-11-17T14:29:25.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6460323;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66578;2460997.02043595;14.49043667;1.3;_20.6205568347273 -24.3453408795191
2025-11-17T14:29:25.666 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.6205568347273     dec_j2k = -24.3453408795191
2025-11-17T14:29:25.666 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162357330327;_
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:25.667 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:25.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:25.668 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:25.668 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:25.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:25.668 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:25.669 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:25.670 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:25.670 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:25.670 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58545)
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:25.676 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:25.683 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:25.683 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:25.683 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:25.684 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:25.684 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02043593, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992744, telescope_ra=20.6460323, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.66578, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.6205568347273, telescope_dec_j2k=-24.3453408795191, observability=1)
2025-11-17T14:29:26.313 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:26.314 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:26.314 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:26.314 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:26.314 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:26.314 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:26.315 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:29:26.316 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:29:26.317 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:34.270 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:34.270 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Status age = 8.586585998535156s
2025-11-17T14:29:34.270 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:34.270 [DEBUG] [Thread-68206 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:34.271 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 17;20.6484216;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66817;2460997.02053556;14.49281944;1.3;_
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response 17;20.6484216;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66817;2460997.02053556;14.49281944;1.3;_
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:34.272 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:34.273 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:34.273 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:34.274 [INFO] [Thread-68206 (handle)] [driver.py] [get_status()] Telra = 20.6484216, teldec = -24.256309
2025-11-17T14:29:34.274 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6484216 -24.256309
2025-11-17T14:29:34.274 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6484216 -24.256309
2025-11-17T14:29:34.274 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6484216 -24.256309
2025-11-17T14:29:34.275 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 17;20.6484216;-24.256309;50.108251;89.992744;50.08601;90.12017;17.66817;2460997.02053558;14.49281944;1.3;_20.6229475824143 -24.3454112732483
2025-11-17T14:29:34.275 [INFO] [Thread-68206 (handle)] [driver.py] [get_status()] ra_j2k = 20.6229475824143     dec_j2k = -24.3454112732483
2025-11-17T14:29:34.275 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:34.275 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:34.275 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162362694745;_
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:34.276 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:34.277 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:34.278 [DEBUG] [Thread-68206 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:34.278 [DEBUG] [Thread-68206 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:34.278 [DEBUG] [Thread-68206 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:34.279 [DEBUG] [Thread-68206 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33051)
2025-11-17T14:29:34.279 [DEBUG] [Thread-68206 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:34.279 [DEBUG] [Thread-68206 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:34.279 [DEBUG] [Thread-68206 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:34.279 [DEBUG] [Thread-68206 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:34.280 [DEBUG] [Thread-68206 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:34.287 [DEBUG] [Thread-68206 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:34.287 [INFO] [Thread-68206 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02053556, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992744, telescope_ra=20.6484216, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.66817, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.6229475824143, telescope_dec_j2k=-24.3454112732483, observability=1)
2025-11-17T14:29:34.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:29:34.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.4297809600830078s
2025-11-17T14:29:34.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.4297809600830078
2025-11-17T14:29:34.717 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99405026435852 seconds ago
2025-11-17T14:29:49.800 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:29:49
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.513015031814575s
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:49.800 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:49.801 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:49.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6527475;-24.256309;50.108251;89.992743;50.08601;90.12017;17.6725;2460997.0207153;14.49713361;1.3;_
2025-11-17T14:29:49.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.6527475;-24.256309;50.108251;89.992743;50.08601;90.12017;17.6725;2460997.0207153;14.49713361;1.3;_
2025-11-17T14:29:49.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:49.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:49.802 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:49.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:49.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:49.803 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.6527475, teldec = -24.256309
2025-11-17T14:29:49.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6527475 -24.256309
2025-11-17T14:29:49.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6527475 -24.256309
2025-11-17T14:29:49.803 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6527475 -24.256309
2025-11-17T14:29:49.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6527475;-24.256309;50.108251;89.992743;50.08601;90.12017;17.6725;2460997.02071532;14.49713361;1.3;_20.627276106785 -24.3455386356632
2025-11-17T14:29:49.804 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.627276106785     dec_j2k = -24.3455386356632
2025-11-17T14:29:49.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:49.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:49.804 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10467865299764;171.162346601491;_
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10467865299764;171.162346601491;_
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:49.805 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:49.806 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:49.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:49.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:49.807 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:49.809 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51135)
2025-11-17T14:29:49.809 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:49.809 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:49.809 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:49.809 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:49.810 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:49.817 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:49.818 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:49.818 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:49.818 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:49.818 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0207153, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467865299764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992743, telescope_ra=20.6527475, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.6725, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.627276106785, telescope_dec_j2k=-24.3455386356632, observability=1)
2025-11-17T14:29:52.348 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Status age = 2.5308828353881836s
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:29:52.349 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:29:52.350 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 17;20.6534659;-24.256309;50.108251;89.992743;50.08601;90.12017;17.67322;2460997.02074479;14.49785;1.3;_
2025-11-17T14:29:52.350 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response 17;20.6534659;-24.256309;50.108251;89.992743;50.08601;90.12017;17.67322;2460997.02074479;14.49785;1.3;_
2025-11-17T14:29:52.350 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:29:52.350 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:29:52.350 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:29:52.351 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:52.351 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:29:52.351 [INFO] [Thread-68207 (handle)] [driver.py] [get_status()] Telra = 20.6534659, teldec = -24.256309
2025-11-17T14:29:52.351 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6534659 -24.256309
2025-11-17T14:29:52.351 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6534659 -24.256309
2025-11-17T14:29:52.352 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6534659 -24.256309
2025-11-17T14:29:52.352 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 17;20.6534659;-24.256309;50.108251;89.992743;50.08601;90.12017;17.67322;2460997.02074482;14.49785;1.3;_20.6279949430231 -24.3455597757419
2025-11-17T14:29:52.353 [INFO] [Thread-68207 (handle)] [driver.py] [get_status()] ra_j2k = 20.6279949430231     dec_j2k = -24.3455597757419
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 140;0.104679014005125;171.162351965909;_
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response 140;0.104679014005125;171.162351965909;_
2025-11-17T14:29:52.353 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:29:52.354 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:52.354 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:52.354 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:52.354 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:52.354 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:52.355 [DEBUG] [Thread-68207 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:29:52.356 [DEBUG] [Thread-68207 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55719)
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:29:52.359 [DEBUG] [Thread-68207 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:29:52.367 [DEBUG] [Thread-68207 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:29:52.368 [INFO] [Thread-68207 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02074479, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679014005125, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992743, telescope_ra=20.6534659, telescope_dec=-24.256309, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.67322, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:29:00.291252', telescope_ra_j2k=20.6279949430231, telescope_dec_j2k=-24.3455597757419, observability=1)
2025-11-17T14:30:00.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:00.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:00.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:00.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:00.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:00.442 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:00.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:00.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:00.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:00.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:00.443 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:30:00.443 [INFO] [ThreadPoolExecutor-2907_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:30:00.444 [INFO] [ThreadPoolExecutor-2907_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Status age = 18.043455123901367s
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:10.411 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:10.412 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:10.413 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 17;20.6584902;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67824;2460997.02095385;14.50286056;1.3;_
2025-11-17T14:30:10.413 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response 17;20.6584902;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67824;2460997.02095385;14.50286056;1.3;_
2025-11-17T14:30:10.413 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:10.413 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:10.413 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:10.414 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:10.414 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:10.414 [INFO] [Thread-68208 (handle)] [driver.py] [get_status()] Telra = 20.6584902, teldec = -24.256308
2025-11-17T14:30:10.414 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6584902 -24.256308
2025-11-17T14:30:10.414 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6584902 -24.256308
2025-11-17T14:30:10.414 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6584902 -24.256308
2025-11-17T14:30:10.415 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 17;20.6584902;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67824;2460997.02095388;14.50286056;1.3;_20.6330222973778 -24.3457065368275
2025-11-17T14:30:10.415 [INFO] [Thread-68208 (handle)] [driver.py] [get_status()] ra_j2k = 20.6330222973778     dec_j2k = -24.3457065368275
2025-11-17T14:30:10.415 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:10.415 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:10.415 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 140;0.10467865299764;171.162346601491;_
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response 140;0.10467865299764;171.162346601491;_
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:10.416 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:10.417 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:10.418 [DEBUG] [Thread-68208 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:10.418 [DEBUG] [Thread-68208 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:10.418 [DEBUG] [Thread-68208 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40277)
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:10.422 [DEBUG] [Thread-68208 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:10.429 [DEBUG] [Thread-68208 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:10.429 [DEBUG] [Thread-68208 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:10.429 [DEBUG] [Thread-68208 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:10.429 [DEBUG] [Thread-68208 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:10.430 [DEBUG] [Thread-68208 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:10.430 [DEBUG] [Thread-68208 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:10.430 [DEBUG] [Thread-68208 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:10.430 [DEBUG] [Thread-68208 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:10.430 [DEBUG] [Thread-68208 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:10.430 [INFO] [Thread-68208 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02095385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467865299764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992742, telescope_ra=20.6584902, telescope_dec=-24.256308, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.67824, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6330222973778, telescope_dec_j2k=-24.3457065368275, observability=1)
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.57596492767334s
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.65977;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67952;2460997.02100704;14.50413694;1.3;_
2025-11-17T14:30:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.65977;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67952;2460997.02100704;14.50413694;1.3;_
2025-11-17T14:30:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:15.009 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.65977, teldec = -24.256308
2025-11-17T14:30:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.65977 -24.256308
2025-11-17T14:30:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.65977 -24.256308
2025-11-17T14:30:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.65977 -24.256308
2025-11-17T14:30:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.65977;-24.256308;50.108251;89.992742;50.08601;90.12017;17.67952;2460997.02100706;14.50413694;1.3;_20.6343028762615 -24.3457441504236
2025-11-17T14:30:15.010 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6343028762615     dec_j2k = -24.3457441504236
2025-11-17T14:30:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678773333468;171.162362694745;_
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678773333468;171.162362694745;_
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55595)
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:15.019 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:15.026 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:15.026 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:15.027 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02100704, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678773333468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992742, telescope_ra=20.65977, telescope_dec=-24.256308, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.67952, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6343028762615, telescope_dec_j2k=-24.3457441504236, observability=1)
2025-11-17T14:30:15.829 [DEBUG] [Thread-68209 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:15.830 [DEBUG] [Thread-68209 (handle)] [server.py] [get_status()] Status age = 0.8027324676513672s
2025-11-17T14:30:15.830 [DEBUG] [Thread-68209 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8027324676513672
2025-11-17T14:30:21.317 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.317 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.317 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:21.317 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:21.317 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:21.318 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.318 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:21.318 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:21.318 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.319 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:21.320 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:21.320 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:21.320 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:21.321 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:30:21.322 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:21.323 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Park
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:30:21.324 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:30:21.325 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 29;20.6615257;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68128;2460997.02108015;14.50588778;1.3;_Park Command Successful
2025-11-17T14:30:22.325 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:30:22.325 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:30:22.325 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:30:22.325 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:30:22.326 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:30:23.326 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:30:23.326 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:30:23.326 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:30:23.327 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:30:23.327 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:30:24.327 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:30:24.327 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:30:24.327 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:30:24.328 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:30:24.328 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.749142169952393s
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:24.776 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6624967;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68225;2460997.0211201;14.50685611;1.3;_
2025-11-17T14:30:24.777 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.6624967;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68225;2460997.0211201;14.50685611;1.3;_
2025-11-17T14:30:24.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:24.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:24.778 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:24.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:24.779 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:24.779 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.6624967, teldec = -24.256308
2025-11-17T14:30:24.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6624967 -24.256308
2025-11-17T14:30:24.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6624967 -24.256308
2025-11-17T14:30:24.779 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6624967 -24.256308
2025-11-17T14:30:24.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6624967;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68225;2460997.02112014;14.50685611;1.3;_20.6370312369599 -24.3458242556675
2025-11-17T14:30:24.780 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.6370312369599     dec_j2k = -24.3458242556675
2025-11-17T14:30:24.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:24.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:24.780 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104679174452896;171.162357330327;_
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104679174452896;171.162357330327;_
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:24.781 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:24.782 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:24.783 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:24.783 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:24.783 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33847)
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:24.788 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:24.795 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:24.796 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:24.796 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0211201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679174452896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992742, telescope_ra=20.6624967, telescope_dec=-24.256308, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.68225, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6370312369599, telescope_dec_j2k=-24.3458242556675, observability=1)
2025-11-17T14:30:25.328 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:30:25.328 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:30:25.328 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:30:25.329 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:30:25.329 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:30:25.329 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:25.329 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:25.329 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:25.330 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:25.330 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:25.330 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:25.330 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:25.330 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:30:25.331 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:30:26.332 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:30:26.333 [DEBUG] [ThreadPoolExecutor-2906_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:26.333 [INFO] [ThreadPoolExecutor-2906_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:30:28.514 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:28.514 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Status age = 3.718489408493042s
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:28.515 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:28.516 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:28.517 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 17;20.6635328;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68328;2460997.02116339;14.50788944;1.3;_
2025-11-17T14:30:28.517 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response 17;20.6635328;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68328;2460997.02116339;14.50788944;1.3;_
2025-11-17T14:30:28.517 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:28.517 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:28.517 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:28.518 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:28.518 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:28.518 [INFO] [Thread-68210 (handle)] [driver.py] [get_status()] Telra = 20.6635328, teldec = -24.256308
2025-11-17T14:30:28.518 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6635328 -24.256308
2025-11-17T14:30:28.518 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6635328 -24.256308
2025-11-17T14:30:28.518 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6635328 -24.256308
2025-11-17T14:30:28.519 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 17;20.6635328;-24.256308;50.108251;89.992742;50.08601;90.12017;17.68328;2460997.02116341;14.50788944;1.3;_20.6380679684377 -24.3458546825065
2025-11-17T14:30:28.519 [INFO] [Thread-68210 (handle)] [driver.py] [get_status()] ra_j2k = 20.6380679684377     dec_j2k = -24.3458546825065
2025-11-17T14:30:28.519 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:28.519 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:28.519 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 140;0.10467865299764;171.162357330327;_
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response 140;0.10467865299764;171.162357330327;_
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:28.520 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:28.521 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:28.522 [DEBUG] [Thread-68210 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:28.522 [DEBUG] [Thread-68210 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:28.522 [DEBUG] [Thread-68210 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59257)
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:28.523 [DEBUG] [Thread-68210 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:28.530 [DEBUG] [Thread-68210 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:28.531 [INFO] [Thread-68210 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02116339, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467865299764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992742, telescope_ra=20.6635328, telescope_dec=-24.256308, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.68328, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6380679684377, telescope_dec_j2k=-24.3458546825065, observability=1)
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.246602296829224s
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:34.777 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:34.778 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:34.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6652879;-24.256307;50.108251;89.992742;50.08601;90.12017;17.68504;2460997.02123587;14.50963972;1.3;_
2025-11-17T14:30:34.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.6652879;-24.256307;50.108251;89.992742;50.08601;90.12017;17.68504;2460997.02123587;14.50963972;1.3;_
2025-11-17T14:30:34.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:34.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:34.779 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:34.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:34.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:34.780 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.6652879, teldec = -24.256307
2025-11-17T14:30:34.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.6652879 -24.256307
2025-11-17T14:30:34.780 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.6652879 -24.256307
2025-11-17T14:30:34.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6652879 -24.256307
2025-11-17T14:30:34.781 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6652879;-24.256307;50.108251;89.992742;50.08601;90.12017;17.68504;2460997.02123589;14.50963972;1.3;_20.6398241388389 -24.3459052092606
2025-11-17T14:30:34.781 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.6398241388389     dec_j2k = -24.3459052092606
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104679094229011;171.162351965909;_
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104679094229011;171.162351965909;_
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:34.782 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:34.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:34.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:34.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:34.783 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:34.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:34.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:34.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:34.784 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:34.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:34.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:34.785 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33229)
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:34.787 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:34.794 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:30:34.794 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02123587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679094229011, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992742, telescope_ra=20.6652879, telescope_dec=-24.256307, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.68504, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6398241388389, telescope_dec_j2k=-24.3459052092606, observability=1)
2025-11-17T14:30:34.795 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99463677406311 seconds ago
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Status age = 11.7877779006958s
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:46.582 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:46.583 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:46.584 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 17;20.6685752;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68833;2460997.0213725;14.51291806;1.3;_
2025-11-17T14:30:46.584 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response 17;20.6685752;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68833;2460997.0213725;14.51291806;1.3;_
2025-11-17T14:30:46.584 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:46.584 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:46.584 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:46.585 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:46.585 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:46.585 [INFO] [Thread-68211 (handle)] [driver.py] [get_status()] Telra = 20.6685752, teldec = -24.256307
2025-11-17T14:30:46.585 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6685752 -24.256307
2025-11-17T14:30:46.585 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6685752 -24.256307
2025-11-17T14:30:46.585 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6685752 -24.256307
2025-11-17T14:30:46.586 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 17;20.6685752;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68833;2460997.02137252;14.51291806;1.3;_20.6431134452758 -24.3460016683782
2025-11-17T14:30:46.586 [INFO] [Thread-68211 (handle)] [driver.py] [get_status()] ra_j2k = 20.6431134452758     dec_j2k = -24.3460016683782
2025-11-17T14:30:46.586 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:46.586 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 140;0.104678893669297;171.162362694745;_
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response 140;0.104678893669297;171.162362694745;_
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:46.587 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:46.588 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:46.589 [DEBUG] [Thread-68211 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:46.589 [DEBUG] [Thread-68211 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:46.590 [DEBUG] [Thread-68211 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:46.591 [DEBUG] [Thread-68211 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54303)
2025-11-17T14:30:46.591 [DEBUG] [Thread-68211 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:46.591 [DEBUG] [Thread-68211 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:46.591 [DEBUG] [Thread-68211 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:46.591 [DEBUG] [Thread-68211 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:46.592 [DEBUG] [Thread-68211 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:46.598 [DEBUG] [Thread-68211 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:46.598 [DEBUG] [Thread-68211 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:46.599 [DEBUG] [Thread-68211 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:46.599 [INFO] [Thread-68211 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0213725, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678893669297, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992741, telescope_ra=20.6685752, telescope_dec=-24.256307, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.68833, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6431134452758, telescope_dec_j2k=-24.3460016683782, observability=1)
2025-11-17T14:30:49.879 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:30:49
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.279843330383301s
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:30:49.879 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:30:49.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:30:49.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:30:49.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:30:49.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6694905;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68924;2460997.02141065;14.51383083;1.3;_
2025-11-17T14:30:49.880 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.6694905;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68924;2460997.02141065;14.51383083;1.3;_
2025-11-17T14:30:49.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:30:49.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:30:49.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:30:49.881 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:49.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:30:49.882 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.6694905, teldec = -24.256307
2025-11-17T14:30:49.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6694905 -24.256307
2025-11-17T14:30:49.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6694905 -24.256307
2025-11-17T14:30:49.882 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6694905 -24.256307
2025-11-17T14:30:49.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6694905;-24.256307;50.108251;89.992741;50.08601;90.12017;17.68924;2460997.02141068;14.51383083;1.3;_20.6440293043725 -24.3460285143232
2025-11-17T14:30:49.883 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.6440293043725     dec_j2k = -24.3460285143232
2025-11-17T14:30:49.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:30:49.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:30:49.883 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104679415124553;171.162362694745;_
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104679415124553;171.162362694745;_
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:49.884 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:30:49.885 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34491)
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:30:49.886 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:30:49.893 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:30:49.894 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02141065, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679415124553, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108251, telescope_az=89.992741, telescope_ra=20.6694905, telescope_dec=-24.256307, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.68924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:30:00.440711', telescope_ra_j2k=20.6440293043725, telescope_dec_j2k=-24.3460285143232, observability=1)
2025-11-17T14:31:00.582 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:00.582 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:00.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:00.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:00.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:00.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:00.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:00.584 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:00.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:00.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:00.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:00.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:00.585 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:31:00.585 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:00.585 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:00.585 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:00.585 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:00.585 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:31:00.586 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:31:00.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:01.587 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:01.588 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:01.588 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:01.588 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:31:01.588 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:31:01.588 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:01.589 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:01.590 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:01.590 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:01.590 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:01.590 [DEBUG] [ThreadPoolExecutor-2908_0] [payload.py] [to_registers()] [0]
2025-11-17T14:31:01.595 [DEBUG] [ThreadPoolExecutor-2908_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51139)
2025-11-17T14:31:01.595 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:01.595 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:01.595 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:31:01.595 [DEBUG] [ThreadPoolExecutor-2908_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:01.596 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:01.602 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:01.603 [DEBUG] [ThreadPoolExecutor-2908_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Status age = 14.791696786880493s
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:04.685 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:04.686 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:04.687 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:04.688 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 17;20.6736137;-24.256307;50.10825;89.992741;50.08601;90.12017;17.69336;2460997.02158204;14.51794278;1.3;_
2025-11-17T14:31:04.688 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response 17;20.6736137;-24.256307;50.10825;89.992741;50.08601;90.12017;17.69336;2460997.02158204;14.51794278;1.3;_
2025-11-17T14:31:04.688 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:04.688 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:04.688 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:04.689 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:04.689 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:04.689 [INFO] [Thread-68212 (handle)] [driver.py] [get_status()] Telra = 20.6736137, teldec = -24.256307
2025-11-17T14:31:04.689 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6736137 -24.256307
2025-11-17T14:31:04.689 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6736137 -24.256307
2025-11-17T14:31:04.689 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6736137 -24.256307
2025-11-17T14:31:04.690 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 17;20.6736137;-24.256307;50.10825;89.992741;50.08601;90.12017;17.69336;2460997.02158206;14.51794278;1.3;_20.6481550253081 -24.3461493855906
2025-11-17T14:31:04.690 [INFO] [Thread-68212 (handle)] [driver.py] [get_status()] ra_j2k = 20.6481550253081     dec_j2k = -24.3461493855906
2025-11-17T14:31:04.690 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:04.690 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:04.690 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 140;0.104678933781239;171.162346601491;_
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response 140;0.104678933781239;171.162346601491;_
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:04.691 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:04.692 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:04.693 [DEBUG] [Thread-68212 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:04.693 [DEBUG] [Thread-68212 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:04.693 [DEBUG] [Thread-68212 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38829)
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:04.698 [DEBUG] [Thread-68212 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:04.705 [DEBUG] [Thread-68212 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:04.705 [INFO] [Thread-68212 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02158204, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678933781239, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992741, telescope_ra=20.6736137, telescope_dec=-24.256307, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.69336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6481550253081, telescope_dec_j2k=-24.3461493855906, observability=1)
2025-11-17T14:31:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.30910038948059s
2025-11-17T14:31:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:15.015 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6764851;-24.256307;50.10825;89.99274;50.08601;90.12017;17.69624;2460997.02170157;14.52080639;1.3;_
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.6764851;-24.256307;50.10825;89.99274;50.08601;90.12017;17.69624;2460997.02170157;14.52080639;1.3;_
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:15.018 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.6764851, teldec = -24.256307
2025-11-17T14:31:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6764851 -24.256307
2025-11-17T14:31:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6764851 -24.256307
2025-11-17T14:31:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6764851 -24.256307
2025-11-17T14:31:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6764851;-24.256307;50.10825;89.99274;50.08601;90.12017;17.69624;2460997.02170161;14.52080639;1.3;_20.6510281831539 -24.3462334994153
2025-11-17T14:31:15.019 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6510281831539     dec_j2k = -24.3462334994153
2025-11-17T14:31:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104679134340953;171.162351965909;_
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104679134340953;171.162351965909;_
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33039)
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:15.024 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:15.031 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:15.031 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:15.031 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:15.032 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:15.032 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02170157, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679134340953, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.99274, telescope_ra=20.6764851, telescope_dec=-24.256307, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.69624, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6510281831539, telescope_dec_j2k=-24.3462334994153, observability=1)
2025-11-17T14:31:15.866 [DEBUG] [Thread-68213 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:15.866 [DEBUG] [Thread-68213 (handle)] [server.py] [get_status()] Status age = 0.8339371681213379s
2025-11-17T14:31:15.866 [DEBUG] [Thread-68213 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8339371681213379
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Status age = 7.716045141220093s
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:22.748 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:22.749 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:22.749 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:22.749 [DEBUG] [Thread-68214 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:22.749 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:22.750 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:22.750 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:22.750 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:22.750 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 17;20.6786335;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69838;2460997.02179109;14.52294889;1.3;_
2025-11-17T14:31:22.750 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response 17;20.6786335;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69838;2460997.02179109;14.52294889;1.3;_
2025-11-17T14:31:22.751 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:22.751 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:22.751 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:22.752 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:22.752 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:22.752 [INFO] [Thread-68214 (handle)] [driver.py] [get_status()] Telra = 20.6786335, teldec = -24.256306
2025-11-17T14:31:22.752 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6786335 -24.256306
2025-11-17T14:31:22.752 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6786335 -24.256306
2025-11-17T14:31:22.752 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6786335 -24.256306
2025-11-17T14:31:22.753 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 17;20.6786335;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69838;2460997.02179112;14.52294889;1.3;_20.6531778997572 -24.3462954012145
2025-11-17T14:31:22.753 [INFO] [Thread-68214 (handle)] [driver.py] [get_status()] ra_j2k = 20.6531778997572     dec_j2k = -24.3462954012145
2025-11-17T14:31:22.753 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:22.753 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:22.753 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 140;0.104679334900667;171.162351965909;_
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response 140;0.104679334900667;171.162351965909;_
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:22.754 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:22.755 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:22.756 [DEBUG] [Thread-68214 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:22.756 [DEBUG] [Thread-68214 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:22.756 [DEBUG] [Thread-68214 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56039)
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:22.760 [DEBUG] [Thread-68214 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:22.767 [DEBUG] [Thread-68214 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:22.767 [DEBUG] [Thread-68214 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:22.767 [DEBUG] [Thread-68214 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:22.767 [DEBUG] [Thread-68214 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:22.768 [DEBUG] [Thread-68214 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:22.768 [DEBUG] [Thread-68214 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:22.768 [DEBUG] [Thread-68214 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:22.768 [DEBUG] [Thread-68214 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:22.768 [DEBUG] [Thread-68214 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:22.768 [INFO] [Thread-68214 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02179109, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679334900667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.99274, telescope_ra=20.6786335, telescope_dec=-24.256306, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.69838, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6531778997572, telescope_dec_j2k=-24.3462954012145, observability=1)
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.1215310096740723s
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:23.889 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:23.890 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:23.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6789694;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69872;2460997.02180429;14.52328389;1.3;_
2025-11-17T14:31:23.891 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.6789694;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69872;2460997.02180429;14.52328389;1.3;_
2025-11-17T14:31:23.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:23.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:23.891 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:23.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:23.892 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:23.892 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.6789694, teldec = -24.256306
2025-11-17T14:31:23.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6789694 -24.256306
2025-11-17T14:31:23.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6789694 -24.256306
2025-11-17T14:31:23.892 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6789694 -24.256306
2025-11-17T14:31:23.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.6789694;-24.256306;50.10825;89.99274;50.08601;90.12017;17.69872;2460997.02180432;14.52328389;1.3;_20.6535140056762 -24.3463052332874
2025-11-17T14:31:23.893 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.6535140056762     dec_j2k = -24.3463052332874
2025-11-17T14:31:23.893 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678973893182;171.162357330327;_
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678973893182;171.162357330327;_
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:23.894 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:23.895 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:23.896 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:23.896 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:23.897 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52857)
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:23.898 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:23.906 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:23.906 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02180429, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678973893182, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.99274, telescope_ra=20.6789694, telescope_dec=-24.256306, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.69872, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6535140056762, telescope_dec_j2k=-24.3463052332874, observability=1)
2025-11-17T14:31:26.603 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:26.603 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:26.603 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:26.603 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:26.603 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:26.604 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:31:26.605 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:31:26.606 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.948280572891235s
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:34.855 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6820005;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70175;2460997.0219312;14.52630667;1.3;_
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.6820005;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70175;2460997.0219312;14.52630667;1.3;_
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:34.856 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:34.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:34.857 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:34.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:34.858 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.6820005, teldec = -24.256306
2025-11-17T14:31:34.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.6820005 -24.256306
2025-11-17T14:31:34.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.6820005 -24.256306
2025-11-17T14:31:34.858 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6820005 -24.256306
2025-11-17T14:31:34.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6820283;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70178;2460997.02193124;14.52633444;1.3;_20.6565469650004 -24.3463939250307
2025-11-17T14:31:34.859 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.6565469650004     dec_j2k = -24.3463939250307
2025-11-17T14:31:34.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:34.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:34.859 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104679535460381;171.162362694745;_
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104679535460381;171.162362694745;_
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:34.860 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:34.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:34.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:34.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:34.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:34.861 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:34.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:34.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:34.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:34.862 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60005)
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:34.868 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:34.875 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:34.876 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:34.876 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:31:34.876 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0219312, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679535460381, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992739, telescope_ra=20.6820005, telescope_dec=-24.256306, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.70175, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6565469650004, telescope_dec_j2k=-24.3463939250307, observability=1)
2025-11-17T14:31:34.876 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.997164726257324 seconds ago
2025-11-17T14:31:40.819 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Status age = 5.943903923034668s
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:40.820 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:40.821 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:40.822 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 17;20.683675;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70343;2460997.02200025;14.52797667;1.3;_
2025-11-17T14:31:40.822 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response 17;20.683675;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70343;2460997.02200025;14.52797667;1.3;_
2025-11-17T14:31:40.822 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:40.822 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:40.822 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:40.823 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:40.823 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:40.823 [INFO] [Thread-68215 (handle)] [driver.py] [get_status()] Telra = 20.683675, teldec = -24.256306
2025-11-17T14:31:40.823 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] UnCookCoordinates 20.683675 -24.256306
2025-11-17T14:31:40.823 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.683675 -24.256306
2025-11-17T14:31:40.823 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.683675 -24.256306
2025-11-17T14:31:40.824 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 17;20.683675;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70343;2460997.02200028;14.52797667;1.3;_20.6582224930518 -24.3464428978622
2025-11-17T14:31:40.824 [INFO] [Thread-68215 (handle)] [driver.py] [get_status()] ra_j2k = 20.6582224930518     dec_j2k = -24.3464428978622
2025-11-17T14:31:40.824 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:40.824 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:40.824 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 140;0.104679014005125;171.162357330327;_
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response 140;0.104679014005125;171.162357330327;_
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:40.825 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:40.826 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:40.826 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:40.826 [DEBUG] [Thread-68215 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:40.826 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:40.826 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:40.827 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:40.828 [DEBUG] [Thread-68215 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:40.828 [DEBUG] [Thread-68215 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:40.828 [DEBUG] [Thread-68215 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47247)
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:40.833 [DEBUG] [Thread-68215 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:40.840 [DEBUG] [Thread-68215 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:40.840 [DEBUG] [Thread-68215 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:40.840 [DEBUG] [Thread-68215 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:40.841 [DEBUG] [Thread-68215 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:40.841 [INFO] [Thread-68215 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02200025, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679014005125, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992739, telescope_ra=20.683675, telescope_dec=-24.256306, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.70343, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6582224930518, telescope_dec_j2k=-24.3464428978622, observability=1)
2025-11-17T14:31:49.954 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:31:49
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.11350417137146s
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:49.954 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:49.955 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:49.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.686207;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70596;2460997.02210597;14.53050167;1.3;_
2025-11-17T14:31:49.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.686207;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70596;2460997.02210597;14.53050167;1.3;_
2025-11-17T14:31:49.956 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:49.957 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.686207, teldec = -24.256306
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.686207 -24.256306
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.686207 -24.256306
2025-11-17T14:31:49.957 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.686207 -24.256306
2025-11-17T14:31:49.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.6862351;-24.256306;50.10825;89.992739;50.08601;90.12017;17.70599;2460997.022106;14.53052972;1.3;_20.6607560487597 -24.3465169168664
2025-11-17T14:31:49.958 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.6607560487597     dec_j2k = -24.3465169168664
2025-11-17T14:31:49.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:49.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:49.958 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:49.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104679094229011;171.162357330327;_
2025-11-17T14:31:49.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104679094229011;171.162357330327;_
2025-11-17T14:31:49.959 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:49.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:49.959 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:49.960 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:49.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:49.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:49.961 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38715)
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:49.964 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:49.971 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:49.972 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02210597, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679094229011, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992739, telescope_ra=20.686207, telescope_dec=-24.256306, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.70596, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6607560487597, telescope_dec_j2k=-24.3465169168664, observability=1)
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Status age = 8.950513124465942s
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:31:58.922 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 17;20.6887188;-24.256305;50.10825;89.992739;50.08601;90.12017;17.70847;2460997.02220977;14.53300667;1.3;_
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response 17;20.6887188;-24.256305;50.10825;89.992739;50.08601;90.12017;17.70847;2460997.02220977;14.53300667;1.3;_
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:31:58.924 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:31:58.925 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:58.925 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:31:58.925 [INFO] [Thread-68216 (handle)] [driver.py] [get_status()] Telra = 20.6887188, teldec = -24.256305
2025-11-17T14:31:58.925 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6887188 -24.256305
2025-11-17T14:31:58.925 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6887188 -24.256305
2025-11-17T14:31:58.926 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6887188 -24.256305
2025-11-17T14:31:58.926 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 17;20.6887188;-24.256305;50.10825;89.992739;50.08601;90.12017;17.70847;2460997.02220979;14.53300667;1.3;_20.6632693936374 -24.34658930679
2025-11-17T14:31:58.926 [INFO] [Thread-68216 (handle)] [driver.py] [get_status()] ra_j2k = 20.6632693936374     dec_j2k = -24.34658930679
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 140;0.10467937501261;171.162351965909;_
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response 140;0.10467937501261;171.162351965909;_
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:31:58.927 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:58.928 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:58.928 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:58.928 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:58.928 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:58.929 [DEBUG] [Thread-68216 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:31:58.930 [DEBUG] [Thread-68216 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45809)
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:31:58.934 [DEBUG] [Thread-68216 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:31:58.941 [DEBUG] [Thread-68216 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:31:58.941 [DEBUG] [Thread-68216 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:58.941 [DEBUG] [Thread-68216 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:31:58.942 [DEBUG] [Thread-68216 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:31:58.942 [INFO] [Thread-68216 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02220977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467937501261, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992739, telescope_ra=20.6887188, telescope_dec=-24.256305, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.70847, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:31:00.582394', telescope_ra_j2k=20.6632693936374, telescope_dec_j2k=-24.34658930679, observability=1)
2025-11-17T14:32:00.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:00.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:00.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:00.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:00.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:00.734 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:00.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:00.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:00.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:00.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:00.735 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:00.735 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:32:00.736 [INFO] [ThreadPoolExecutor-2909_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:32:00.736 [INFO] [ThreadPoolExecutor-2909_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 16.0754234790802s
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6932008;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71295;2460997.02239605;14.53747639;1.3;_
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.6932008;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71295;2460997.02239605;14.53747639;1.3;_
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:15.021 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.6932008, teldec = -24.256305
2025-11-17T14:32:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6932008 -24.256305
2025-11-17T14:32:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6932008 -24.256305
2025-11-17T14:32:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6932008 -24.256305
2025-11-17T14:32:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.6932008;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71295;2460997.02239608;14.53747639;1.3;_20.6677541535268 -24.3467201662037
2025-11-17T14:32:15.022 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6677541535268     dec_j2k = -24.3467201662037
2025-11-17T14:32:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104679455236496;171.162362694745;_
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104679455236496;171.162362694745;_
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56075)
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:15.029 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:15.037 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:32:15.037 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02239605, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679455236496, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992738, telescope_ra=20.6932008, telescope_dec=-24.256305, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.71295, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6677541535268, telescope_dec_j2k=-24.3467201662037, observability=1)
2025-11-17T14:32:15.909 [DEBUG] [Thread-68217 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:15.909 [DEBUG] [Thread-68217 (handle)] [server.py] [get_status()] Status age = 0.8724548816680908s
2025-11-17T14:32:15.909 [DEBUG] [Thread-68217 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8724548816680908
2025-11-17T14:32:16.997 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:16.997 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Status age = 1.9607019424438477s
2025-11-17T14:32:16.997 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:16.997 [DEBUG] [Thread-68218 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:16.997 [DEBUG] [Thread-68218 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:16.998 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 17;20.6937615;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71351;2460997.02241897;14.53803556;1.3;_
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response 17;20.6937615;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71351;2460997.02241897;14.53803556;1.3;_
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:16.999 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:17.000 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:17.000 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:17.000 [INFO] [Thread-68218 (handle)] [driver.py] [get_status()] Telra = 20.6937615, teldec = -24.256305
2025-11-17T14:32:17.000 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] UnCookCoordinates 20.6937615 -24.256305
2025-11-17T14:32:17.000 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.6937615 -24.256305
2025-11-17T14:32:17.000 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6937615 -24.256305
2025-11-17T14:32:17.001 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 17;20.6937615;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71351;2460997.02241899;14.53803556;1.3;_20.6683151991077 -24.3467365281242
2025-11-17T14:32:17.001 [INFO] [Thread-68218 (handle)] [driver.py] [get_status()] ra_j2k = 20.6683151991077     dec_j2k = -24.3467365281242
2025-11-17T14:32:17.001 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:17.001 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:17.001 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:17.001 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 140;0.104679695908153;171.162351965909;_
2025-11-17T14:32:17.002 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response 140;0.104679695908153;171.162351965909;_
2025-11-17T14:32:17.002 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:17.002 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:17.002 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:17.002 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:17.003 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:17.004 [DEBUG] [Thread-68218 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:17.004 [DEBUG] [Thread-68218 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:17.004 [DEBUG] [Thread-68218 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53427)
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:17.010 [DEBUG] [Thread-68218 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:17.017 [DEBUG] [Thread-68218 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:32:17.018 [INFO] [Thread-68218 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02241897, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679695908153, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992738, telescope_ra=20.6937615, telescope_dec=-24.256305, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.71351, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6683151991077, telescope_dec_j2k=-24.3467365281242, observability=1)
2025-11-17T14:32:21.606 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.606 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.606 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:32:21.607 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:21.608 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:21.609 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.610 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:21.611 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:21.612 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:21.612 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:21.612 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:21.613 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:21.613 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Park
2025-11-17T14:32:21.613 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:32:21.613 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:32:21.613 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 29;20.6950407;-24.256311;50.10825;89.992749;50.08601;90.12018;17.71479;2460997.02247237;14.53931111;1.3;_Park Command Successful
2025-11-17T14:32:22.614 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:32:22.614 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:32:22.614 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:32:22.615 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:32:22.615 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.979659557342529s
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:22.997 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:22.998 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:22.999 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.695433;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71518;2460997.02248841;14.5397025;1.3;_
2025-11-17T14:32:22.999 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.695433;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71518;2460997.02248841;14.5397025;1.3;_
2025-11-17T14:32:22.999 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:22.999 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:22.999 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:23.000 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:23.000 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:23.000 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.695433, teldec = -24.256305
2025-11-17T14:32:23.000 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.695433 -24.256305
2025-11-17T14:32:23.000 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.695433 -24.256305
2025-11-17T14:32:23.000 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.695433 -24.256305
2025-11-17T14:32:23.001 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.695433;-24.256305;50.10825;89.992738;50.08601;90.12017;17.71518;2460997.02248844;14.5397025;1.3;_20.6699877297363 -24.3467852931485
2025-11-17T14:32:23.001 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.6699877297363     dec_j2k = -24.3467852931485
2025-11-17T14:32:23.001 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:23.001 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104679695908153;171.162351965909;_
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104679695908153;171.162351965909;_
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:23.002 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:23.003 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:23.003 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:23.003 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:23.004 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:23.004 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:23.004 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:23.005 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:23.005 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:23.005 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:23.010 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47811)
2025-11-17T14:32:23.011 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:23.011 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:23.011 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:23.011 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:23.011 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:23.018 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:32:23.018 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02248841, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679695908153, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992738, telescope_ra=20.695433, telescope_dec=-24.256305, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.71518, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6699877297363, telescope_dec_j2k=-24.3467852931485, observability=1)
2025-11-17T14:32:23.615 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:32:23.615 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:32:23.615 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:32:23.616 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:32:23.616 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:32:24.616 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:32:24.616 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:32:24.616 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:32:24.617 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:32:24.617 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:32:25.617 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:32:25.617 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:32:25.617 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:25.618 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:25.619 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:25.619 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:25.619 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:25.619 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:25.620 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:25.620 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:32:25.620 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:32:25.620 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:32:25.620 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:26.621 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:32:26.622 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:32:26.622 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:32:26.622 [DEBUG] [ThreadPoolExecutor-2908_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:26.622 [INFO] [ThreadPoolExecutor-2908_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.917423009872437s
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:34.936 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:34.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:34.937 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6987468;-24.256305;50.10825;89.992737;50.08601;90.12017;17.7185;2460997.02262659;14.54300722;1.3;_
2025-11-17T14:32:34.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.6987468;-24.256305;50.10825;89.992737;50.08601;90.12017;17.7185;2460997.02262659;14.54300722;1.3;_
2025-11-17T14:32:34.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:34.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:34.938 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:34.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:34.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:34.939 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.6987468, teldec = -24.256305
2025-11-17T14:32:34.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.6987468 -24.256305
2025-11-17T14:32:34.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.6987468 -24.256305
2025-11-17T14:32:34.939 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.6987468 -24.256305
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.6987468;-24.256305;50.10825;89.992737;50.08601;90.12017;17.7185;2460997.02262662;14.54300722;1.3;_20.6733035748434 -24.3468819207272
2025-11-17T14:32:34.940 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.6733035748434     dec_j2k = -24.3468819207272
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104679736020095;171.162351965909;_
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104679736020095;171.162351965909;_
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:34.940 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:34.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45197)
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:34.944 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:34.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:32:34.952 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02262659, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679736020095, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10825, telescope_az=89.992737, telescope_ra=20.6987468, telescope_dec=-24.256305, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.7185, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6733035748434, telescope_dec_j2k=-24.3468819207272, observability=1)
2025-11-17T14:32:34.952 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99742150306702 seconds ago
2025-11-17T14:32:35.063 [DEBUG] [Thread-68219 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:35.063 [DEBUG] [Thread-68219 (handle)] [server.py] [get_status()] Status age = 0.11170673370361328s
2025-11-17T14:32:35.063 [DEBUG] [Thread-68219 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.11170673370361328
2025-11-17T14:32:50.032 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:32:50
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.081095457077026s
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:50.033 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:50.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7029583;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72271;2460997.02280132;14.54720722;1.3;_
2025-11-17T14:32:50.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.7029583;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72271;2460997.02280132;14.54720722;1.3;_
2025-11-17T14:32:50.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:50.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:50.034 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:50.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:50.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:50.035 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.7029583, teldec = -24.256304
2025-11-17T14:32:50.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7029583 -24.256304
2025-11-17T14:32:50.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7029583 -24.256304
2025-11-17T14:32:50.035 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7029583 -24.256304
2025-11-17T14:32:50.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7029583;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72271;2460997.02280134;14.54720722;1.3;_20.6775176776764 -24.3470036274426
2025-11-17T14:32:50.036 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.6775176776764     dec_j2k = -24.3470036274426
2025-11-17T14:32:50.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:50.036 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104679856355924;171.162357330327;_
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104679856355924;171.162357330327;_
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:50.037 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:50.038 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:50.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:50.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:50.039 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:50.040 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:50.042 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50869)
2025-11-17T14:32:50.042 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:50.042 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:50.042 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:50.043 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:50.043 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:50.050 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:50.051 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:50.051 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:32:50.051 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02280132, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679856355924, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992737, telescope_ra=20.7029583, telescope_dec=-24.256304, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.72271, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6775176776764, telescope_dec_j2k=-24.3470036274426, observability=1)
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Status age = 3.1287074089050293s
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:32:53.179 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 17;20.7038212;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72357;2460997.02283773;14.54806778;1.3;_
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response 17;20.7038212;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72357;2460997.02283773;14.54806778;1.3;_
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:32:53.180 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:32:53.181 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:53.181 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:32:53.181 [INFO] [Thread-68220 (handle)] [driver.py] [get_status()] Telra = 20.7038212, teldec = -24.256304
2025-11-17T14:32:53.181 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7038212 -24.256304
2025-11-17T14:32:53.182 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7038212 -24.256304
2025-11-17T14:32:53.182 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7038212 -24.256304
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 17;20.7038212;-24.256304;50.108249;89.992737;50.08601;90.12017;17.72357;2460997.02283775;14.54806778;1.3;_20.6783811114335 -24.3470287555385
2025-11-17T14:32:53.183 [INFO] [Thread-68220 (handle)] [driver.py] [get_status()] ra_j2k = 20.6783811114335     dec_j2k = -24.3470287555385
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 140;0.104679776132038;171.162362694745;_
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response 140;0.104679776132038;171.162362694745;_
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:53.183 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:32:53.184 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:32:53.185 [DEBUG] [Thread-68220 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:53.185 [DEBUG] [Thread-68220 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:32:53.185 [DEBUG] [Thread-68220 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54771)
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:32:53.192 [DEBUG] [Thread-68220 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:32:53.199 [DEBUG] [Thread-68220 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:32:53.199 [INFO] [Thread-68220 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02283773, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679776132038, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992737, telescope_ra=20.7038212, telescope_dec=-24.256304, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.72357, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:32:00.733161', telescope_ra_j2k=20.6783811114335, telescope_dec_j2k=-24.3470287555385, observability=1)
2025-11-17T14:33:00.876 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:00.876 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:00.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:00.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:00.876 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:00.877 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:00.877 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:00.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:00.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:00.878 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:00.878 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:33:00.878 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:00.878 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:00.878 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:00.878 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:33:00.879 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:33:00.880 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:01.880 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:01.880 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:01.880 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:01.880 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:01.880 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:33:01.881 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:01.882 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:01.883 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:01.883 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:01.883 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:01.883 [DEBUG] [ThreadPoolExecutor-2910_0] [payload.py] [to_registers()] [0]
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40763)
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:01.886 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:01.893 [DEBUG] [ThreadPoolExecutor-2910_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Status age = 18.046356201171875s
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:11.246 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:11.247 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:11.248 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 17;20.7088652;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72862;2460997.02304685;14.55309806;1.3;_
2025-11-17T14:33:11.248 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response 17;20.7088652;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72862;2460997.02304685;14.55309806;1.3;_
2025-11-17T14:33:11.248 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:11.248 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:11.248 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:11.249 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:11.249 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:11.249 [INFO] [Thread-68221 (handle)] [driver.py] [get_status()] Telra = 20.7088652, teldec = -24.256304
2025-11-17T14:33:11.249 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7088652 -24.256304
2025-11-17T14:33:11.249 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7088652 -24.256304
2025-11-17T14:33:11.249 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7088652 -24.256304
2025-11-17T14:33:11.250 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 17;20.7088652;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72862;2460997.02304688;14.55309806;1.3;_20.6834282347984 -24.347175547945
2025-11-17T14:33:11.250 [INFO] [Thread-68221 (handle)] [driver.py] [get_status()] ra_j2k = 20.6834282347984     dec_j2k = -24.347175547945
2025-11-17T14:33:11.250 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:11.250 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:11.250 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 140;0.104679776132038;171.162357330327;_
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response 140;0.104679776132038;171.162357330327;_
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:11.251 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:11.252 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:11.253 [DEBUG] [Thread-68221 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:11.253 [DEBUG] [Thread-68221 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:11.253 [DEBUG] [Thread-68221 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45775)
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:11.256 [DEBUG] [Thread-68221 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:11.263 [DEBUG] [Thread-68221 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:11.263 [INFO] [Thread-68221 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02304685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679776132038, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992736, telescope_ra=20.7088652, telescope_dec=-24.256304, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.72862, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6834282347984, telescope_dec_j2k=-24.347175547945, observability=1)
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.773998260498047s
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7099206;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72967;2460997.02309073;14.55415056;1.3;_
2025-11-17T14:33:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.7099206;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72967;2460997.02309073;14.55415056;1.3;_
2025-11-17T14:33:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:15.041 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.7099206, teldec = -24.256304
2025-11-17T14:33:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7099206 -24.256304
2025-11-17T14:33:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7099206 -24.256304
2025-11-17T14:33:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7099206 -24.256304
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7099206;-24.256304;50.108249;89.992736;50.08601;90.12017;17.72967;2460997.02309076;14.55415056;1.3;_20.6844842890483 -24.3472062428148
2025-11-17T14:33:15.042 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.6844842890483     dec_j2k = -24.3472062428148
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10468037781118;171.162357330327;_
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10468037781118;171.162357330327;_
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:15.050 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54897)
2025-11-17T14:33:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:15.051 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:15.058 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:15.059 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:15.059 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02309073, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468037781118, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992736, telescope_ra=20.7099206, telescope_dec=-24.256304, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.72967, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6844842890483, telescope_dec_j2k=-24.3472062428148, observability=1)
2025-11-17T14:33:15.942 [DEBUG] [Thread-68222 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:15.942 [DEBUG] [Thread-68222 (handle)] [server.py] [get_status()] Status age = 0.883598804473877s
2025-11-17T14:33:15.942 [DEBUG] [Thread-68222 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.883598804473877
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.045403242111206s
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:22.104 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:22.105 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:22.105 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7119016;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73165;2460997.02317252;14.55612611;1.3;_
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7119016;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73165;2460997.02317252;14.55612611;1.3;_
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:22.106 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:22.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:22.107 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:22.107 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7119016, teldec = -24.256303
2025-11-17T14:33:22.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7119016 -24.256303
2025-11-17T14:33:22.107 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7119016 -24.256303
2025-11-17T14:33:22.108 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7119016 -24.256303
2025-11-17T14:33:22.108 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7119016;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73165;2460997.02317255;14.55612611;1.3;_20.686466517913 -24.347262839094
2025-11-17T14:33:22.109 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.686466517913     dec_j2k = -24.347262839094
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104680016803695;171.162362694745;_
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104680016803695;171.162362694745;_
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:22.109 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:22.110 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:22.110 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:22.110 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:22.111 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42631)
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:22.118 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:22.125 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:22.125 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:22.125 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:22.125 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:22.125 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:22.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:22.126 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:22.126 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:22.126 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:22.126 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02317252, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680016803695, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992736, telescope_ra=20.7119016, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.73165, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.686466517913, telescope_dec_j2k=-24.347262839094, observability=1)
2025-11-17T14:33:26.893 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:26.894 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:26.895 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:33:26.896 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:33:26.897 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:29.305 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:29.305 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Status age = 7.179607391357422s
2025-11-17T14:33:29.305 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:29.305 [DEBUG] [Thread-68223 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:29.305 [DEBUG] [Thread-68223 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:29.306 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:29.307 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 17;20.7139029;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73365;2460997.02325587;14.55812194;1.3;_
2025-11-17T14:33:29.307 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response 17;20.7139029;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73365;2460997.02325587;14.55812194;1.3;_
2025-11-17T14:33:29.307 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:29.307 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:29.307 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:29.308 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:29.308 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:29.308 [INFO] [Thread-68223 (handle)] [driver.py] [get_status()] Telra = 20.7139029, teldec = -24.256303
2025-11-17T14:33:29.308 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7139029 -24.256303
2025-11-17T14:33:29.308 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7139029 -24.256303
2025-11-17T14:33:29.309 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7139029 -24.256303
2025-11-17T14:33:29.309 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 17;20.7139029;-24.256303;50.108249;89.992736;50.08601;90.12017;17.73365;2460997.02325589;14.55812194;1.3;_20.6884690601052 -24.3473210009582
2025-11-17T14:33:29.310 [INFO] [Thread-68223 (handle)] [driver.py] [get_status()] ra_j2k = 20.6884690601052     dec_j2k = -24.3473210009582
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 140;0.104680417923123;171.162351965909;_
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response 140;0.104680417923123;171.162351965909;_
2025-11-17T14:33:29.310 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:29.311 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:29.311 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:29.311 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:29.311 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:29.311 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:29.312 [DEBUG] [Thread-68223 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:29.312 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:29.312 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:29.312 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:29.313 [DEBUG] [Thread-68223 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:29.313 [DEBUG] [Thread-68223 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:29.313 [DEBUG] [Thread-68223 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45983)
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:29.315 [DEBUG] [Thread-68223 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:29.323 [DEBUG] [Thread-68223 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:29.323 [INFO] [Thread-68223 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02325587, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680417923123, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992736, telescope_ra=20.7139029, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.73365, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6884690601052, telescope_dec_j2k=-24.3473210009582, observability=1)
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.6887123584747314s
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:35.012 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:35.013 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7154917;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73524;2460997.02332191;14.55970639;1.3;_
2025-11-17T14:33:35.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.7154917;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73524;2460997.02332191;14.55970639;1.3;_
2025-11-17T14:33:35.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:35.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:35.014 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:35.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:35.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:35.015 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.7154917, teldec = -24.256303
2025-11-17T14:33:35.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.7154917 -24.256303
2025-11-17T14:33:35.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.7154917 -24.256303
2025-11-17T14:33:35.015 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7154917 -24.256303
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7154917;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73524;2460997.02332194;14.55970639;1.3;_20.6900588468998 -24.3473671571659
2025-11-17T14:33:35.016 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.6900588468998     dec_j2k = -24.3473671571659
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104680137139523;171.162357330327;_
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104680137139523;171.162357330327;_
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:35.016 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:35.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:35.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:35.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:35.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:35.017 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:35.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:35.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:35.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:35.018 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49675)
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:35.024 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:35.031 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:33:35.032 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02332191, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680137139523, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992735, telescope_ra=20.7154917, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.73524, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6900588468998, telescope_dec_j2k=-24.3473671571659, observability=1)
2025-11-17T14:33:35.032 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99917960166931 seconds ago
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Status age = 12.396681785583496s
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:47.428 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:47.429 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:47.430 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 17;20.7189511;-24.256303;50.108249;89.992735;50.08601;90.12017;17.7387;2460997.02346562;14.56315639;1.3;_
2025-11-17T14:33:47.430 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response 17;20.7189511;-24.256303;50.108249;89.992735;50.08601;90.12017;17.7387;2460997.02346562;14.56315639;1.3;_
2025-11-17T14:33:47.430 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:47.430 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:47.430 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:47.431 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:47.431 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:47.431 [INFO] [Thread-68224 (handle)] [driver.py] [get_status()] Telra = 20.7189511, teldec = -24.256303
2025-11-17T14:33:47.431 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7189511 -24.256303
2025-11-17T14:33:47.431 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7189511 -24.256303
2025-11-17T14:33:47.431 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7189511 -24.256303
2025-11-17T14:33:47.432 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 17;20.7189511;-24.256303;50.108249;89.992735;50.08601;90.12017;17.7387;2460997.02346565;14.56315639;1.3;_20.6935203974663 -24.3474676023322
2025-11-17T14:33:47.432 [INFO] [Thread-68224 (handle)] [driver.py] [get_status()] ra_j2k = 20.6935203974663     dec_j2k = -24.3474676023322
2025-11-17T14:33:47.432 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:47.432 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:47.432 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 140;0.104681059714208;171.162362694745;_
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response 140;0.104681059714208;171.162362694745;_
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:47.433 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:47.434 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:47.435 [DEBUG] [Thread-68224 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:47.435 [DEBUG] [Thread-68224 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:47.435 [DEBUG] [Thread-68224 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:47.439 [DEBUG] [Thread-68224 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54687)
2025-11-17T14:33:47.440 [DEBUG] [Thread-68224 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:47.440 [DEBUG] [Thread-68224 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:47.440 [DEBUG] [Thread-68224 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:47.440 [DEBUG] [Thread-68224 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:47.440 [DEBUG] [Thread-68224 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:47.447 [DEBUG] [Thread-68224 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:47.447 [INFO] [Thread-68224 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02346562, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681059714208, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992735, telescope_ra=20.7189511, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.7387, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6935203974663, telescope_dec_j2k=-24.3474676023322, observability=1)
2025-11-17T14:33:50.112 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:33:50
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.664712905883789s
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:33:50.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.719699;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73945;2460997.02349668;14.56390222;1.3;_
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.719699;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73945;2460997.02349668;14.56390222;1.3;_
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:33:50.113 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:33:50.114 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:50.114 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:33:50.114 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.719699, teldec = -24.256303
2025-11-17T14:33:50.114 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.719699 -24.256303
2025-11-17T14:33:50.114 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.719699 -24.256303
2025-11-17T14:33:50.114 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.719699 -24.256303
2025-11-17T14:33:50.115 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.719699;-24.256303;50.108249;89.992735;50.08601;90.12017;17.73945;2460997.0234967;14.56390222;1.3;_20.6942687627566 -24.3474893082274
2025-11-17T14:33:50.115 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.6942687627566     dec_j2k = -24.3474893082274
2025-11-17T14:33:50.115 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:33:50.115 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:33:50.115 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10468065859478;171.162357330327;_
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10468065859478;171.162357330327;_
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:33:50.116 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:33:50.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:50.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:33:50.117 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41309)
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:33:50.120 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:33:50.127 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:33:50.127 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:50.127 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:33:50.127 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:33:50.127 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:33:50.128 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:33:50.128 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:33:50.128 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:33:50.128 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:33:50.128 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02349668, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468065859478, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992735, telescope_ra=20.719699, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.73945, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:33:00.875616', telescope_ra_j2k=20.6942687627566, telescope_dec_j2k=-24.3474893082274, observability=1)
2025-11-17T14:34:01.018 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:01.018 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:01.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:01.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:01.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:01.020 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:01.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:01.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:01.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:01.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:01.021 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:34:01.021 [INFO] [ThreadPoolExecutor-2911_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:34:01.021 [INFO] [ThreadPoolExecutor-2911_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Status age = 15.37628722190857s
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:05.504 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:05.505 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 17;20.7239623;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74371;2460997.02367484;14.56815389;1.3;_
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response 17;20.7239623;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74371;2460997.02367484;14.56815389;1.3;_
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:05.506 [INFO] [Thread-68225 (handle)] [driver.py] [get_status()] Telra = 20.7239623, teldec = -24.256302
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7239623 -24.256302
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7239623 -24.256302
2025-11-17T14:34:05.506 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7239623 -24.256302
2025-11-17T14:34:05.507 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 17;20.7239901;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74374;2460997.02367485;14.56818167;1.3;_20.698534717622 -24.3476119738241
2025-11-17T14:34:05.507 [INFO] [Thread-68225 (handle)] [driver.py] [get_status()] ra_j2k = 20.698534717622     dec_j2k = -24.3476119738241
2025-11-17T14:34:05.507 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:05.507 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 140;0.104680177251466;171.162368059163;_
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response 140;0.104680177251466;171.162368059163;_
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:05.508 [DEBUG] [Thread-68225 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:05.509 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:05.509 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:05.509 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:05.510 [DEBUG] [Thread-68225 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:05.510 [DEBUG] [Thread-68225 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:05.510 [DEBUG] [Thread-68225 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38959)
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:05.514 [DEBUG] [Thread-68225 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:05.522 [DEBUG] [Thread-68225 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:05.522 [INFO] [Thread-68225 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02367484, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680177251466, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992734, telescope_ra=20.7239623, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.74371, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.698534717622, telescope_dec_j2k=-24.3476119738241, observability=1)
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.48574686050415s
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7266145;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74636;2460997.02378484;14.57079889;1.3;_
2025-11-17T14:34:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.7266145;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74636;2460997.02378484;14.57079889;1.3;_
2025-11-17T14:34:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:15.011 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.7266145, teldec = -24.256302
2025-11-17T14:34:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7266145 -24.256302
2025-11-17T14:34:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7266145 -24.256302
2025-11-17T14:34:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7266145 -24.256302
2025-11-17T14:34:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7266145;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74636;2460997.02378486;14.57079889;1.3;_20.701188571166 -24.3476888495076
2025-11-17T14:34:15.013 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.701188571166     dec_j2k = -24.3476888495076
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104681180050036;171.162357330327;_
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104681180050036;171.162357330327;_
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:15.017 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40615)
2025-11-17T14:34:15.018 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:15.018 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:15.018 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:15.018 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:15.018 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:15.025 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02378484, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681180050036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992734, telescope_ra=20.7266145, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.74636, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.701188571166, telescope_dec_j2k=-24.3476888495076, observability=1)
2025-11-17T14:34:15.975 [DEBUG] [Thread-68226 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:15.975 [DEBUG] [Thread-68226 (handle)] [server.py] [get_status()] Status age = 0.9502787590026855s
2025-11-17T14:34:15.975 [DEBUG] [Thread-68226 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9502787590026855
2025-11-17T14:34:21.219 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.194483518600464s
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:21.220 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:21.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7283431;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74809;2460997.02385671;14.57252278;1.3;_
2025-11-17T14:34:21.221 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7283431;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74809;2460997.02385671;14.57252278;1.3;_
2025-11-17T14:34:21.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:21.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:21.221 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:21.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:21.222 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:21.222 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7283431, teldec = -24.256302
2025-11-17T14:34:21.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7283431 -24.256302
2025-11-17T14:34:21.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7283431 -24.256302
2025-11-17T14:34:21.222 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7283431 -24.256302
2025-11-17T14:34:21.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7283431;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74809;2460997.02385675;14.57252278;1.3;_20.7029182497264 -24.3477389306516
2025-11-17T14:34:21.223 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.7029182497264     dec_j2k = -24.3477389306516
2025-11-17T14:34:21.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:21.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:21.223 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104681220161979;171.162357330327;_
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104681220161979;171.162357330327;_
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:21.224 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:21.225 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:21.226 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:21.226 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:21.226 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:21.232 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42487)
2025-11-17T14:34:21.232 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:21.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:21.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:21.233 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:21.233 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:21.239 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:21.240 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:21.240 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:21.240 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02385671, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681220161979, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108249, telescope_az=89.992734, telescope_ra=20.7283431, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.74809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7029182497264, telescope_dec_j2k=-24.3477389306516, observability=1)
2025-11-17T14:34:21.897 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.897 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.897 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:21.897 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:21.897 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:34:21.898 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:21.899 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:21.900 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:34:21.901 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:21.902 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Park
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:34:21.903 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 29;20.7285389;-24.256302;50.108249;89.992734;50.08601;90.12017;17.74829;2460997.02386462;14.57271806;1.3;_Park Command Successful
2025-11-17T14:34:22.904 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:34:22.904 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:34:22.904 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:34:22.905 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:34:22.905 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Status age = 2.322619915008545s
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:23.562 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:23.563 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:23.564 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 17;20.7290055;-24.256302;50.108248;89.992734;50.08601;90.12017;17.74876;2460997.02388384;14.57318333;1.3;_
2025-11-17T14:34:23.564 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response 17;20.7290055;-24.256302;50.108248;89.992734;50.08601;90.12017;17.74876;2460997.02388384;14.57318333;1.3;_
2025-11-17T14:34:23.564 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:23.564 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:23.564 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:23.565 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:23.565 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:23.565 [INFO] [Thread-68227 (handle)] [driver.py] [get_status()] Telra = 20.7290055, teldec = -24.256302
2025-11-17T14:34:23.565 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7290055 -24.256302
2025-11-17T14:34:23.565 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7290055 -24.256302
2025-11-17T14:34:23.565 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7290055 -24.256302
2025-11-17T14:34:23.566 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 17;20.7290055;-24.256302;50.108248;89.992734;50.08601;90.12017;17.74876;2460997.02388387;14.57318333;1.3;_20.7035810632077 -24.3477581168604
2025-11-17T14:34:23.566 [INFO] [Thread-68227 (handle)] [driver.py] [get_status()] ra_j2k = 20.7035810632077     dec_j2k = -24.3477581168604
2025-11-17T14:34:23.566 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:23.566 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:23.567 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 140;0.104681500945579;171.162357330327;_
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response 140;0.104681500945579;171.162357330327;_
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:23.568 [DEBUG] [Thread-68227 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:23.569 [DEBUG] [Thread-68227 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57689)
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:23.573 [DEBUG] [Thread-68227 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:23.580 [DEBUG] [Thread-68227 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:23.580 [DEBUG] [Thread-68227 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:23.580 [DEBUG] [Thread-68227 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:23.580 [DEBUG] [Thread-68227 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:23.581 [DEBUG] [Thread-68227 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:23.581 [DEBUG] [Thread-68227 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:23.581 [DEBUG] [Thread-68227 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:23.581 [DEBUG] [Thread-68227 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:23.581 [DEBUG] [Thread-68227 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:23.581 [INFO] [Thread-68227 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02388384, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681500945579, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992734, telescope_ra=20.7290055, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.74876, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7035810632077, telescope_dec_j2k=-24.3477581168604, observability=1)
2025-11-17T14:34:23.905 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:34:23.905 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:34:23.905 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:34:23.906 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:34:23.906 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:34:24.906 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:34:24.906 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:34:24.906 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:34:24.907 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:34:24.907 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:34:25.907 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:34:25.907 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:34:25.907 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:25.908 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:34:25.909 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:34:25.910 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:26.910 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:26.910 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:26.910 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:26.910 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:26.910 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:34:26.911 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:34:26.912 [DEBUG] [ThreadPoolExecutor-2910_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:26.912 [INFO] [ThreadPoolExecutor-2910_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.511000871658325s
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:35.092 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:35.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:35.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7322168;-24.256302;50.108248;89.992733;50.08601;90.12017;17.75197;2460997.02401728;14.57638583;1.3;_
2025-11-17T14:34:35.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.7322168;-24.256302;50.108248;89.992733;50.08601;90.12017;17.75197;2460997.02401728;14.57638583;1.3;_
2025-11-17T14:34:35.093 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:35.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:35.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:35.094 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:35.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:35.095 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.7322168, teldec = -24.256302
2025-11-17T14:34:35.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.7322168 -24.256302
2025-11-17T14:34:35.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.7322168 -24.256302
2025-11-17T14:34:35.095 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7322168 -24.256302
2025-11-17T14:34:35.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7322168;-24.256302;50.108248;89.992733;50.08601;90.12017;17.75197;2460997.02401732;14.57638583;1.3;_20.7067943691434 -24.3478510926558
2025-11-17T14:34:35.096 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7067943691434     dec_j2k = -24.3478510926558
2025-11-17T14:34:35.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:35.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:35.096 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104681180050036;171.162357330327;_
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104681180050036;171.162357330327;_
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:35.097 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:35.098 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:35.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:35.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:35.099 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39597)
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:35.102 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:35.109 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:34:35.109 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02401728, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681180050036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992733, telescope_ra=20.7322168, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.75197, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7067943691434, telescope_dec_j2k=-24.3478510926558, observability=1)
2025-11-17T14:34:35.109 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99762439727783 seconds ago
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Status age = 6.572432518005371s
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:41.682 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:41.683 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:41.684 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 17;20.7340479;-24.256302;50.108248;89.992733;50.08601;90.12017;17.7538;2460997.02409356;14.57821194;1.3;_
2025-11-17T14:34:41.684 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response 17;20.7340479;-24.256302;50.108248;89.992733;50.08601;90.12017;17.7538;2460997.02409356;14.57821194;1.3;_
2025-11-17T14:34:41.684 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:41.684 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:41.684 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:41.685 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:41.685 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:41.685 [INFO] [Thread-68228 (handle)] [driver.py] [get_status()] Telra = 20.7340479, teldec = -24.256302
2025-11-17T14:34:41.685 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7340479 -24.256302
2025-11-17T14:34:41.685 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7340479 -24.256302
2025-11-17T14:34:41.685 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7340479 -24.256302
2025-11-17T14:34:41.686 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 17;20.7340479;-24.256302;50.108248;89.992733;50.08601;90.12017;17.7538;2460997.02409359;14.57821194;1.3;_20.7086266139678 -24.3479040793419
2025-11-17T14:34:41.686 [INFO] [Thread-68228 (handle)] [driver.py] [get_status()] ra_j2k = 20.7086266139678     dec_j2k = -24.3479040793419
2025-11-17T14:34:41.686 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:41.686 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:41.686 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 140;0.104681701505293;171.162346601491;_
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response 140;0.104681701505293;171.162346601491;_
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:41.687 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:41.688 [DEBUG] [Thread-68228 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:41.688 [DEBUG] [Thread-68228 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:41.688 [DEBUG] [Thread-68228 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47513)
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:41.690 [DEBUG] [Thread-68228 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:41.697 [DEBUG] [Thread-68228 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:41.698 [DEBUG] [Thread-68228 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:41.698 [INFO] [Thread-68228 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02409356, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681701505293, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992733, telescope_ra=20.7340479, telescope_dec=-24.256302, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.7538, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7086266139678, telescope_dec_j2k=-24.3479040793419, observability=1)
2025-11-17T14:34:50.188 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:34:50
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.490660667419434s
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:50.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:50.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7364202;-24.256301;50.108248;89.992733;50.08601;90.12017;17.75617;2460997.02419201;14.58057778;1.3;_
2025-11-17T14:34:50.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.7364202;-24.256301;50.108248;89.992733;50.08601;90.12017;17.75617;2460997.02419201;14.58057778;1.3;_
2025-11-17T14:34:50.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:50.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:50.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:50.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:50.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:50.192 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.7364202, teldec = -24.256301
2025-11-17T14:34:50.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7364202 -24.256301
2025-11-17T14:34:50.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7364202 -24.256301
2025-11-17T14:34:50.192 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7364202 -24.256301
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7364202;-24.256301;50.108248;89.992733;50.08601;90.12017;17.75617;2460997.02419205;14.58057778;1.3;_20.7110003984226 -24.347971695963
2025-11-17T14:34:50.193 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7110003984226     dec_j2k = -24.347971695963
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104682022400835;171.162351965909;_
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104682022400835;171.162351965909;_
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:50.193 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:50.194 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:50.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:50.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:50.195 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:50.197 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57823)
2025-11-17T14:34:50.197 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:50.198 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:50.198 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:50.198 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:50.198 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:50.205 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:50.205 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02419201, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682022400835, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992733, telescope_ra=20.7364202, telescope_dec=-24.256301, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.75617, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7110003984226, telescope_dec_j2k=-24.347971695963, observability=1)
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Status age = 9.544679880142212s
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:34:59.750 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:34:59.751 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:34:59.751 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:34:59.751 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:34:59.752 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 17;20.7391003;-24.256301;50.108248;89.992732;50.08601;90.12017;17.75885;2460997.02430267;14.58325056;1.3;_
2025-11-17T14:34:59.752 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response 17;20.7391003;-24.256301;50.108248;89.992732;50.08601;90.12017;17.75885;2460997.02430267;14.58325056;1.3;_
2025-11-17T14:34:59.752 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:34:59.752 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:34:59.752 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:34:59.753 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:59.753 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:34:59.753 [INFO] [Thread-68229 (handle)] [driver.py] [get_status()] Telra = 20.7391003, teldec = -24.256301
2025-11-17T14:34:59.753 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7391003 -24.256301
2025-11-17T14:34:59.753 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7391003 -24.256301
2025-11-17T14:34:59.753 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7391003 -24.256301
2025-11-17T14:34:59.754 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 17;20.7391003;-24.256301;50.108248;89.992732;50.08601;90.12017;17.75885;2460997.02430271;14.58325056;1.3;_20.7136821768151 -24.3480491733065
2025-11-17T14:34:59.754 [INFO] [Thread-68229 (handle)] [driver.py] [get_status()] ra_j2k = 20.7136821768151     dec_j2k = -24.3480491733065
2025-11-17T14:34:59.754 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:34:59.754 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:34:59.754 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 140;0.104682102624721;171.162368059163;_
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response 140;0.104682102624721;171.162368059163;_
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:59.755 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:34:59.756 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:34:59.757 [DEBUG] [Thread-68229 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:59.757 [DEBUG] [Thread-68229 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:34:59.757 [DEBUG] [Thread-68229 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50605)
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:34:59.760 [DEBUG] [Thread-68229 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:34:59.768 [DEBUG] [Thread-68229 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:34:59.768 [INFO] [Thread-68229 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02430267, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682102624721, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992732, telescope_ra=20.7391003, telescope_dec=-24.256301, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.75885, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:34:01.018405', telescope_ra_j2k=20.7136821768151, telescope_dec_j2k=-24.3480491733065, observability=1)
2025-11-17T14:35:01.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:01.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:01.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:01.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:01.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:01.163 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:01.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:01.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:01.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:01.164 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:01.164 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:35:01.164 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:35:01.165 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:35:01.166 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:02.166 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:02.166 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:02.166 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:02.167 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:02.168 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:02.169 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:02.169 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:02.169 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:02.169 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:02.170 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:02.170 [DEBUG] [ThreadPoolExecutor-2912_0] [payload.py] [to_registers()] [0]
2025-11-17T14:35:02.171 [DEBUG] [ThreadPoolExecutor-2912_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49147)
2025-11-17T14:35:02.172 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:02.172 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:02.172 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:35:02.172 [DEBUG] [ThreadPoolExecutor-2912_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:02.172 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:02.179 [DEBUG] [ThreadPoolExecutor-2912_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 15.244080781936646s
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7433279;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76308;2460997.02447933;14.58746667;1.3;_
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.7433279;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76308;2460997.02447933;14.58746667;1.3;_
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.7433279, teldec = -24.256301
2025-11-17T14:35:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7433279 -24.256301
2025-11-17T14:35:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7433279 -24.256301
2025-11-17T14:35:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7433279 -24.256301
2025-11-17T14:35:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7433279;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76308;2460997.02447936;14.58746667;1.3;_20.7179124275692 -24.3481712956884
2025-11-17T14:35:15.017 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.7179124275692     dec_j2k = -24.3481712956884
2025-11-17T14:35:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104682624079977;171.162357330327;_
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104682624079977;171.162357330327;_
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40977)
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:35:15.032 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02447933, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682624079977, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992732, telescope_ra=20.7433279, telescope_dec=-24.256301, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.76308, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7179124275692, telescope_dec_j2k=-24.3481712956884, observability=1)
2025-11-17T14:35:16.004 [DEBUG] [Thread-68230 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:16.004 [DEBUG] [Thread-68230 (handle)] [server.py] [get_status()] Status age = 0.9720330238342285s
2025-11-17T14:35:16.004 [DEBUG] [Thread-68230 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9720330238342285
2025-11-17T14:35:17.816 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Status age = 2.7844066619873047s
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:17.817 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:17.818 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:17.819 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 17;20.744114;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76386;2460997.02451179;14.58825056;1.3;_
2025-11-17T14:35:17.819 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response 17;20.744114;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76386;2460997.02451179;14.58825056;1.3;_
2025-11-17T14:35:17.819 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:17.819 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:17.819 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:17.820 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:17.820 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:17.820 [INFO] [Thread-68231 (handle)] [driver.py] [get_status()] Telra = 20.744114, teldec = -24.256301
2025-11-17T14:35:17.820 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] UnCookCoordinates 20.744114 -24.256301
2025-11-17T14:35:17.820 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.744114 -24.256301
2025-11-17T14:35:17.820 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.744114 -24.256301
2025-11-17T14:35:17.821 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 17;20.744114;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76386;2460997.02451182;14.58825056;1.3;_20.7186990209015 -24.3481939914556
2025-11-17T14:35:17.821 [INFO] [Thread-68231 (handle)] [driver.py] [get_status()] ra_j2k = 20.7186990209015     dec_j2k = -24.3481939914556
2025-11-17T14:35:17.821 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:17.821 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:17.821 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 140;0.10468266419192;171.162351965909;_
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response 140;0.10468266419192;171.162351965909;_
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:17.822 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:17.823 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:17.824 [DEBUG] [Thread-68231 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:17.824 [DEBUG] [Thread-68231 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:17.824 [DEBUG] [Thread-68231 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53541)
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:17.826 [DEBUG] [Thread-68231 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:17.833 [DEBUG] [Thread-68231 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:35:17.834 [INFO] [Thread-68231 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02451179, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468266419192, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992732, telescope_ra=20.744114, telescope_dec=-24.256301, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.76386, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7186990209015, telescope_dec_j2k=-24.3481939914556, observability=1)
2025-11-17T14:35:20.326 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.4929330348968506s
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:20.327 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:20.328 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:20.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7448061;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76456;2460997.02454084;14.58894083;1.3;_
2025-11-17T14:35:20.329 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7448061;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76456;2460997.02454084;14.58894083;1.3;_
2025-11-17T14:35:20.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:20.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:20.329 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:20.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:20.330 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:20.330 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7448061, teldec = -24.256301
2025-11-17T14:35:20.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7448061 -24.256301
2025-11-17T14:35:20.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7448061 -24.256301
2025-11-17T14:35:20.330 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7448061 -24.256301
2025-11-17T14:35:20.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.744834;-24.256301;50.108248;89.992732;50.08601;90.12017;17.76458;2460997.02454087;14.58896861;1.3;_20.7193915553561 -24.3482139701349
2025-11-17T14:35:20.331 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.7193915553561     dec_j2k = -24.3482139701349
2025-11-17T14:35:20.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:20.331 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10468322575912;171.162357330327;_
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10468322575912;171.162357330327;_
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:20.332 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:20.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:20.333 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:20.333 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:20.333 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55665)
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:20.338 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:20.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:20.345 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:20.345 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:20.346 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:35:20.346 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02454084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468322575912, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992732, telescope_ra=20.7448061, telescope_dec=-24.256301, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.76456, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7193915553561, telescope_dec_j2k=-24.3482139701349, observability=1)
2025-11-17T14:35:27.179 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:27.180 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:35:27.181 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:35:27.182 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:35:27.182 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:35.169 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.823680639266968s
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:35.170 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:35.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7489561;-24.2563;50.108248;89.992731;50.08601;90.12017;17.76871;2460997.02471263;14.59307944;1.3;_
2025-11-17T14:35:35.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.7489561;-24.2563;50.108248;89.992731;50.08601;90.12017;17.76871;2460997.02471263;14.59307944;1.3;_
2025-11-17T14:35:35.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:35.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:35.171 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:35.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:35.172 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:35.172 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.7489561, teldec = -24.2563
2025-11-17T14:35:35.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.7489561 -24.2563
2025-11-17T14:35:35.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.7489561 -24.2563
2025-11-17T14:35:35.173 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7489561 -24.2563
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7489561;-24.2563;50.108248;89.992731;50.08601;90.12017;17.76871;2460997.02471265;14.59307944;1.3;_20.7235441628404 -24.3483327047329
2025-11-17T14:35:35.174 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7235441628404     dec_j2k = -24.3483327047329
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104684188445747;171.162362694745;_
2025-11-17T14:35:35.174 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104684188445747;171.162362694745;_
2025-11-17T14:35:35.175 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:35.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:35.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:35.175 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:35.176 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:35.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:35.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:35.177 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:35.182 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46629)
2025-11-17T14:35:35.182 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:35.182 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:35.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:35.183 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:35.183 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:35.190 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:35:35.191 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02471263, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684188445747, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992731, telescope_ra=20.7489561, telescope_dec=-24.2563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.76871, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7235441628404, telescope_dec_j2k=-24.3483327047329, observability=1)
2025-11-17T14:35:35.191 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00218105316162 seconds ago
2025-11-17T14:35:35.920 [DEBUG] [Thread-68232 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:35.921 [DEBUG] [Thread-68232 (handle)] [server.py] [get_status()] Status age = 0.7300403118133545s
2025-11-17T14:35:35.921 [DEBUG] [Thread-68232 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7300403118133545
2025-11-17T14:35:50.266 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:35:50
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.075500965118408s
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:50.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:50.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:50.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:50.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7531673;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77292;2460997.02488736;14.59727917;1.3;_
2025-11-17T14:35:50.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.7531673;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77292;2460997.02488736;14.59727917;1.3;_
2025-11-17T14:35:50.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:50.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:50.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:50.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:50.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:50.270 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.7531673, teldec = -24.2563
2025-11-17T14:35:50.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7531673 -24.2563
2025-11-17T14:35:50.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7531673 -24.2563
2025-11-17T14:35:50.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7531673 -24.2563
2025-11-17T14:35:50.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.7531673;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77292;2460997.0248874;14.59727917;1.3;_20.7277580125333 -24.3484540953
2025-11-17T14:35:50.271 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7277580125333     dec_j2k = -24.3484540953
2025-11-17T14:35:50.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:50.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:50.271 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104684308781575;171.162346601491;_
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104684308781575;171.162346601491;_
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:50.272 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:50.273 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:50.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:50.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:50.274 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45003)
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:50.280 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:50.287 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:50.287 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:50.287 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:50.287 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:50.287 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:50.288 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:50.288 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:50.288 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:50.288 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:35:50.288 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02488736, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684308781575, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992731, telescope_ra=20.7531673, telescope_dec=-24.2563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.77292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7277580125333, telescope_dec_j2k=-24.3484540953, observability=1)
2025-11-17T14:35:53.989 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:35:53.989 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Status age = 3.7016940116882324s
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:35:53.990 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:35:53.991 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 17;20.7541937;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77394;2460997.02493045;14.59830278;1.3;_
2025-11-17T14:35:53.991 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response 17;20.7541937;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77394;2460997.02493045;14.59830278;1.3;_
2025-11-17T14:35:53.991 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:35:53.991 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:35:53.991 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:35:53.992 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:53.992 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:35:53.992 [INFO] [Thread-68233 (handle)] [driver.py] [get_status()] Telra = 20.7541937, teldec = -24.2563
2025-11-17T14:35:53.992 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7541937 -24.2563
2025-11-17T14:35:53.992 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7541937 -24.2563
2025-11-17T14:35:53.992 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7541937 -24.2563
2025-11-17T14:35:53.993 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 17;20.7541937;-24.2563;50.108248;89.992731;50.08601;90.12017;17.77394;2460997.02493047;14.59830278;1.3;_20.7287850589427 -24.3484836651859
2025-11-17T14:35:53.993 [INFO] [Thread-68233 (handle)] [driver.py] [get_status()] ra_j2k = 20.7287850589427     dec_j2k = -24.3484836651859
2025-11-17T14:35:53.993 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:35:53.993 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:35:53.993 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:35:53.994 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 140;0.104684589565175;171.162357330327;_
2025-11-17T14:35:53.994 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response 140;0.104684589565175;171.162357330327;_
2025-11-17T14:35:53.994 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:35:53.994 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:53.994 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:35:53.995 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:35:53.996 [DEBUG] [Thread-68233 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:53.996 [DEBUG] [Thread-68233 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:35:53.997 [DEBUG] [Thread-68233 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:35:54.001 [DEBUG] [Thread-68233 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53765)
2025-11-17T14:35:54.001 [DEBUG] [Thread-68233 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:35:54.001 [DEBUG] [Thread-68233 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:35:54.002 [DEBUG] [Thread-68233 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:35:54.002 [DEBUG] [Thread-68233 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:35:54.002 [DEBUG] [Thread-68233 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:35:54.008 [DEBUG] [Thread-68233 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:35:54.009 [DEBUG] [Thread-68233 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:35:54.009 [INFO] [Thread-68233 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02493045, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684589565175, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108248, telescope_az=89.992731, telescope_ra=20.7541937, telescope_dec=-24.2563, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.77394, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:35:01.161709', telescope_ra_j2k=20.7287850589427, telescope_dec_j2k=-24.3484836651859, observability=1)
2025-11-17T14:36:01.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:01.306 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:01.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:01.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:01.306 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:01.308 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:01.308 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:01.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:01.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:01.309 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:01.309 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:36:01.309 [INFO] [ThreadPoolExecutor-2913_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:36:01.309 [INFO] [ThreadPoolExecutor-2913_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Status age = 18.10502815246582s
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:12.114 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 17;20.7592372;-24.256299;50.108247;89.99273;50.08601;90.12017;17.77899;2460997.02514022;14.6033325;1.3;_
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response 17;20.7592372;-24.256299;50.108247;89.99273;50.08601;90.12017;17.77899;2460997.02514022;14.6033325;1.3;_
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:12.115 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:12.116 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:12.116 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:12.116 [INFO] [Thread-68234 (handle)] [driver.py] [get_status()] Telra = 20.7592372, teldec = -24.256299
2025-11-17T14:36:12.116 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7592372 -24.256299
2025-11-17T14:36:12.116 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7592372 -24.256299
2025-11-17T14:36:12.116 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7592372 -24.256299
2025-11-17T14:36:12.117 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 17;20.7592372;-24.256299;50.108247;89.99273;50.08601;90.12017;17.77899;2460997.02514024;14.6033325;1.3;_20.7338317388054 -24.3486278695487
2025-11-17T14:36:12.117 [INFO] [Thread-68234 (handle)] [driver.py] [get_status()] ra_j2k = 20.7338317388054     dec_j2k = -24.3486278695487
2025-11-17T14:36:12.117 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 140;0.104684870348775;171.162362694745;_
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response 140;0.104684870348775;171.162362694745;_
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:12.118 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:12.119 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:12.119 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:12.119 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:12.119 [DEBUG] [Thread-68234 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:12.120 [DEBUG] [Thread-68234 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57349)
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:12.122 [DEBUG] [Thread-68234 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:12.129 [DEBUG] [Thread-68234 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:12.129 [DEBUG] [Thread-68234 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:12.129 [DEBUG] [Thread-68234 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:12.129 [DEBUG] [Thread-68234 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:12.130 [DEBUG] [Thread-68234 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:12.130 [DEBUG] [Thread-68234 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:12.130 [DEBUG] [Thread-68234 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:12.130 [DEBUG] [Thread-68234 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:12.130 [DEBUG] [Thread-68234 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:12.130 [INFO] [Thread-68234 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02514022, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684870348775, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.99273, telescope_ra=20.7592372, telescope_dec=-24.256299, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.77899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7338317388054, telescope_dec_j2k=-24.3486278695487, observability=1)
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.901543140411377s
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.76005;-24.256299;50.108247;89.99273;50.08601;90.12017;17.7798;2460997.02517399;14.60414306;1.3;_
2025-11-17T14:36:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.76005;-24.256299;50.108247;89.99273;50.08601;90.12017;17.7798;2460997.02517399;14.60414306;1.3;_
2025-11-17T14:36:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:15.035 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.76005, teldec = -24.256299
2025-11-17T14:36:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.76005 -24.256299
2025-11-17T14:36:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.76005 -24.256299
2025-11-17T14:36:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.76005 -24.256299
2025-11-17T14:36:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.76005;-24.256299;50.108247;89.99273;50.08601;90.12017;17.7798;2460997.02517403;14.60414306;1.3;_20.7346450517687 -24.3486512555012
2025-11-17T14:36:15.036 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.7346450517687     dec_j2k = -24.3486512555012
2025-11-17T14:36:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685191244317;171.162346601491;_
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685191244317;171.162346601491;_
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:15.043 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59963)
2025-11-17T14:36:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:15.044 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:15.051 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:15.051 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02517399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685191244317, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.99273, telescope_ra=20.76005, telescope_dec=-24.256299, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.7798, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7346450517687, telescope_dec_j2k=-24.3486512555012, observability=1)
2025-11-17T14:36:16.038 [DEBUG] [Thread-68235 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:16.038 [DEBUG] [Thread-68235 (handle)] [server.py] [get_status()] Status age = 0.9868550300598145s
2025-11-17T14:36:16.038 [DEBUG] [Thread-68235 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9868550300598145
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.388620853424072s
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:19.440 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:19.441 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:19.441 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:19.442 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:19.442 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:19.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:19.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:19.442 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:19.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7612731;-24.256299;50.108247;89.99273;50.08601;90.12017;17.78102;2460997.02522502;14.60536278;1.3;_
2025-11-17T14:36:19.443 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7612731;-24.256299;50.108247;89.99273;50.08601;90.12017;17.78102;2460997.02522502;14.60536278;1.3;_
2025-11-17T14:36:19.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:19.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:19.443 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:19.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:19.444 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:19.444 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7612731, teldec = -24.256299
2025-11-17T14:36:19.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7612731 -24.256299
2025-11-17T14:36:19.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7612731 -24.256299
2025-11-17T14:36:19.444 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7612731 -24.256299
2025-11-17T14:36:19.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7612731;-24.256299;50.108247;89.99273;50.08601;90.12017;17.78102;2460997.02522506;14.60536278;1.3;_20.7358689239511 -24.3486864388585
2025-11-17T14:36:19.445 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.7358689239511     dec_j2k = -24.3486864388585
2025-11-17T14:36:19.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:19.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:19.445 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104685351692088;171.162351965909;_
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104685351692088;171.162351965909;_
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:19.446 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:19.447 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:19.448 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:19.448 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:19.448 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42835)
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:19.454 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:19.462 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:19.462 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02522502, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685351692088, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.99273, telescope_ra=20.7612731, telescope_dec=-24.256299, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.78102, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7358689239511, telescope_dec_j2k=-24.3486864388585, observability=1)
2025-11-17T14:36:22.182 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:36:22.183 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:22.184 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:22.185 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.186 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:36:22.187 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:36:22.187 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:36:22.187 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.187 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:22.187 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:22.188 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:22.188 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:22.188 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:22.188 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Park
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:36:22.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 29;20.7620571;-24.256299;50.108247;89.99273;50.08601;90.12017;17.78181;2460997.02525682;14.60614472;1.3;_Park Command Successful
2025-11-17T14:36:23.189 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:36:23.190 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:36:23.190 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:36:23.190 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:36:23.190 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:36:24.191 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:36:24.191 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:36:24.191 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:36:24.192 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:36:24.192 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:36:25.192 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:36:25.192 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:36:25.192 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:36:25.193 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:36:25.193 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:36:26.193 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:36:26.193 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:36:26.193 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:26.194 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:36:26.195 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:36:26.196 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:27.196 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:27.196 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:27.196 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:27.196 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:27.197 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:27.197 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:27.197 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:36:27.198 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:36:27.199 [DEBUG] [ThreadPoolExecutor-2912_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:27.199 [INFO] [ThreadPoolExecutor-2912_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Status age = 10.71121597290039s
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:30.173 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 17;20.7642793;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78403;2460997.02534924;14.60836083;1.3;_
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response 17;20.7642793;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78403;2460997.02534924;14.60836083;1.3;_
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:30.174 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:30.175 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:30.175 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:30.175 [INFO] [Thread-68236 (handle)] [driver.py] [get_status()] Telra = 20.7642793, teldec = -24.256299
2025-11-17T14:36:30.176 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7642793 -24.256299
2025-11-17T14:36:30.176 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7642793 -24.256299
2025-11-17T14:36:30.176 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7642793 -24.256299
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 17;20.7642793;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78403;2460997.02534926;14.60836083;1.3;_20.7388770232713 -24.3487728746208
2025-11-17T14:36:30.177 [INFO] [Thread-68236 (handle)] [driver.py] [get_status()] ra_j2k = 20.7388770232713     dec_j2k = -24.3487728746208
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 140;0.104685873147345;171.162362694745;_
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response 140;0.104685873147345;171.162362694745;_
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:30.177 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:30.178 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:30.179 [DEBUG] [Thread-68236 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:30.179 [DEBUG] [Thread-68236 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:30.179 [DEBUG] [Thread-68236 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51185)
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:30.184 [DEBUG] [Thread-68236 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:30.191 [DEBUG] [Thread-68236 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:30.192 [DEBUG] [Thread-68236 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:30.192 [INFO] [Thread-68236 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02534924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685873147345, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992729, telescope_ra=20.7642793, telescope_dec=-24.256299, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.78403, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7388770232713, telescope_dec_j2k=-24.3487728746208, observability=1)
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.05875039100647s
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:35.251 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7656798;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78543;2460997.02540801;14.6097575;1.3;_
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.7656798;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78543;2460997.02540801;14.6097575;1.3;_
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:35.252 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:35.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:35.253 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:35.254 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.7656798, teldec = -24.256299
2025-11-17T14:36:35.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.7656798 -24.256299
2025-11-17T14:36:35.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.7656798 -24.256299
2025-11-17T14:36:35.254 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7656798 -24.256299
2025-11-17T14:36:35.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.7656798;-24.256299;50.108247;89.992729;50.08601;90.12017;17.78543;2460997.02540804;14.6097575;1.3;_20.7402784087924 -24.3488131231852
2025-11-17T14:36:35.255 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7402784087924     dec_j2k = -24.3488131231852
2025-11-17T14:36:35.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:35.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:35.255 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104685632475688;171.162357330327;_
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104685632475688;171.162357330327;_
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:35.256 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:35.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:35.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:35.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:35.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35297)
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:35.259 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:35.267 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:35.268 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:36:35.268 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02540801, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685632475688, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992729, telescope_ra=20.7656798, telescope_dec=-24.256299, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.78543, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7402784087924, telescope_dec_j2k=-24.3488131231852, observability=1)
2025-11-17T14:36:35.268 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00184869766235 seconds ago
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Status age = 12.973186016082764s
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:48.241 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:48.242 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 17;20.7693022;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78905;2460997.02555836;14.61337;1.3;_
2025-11-17T14:36:48.242 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response 17;20.7693022;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78905;2460997.02555836;14.61337;1.3;_
2025-11-17T14:36:48.242 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:48.242 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:48.242 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:48.243 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:48.243 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:48.243 [INFO] [Thread-68237 (handle)] [driver.py] [get_status()] Telra = 20.7693022, teldec = -24.256298
2025-11-17T14:36:48.243 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7693022 -24.256298
2025-11-17T14:36:48.243 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7693022 -24.256298
2025-11-17T14:36:48.243 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7693022 -24.256298
2025-11-17T14:36:48.244 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 17;20.7693022;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78905;2460997.02555838;14.61337;1.3;_20.743903101366 -24.3489161694095
2025-11-17T14:36:48.244 [INFO] [Thread-68237 (handle)] [driver.py] [get_status()] ra_j2k = 20.743903101366     dec_j2k = -24.3489161694095
2025-11-17T14:36:48.244 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:48.244 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:48.244 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 140;0.104685792923459;171.162362694745;_
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response 140;0.104685792923459;171.162362694745;_
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:48.245 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:48.246 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:48.247 [DEBUG] [Thread-68237 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57153)
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:48.254 [DEBUG] [Thread-68237 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:48.261 [DEBUG] [Thread-68237 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:48.261 [DEBUG] [Thread-68237 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:48.261 [DEBUG] [Thread-68237 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:48.261 [DEBUG] [Thread-68237 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:48.261 [DEBUG] [Thread-68237 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:48.262 [DEBUG] [Thread-68237 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:48.262 [DEBUG] [Thread-68237 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:48.262 [DEBUG] [Thread-68237 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:48.262 [DEBUG] [Thread-68237 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:48.262 [INFO] [Thread-68237 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02555836, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685792923459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992729, telescope_ra=20.7693022, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.78905, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.743903101366, telescope_dec_j2k=-24.3489161694095, observability=1)
2025-11-17T14:36:50.348 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:36:50
2025-11-17T14:36:50.348 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:36:50.348 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.0867438316345215s
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:36:50.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:36:50.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.769881;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78963;2460997.02558275;14.61394722;1.3;_
2025-11-17T14:36:50.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.769881;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78963;2460997.02558275;14.61394722;1.3;_
2025-11-17T14:36:50.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:36:50.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:36:50.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:36:50.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:50.351 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:36:50.352 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.769881, teldec = -24.256298
2025-11-17T14:36:50.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.769881 -24.256298
2025-11-17T14:36:50.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.769881 -24.256298
2025-11-17T14:36:50.352 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.769881 -24.256298
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.769881;-24.256298;50.108247;89.992729;50.08601;90.12017;17.78963;2460997.02558279;14.61394722;1.3;_20.7444822679262 -24.3489327866517
2025-11-17T14:36:50.353 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7444822679262     dec_j2k = -24.3489327866517
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104685752811516;171.162351965909;_
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104685752811516;171.162351965909;_
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:50.353 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:50.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:50.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:36:50.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:36:50.354 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:36:50.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:50.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:36:50.355 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46479)
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:36:50.360 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:36:50.368 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:36:50.368 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02558275, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685752811516, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992729, telescope_ra=20.769881, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.78963, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:36:01.305929', telescope_ra_j2k=20.7444822679262, telescope_dec_j2k=-24.3489327866517, observability=1)
2025-11-17T14:37:01.449 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:01.449 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:01.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:01.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:01.449 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:01.450 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:01.450 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:01.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:01.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:01.451 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:01.451 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:37:01.451 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:01.451 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:01.451 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:01.451 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:01.451 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:37:01.452 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:37:01.453 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:02.453 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:02.453 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:02.453 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:02.453 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:02.453 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:37:02.454 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:02.455 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:02.456 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:02.456 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:02.456 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:02.456 [DEBUG] [ThreadPoolExecutor-2914_0] [payload.py] [to_registers()] [0]
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48163)
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:02.462 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:02.469 [DEBUG] [ThreadPoolExecutor-2914_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Status age = 16.01006031036377s
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:06.378 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:06.379 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:06.380 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 17;20.774366;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79412;2460997.02576829;14.61842;1.3;_
2025-11-17T14:37:06.380 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response 17;20.774366;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79412;2460997.02576829;14.61842;1.3;_
2025-11-17T14:37:06.380 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:06.380 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:06.381 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:06.381 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:06.381 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:06.382 [INFO] [Thread-68238 (handle)] [driver.py] [get_status()] Telra = 20.774366, teldec = -24.256298
2025-11-17T14:37:06.382 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] UnCookCoordinates 20.774366 -24.256298
2025-11-17T14:37:06.382 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.774366 -24.256298
2025-11-17T14:37:06.382 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.774366 -24.256298
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 17;20.774366;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79412;2460997.02576832;14.61842;1.3;_20.7489701108376 -24.3490614789538
2025-11-17T14:37:06.383 [INFO] [Thread-68238 (handle)] [driver.py] [get_status()] ra_j2k = 20.7489701108376     dec_j2k = -24.3490614789538
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 140;0.104685512139859;171.162351965909;_
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response 140;0.104685512139859;171.162351965909;_
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:06.383 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:06.384 [DEBUG] [Thread-68238 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:06.385 [DEBUG] [Thread-68238 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:06.388 [DEBUG] [Thread-68238 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52737)
2025-11-17T14:37:06.388 [DEBUG] [Thread-68238 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:06.388 [DEBUG] [Thread-68238 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:06.388 [DEBUG] [Thread-68238 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:06.388 [DEBUG] [Thread-68238 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:06.389 [DEBUG] [Thread-68238 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:06.396 [DEBUG] [Thread-68238 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:06.397 [DEBUG] [Thread-68238 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:06.397 [DEBUG] [Thread-68238 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:06.397 [INFO] [Thread-68238 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02576829, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685512139859, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992728, telescope_ra=20.774366, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.79412, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7489701108376, telescope_dec_j2k=-24.3490614789538, observability=1)
2025-11-17T14:37:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.637848615646362s
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7767693;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79652;2460997.02586848;14.62081667;1.3;_
2025-11-17T14:37:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.7767693;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79652;2460997.02586848;14.62081667;1.3;_
2025-11-17T14:37:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:15.038 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.7767693, teldec = -24.256298
2025-11-17T14:37:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7767693 -24.256298
2025-11-17T14:37:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7767693 -24.256298
2025-11-17T14:37:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7767693 -24.256298
2025-11-17T14:37:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7767693;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79652;2460997.02586851;14.62081667;1.3;_20.7513749360507 -24.3491303871295
2025-11-17T14:37:15.039 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.7513749360507     dec_j2k = -24.3491303871295
2025-11-17T14:37:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162351965909;_
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162351965909;_
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44283)
2025-11-17T14:37:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:15.046 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:15.053 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:15.053 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:15.054 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:15.054 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:15.054 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:15.054 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:15.054 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02586848, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992728, telescope_ra=20.7767693, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.79652, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7513749360507, telescope_dec_j2k=-24.3491303871295, observability=1)
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Status age = 1.0204215049743652s
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:16.074 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:16.075 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:16.075 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 17;20.7770681;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79682;2460997.02588051;14.62111472;1.3;_
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response 17;20.7770681;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79682;2460997.02588051;14.62111472;1.3;_
2025-11-17T14:37:16.076 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:16.077 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:16.077 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:16.077 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:16.078 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:16.078 [INFO] [Thread-68239 (handle)] [driver.py] [get_status()] Telra = 20.7770681, teldec = -24.256298
2025-11-17T14:37:16.078 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7770681 -24.256298
2025-11-17T14:37:16.078 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7770681 -24.256298
2025-11-17T14:37:16.078 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7770681 -24.256298
2025-11-17T14:37:16.079 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 17;20.7770681;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79682;2460997.02588054;14.62111472;1.3;_20.7516739257682 -24.3491389518813
2025-11-17T14:37:16.079 [INFO] [Thread-68239 (handle)] [driver.py] [get_status()] ra_j2k = 20.7516739257682     dec_j2k = -24.3491389518813
2025-11-17T14:37:16.079 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:16.079 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:16.079 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 140;0.104685311580145;171.162357330327;_
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response 140;0.104685311580145;171.162357330327;_
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:16.080 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:16.081 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:16.082 [DEBUG] [Thread-68239 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:16.082 [DEBUG] [Thread-68239 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:16.082 [DEBUG] [Thread-68239 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:16.088 [DEBUG] [Thread-68239 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46181)
2025-11-17T14:37:16.088 [DEBUG] [Thread-68239 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:16.088 [DEBUG] [Thread-68239 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:16.089 [DEBUG] [Thread-68239 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:16.089 [DEBUG] [Thread-68239 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:16.089 [DEBUG] [Thread-68239 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:16.096 [DEBUG] [Thread-68239 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:16.097 [INFO] [Thread-68239 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02588051, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685311580145, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992728, telescope_ra=20.7770681, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.79682, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7516739257682, telescope_dec_j2k=-24.3491389518813, observability=1)
2025-11-17T14:37:18.556 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:18.556 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.4598875045776367s
2025-11-17T14:37:18.556 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:18.556 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:18.556 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:18.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:18.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:18.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:18.557 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:18.557 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7777408;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79749;2460997.02590924;14.62178556;1.3;_
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7777408;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79749;2460997.02590924;14.62178556;1.3;_
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:18.558 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:18.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:18.559 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:18.559 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7777408, teldec = -24.256298
2025-11-17T14:37:18.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7777408 -24.256298
2025-11-17T14:37:18.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7777408 -24.256298
2025-11-17T14:37:18.559 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7777408 -24.256298
2025-11-17T14:37:18.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7777408;-24.256298;50.108247;89.992728;50.08601;90.12017;17.79749;2460997.02590926;14.62178556;1.3;_20.7523470529588 -24.3491582319849
2025-11-17T14:37:18.560 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.7523470529588     dec_j2k = -24.3491582319849
2025-11-17T14:37:18.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:18.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:18.560 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162351965909;_
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162351965909;_
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:18.561 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:18.562 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:18.563 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:18.563 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:18.563 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33507)
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:18.569 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:18.576 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:18.577 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:18.577 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02590924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992728, telescope_ra=20.7777408, telescope_dec=-24.256298, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.79749, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7523470529588, telescope_dec_j2k=-24.3491582319849, observability=1)
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Status age = 5.867940902709961s
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:24.445 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:24.447 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:24.448 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 17;20.779384;-24.256291;50.108247;89.992717;50.08601;90.12016;17.79913;2460997.02597741;14.62342444;1.3;_
2025-11-17T14:37:24.448 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response 17;20.779384;-24.256291;50.108247;89.992717;50.08601;90.12016;17.79913;2460997.02597741;14.62342444;1.3;_
2025-11-17T14:37:24.448 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:24.449 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:24.449 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:24.449 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:24.449 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:24.450 [INFO] [Thread-68240 (handle)] [driver.py] [get_status()] Telra = 20.779384, teldec = -24.256291
2025-11-17T14:37:24.450 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] UnCookCoordinates 20.779384 -24.256291
2025-11-17T14:37:24.450 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.779384 -24.256291
2025-11-17T14:37:24.450 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.779384 -24.256291
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 17;20.779384;-24.256291;50.108247;89.992717;50.08601;90.12016;17.79913;2460997.02597744;14.62342444;1.3;_20.7539912979483 -24.3491983160901
2025-11-17T14:37:24.451 [INFO] [Thread-68240 (handle)] [driver.py] [get_status()] ra_j2k = 20.7539912979483     dec_j2k = -24.3491983160901
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 140;0.104685512139859;171.162362694745;_
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response 140;0.104685512139859;171.162362694745;_
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:24.451 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:24.452 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:24.453 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:24.454 [DEBUG] [Thread-68240 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:24.454 [DEBUG] [Thread-68240 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:24.454 [DEBUG] [Thread-68240 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53569)
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:24.460 [DEBUG] [Thread-68240 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:24.467 [DEBUG] [Thread-68240 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:24.467 [DEBUG] [Thread-68240 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:24.467 [DEBUG] [Thread-68240 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:24.467 [DEBUG] [Thread-68240 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:24.467 [DEBUG] [Thread-68240 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:24.468 [DEBUG] [Thread-68240 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:24.468 [DEBUG] [Thread-68240 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:24.468 [DEBUG] [Thread-68240 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:24.468 [DEBUG] [Thread-68240 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:24.468 [INFO] [Thread-68240 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02597741, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685512139859, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992717, telescope_ra=20.779384, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.79913, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7539912979483, telescope_dec_j2k=-24.3491983160901, observability=1)
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:27.470 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:37:27.471 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:37:27.472 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.859991073608398s
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:35.328 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.782418;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80217;2460997.02610334;14.62645;1.3;_
2025-11-17T14:37:35.329 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.782418;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80217;2460997.02610334;14.62645;1.3;_
2025-11-17T14:37:35.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:35.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:35.330 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:35.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:35.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:35.331 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.782418, teldec = -24.256297
2025-11-17T14:37:35.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.782418 -24.256297
2025-11-17T14:37:35.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.782418 -24.256297
2025-11-17T14:37:35.331 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.782418 -24.256297
2025-11-17T14:37:35.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.782418;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80217;2460997.02610338;14.62645;1.3;_20.7570272260803 -24.3492912055889
2025-11-17T14:37:35.332 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7570272260803     dec_j2k = -24.3492912055889
2025-11-17T14:37:35.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:35.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:35.332 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10468595337123;171.162357330327;_
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10468595337123;171.162357330327;_
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:35.333 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:35.334 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:35.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:35.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:35.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60397)
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:35.337 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:35.344 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:37:35.344 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02610334, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468595337123, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992727, telescope_ra=20.782418, telescope_dec=-24.256297, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.80217, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7570272260803, telescope_dec_j2k=-24.3492912055889, observability=1)
2025-11-17T14:37:35.345 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99617147445679 seconds ago
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Status age = 7.165862321853638s
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:42.510 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:42.511 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:42.511 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 17;20.7844254;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80418;2460997.02618648;14.62845194;1.3;_
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response 17;20.7844254;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80418;2460997.02618648;14.62845194;1.3;_
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:42.512 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:42.513 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:42.513 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:42.513 [INFO] [Thread-68241 (handle)] [driver.py] [get_status()] Telra = 20.7844254, teldec = -24.256297
2025-11-17T14:37:42.513 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7844254 -24.256297
2025-11-17T14:37:42.513 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7844254 -24.256297
2025-11-17T14:37:42.513 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7844254 -24.256297
2025-11-17T14:37:42.514 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 17;20.7844254;-24.256297;50.108247;89.992727;50.08601;90.12017;17.80418;2460997.0261865;14.62845194;1.3;_20.7590359035255 -24.3493486632433
2025-11-17T14:37:42.514 [INFO] [Thread-68241 (handle)] [driver.py] [get_status()] ra_j2k = 20.7590359035255     dec_j2k = -24.3493486632433
2025-11-17T14:37:42.514 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:42.514 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:42.514 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 140;0.104686153930944;171.162368059163;_
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response 140;0.104686153930944;171.162368059163;_
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:42.515 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:42.516 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:42.517 [DEBUG] [Thread-68241 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:42.517 [DEBUG] [Thread-68241 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:42.517 [DEBUG] [Thread-68241 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50589)
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:42.520 [DEBUG] [Thread-68241 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:42.527 [DEBUG] [Thread-68241 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:42.528 [DEBUG] [Thread-68241 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:42.528 [DEBUG] [Thread-68241 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:42.528 [INFO] [Thread-68241 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02618648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686153930944, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108247, telescope_az=89.992727, telescope_ra=20.7844254, telescope_dec=-24.256297, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.80418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7590359035255, telescope_dec_j2k=-24.3493486632433, observability=1)
2025-11-17T14:37:50.429 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:37:50
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.901352167129517s
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:37:50.429 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:37:50.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:37:50.430 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.78663;-24.256303;50.108246;89.992737;50.08601;90.12018;17.80638;2460997.02627814;14.63065028;1.3;_
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.78663;-24.256303;50.108246;89.992737;50.08601;90.12018;17.80638;2460997.02627814;14.63065028;1.3;_
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:37:50.431 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:37:50.432 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:37:50.432 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:50.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:37:50.433 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.78663, teldec = -24.256303
2025-11-17T14:37:50.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.78663 -24.256303
2025-11-17T14:37:50.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.78663 -24.256303
2025-11-17T14:37:50.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.78663 -24.256303
2025-11-17T14:37:50.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.78663;-24.256303;50.108246;89.992737;50.08601;90.12018;17.80638;2460997.02627817;14.63065028;1.3;_20.7612419065689 -24.3494177355107
2025-11-17T14:37:50.434 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7612419065689     dec_j2k = -24.3494177355107
2025-11-17T14:37:50.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:37:50.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:37:50.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686073707059;171.162362694745;_
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686073707059;171.162362694745;_
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:37:50.435 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:37:50.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:50.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:37:50.436 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:37:50.438 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51447)
2025-11-17T14:37:50.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:37:50.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:37:50.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:37:50.439 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:37:50.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:37:50.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:37:50.446 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:37:50.447 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:37:50.447 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02627814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686073707059, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992737, telescope_ra=20.78663, telescope_dec=-24.256303, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.80638, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7612419065689, telescope_dec_j2k=-24.3494177355107, observability=1)
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Status age = 10.176143646240234s
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:00.623 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:00.624 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:00.625 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 17;20.7894773;-24.256297;50.108246;89.992726;50.08601;90.12017;17.80923;2460997.02639612;14.63349;1.3;_
2025-11-17T14:38:00.625 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response 17;20.7894773;-24.256297;50.108246;89.992726;50.08601;90.12017;17.80923;2460997.02639612;14.63349;1.3;_
2025-11-17T14:38:00.626 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:00.626 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:00.626 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:00.627 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:00.627 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:00.627 [INFO] [Thread-68242 (handle)] [driver.py] [get_status()] Telra = 20.7894773, teldec = -24.256297
2025-11-17T14:38:00.627 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7894773 -24.256297
2025-11-17T14:38:00.627 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7894773 -24.256297
2025-11-17T14:38:00.627 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7894773 -24.256297
2025-11-17T14:38:00.628 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 17;20.7894773;-24.256297;50.108246;89.992726;50.08601;90.12017;17.80923;2460997.02639616;14.63349;1.3;_20.7640910223282 -24.3494931510366
2025-11-17T14:38:00.628 [INFO] [Thread-68242 (handle)] [driver.py] [get_status()] ra_j2k = 20.7640910223282     dec_j2k = -24.3494931510366
2025-11-17T14:38:00.628 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:00.628 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:00.628 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 140;0.104685792923459;171.162351965909;_
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response 140;0.104685792923459;171.162351965909;_
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:00.629 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:00.630 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:00.631 [DEBUG] [Thread-68242 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:00.631 [DEBUG] [Thread-68242 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:00.631 [DEBUG] [Thread-68242 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57843)
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:00.634 [DEBUG] [Thread-68242 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:00.641 [DEBUG] [Thread-68242 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:00.641 [DEBUG] [Thread-68242 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:00.641 [DEBUG] [Thread-68242 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:00.642 [DEBUG] [Thread-68242 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:00.642 [INFO] [Thread-68242 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02639612, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685792923459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992726, telescope_ra=20.7894773, telescope_dec=-24.256297, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.80923, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:37:01.449065', telescope_ra_j2k=20.7640910223282, telescope_dec_j2k=-24.3494931510366, observability=1)
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:01.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:01.592 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:38:01.592 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:01.592 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:01.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:01.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:01.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:01.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:01.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:01.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:01.593 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:38:01.593 [INFO] [ThreadPoolExecutor-2915_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:38:01.593 [INFO] [ThreadPoolExecutor-2915_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 14.36340594291687s
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:15.005 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:15.006 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7934568;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81321;2460997.02656258;14.63745861;1.3;_
2025-11-17T14:38:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.7934568;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81321;2460997.02656258;14.63745861;1.3;_
2025-11-17T14:38:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:15.007 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:15.008 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:15.009 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.7934568, teldec = -24.256296
2025-11-17T14:38:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7934568 -24.256296
2025-11-17T14:38:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7934568 -24.256296
2025-11-17T14:38:15.009 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7934568 -24.256296
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.7934849;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81324;2460997.02656262;14.63748667;1.3;_20.7680730619701 -24.3496058542015
2025-11-17T14:38:15.010 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.7680730619701     dec_j2k = -24.3496058542015
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685792923459;171.162362694745;_
2025-11-17T14:38:15.010 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685792923459;171.162362694745;_
2025-11-17T14:38:15.011 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:15.011 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:15.012 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47469)
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:15.016 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:15.023 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:15.024 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:15.024 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:15.024 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02656258, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685792923459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992726, telescope_ra=20.7934568, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81321, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7680730619701, telescope_dec_j2k=-24.3496058542015, observability=1)
2025-11-17T14:38:16.129 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Status age = 1.105804681777954s
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:16.130 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:16.131 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 17;20.793793;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81354;2460997.02657559;14.63779389;1.3;_
2025-11-17T14:38:16.131 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response 17;20.793793;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81354;2460997.02657559;14.63779389;1.3;_
2025-11-17T14:38:16.131 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:16.131 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:16.131 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:16.132 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:16.132 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:16.132 [INFO] [Thread-68243 (handle)] [driver.py] [get_status()] Telra = 20.793793, teldec = -24.256296
2025-11-17T14:38:16.132 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] UnCookCoordinates 20.793793 -24.256296
2025-11-17T14:38:16.132 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.793793 -24.256296
2025-11-17T14:38:16.132 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.793793 -24.256296
2025-11-17T14:38:16.133 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 17;20.793793;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81354;2460997.02657561;14.63779389;1.3;_20.7684094766735 -24.3496154555944
2025-11-17T14:38:16.133 [INFO] [Thread-68243 (handle)] [driver.py] [get_status()] ra_j2k = 20.7684094766735     dec_j2k = -24.3496154555944
2025-11-17T14:38:16.133 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:16.133 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:16.133 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:16.134 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 140;0.104685752811516;171.162362694745;_
2025-11-17T14:38:16.134 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response 140;0.104685752811516;171.162362694745;_
2025-11-17T14:38:16.134 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:16.134 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:16.134 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:16.135 [DEBUG] [Thread-68243 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40621)
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:16.137 [DEBUG] [Thread-68243 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:16.144 [DEBUG] [Thread-68243 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:16.144 [DEBUG] [Thread-68243 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:16.144 [DEBUG] [Thread-68243 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:16.145 [DEBUG] [Thread-68243 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:16.145 [INFO] [Thread-68243 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02657559, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685752811516, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992726, telescope_ra=20.793793, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81354, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7684094766735, telescope_dec_j2k=-24.3496154555944, observability=1)
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.526280164718628s
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:17.671 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:17.672 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:17.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7942049;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81396;2460997.02659344;14.63820472;1.3;_
2025-11-17T14:38:17.673 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.7942049;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81396;2460997.02659344;14.63820472;1.3;_
2025-11-17T14:38:17.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:17.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:17.673 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:17.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:17.674 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:17.674 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.7942049, teldec = -24.256296
2025-11-17T14:38:17.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7942049 -24.256296
2025-11-17T14:38:17.674 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7942049 -24.256296
2025-11-17T14:38:17.675 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7942049 -24.256296
2025-11-17T14:38:17.675 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.7942049;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81396;2460997.02659346;14.63820472;1.3;_20.7688216397543 -24.3496272178981
2025-11-17T14:38:17.675 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.7688216397543     dec_j2k = -24.3496272178981
2025-11-17T14:38:17.675 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:17.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:17.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:17.676 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10468623415483;171.162351965909;_
2025-11-17T14:38:17.676 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10468623415483;171.162351965909;_
2025-11-17T14:38:17.677 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:17.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:17.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:17.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:17.677 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:17.678 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:17.678 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:17.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:17.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:17.678 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:17.679 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:17.679 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:17.679 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42985)
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:17.681 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:17.688 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:17.689 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:17.689 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02659344, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468623415483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992726, telescope_ra=20.7942049, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81396, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7688216397543, telescope_dec_j2k=-24.3496272178981, observability=1)
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Status age = 1.0133209228515625s
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:18.702 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:18.703 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:18.703 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:18.703 [DEBUG] [Thread-68244 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:18.703 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 17;20.7945135;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81426;2460997.02660537;14.6385125;1.3;_
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response 17;20.7945135;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81426;2460997.02660537;14.6385125;1.3;_
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:18.704 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:18.705 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:18.705 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:18.706 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:18.706 [INFO] [Thread-68244 (handle)] [driver.py] [get_status()] Telra = 20.7945135, teldec = -24.256296
2025-11-17T14:38:18.706 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7945135 -24.256296
2025-11-17T14:38:18.706 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7945135 -24.256296
2025-11-17T14:38:18.706 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7945135 -24.256296
2025-11-17T14:38:18.707 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 17;20.7945135;-24.256296;50.108246;89.992726;50.08601;90.12017;17.81426;2460997.0266054;14.6385125;1.3;_20.7691304368818 -24.3496360296428
2025-11-17T14:38:18.707 [INFO] [Thread-68244 (handle)] [driver.py] [get_status()] ra_j2k = 20.7691304368818     dec_j2k = -24.3496360296428
2025-11-17T14:38:18.707 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:18.707 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:18.707 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 140;0.104685111020431;171.162362694745;_
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response 140;0.104685111020431;171.162362694745;_
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:18.708 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:18.709 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:18.710 [DEBUG] [Thread-68244 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:18.710 [DEBUG] [Thread-68244 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:18.710 [DEBUG] [Thread-68244 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51449)
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:18.714 [DEBUG] [Thread-68244 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:18.721 [DEBUG] [Thread-68244 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:18.721 [INFO] [Thread-68244 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02660537, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685111020431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992726, telescope_ra=20.7945135, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81426, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7691304368818, telescope_dec_j2k=-24.3496360296428, observability=1)
2025-11-17T14:38:22.472 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.473 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.473 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:22.473 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:22.473 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:38:22.474 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:22.475 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:22.476 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:38:22.477 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:22.478 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Park
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:38:22.479 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:38:22.480 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 29;20.79555;-24.256296;50.108246;89.992725;50.08601;90.12017;17.8153;2460997.02664907;14.63954611;1.3;_Park Command Successful
2025-11-17T14:38:23.481 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:38:23.481 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:38:23.481 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:38:23.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:38:23.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:38:24.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:38:24.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:38:24.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:38:24.482 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:38:24.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:38:25.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:38:25.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:38:25.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:38:25.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:38:25.483 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:38:26.484 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:38:26.484 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:38:26.484 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:38:26.485 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:38:26.486 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:38:26.486 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:27.487 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:38:27.488 [DEBUG] [ThreadPoolExecutor-2914_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:27.489 [INFO] [ThreadPoolExecutor-2914_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.68343210220337s
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:35.405 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:35.406 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:35.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.799144;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81889;2460997.02679869;14.64313028;1.3;_
2025-11-17T14:38:35.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.799144;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81889;2460997.02679869;14.64313028;1.3;_
2025-11-17T14:38:35.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:35.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:35.407 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:35.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:35.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:35.408 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.799144, teldec = -24.256296
2025-11-17T14:38:35.408 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.799144 -24.256296
2025-11-17T14:38:35.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.799144 -24.256296
2025-11-17T14:38:35.409 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.799144 -24.256296
2025-11-17T14:38:35.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.799144;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81889;2460997.02679872;14.64313028;1.3;_20.7737638972711 -24.3497681763591
2025-11-17T14:38:35.410 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7737638972711     dec_j2k = -24.3497681763591
2025-11-17T14:38:35.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:35.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:35.410 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104685873147345;171.162346601491;_
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104685873147345;171.162346601491;_
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:35.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:35.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:35.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:35.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:35.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49925)
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:35.417 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:35.424 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:38:35.424 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02679869, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685873147345, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992725, telescope_ra=20.799144, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81889, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7737638972711, telescope_dec_j2k=-24.3497681763591, observability=1)
2025-11-17T14:38:35.424 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99546146392822 seconds ago
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Status age = 1.34566330909729s
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:36.770 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:36.771 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:36.771 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:36.771 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:36.771 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 17;20.7995267;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81928;2460997.02681448;14.64351194;1.3;_
2025-11-17T14:38:36.771 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response 17;20.7995267;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81928;2460997.02681448;14.64351194;1.3;_
2025-11-17T14:38:36.772 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:36.772 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:36.772 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:36.773 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:36.773 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:36.773 [INFO] [Thread-68245 (handle)] [driver.py] [get_status()] Telra = 20.7995267, teldec = -24.256296
2025-11-17T14:38:36.773 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] UnCookCoordinates 20.7995267 -24.256296
2025-11-17T14:38:36.773 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.7995267 -24.256296
2025-11-17T14:38:36.773 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.7995267 -24.256296
2025-11-17T14:38:36.774 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 17;20.7995267;-24.256296;50.108246;89.992725;50.08601;90.12017;17.81928;2460997.02681451;14.64351194;1.3;_20.7741468421515 -24.3497790919091
2025-11-17T14:38:36.774 [INFO] [Thread-68245 (handle)] [driver.py] [get_status()] ra_j2k = 20.7741468421515     dec_j2k = -24.3497790919091
2025-11-17T14:38:36.774 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:36.774 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:36.774 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 140;0.104685431915974;171.162351965909;_
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response 140;0.104685431915974;171.162351965909;_
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:36.775 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:36.776 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:36.777 [DEBUG] [Thread-68245 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:36.777 [DEBUG] [Thread-68245 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:36.777 [DEBUG] [Thread-68245 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35549)
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:36.784 [DEBUG] [Thread-68245 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:36.791 [DEBUG] [Thread-68245 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:36.791 [DEBUG] [Thread-68245 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:36.792 [DEBUG] [Thread-68245 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:36.792 [INFO] [Thread-68245 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02681448, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685431915974, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992725, telescope_ra=20.7995267, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.81928, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7741468421515, telescope_dec_j2k=-24.3497790919091, observability=1)
2025-11-17T14:38:50.508 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:38:50
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.716209411621094s
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:50.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:50.509 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:50.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.803373;-24.256296;50.108246;89.992724;50.08601;90.12017;17.82312;2460997.0269735;14.64734778;1.3;_
2025-11-17T14:38:50.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.803373;-24.256296;50.108246;89.992724;50.08601;90.12017;17.82312;2460997.0269735;14.64734778;1.3;_
2025-11-17T14:38:50.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:50.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:50.510 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:50.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:50.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:50.511 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.803373, teldec = -24.256296
2025-11-17T14:38:50.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.803373 -24.256296
2025-11-17T14:38:50.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.803373 -24.256296
2025-11-17T14:38:50.511 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.803373 -24.256296
2025-11-17T14:38:50.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.803373;-24.256296;50.108246;89.992724;50.08601;90.12017;17.82312;2460997.02697352;14.64734778;1.3;_20.7779956050948 -24.3498887464075
2025-11-17T14:38:50.512 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7779956050948     dec_j2k = -24.3498887464075
2025-11-17T14:38:50.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:50.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:50.512 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686474826487;171.162357330327;_
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686474826487;171.162357330327;_
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:50.513 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:50.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:50.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:50.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:50.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:50.514 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:50.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:50.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:50.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:50.515 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:50.522 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53233)
2025-11-17T14:38:50.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:50.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:50.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:50.522 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:50.523 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:50.524 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:50.524 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0269735, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686474826487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992724, telescope_ra=20.803373, telescope_dec=-24.256296, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.82312, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7779956050948, telescope_dec_j2k=-24.3498887464075, observability=1)
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Status age = 4.3524391651153564s
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:38:54.877 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:38:54.878 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 17;20.8045777;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82433;2460997.02702405;14.64854917;1.3;_
2025-11-17T14:38:54.878 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response 17;20.8045777;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82433;2460997.02702405;14.64854917;1.3;_
2025-11-17T14:38:54.878 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:38:54.878 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:38:54.879 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:38:54.879 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:54.879 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:38:54.879 [INFO] [Thread-68246 (handle)] [driver.py] [get_status()] Telra = 20.8045777, teldec = -24.256295
2025-11-17T14:38:54.880 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8045777 -24.256295
2025-11-17T14:38:54.880 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8045777 -24.256295
2025-11-17T14:38:54.880 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8045777 -24.256295
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 17;20.8045777;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82433;2460997.02702407;14.64854917;1.3;_20.7792010773351 -24.3499220721299
2025-11-17T14:38:54.881 [INFO] [Thread-68246 (handle)] [driver.py] [get_status()] ra_j2k = 20.7792010773351     dec_j2k = -24.3499220721299
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 140;0.104686314378716;171.162351965909;_
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response 140;0.104686314378716;171.162351965909;_
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:54.881 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:38:54.882 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:38:54.883 [DEBUG] [Thread-68246 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:54.883 [DEBUG] [Thread-68246 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:38:54.883 [DEBUG] [Thread-68246 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46183)
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:38:54.888 [DEBUG] [Thread-68246 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:38:54.895 [DEBUG] [Thread-68246 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:38:54.896 [DEBUG] [Thread-68246 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:38:54.896 [INFO] [Thread-68246 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02702405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686314378716, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992724, telescope_ra=20.8045777, telescope_dec=-24.256295, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.82433, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:38:01.591015', telescope_ra_j2k=20.7792010773351, telescope_dec_j2k=-24.3499220721299, observability=1)
2025-11-17T14:39:01.732 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:01.732 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:01.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:01.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:01.732 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:01.733 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:01.733 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:01.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:01.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:01.734 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:01.734 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:01.735 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:01.736 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:39:01.736 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:39:01.736 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:39:01.736 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:02.737 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:02.737 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:02.737 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:02.737 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:02.737 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:39:02.738 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:02.739 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:02.740 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:02.740 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:02.740 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:02.740 [DEBUG] [ThreadPoolExecutor-2916_0] [payload.py] [to_registers()] [0]
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39985)
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:02.746 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:02.754 [DEBUG] [ThreadPoolExecutor-2916_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Status age = 18.03762650489807s
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:12.934 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:12.935 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:12.936 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 17;20.8096192;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82937;2460997.02723306;14.65357694;1.3;_
2025-11-17T14:39:12.936 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response 17;20.8096192;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82937;2460997.02723306;14.65357694;1.3;_
2025-11-17T14:39:12.936 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:12.936 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:12.936 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:12.937 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:12.937 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:12.937 [INFO] [Thread-68247 (handle)] [driver.py] [get_status()] Telra = 20.8096192, teldec = -24.256295
2025-11-17T14:39:12.937 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8096192 -24.256295
2025-11-17T14:39:12.937 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8096192 -24.256295
2025-11-17T14:39:12.937 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8096192 -24.256295
2025-11-17T14:39:12.938 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 17;20.8096192;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82937;2460997.02723308;14.65357694;1.3;_20.7842458118744 -24.3500656202079
2025-11-17T14:39:12.938 [INFO] [Thread-68247 (handle)] [driver.py] [get_status()] ra_j2k = 20.7842458118744     dec_j2k = -24.3500656202079
2025-11-17T14:39:12.938 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:12.938 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 140;0.104686194042887;171.162357330327;_
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162357330327;_
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:12.939 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:12.940 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:12.940 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:12.940 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:12.940 [DEBUG] [Thread-68247 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:12.940 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:12.941 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:12.941 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:12.941 [DEBUG] [Thread-68247 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:12.942 [DEBUG] [Thread-68247 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:12.942 [DEBUG] [Thread-68247 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54587)
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:12.945 [DEBUG] [Thread-68247 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:12.953 [DEBUG] [Thread-68247 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:12.953 [INFO] [Thread-68247 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02723306, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992724, telescope_ra=20.8096192, telescope_dec=-24.256295, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.82937, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.7842458118744, telescope_dec_j2k=-24.3500656202079, observability=1)
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.0719285011291504s
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8101791;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82993;2460997.02725727;14.65413528;1.3;_
2025-11-17T14:39:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.8101791;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82993;2460997.02725727;14.65413528;1.3;_
2025-11-17T14:39:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:15.029 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.8101791, teldec = -24.256295
2025-11-17T14:39:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8101791 -24.256295
2025-11-17T14:39:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8101791 -24.256295
2025-11-17T14:39:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8101791 -24.256295
2025-11-17T14:39:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8101791;-24.256295;50.108246;89.992724;50.08601;90.12017;17.82993;2460997.02725729;14.65413528;1.3;_20.7848060714411 -24.3500815524517
2025-11-17T14:39:15.030 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.7848060714411     dec_j2k = -24.3500815524517
2025-11-17T14:39:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685752811516;171.162357330327;_
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685752811516;171.162357330327;_
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:15.038 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41151)
2025-11-17T14:39:15.038 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:15.039 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:15.046 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02725727, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685752811516, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992724, telescope_ra=20.8101791, telescope_dec=-24.256295, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.82993, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.7848060714411, telescope_dec_j2k=-24.3500815524517, observability=1)
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Status age = 1.133026123046875s
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:16.179 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:16.180 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:16.181 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 17;20.8105058;-24.256295;50.108246;89.992724;50.08601;90.12017;17.83026;2460997.02727061;14.65446111;1.3;_
2025-11-17T14:39:16.181 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response 17;20.8105058;-24.256295;50.108246;89.992724;50.08601;90.12017;17.83026;2460997.02727061;14.65446111;1.3;_
2025-11-17T14:39:16.181 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:16.181 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:16.181 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:16.182 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:16.182 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:16.182 [INFO] [Thread-68248 (handle)] [driver.py] [get_status()] Telra = 20.8105058, teldec = -24.256295
2025-11-17T14:39:16.182 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8105058 -24.256295
2025-11-17T14:39:16.182 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8105058 -24.256295
2025-11-17T14:39:16.182 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8105058 -24.256295
2025-11-17T14:39:16.183 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 17;20.8105058;-24.256295;50.108246;89.992724;50.08601;90.12017;17.83026;2460997.02727064;14.65446111;1.3;_20.785132981279 -24.3500908479495
2025-11-17T14:39:16.183 [INFO] [Thread-68248 (handle)] [driver.py] [get_status()] ra_j2k = 20.785132981279     dec_j2k = -24.3500908479495
2025-11-17T14:39:16.183 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:16.183 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:16.183 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 140;0.104686073707059;171.162351965909;_
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response 140;0.104686073707059;171.162351965909;_
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:16.184 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:16.185 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:16.186 [DEBUG] [Thread-68248 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:16.186 [DEBUG] [Thread-68248 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:16.186 [DEBUG] [Thread-68248 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:16.192 [DEBUG] [Thread-68248 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51801)
2025-11-17T14:39:16.192 [DEBUG] [Thread-68248 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:16.192 [DEBUG] [Thread-68248 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:16.193 [DEBUG] [Thread-68248 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:16.193 [DEBUG] [Thread-68248 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:16.193 [DEBUG] [Thread-68248 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:16.200 [DEBUG] [Thread-68248 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:16.200 [INFO] [Thread-68248 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02727061, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686073707059, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992724, telescope_ra=20.8105058, telescope_dec=-24.256295, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.83026, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.785132981279, telescope_dec_j2k=-24.3500908479495, observability=1)
2025-11-17T14:39:16.784 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:16.784 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.5842993259429932s
2025-11-17T14:39:16.784 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.5842993259429932
2025-11-17T14:39:27.754 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:27.754 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:27.754 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:27.754 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:27.754 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:27.755 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:39:27.756 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:39:27.757 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Status age = 14.80221700668335s
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:31.002 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:31.003 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:31.003 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:31.003 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:31.003 [DEBUG] [Thread-68249 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:31.004 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:31.004 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:31.004 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:31.004 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:31.004 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 17;20.8146332;-24.256295;50.108246;89.992723;50.08601;90.12017;17.83438;2460997.02744218;14.65857722;1.3;_
2025-11-17T14:39:31.005 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response 17;20.8146332;-24.256295;50.108246;89.992723;50.08601;90.12017;17.83438;2460997.02744218;14.65857722;1.3;_
2025-11-17T14:39:31.005 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:31.005 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:31.005 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:31.006 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:31.006 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:31.006 [INFO] [Thread-68249 (handle)] [driver.py] [get_status()] Telra = 20.8146332, teldec = -24.256295
2025-11-17T14:39:31.006 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8146332 -24.256295
2025-11-17T14:39:31.006 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8146332 -24.256295
2025-11-17T14:39:31.006 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8146332 -24.256295
2025-11-17T14:39:31.007 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 17;20.8146332;-24.256295;50.108246;89.992723;50.08601;90.12017;17.83438;2460997.02744221;14.65857722;1.3;_20.7892630343068 -24.3502082252441
2025-11-17T14:39:31.007 [INFO] [Thread-68249 (handle)] [driver.py] [get_status()] ra_j2k = 20.7892630343068     dec_j2k = -24.3502082252441
2025-11-17T14:39:31.007 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:31.007 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:31.007 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162362694745;_
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162362694745;_
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:31.008 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:31.009 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:31.010 [DEBUG] [Thread-68249 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:31.010 [DEBUG] [Thread-68249 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:31.010 [DEBUG] [Thread-68249 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59295)
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:31.012 [DEBUG] [Thread-68249 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:31.020 [DEBUG] [Thread-68249 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:31.021 [INFO] [Thread-68249 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02744218, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108246, telescope_az=89.992723, telescope_ra=20.8146332, telescope_dec=-24.256295, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.83438, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.7892630343068, telescope_dec_j2k=-24.3502082252441, observability=1)
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.463173151016235s
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:35.484 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8158836;-24.256294;50.108245;89.992723;50.08601;90.12017;17.83563;2460997.02749404;14.65982417;1.3;_
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.8158836;-24.256294;50.108245;89.992723;50.08601;90.12017;17.83563;2460997.02749404;14.65982417;1.3;_
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:35.485 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:35.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:35.486 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:35.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:35.487 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.8158836, teldec = -24.256294
2025-11-17T14:39:35.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.8158836 -24.256294
2025-11-17T14:39:35.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.8158836 -24.256294
2025-11-17T14:39:35.487 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8158836 -24.256294
2025-11-17T14:39:35.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8158836;-24.256294;50.108245;89.992723;50.08601;90.12017;17.83563;2460997.02749407;14.65982417;1.3;_20.7905142389341 -24.3502427635417
2025-11-17T14:39:35.488 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.7905142389341     dec_j2k = -24.3502427635417
2025-11-17T14:39:35.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:35.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:35.488 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686675386201;171.162368059163;_
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686675386201;171.162368059163;_
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:35.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:35.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:35.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:35.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:35.496 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34189)
2025-11-17T14:39:35.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:35.496 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:35.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:35.497 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:35.497 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:35.504 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:39:35.504 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02749404, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686675386201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992723, telescope_ra=20.8158836, telescope_dec=-24.256294, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.83563, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.7905142389341, telescope_dec_j2k=-24.3502427635417, observability=1)
2025-11-17T14:39:35.504 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9962797164917 seconds ago
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Status age = 13.604826211929321s
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:49.109 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:49.110 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:49.110 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:49.111 [DEBUG] [Thread-68250 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:49.111 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:49.111 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:49.111 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:49.111 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:49.112 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 17;20.8196742;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83942;2460997.02765176;14.66360444;1.3;_
2025-11-17T14:39:49.112 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response 17;20.8196742;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83942;2460997.02765176;14.66360444;1.3;_
2025-11-17T14:39:49.112 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:49.112 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:49.112 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:49.113 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:49.113 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:49.113 [INFO] [Thread-68250 (handle)] [driver.py] [get_status()] Telra = 20.8196742, teldec = -24.256294
2025-11-17T14:39:49.113 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8196742 -24.256294
2025-11-17T14:39:49.113 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8196742 -24.256294
2025-11-17T14:39:49.113 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8196742 -24.256294
2025-11-17T14:39:49.114 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 17;20.8196742;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83942;2460997.02765178;14.66360444;1.3;_20.794307279804 -24.3503504371655
2025-11-17T14:39:49.114 [INFO] [Thread-68250 (handle)] [driver.py] [get_status()] ra_j2k = 20.794307279804     dec_j2k = -24.3503504371655
2025-11-17T14:39:49.114 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:49.114 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:49.114 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 140;0.104686675386201;171.162362694745;_
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response 140;0.104686675386201;171.162362694745;_
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:49.115 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:49.116 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:49.117 [DEBUG] [Thread-68250 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:49.117 [DEBUG] [Thread-68250 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:49.117 [DEBUG] [Thread-68250 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49367)
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:49.121 [DEBUG] [Thread-68250 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:49.128 [DEBUG] [Thread-68250 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:49.128 [INFO] [Thread-68250 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02765176, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686675386201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992722, telescope_ra=20.8196742, telescope_dec=-24.256294, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.83942, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.794307279804, telescope_dec_j2k=-24.3503504371655, observability=1)
2025-11-17T14:39:50.585 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:39:50
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.456526756286621s
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:39:50.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:39:50.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:39:50.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8200945;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83984;2460997.02766882;14.66402361;1.3;_
2025-11-17T14:39:50.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.8200945;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83984;2460997.02766882;14.66402361;1.3;_
2025-11-17T14:39:50.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:39:50.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:39:50.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:39:50.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:50.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:39:50.590 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.8200945, teldec = -24.256294
2025-11-17T14:39:50.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8200945 -24.256294
2025-11-17T14:39:50.590 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8200945 -24.256294
2025-11-17T14:39:50.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8200945 -24.256294
2025-11-17T14:39:50.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8200945;-24.256294;50.108245;89.992722;50.08601;90.12017;17.83984;2460997.02766888;14.66402361;1.3;_20.7947278506405 -24.350362370335
2025-11-17T14:39:50.591 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.7947278506405     dec_j2k = -24.350362370335
2025-11-17T14:39:50.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:39:50.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:39:50.591 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10468651493843;171.162357330327;_
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10468651493843;171.162357330327;_
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:50.592 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:39:50.593 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:39:50.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:50.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:39:50.594 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55907)
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:39:50.595 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:39:50.603 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:39:50.604 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:39:50.604 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:39:50.604 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:39:50.604 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02766882, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468651493843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992722, telescope_ra=20.8200945, telescope_dec=-24.256294, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.83984, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:39:01.731669', telescope_ra_j2k=20.7947278506405, telescope_dec_j2k=-24.350362370335, observability=1)
2025-11-17T14:40:01.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:01.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:01.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:01.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:01.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:01.874 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:01.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:01.875 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:01.875 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:01.875 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:01.875 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:40:01.875 [INFO] [ThreadPoolExecutor-2917_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:40:01.875 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Status age = 16.580074310302734s
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:07.184 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:07.185 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:07.186 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 17;20.8247194;-24.256294;50.108245;89.992722;50.08601;90.12017;17.84447;2460997.02786095;14.66863583;1.3;_
2025-11-17T14:40:07.186 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response 17;20.8247194;-24.256294;50.108245;89.992722;50.08601;90.12017;17.84447;2460997.02786095;14.66863583;1.3;_
2025-11-17T14:40:07.186 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:07.186 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:07.186 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:07.187 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:07.187 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:07.187 [INFO] [Thread-68251 (handle)] [driver.py] [get_status()] Telra = 20.8247194, teldec = -24.256294
2025-11-17T14:40:07.187 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8247194 -24.256294
2025-11-17T14:40:07.187 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8247194 -24.256294
2025-11-17T14:40:07.188 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8247194 -24.256294
2025-11-17T14:40:07.188 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 17;20.8247194;-24.256294;50.108245;89.992722;50.08601;90.12017;17.84447;2460997.02786097;14.66863583;1.3;_20.7993557334297 -24.3504936062953
2025-11-17T14:40:07.189 [INFO] [Thread-68251 (handle)] [driver.py] [get_status()] ra_j2k = 20.7993557334297     dec_j2k = -24.3504936062953
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 140;0.104685592363745;171.162362694745;_
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response 140;0.104685592363745;171.162362694745;_
2025-11-17T14:40:07.189 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:07.190 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:07.190 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:07.190 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:07.191 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:07.192 [DEBUG] [Thread-68251 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:07.192 [DEBUG] [Thread-68251 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:07.192 [DEBUG] [Thread-68251 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32845)
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:07.198 [DEBUG] [Thread-68251 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:07.205 [DEBUG] [Thread-68251 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:07.205 [INFO] [Thread-68251 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02786095, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685592363745, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992722, telescope_ra=20.8247194, telescope_dec=-24.256294, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.84447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.7993557334297, telescope_dec_j2k=-24.3504936062953, observability=1)
2025-11-17T14:40:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.823450803756714s
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8268959;-24.256293;50.108245;89.992722;50.08601;90.12017;17.84665;2460997.02795174;14.67080639;1.3;_
2025-11-17T14:40:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.8268959;-24.256293;50.108245;89.992722;50.08601;90.12017;17.84665;2460997.02795174;14.67080639;1.3;_
2025-11-17T14:40:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:15.032 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.8268959, teldec = -24.256293
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8268959 -24.256293
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8268959 -24.256293
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8268959 -24.256293
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8268959;-24.256293;50.108245;89.992722;50.08601;90.12017;17.84665;2460997.02795176;14.67080639;1.3;_20.8015336389171 -24.35055431947
2025-11-17T14:40:15.032 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.8015336389171     dec_j2k = -24.35055431947
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686555050372;171.162357330327;_
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686555050372;171.162357330327;_
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:40:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:40:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:40:15.041 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42161)
2025-11-17T14:40:15.041 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:15.042 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:15.049 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:15.050 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02795174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686555050372, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992722, telescope_ra=20.8268959, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.84665, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8015336389171, telescope_dec_j2k=-24.35055431947, observability=1)
2025-11-17T14:40:15.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:15.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.8262431621551514s
2025-11-17T14:40:15.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8262431621551514
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Status age = 1.183992624282837s
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:16.234 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:16.235 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:16.236 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 17;20.8272245;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84697;2460997.02796569;14.67113417;1.3;_
2025-11-17T14:40:16.236 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response 17;20.8272245;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84697;2460997.02796569;14.67113417;1.3;_
2025-11-17T14:40:16.236 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:16.236 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:16.236 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:16.237 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:16.237 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:16.237 [INFO] [Thread-68252 (handle)] [driver.py] [get_status()] Telra = 20.8272245, teldec = -24.256293
2025-11-17T14:40:16.237 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8272245 -24.256293
2025-11-17T14:40:16.237 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8272245 -24.256293
2025-11-17T14:40:16.237 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8272245 -24.256293
2025-11-17T14:40:16.238 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 17;20.8272245;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84697;2460997.02796572;14.67113417;1.3;_20.8018624511797 -24.3505636340583
2025-11-17T14:40:16.238 [INFO] [Thread-68252 (handle)] [driver.py] [get_status()] ra_j2k = 20.8018624511797     dec_j2k = -24.3505636340583
2025-11-17T14:40:16.238 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:16.238 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:16.238 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 140;0.104686434714544;171.162346601491;_
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response 140;0.104686434714544;171.162346601491;_
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:16.239 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:16.240 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:16.241 [DEBUG] [Thread-68252 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:16.241 [DEBUG] [Thread-68252 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:16.241 [DEBUG] [Thread-68252 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58305)
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:16.243 [DEBUG] [Thread-68252 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:16.250 [DEBUG] [Thread-68252 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:16.251 [DEBUG] [Thread-68252 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:16.251 [INFO] [Thread-68252 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02796569, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686434714544, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992721, telescope_ra=20.8272245, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.84697, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8018624511797, telescope_dec_j2k=-24.3505636340583, observability=1)
2025-11-17T14:40:22.757 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.757 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:40:22.758 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:22.759 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:22.760 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:22.760 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.760 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:22.761 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:40:22.762 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:22.763 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Park
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:40:22.764 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:40:22.765 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 29;20.8290668;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84882;2460997.02804126;14.67297139;1.3;_Park Command Successful
2025-11-17T14:40:23.765 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:40:23.765 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:40:23.765 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:40:23.766 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:40:23.766 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:40:24.766 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:40:24.766 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:40:24.766 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:40:24.767 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:40:24.767 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:40:25.248 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:25.248 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Status age = 8.997775316238403s
2025-11-17T14:40:25.248 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:25.248 [DEBUG] [Thread-68253 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:25.249 [DEBUG] [Thread-68253 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:25.249 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:25.249 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:25.249 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:25.250 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:25.251 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 17;20.82974;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84949;2460997.02807004;14.67364278;1.3;_
2025-11-17T14:40:25.251 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response 17;20.82974;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84949;2460997.02807004;14.67364278;1.3;_
2025-11-17T14:40:25.251 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:25.251 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:25.251 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:25.252 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:25.252 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:25.252 [INFO] [Thread-68253 (handle)] [driver.py] [get_status()] Telra = 20.82974, teldec = -24.256293
2025-11-17T14:40:25.252 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] UnCookCoordinates 20.82974 -24.256293
2025-11-17T14:40:25.252 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.82974 -24.256293
2025-11-17T14:40:25.252 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.82974 -24.256293
2025-11-17T14:40:25.253 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 17;20.82974;-24.256293;50.108245;89.992721;50.08601;90.12017;17.84949;2460997.02807006;14.67364278;1.3;_20.8043795768753 -24.3506349162952
2025-11-17T14:40:25.253 [INFO] [Thread-68253 (handle)] [driver.py] [get_status()] ra_j2k = 20.8043795768753     dec_j2k = -24.3506349162952
2025-11-17T14:40:25.253 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:25.253 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:25.253 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 140;0.104686635274258;171.162357330327;_
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response 140;0.104686635274258;171.162357330327;_
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:25.254 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:25.255 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:25.256 [DEBUG] [Thread-68253 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:25.256 [DEBUG] [Thread-68253 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:25.256 [DEBUG] [Thread-68253 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43455)
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:25.258 [DEBUG] [Thread-68253 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:25.265 [DEBUG] [Thread-68253 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:25.265 [DEBUG] [Thread-68253 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:25.265 [DEBUG] [Thread-68253 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:25.265 [DEBUG] [Thread-68253 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:25.266 [DEBUG] [Thread-68253 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:25.266 [DEBUG] [Thread-68253 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:25.266 [DEBUG] [Thread-68253 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:25.266 [DEBUG] [Thread-68253 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:25.266 [DEBUG] [Thread-68253 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:25.266 [INFO] [Thread-68253 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02807004, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686635274258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992721, telescope_ra=20.82974, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.84949, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8043795768753, telescope_dec_j2k=-24.3506349162952, observability=1)
2025-11-17T14:40:25.767 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:40:25.767 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:40:25.767 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:40:25.768 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:40:25.768 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:40:26.768 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:40:26.768 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:40:26.768 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:26.769 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:26.770 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:40:26.771 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:40:26.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:40:27.772 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:40:27.773 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:40:27.773 [DEBUG] [ThreadPoolExecutor-2916_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:27.773 [INFO] [ThreadPoolExecutor-2916_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.29830527305603s
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:35.564 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8326298;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85238;2460997.02818941;14.67652472;1.3;_
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.8326298;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85238;2460997.02818941;14.67652472;1.3;_
2025-11-17T14:40:35.565 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:35.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:35.566 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:35.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:35.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:35.567 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.8326298, teldec = -24.256293
2025-11-17T14:40:35.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.8326298 -24.256293
2025-11-17T14:40:35.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.8326298 -24.256293
2025-11-17T14:40:35.567 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8326298 -24.256293
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8326298;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85238;2460997.02818944;14.67652472;1.3;_20.8072712461786 -24.3507167552609
2025-11-17T14:40:35.568 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8072712461786     dec_j2k = -24.3507167552609
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686434714544;171.162351965909;_
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686434714544;171.162351965909;_
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:35.568 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:35.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:35.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:35.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:35.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:35.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:35.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:35.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:35.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:35.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49029)
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:35.572 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:35.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:35.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:35.579 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:35.579 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:35.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:35.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:35.580 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:35.580 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:35.580 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:40:35.580 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02818941, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686434714544, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992721, telescope_ra=20.8326298, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.85238, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8072712461786, telescope_dec_j2k=-24.3507167552609, observability=1)
2025-11-17T14:40:35.580 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99513125419617 seconds ago
2025-11-17T14:40:43.359 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:43.359 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Status age = 7.779542922973633s
2025-11-17T14:40:43.359 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:43.359 [DEBUG] [Thread-68254 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:43.360 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 17;20.8347815;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85453;2460997.02827964;14.67867056;1.3;_
2025-11-17T14:40:43.361 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response 17;20.8347815;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85453;2460997.02827964;14.67867056;1.3;_
2025-11-17T14:40:43.362 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:43.362 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:43.362 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:43.363 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:43.363 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:43.363 [INFO] [Thread-68254 (handle)] [driver.py] [get_status()] Telra = 20.8347815, teldec = -24.256293
2025-11-17T14:40:43.363 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8347815 -24.256293
2025-11-17T14:40:43.363 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8347815 -24.256293
2025-11-17T14:40:43.363 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8347815 -24.256293
2025-11-17T14:40:43.364 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 17;20.8347815;-24.256293;50.108245;89.992721;50.08601;90.12017;17.85453;2460997.02827968;14.67867056;1.3;_20.8094243392184 -24.3507776566066
2025-11-17T14:40:43.364 [INFO] [Thread-68254 (handle)] [driver.py] [get_status()] ra_j2k = 20.8094243392184     dec_j2k = -24.3507776566066
2025-11-17T14:40:43.364 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:43.364 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:43.364 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162346601491;_
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162346601491;_
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:43.365 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:43.366 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:43.367 [DEBUG] [Thread-68254 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:43.367 [DEBUG] [Thread-68254 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:43.367 [DEBUG] [Thread-68254 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48683)
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:43.372 [DEBUG] [Thread-68254 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:43.379 [DEBUG] [Thread-68254 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:43.380 [INFO] [Thread-68254 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02827964, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992721, telescope_ra=20.8347815, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.85453, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8094243392184, telescope_dec_j2k=-24.3507776566066, observability=1)
2025-11-17T14:40:50.664 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:40:50
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.285053730010986s
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:40:50.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:40:50.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8368166;-24.256293;50.108245;89.99272;50.08601;90.12017;17.85657;2460997.02836419;14.6807;1.3;_
2025-11-17T14:40:50.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.8368166;-24.256293;50.108245;89.99272;50.08601;90.12017;17.85657;2460997.02836419;14.6807;1.3;_
2025-11-17T14:40:50.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:40:50.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:40:50.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:40:50.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:50.668 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:40:50.668 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.8368166, teldec = -24.256293
2025-11-17T14:40:50.668 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8368166 -24.256293
2025-11-17T14:40:50.668 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8368166 -24.256293
2025-11-17T14:40:50.668 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8368166 -24.256293
2025-11-17T14:40:50.669 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8368166;-24.256293;50.108245;89.99272;50.08601;90.12017;17.85657;2460997.02836422;14.6807;1.3;_20.8114607577007 -24.3508352304732
2025-11-17T14:40:50.669 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.8114607577007     dec_j2k = -24.3508352304732
2025-11-17T14:40:50.669 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:40:50.669 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:40:50.669 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10468623415483;171.162362694745;_
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10468623415483;171.162362694745;_
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:40:50.670 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:40:50.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:50.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:40:50.671 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43403)
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:40:50.675 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:40:50.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:40:50.682 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:40:50.683 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:40:50.683 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02836419, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468623415483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.99272, telescope_ra=20.8368166, telescope_dec=-24.256293, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.85657, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.8114607577007, telescope_dec_j2k=-24.3508352304732, observability=1)
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Status age = 10.755104303359985s
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:01.438 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:01.439 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:01.440 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 17;20.8398259;-24.256292;50.108245;89.99272;50.08601;90.12017;17.85958;2460997.02848889;14.68370111;1.3;_
2025-11-17T14:41:01.440 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response 17;20.8398259;-24.256292;50.108245;89.99272;50.08601;90.12017;17.85958;2460997.02848889;14.68370111;1.3;_
2025-11-17T14:41:01.440 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:01.440 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:01.440 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:01.441 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:01.441 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:01.441 [INFO] [Thread-68255 (handle)] [driver.py] [get_status()] Telra = 20.8398259, teldec = -24.256292
2025-11-17T14:41:01.441 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8398259 -24.256292
2025-11-17T14:41:01.441 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8398259 -24.256292
2025-11-17T14:41:01.442 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8398259 -24.256292
2025-11-17T14:41:01.442 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 17;20.8398448;-24.256292;50.108245;89.99272;50.08601;90.12017;17.8596;2460997.02848891;14.68372;1.3;_20.814472009148 -24.3509193163917
2025-11-17T14:41:01.443 [INFO] [Thread-68255 (handle)] [driver.py] [get_status()] ra_j2k = 20.814472009148     dec_j2k = -24.3509193163917
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 140;0.10468623415483;171.162362694745;_
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response 140;0.10468623415483;171.162362694745;_
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:01.443 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:01.444 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:01.444 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:01.444 [DEBUG] [Thread-68255 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:01.444 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:01.444 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:01.445 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:01.445 [DEBUG] [Thread-68255 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:01.445 [DEBUG] [Thread-68255 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:01.445 [DEBUG] [Thread-68255 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:01.451 [DEBUG] [Thread-68255 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37701)
2025-11-17T14:41:01.451 [DEBUG] [Thread-68255 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:01.452 [DEBUG] [Thread-68255 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:01.452 [DEBUG] [Thread-68255 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:01.452 [DEBUG] [Thread-68255 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:01.452 [DEBUG] [Thread-68255 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:01.459 [DEBUG] [Thread-68255 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:01.459 [INFO] [Thread-68255 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02848889, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468623415483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.99272, telescope_ra=20.8398259, telescope_dec=-24.256292, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.85958, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:40:01.872845', telescope_ra_j2k=20.814472009148, telescope_dec_j2k=-24.3509193163917, observability=1)
2025-11-17T14:41:02.018 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:02.018 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:02.018 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:02.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:02.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:02.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:02.019 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:02.020 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:02.020 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:02.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:02.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:02.021 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:02.021 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:41:02.021 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:02.021 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:02.021 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:02.021 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:02.021 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:41:02.022 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:41:02.023 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:03.023 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:03.023 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:03.023 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:03.023 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:03.023 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:41:03.024 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:03.025 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:03.026 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:03.026 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:03.026 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:03.026 [DEBUG] [ThreadPoolExecutor-2918_0] [payload.py] [to_registers()] [0]
2025-11-17T14:41:03.028 [DEBUG] [ThreadPoolExecutor-2918_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46411)
2025-11-17T14:41:03.028 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:03.029 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:03.029 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:41:03.029 [DEBUG] [ThreadPoolExecutor-2918_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:03.029 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:03.036 [DEBUG] [ThreadPoolExecutor-2918_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.505620241165161s
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:14.965 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:14.966 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:14.966 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:14.966 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8436082;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86336;2460997.02864545;14.68747306;1.3;_
2025-11-17T14:41:14.967 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.8436082;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86336;2460997.02864545;14.68747306;1.3;_
2025-11-17T14:41:14.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:14.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:14.968 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:14.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:14.969 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:14.969 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.8436082, teldec = -24.256292
2025-11-17T14:41:14.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8436082 -24.256292
2025-11-17T14:41:14.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8436082 -24.256292
2025-11-17T14:41:14.969 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8436082 -24.256292
2025-11-17T14:41:14.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8436082;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86336;2460997.02864549;14.68747306;1.3;_20.8182567644775 -24.3510261759438
2025-11-17T14:41:14.970 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.8182567644775     dec_j2k = -24.3510261759438
2025-11-17T14:41:14.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:14.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:14.970 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104686194042887;171.162362694745;_
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162362694745;_
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:14.971 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:14.972 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:14.973 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:14.973 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:14.973 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57323)
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:14.977 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:14.986 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:14.986 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02864545, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992719, telescope_ra=20.8436082, telescope_dec=-24.256292, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.86336, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8182567644775, telescope_dec_j2k=-24.3510261759438, observability=1)
2025-11-17T14:41:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.04562091827392578s
2025-11-17T14:41:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.04562091827392578
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Status age = 1.3077216148376465s
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:16.294 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 17;20.8439725;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86372;2460997.02866082;14.68783639;1.3;_
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response 17;20.8439725;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86372;2460997.02866082;14.68783639;1.3;_
2025-11-17T14:41:16.295 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:16.296 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:16.296 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:16.296 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:16.297 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:16.297 [INFO] [Thread-68256 (handle)] [driver.py] [get_status()] Telra = 20.8439725, teldec = -24.256292
2025-11-17T14:41:16.297 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8439725 -24.256292
2025-11-17T14:41:16.297 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8439725 -24.256292
2025-11-17T14:41:16.297 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8439725 -24.256292
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 17;20.8439725;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86372;2460997.02866086;14.68783639;1.3;_20.8186213011324 -24.3510364634983
2025-11-17T14:41:16.298 [INFO] [Thread-68256 (handle)] [driver.py] [get_status()] ra_j2k = 20.8186213011324     dec_j2k = -24.3510364634983
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 140;0.104686474826487;171.162357330327;_
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response 140;0.104686474826487;171.162357330327;_
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:16.298 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:16.299 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:16.300 [DEBUG] [Thread-68256 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:16.300 [DEBUG] [Thread-68256 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:16.300 [DEBUG] [Thread-68256 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47891)
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:16.307 [DEBUG] [Thread-68256 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:16.314 [DEBUG] [Thread-68256 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:16.315 [INFO] [Thread-68256 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02866082, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686474826487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992719, telescope_ra=20.8439725, telescope_dec=-24.256292, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.86372, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8186213011324, telescope_dec_j2k=-24.3510364634983, observability=1)
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Status age = 3.217705726623535s
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:19.532 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:19.533 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:19.533 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:19.533 [DEBUG] [Thread-68257 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:19.533 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:19.533 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 17;20.8448685;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86462;2460997.02869831;14.68873;1.3;_
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response 17;20.8448685;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86462;2460997.02869831;14.68873;1.3;_
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:19.534 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:19.535 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:19.535 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:19.535 [INFO] [Thread-68257 (handle)] [driver.py] [get_status()] Telra = 20.8448685, teldec = -24.256292
2025-11-17T14:41:19.535 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8448685 -24.256292
2025-11-17T14:41:19.535 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8448685 -24.256292
2025-11-17T14:41:19.535 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8448685 -24.256292
2025-11-17T14:41:19.536 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 17;20.8448685;-24.256292;50.108245;89.992719;50.08601;90.12017;17.86462;2460997.02869833;14.68873;1.3;_20.819517883311 -24.3510617622336
2025-11-17T14:41:19.536 [INFO] [Thread-68257 (handle)] [driver.py] [get_status()] ra_j2k = 20.819517883311     dec_j2k = -24.3510617622336
2025-11-17T14:41:19.536 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:19.536 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:19.536 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 140;0.104686595162315;171.162357330327;_
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response 140;0.104686595162315;171.162357330327;_
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:19.537 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:19.538 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:19.539 [DEBUG] [Thread-68257 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:19.539 [DEBUG] [Thread-68257 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:19.539 [DEBUG] [Thread-68257 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:19.541 [DEBUG] [Thread-68257 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45227)
2025-11-17T14:41:19.541 [DEBUG] [Thread-68257 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:19.541 [DEBUG] [Thread-68257 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:19.541 [DEBUG] [Thread-68257 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:19.542 [DEBUG] [Thread-68257 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:19.542 [DEBUG] [Thread-68257 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:19.548 [DEBUG] [Thread-68257 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:19.548 [DEBUG] [Thread-68257 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:19.549 [DEBUG] [Thread-68257 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:19.549 [INFO] [Thread-68257 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02869831, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686595162315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108245, telescope_az=89.992719, telescope_ra=20.8448685, telescope_dec=-24.256292, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.86462, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.819517883311, telescope_dec_j2k=-24.3510617622336, observability=1)
2025-11-17T14:41:28.036 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:28.036 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:28.036 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:28.036 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:28.037 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:41:28.038 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:41:28.039 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.09079384803772s
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:35.640 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:35.641 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:35.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.849355;-24.256292;50.108244;89.992719;50.08601;90.12017;17.86911;2460997.02888475;14.69320417;1.3;_
2025-11-17T14:41:35.642 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.849355;-24.256292;50.108244;89.992719;50.08601;90.12017;17.86911;2460997.02888475;14.69320417;1.3;_
2025-11-17T14:41:35.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:35.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:35.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:35.643 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:35.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:35.644 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.849355, teldec = -24.256292
2025-11-17T14:41:35.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.849355 -24.256292
2025-11-17T14:41:35.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.849355 -24.256292
2025-11-17T14:41:35.644 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.849355 -24.256292
2025-11-17T14:41:35.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.849355;-24.256292;50.108244;89.992719;50.08601;90.12017;17.86911;2460997.02888478;14.69320417;1.3;_20.8240073010595 -24.3511883619349
2025-11-17T14:41:35.645 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8240073010595     dec_j2k = -24.3511883619349
2025-11-17T14:41:35.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:35.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:35.645 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10468651493843;171.162362694745;_
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10468651493843;171.162362694745;_
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:35.646 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:35.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:35.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:35.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:35.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:35.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32819)
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:35.648 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:35.656 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:35.657 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:35.657 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:41:35.657 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02888475, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468651493843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992719, telescope_ra=20.849355, telescope_dec=-24.256292, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.86911, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8240073010595, telescope_dec_j2k=-24.3511883619349, observability=1)
2025-11-17T14:41:35.657 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99233651161194 seconds ago
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Status age = 1.9585964679718018s
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:37.615 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:37.616 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:37.617 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:37.617 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 17;20.8499059;-24.256291;50.108244;89.992719;50.08601;90.12017;17.86966;2460997.0289076;14.69375361;1.3;_
2025-11-17T14:41:37.617 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response 17;20.8499059;-24.256291;50.108244;89.992719;50.08601;90.12017;17.86966;2460997.0289076;14.69375361;1.3;_
2025-11-17T14:41:37.618 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:37.618 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:37.618 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:37.619 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:37.619 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:37.619 [INFO] [Thread-68258 (handle)] [driver.py] [get_status()] Telra = 20.8499059, teldec = -24.256291
2025-11-17T14:41:37.619 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8499059 -24.256291
2025-11-17T14:41:37.619 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8499059 -24.256291
2025-11-17T14:41:37.619 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8499059 -24.256291
2025-11-17T14:41:37.620 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 17;20.8499059;-24.256291;50.108244;89.992719;50.08601;90.12017;17.86966;2460997.02890764;14.69375361;1.3;_20.8245585597849 -24.351202898373
2025-11-17T14:41:37.620 [INFO] [Thread-68258 (handle)] [driver.py] [get_status()] ra_j2k = 20.8245585597849     dec_j2k = -24.351202898373
2025-11-17T14:41:37.620 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:37.620 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:37.620 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 140;0.104686635274258;171.162351965909;_
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response 140;0.104686635274258;171.162351965909;_
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:37.621 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:37.622 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:37.623 [DEBUG] [Thread-68258 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:37.623 [DEBUG] [Thread-68258 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:37.623 [DEBUG] [Thread-68258 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:37.624 [DEBUG] [Thread-68258 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46567)
2025-11-17T14:41:37.624 [DEBUG] [Thread-68258 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:37.625 [DEBUG] [Thread-68258 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:37.625 [DEBUG] [Thread-68258 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:37.625 [DEBUG] [Thread-68258 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:37.625 [DEBUG] [Thread-68258 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:37.632 [DEBUG] [Thread-68258 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:37.632 [INFO] [Thread-68258 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0289076, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686635274258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992719, telescope_ra=20.8499059, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.86966, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8245585597849, telescope_dec_j2k=-24.351202898373, observability=1)
2025-11-17T14:41:50.744 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:41:50
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.111985921859741s
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:50.744 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:50.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:50.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:50.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:50.746 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:50.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:50.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:50.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:50.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8535559;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87331;2460997.02905957;14.69739361;1.3;_
2025-11-17T14:41:50.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.8535559;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87331;2460997.02905957;14.69739361;1.3;_
2025-11-17T14:41:50.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:50.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:50.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:50.748 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:50.748 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:50.748 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.8535559, teldec = -24.256291
2025-11-17T14:41:50.748 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8535559 -24.256291
2025-11-17T14:41:50.748 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8535559 -24.256291
2025-11-17T14:41:50.748 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8535559 -24.256291
2025-11-17T14:41:50.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.8535559;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87331;2460997.0290596;14.69739361;1.3;_20.8282109371974 -24.3513057854536
2025-11-17T14:41:50.749 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.8282109371974     dec_j2k = -24.3513057854536
2025-11-17T14:41:50.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:50.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:50.749 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686675386201;171.162357330327;_
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686675386201;171.162357330327;_
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:50.750 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:50.751 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:50.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:50.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:50.752 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60511)
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:50.757 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:50.764 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:50.765 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:50.765 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02905957, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686675386201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992718, telescope_ra=20.8535559, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.87331, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8282109371974, telescope_dec_j2k=-24.3513057854536, observability=1)
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Status age = 4.909226894378662s
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:41:55.674 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:41:55.675 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:41:55.676 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 17;20.8549285;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87468;2460997.02911662;14.6987625;1.3;_
2025-11-17T14:41:55.676 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response 17;20.8549285;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87468;2460997.02911662;14.6987625;1.3;_
2025-11-17T14:41:55.676 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:41:55.676 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:41:55.676 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:41:55.677 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:55.677 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:41:55.677 [INFO] [Thread-68259 (handle)] [driver.py] [get_status()] Telra = 20.8549285, teldec = -24.256291
2025-11-17T14:41:55.677 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8549285 -24.256291
2025-11-17T14:41:55.677 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8549285 -24.256291
2025-11-17T14:41:55.677 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8549285 -24.256291
2025-11-17T14:41:55.678 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 17;20.8549285;-24.256291;50.108244;89.992718;50.08601;90.12017;17.87468;2460997.02911664;14.6987625;1.3;_20.8295844319852 -24.3513444544624
2025-11-17T14:41:55.678 [INFO] [Thread-68259 (handle)] [driver.py] [get_status()] ra_j2k = 20.8295844319852     dec_j2k = -24.3513444544624
2025-11-17T14:41:55.678 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 140;0.104686274266773;171.162351965909;_
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response 140;0.104686274266773;171.162351965909;_
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:41:55.679 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:55.680 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:55.680 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:55.680 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:55.680 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:55.681 [DEBUG] [Thread-68259 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:55.681 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:41:55.681 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:41:55.681 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:41:55.681 [DEBUG] [Thread-68259 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:55.682 [DEBUG] [Thread-68259 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:41:55.682 [DEBUG] [Thread-68259 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33599)
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:41:55.684 [DEBUG] [Thread-68259 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:41:55.692 [DEBUG] [Thread-68259 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:41:55.692 [INFO] [Thread-68259 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02911662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686274266773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992718, telescope_ra=20.8549285, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.87468, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:41:02.018144', telescope_ra_j2k=20.8295844319852, telescope_dec_j2k=-24.3513444544624, observability=1)
2025-11-17T14:42:02.161 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:02.161 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:02.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:02.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:02.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:02.162 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:02.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:02.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:02.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:02.163 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:02.163 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:42:02.163 [INFO] [ThreadPoolExecutor-2919_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:42:02.163 [INFO] [ThreadPoolExecutor-2919_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Status age = 18.145691633224487s
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:13.838 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:13.839 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 17;20.8599923;-24.256291;50.108244;89.992717;50.08601;90.12017;17.87974;2460997.02932685;14.7038125;1.3;_
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response 17;20.8599923;-24.256291;50.108244;89.992717;50.08601;90.12017;17.87974;2460997.02932685;14.7038125;1.3;_
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:13.840 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:13.841 [INFO] [Thread-68260 (handle)] [driver.py] [get_status()] Telra = 20.8599923, teldec = -24.256291
2025-11-17T14:42:13.841 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8599923 -24.256291
2025-11-17T14:42:13.841 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8599923 -24.256291
2025-11-17T14:42:13.841 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8599923 -24.256291
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 17;20.8599923;-24.256291;50.108244;89.992717;50.08601;90.12017;17.87974;2460997.02932688;14.7038125;1.3;_20.8346515365845 -24.3514870073616
2025-11-17T14:42:13.842 [INFO] [Thread-68260 (handle)] [driver.py] [get_status()] ra_j2k = 20.8346515365845     dec_j2k = -24.3514870073616
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 140;0.104686675386201;171.162362694745;_
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response 140;0.104686675386201;171.162362694745;_
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:13.842 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:13.843 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:13.844 [DEBUG] [Thread-68260 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:13.844 [DEBUG] [Thread-68260 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:13.844 [DEBUG] [Thread-68260 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:13.847 [DEBUG] [Thread-68260 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38919)
2025-11-17T14:42:13.848 [DEBUG] [Thread-68260 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:13.848 [DEBUG] [Thread-68260 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:13.848 [DEBUG] [Thread-68260 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:13.848 [DEBUG] [Thread-68260 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:13.848 [DEBUG] [Thread-68260 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:13.856 [DEBUG] [Thread-68260 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:42:13.856 [INFO] [Thread-68260 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02932685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686675386201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992717, telescope_ra=20.8599923, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.87974, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8346515365845, telescope_dec_j2k=-24.3514870073616, observability=1)
2025-11-17T14:42:14.073 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:14.073 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.2173922061920166s
2025-11-17T14:42:14.073 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2173922061920166
2025-11-17T14:42:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.1633939743041992s
2025-11-17T14:42:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8603296;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88008;2460997.02934052;14.70414889;1.3;_
2025-11-17T14:42:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.8603296;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88008;2460997.02934052;14.70414889;1.3;_
2025-11-17T14:42:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:15.022 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.8603296, teldec = -24.256291
2025-11-17T14:42:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8603296 -24.256291
2025-11-17T14:42:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8603296 -24.256291
2025-11-17T14:42:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8603296 -24.256291
2025-11-17T14:42:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8603296;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88008;2460997.02934054;14.70414889;1.3;_20.8349890569022 -24.3514964969494
2025-11-17T14:42:15.023 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.8349890569022     dec_j2k = -24.3514964969494
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686314378716;171.162357330327;_
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686314378716;171.162357330327;_
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38549)
2025-11-17T14:42:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:15.033 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:42:15.040 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02934052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686314378716, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992717, telescope_ra=20.8603296, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.88008, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8349890569022, telescope_dec_j2k=-24.3514964969494, observability=1)
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Status age = 1.3036205768585205s
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:16.344 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:16.345 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:16.346 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 17;20.860694;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88044;2460997.02935586;14.70451222;1.3;_
2025-11-17T14:42:16.346 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response 17;20.860694;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88044;2460997.02935586;14.70451222;1.3;_
2025-11-17T14:42:16.346 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:16.346 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:16.346 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:16.347 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:16.347 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:16.347 [INFO] [Thread-68261 (handle)] [driver.py] [get_status()] Telra = 20.860694, teldec = -24.256291
2025-11-17T14:42:16.347 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] UnCookCoordinates 20.860694 -24.256291
2025-11-17T14:42:16.347 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.860694 -24.256291
2025-11-17T14:42:16.348 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.860694 -24.256291
2025-11-17T14:42:16.348 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 17;20.860694;-24.256291;50.108244;89.992717;50.08601;90.12017;17.88044;2460997.02935588;14.70451222;1.3;_20.8353536949488 -24.3515067481436
2025-11-17T14:42:16.349 [INFO] [Thread-68261 (handle)] [driver.py] [get_status()] ra_j2k = 20.8353536949488     dec_j2k = -24.3515067481436
2025-11-17T14:42:16.349 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:16.349 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:16.349 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 140;0.104687156729514;171.162362694745;_
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response 140;0.104687156729514;171.162362694745;_
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:16.350 [DEBUG] [Thread-68261 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:16.351 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:16.351 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:16.351 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:16.351 [DEBUG] [Thread-68261 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:16.352 [DEBUG] [Thread-68261 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:16.352 [DEBUG] [Thread-68261 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:16.352 [DEBUG] [Thread-68261 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45761)
2025-11-17T14:42:16.353 [DEBUG] [Thread-68261 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:16.353 [DEBUG] [Thread-68261 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:16.353 [DEBUG] [Thread-68261 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:16.353 [DEBUG] [Thread-68261 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:16.353 [DEBUG] [Thread-68261 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:16.360 [DEBUG] [Thread-68261 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:42:16.360 [INFO] [Thread-68261 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02935586, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687156729514, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992717, telescope_ra=20.860694, telescope_dec=-24.256291, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.88044, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8353536949488, telescope_dec_j2k=-24.3515067481436, observability=1)
2025-11-17T14:42:23.039 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.039 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.039 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:23.039 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:23.039 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:42:23.040 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:23.041 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:23.042 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:42:23.043 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:23.044 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Park
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:42:23.045 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:42:23.046 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 29;20.8625616;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88231;2460997.0294334;14.70637472;1.3;_Park Command Successful
2025-11-17T14:42:24.046 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:42:24.046 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:42:24.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:42:24.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:42:24.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:42:25.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:42:25.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:42:25.047 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:42:25.048 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:42:25.048 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:42:26.048 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:42:26.048 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:42:26.048 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:42:26.049 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:42:26.049 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:42:27.049 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:42:27.049 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:42:27.049 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:27.050 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:42:27.051 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:42:27.052 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:28.052 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:28.052 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:28.052 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:28.052 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:28.052 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:42:28.053 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:42:28.054 [DEBUG] [ThreadPoolExecutor-2918_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:28.054 [INFO] [ThreadPoolExecutor-2918_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Status age = 15.55287504196167s
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:31.913 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:31.914 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:31.915 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 17;20.8650355;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88479;2460997.02953605;14.70884194;1.3;_
2025-11-17T14:42:31.915 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response 17;20.8650355;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88479;2460997.02953605;14.70884194;1.3;_
2025-11-17T14:42:31.915 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:31.915 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:31.915 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:31.916 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:31.916 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:31.916 [INFO] [Thread-68262 (handle)] [driver.py] [get_status()] Telra = 20.8650355, teldec = -24.25629
2025-11-17T14:42:31.916 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8650355 -24.25629
2025-11-17T14:42:31.916 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8650355 -24.25629
2025-11-17T14:42:31.916 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8650355 -24.25629
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 17;20.8650355;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88479;2460997.02953608;14.70884194;1.3;_20.8396980334312 -24.3516278161619
2025-11-17T14:42:31.917 [INFO] [Thread-68262 (handle)] [driver.py] [get_status()] ra_j2k = 20.8396980334312     dec_j2k = -24.3516278161619
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 140;0.104686474826487;171.162351965909;_
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response 140;0.104686474826487;171.162351965909;_
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:31.917 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:31.918 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:31.919 [DEBUG] [Thread-68262 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:31.919 [DEBUG] [Thread-68262 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:31.919 [DEBUG] [Thread-68262 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38725)
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:31.926 [DEBUG] [Thread-68262 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:31.933 [DEBUG] [Thread-68262 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:42:31.933 [INFO] [Thread-68262 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02953605, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686474826487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992717, telescope_ra=20.8650355, telescope_dec=-24.25629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.88479, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8396980334312, telescope_dec_j2k=-24.3516278161619, observability=1)
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.783803939819336s
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:35.717 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:35.718 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:35.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8661018;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88585;2460997.02958008;14.70990528;1.3;_
2025-11-17T14:42:35.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.8661018;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88585;2460997.02958008;14.70990528;1.3;_
2025-11-17T14:42:35.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:35.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:35.719 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:35.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:35.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:35.720 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.8661018, teldec = -24.25629
2025-11-17T14:42:35.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.8661018 -24.25629
2025-11-17T14:42:35.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.8661018 -24.25629
2025-11-17T14:42:35.720 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8661018 -24.25629
2025-11-17T14:42:35.721 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8661018;-24.25629;50.108244;89.992717;50.08601;90.12017;17.88585;2460997.0295801;14.70990528;1.3;_20.8407650311699 -24.3516577782127
2025-11-17T14:42:35.721 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8407650311699     dec_j2k = -24.3516577782127
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686715498144;171.162362694745;_
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686715498144;171.162362694745;_
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:35.722 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:35.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:35.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:35.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:35.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:35.723 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:35.724 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:35.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:35.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:35.725 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45921)
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:35.730 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:35.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:35.737 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:35.738 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:42:35.738 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02958008, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686715498144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992717, telescope_ra=20.8661018, telescope_dec=-24.25629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.88585, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8407650311699, telescope_dec_j2k=-24.3516577782127, observability=1)
2025-11-17T14:42:35.738 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99409365653992 seconds ago
2025-11-17T14:42:49.970 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:49.970 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Status age = 14.232561111450195s
2025-11-17T14:42:49.970 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:42:49.971 [DEBUG] [Thread-68263 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:42:49.971 [DEBUG] [Thread-68263 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:42:49.971 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:42:49.971 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:42:49.971 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:42:49.972 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:42:49.973 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 17;20.8700509;-24.25629;50.108244;89.992716;50.08601;90.12017;17.8898;2460997.02974506;14.71384361;1.3;_
2025-11-17T14:42:49.973 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response 17;20.8700509;-24.25629;50.108244;89.992716;50.08601;90.12017;17.8898;2460997.02974506;14.71384361;1.3;_
2025-11-17T14:42:49.973 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:42:49.973 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:42:49.973 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:42:49.974 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:49.974 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:42:49.974 [INFO] [Thread-68263 (handle)] [driver.py] [get_status()] Telra = 20.8700509, teldec = -24.25629
2025-11-17T14:42:49.974 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8700509 -24.25629
2025-11-17T14:42:49.974 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8700509 -24.25629
2025-11-17T14:42:49.974 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8700509 -24.25629
2025-11-17T14:42:49.975 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 17;20.8700509;-24.25629;50.108244;89.992716;50.08601;90.12017;17.8898;2460997.02974508;14.71384361;1.3;_20.8447167174325 -24.3517686803262
2025-11-17T14:42:49.975 [INFO] [Thread-68263 (handle)] [driver.py] [get_status()] ra_j2k = 20.8447167174325     dec_j2k = -24.3517686803262
2025-11-17T14:42:49.975 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:42:49.975 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 140;0.104686835833972;171.162357330327;_
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response 140;0.104686835833972;171.162357330327;_
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:49.976 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:42:49.977 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:42:49.978 [DEBUG] [Thread-68263 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:49.978 [DEBUG] [Thread-68263 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:42:49.978 [DEBUG] [Thread-68263 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56365)
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:42:49.980 [DEBUG] [Thread-68263 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:42:49.988 [DEBUG] [Thread-68263 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:42:49.988 [INFO] [Thread-68263 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.02974506, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686835833972, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992716, telescope_ra=20.8700509, telescope_dec=-24.25629, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.8898, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:42:02.160704', telescope_ra_j2k=20.8447167174325, telescope_dec_j2k=-24.3517686803262, observability=1)
2025-11-17T14:42:50.825 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:42:50
2025-11-17T14:42:50.825 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:42:50.825 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.8371067047119141s
2025-11-17T14:42:50.825 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8371067047119141
2025-11-17T14:43:02.302 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:02.302 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:02.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:02.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:02.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:02.303 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:02.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:02.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:02.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:02.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:02.304 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:43:02.304 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:02.304 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:43:02.305 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:43:02.306 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:03.306 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:03.306 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:03.306 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:03.306 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:43:03.307 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:03.308 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:03.309 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:03.309 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:03.309 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:03.310 [DEBUG] [ThreadPoolExecutor-2920_0] [payload.py] [to_registers()] [0]
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46515)
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:03.315 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:03.322 [DEBUG] [ThreadPoolExecutor-2920_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:08.095 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Status age = 18.107513189315796s
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:08.096 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:08.097 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 17;20.8751022;-24.256289;50.108244;89.992716;50.08601;90.12017;17.89485;2460997.02995483;14.71888111;1.3;_
2025-11-17T14:43:08.097 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response 17;20.8751022;-24.256289;50.108244;89.992716;50.08601;90.12017;17.89485;2460997.02995483;14.71888111;1.3;_
2025-11-17T14:43:08.097 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:08.097 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:08.097 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:08.098 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:08.098 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:08.098 [INFO] [Thread-68264 (handle)] [driver.py] [get_status()] Telra = 20.8751022, teldec = -24.256289
2025-11-17T14:43:08.098 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8751022 -24.256289
2025-11-17T14:43:08.098 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8751022 -24.256289
2025-11-17T14:43:08.098 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8751022 -24.256289
2025-11-17T14:43:08.099 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 17;20.8751022;-24.256289;50.108244;89.992716;50.08601;90.12017;17.89485;2460997.02995485;14.71888111;1.3;_20.8497713306062 -24.3519093885067
2025-11-17T14:43:08.099 [INFO] [Thread-68264 (handle)] [driver.py] [get_status()] ra_j2k = 20.8497713306062     dec_j2k = -24.3519093885067
2025-11-17T14:43:08.099 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:08.099 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:08.099 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:08.100 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 140;0.104687116617572;171.162362694745;_
2025-11-17T14:43:08.100 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response 140;0.104687116617572;171.162362694745;_
2025-11-17T14:43:08.100 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:08.100 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:08.100 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:08.101 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:08.101 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:08.101 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:08.102 [DEBUG] [Thread-68264 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:08.102 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:08.102 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:08.102 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:08.103 [DEBUG] [Thread-68264 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:08.103 [DEBUG] [Thread-68264 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:08.103 [DEBUG] [Thread-68264 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50619)
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:08.108 [DEBUG] [Thread-68264 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:08.115 [DEBUG] [Thread-68264 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:08.116 [DEBUG] [Thread-68264 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:08.116 [INFO] [Thread-68264 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.02995483, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687116617572, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108244, telescope_az=89.992716, telescope_ra=20.8751022, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.89485, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8497713306062, telescope_dec_j2k=-24.3519093885067, observability=1)
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.045733690261841s
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:13.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:13.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:13.163 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8765216;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89627;2460997.03001346;14.72029667;1.3;_
2025-11-17T14:43:13.163 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.8765216;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89627;2460997.03001346;14.72029667;1.3;_
2025-11-17T14:43:13.163 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:13.163 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:13.163 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:13.164 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:13.164 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:13.164 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.8765216, teldec = -24.256289
2025-11-17T14:43:13.164 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8765216 -24.256289
2025-11-17T14:43:13.164 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8765216 -24.256289
2025-11-17T14:43:13.164 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8765216 -24.256289
2025-11-17T14:43:13.165 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8765216;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89627;2460997.03001348;14.72029667;1.3;_20.8511916625512 -24.3519491783245
2025-11-17T14:43:13.165 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.8511916625512     dec_j2k = -24.3519491783245
2025-11-17T14:43:13.165 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:13.165 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:13.166 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10468595337123;171.162357330327;_
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10468595337123;171.162357330327;_
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:13.167 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:13.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:13.168 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:43:13.168 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:43:13.168 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34729)
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:13.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:13.180 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:13.181 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03001346, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468595337123, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992715, telescope_ra=20.8765216, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.89627, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8511916625512, telescope_dec_j2k=-24.3519491783245, observability=1)
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.8412866592407227s
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8770444;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89679;2460997.030035;14.72081806;1.3;_
2025-11-17T14:43:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.8770444;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89679;2460997.030035;14.72081806;1.3;_
2025-11-17T14:43:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:15.025 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.8770444, teldec = -24.256289
2025-11-17T14:43:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8770444 -24.256289
2025-11-17T14:43:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8770444 -24.256289
2025-11-17T14:43:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8770444 -24.256289
2025-11-17T14:43:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8770444;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89679;2460997.03003502;14.72081806;1.3;_20.8517148059195 -24.3519638306065
2025-11-17T14:43:15.026 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.8517148059195     dec_j2k = -24.3519638306065
2025-11-17T14:43:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686875945915;171.162346601491;_
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686875945915;171.162346601491;_
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60853)
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:15.040 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.030035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686875945915, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992715, telescope_ra=20.8770444, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.89679, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8517148059195, telescope_dec_j2k=-24.3519638306065, observability=1)
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Status age = 1.3529984951019287s
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:16.393 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 17;20.8774088;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89716;2460997.03005086;14.72118139;1.3;_
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response 17;20.8774088;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89716;2460997.03005086;14.72118139;1.3;_
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:16.394 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:16.395 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:16.395 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:16.395 [INFO] [Thread-68265 (handle)] [driver.py] [get_status()] Telra = 20.8774088, teldec = -24.256289
2025-11-17T14:43:16.395 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8774088 -24.256289
2025-11-17T14:43:16.395 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8774088 -24.256289
2025-11-17T14:43:16.395 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8774088 -24.256289
2025-11-17T14:43:16.396 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 17;20.8774088;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89716;2460997.03005088;14.72118139;1.3;_20.8520794452878 -24.3519740424353
2025-11-17T14:43:16.396 [INFO] [Thread-68265 (handle)] [driver.py] [get_status()] ra_j2k = 20.8520794452878     dec_j2k = -24.3519740424353
2025-11-17T14:43:16.396 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:16.396 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:16.396 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 140;0.104686434714544;171.162357330327;_
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response 140;0.104686434714544;171.162357330327;_
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:16.397 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:16.398 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:16.399 [DEBUG] [Thread-68265 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:16.399 [DEBUG] [Thread-68265 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:16.399 [DEBUG] [Thread-68265 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40711)
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:16.406 [DEBUG] [Thread-68265 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:16.414 [DEBUG] [Thread-68265 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:16.415 [DEBUG] [Thread-68265 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:16.415 [DEBUG] [Thread-68265 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:16.415 [DEBUG] [Thread-68265 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:16.415 [INFO] [Thread-68265 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03005086, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686434714544, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992715, telescope_ra=20.8774088, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.89716, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8520794452878, telescope_dec_j2k=-24.3519740424353, observability=1)
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Status age = 9.75214433670044s
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:26.167 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:26.168 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:26.169 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 17;20.8801393;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89989;2460997.03016399;14.72390444;1.3;_
2025-11-17T14:43:26.169 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response 17;20.8801393;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89989;2460997.03016399;14.72390444;1.3;_
2025-11-17T14:43:26.169 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:26.169 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:26.169 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:26.170 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:26.170 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:26.170 [INFO] [Thread-68266 (handle)] [driver.py] [get_status()] Telra = 20.8801393, teldec = -24.256289
2025-11-17T14:43:26.170 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8801393 -24.256289
2025-11-17T14:43:26.170 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8801393 -24.256289
2025-11-17T14:43:26.170 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8801393 -24.256289
2025-11-17T14:43:26.171 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 17;20.8801393;-24.256289;50.108243;89.992715;50.08601;90.12017;17.89989;2460997.03016402;14.72390444;1.3;_20.8548117398226 -24.3520505337075
2025-11-17T14:43:26.171 [INFO] [Thread-68266 (handle)] [driver.py] [get_status()] ra_j2k = 20.8548117398226     dec_j2k = -24.3520505337075
2025-11-17T14:43:26.171 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:26.171 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:26.171 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 140;0.104686835833972;171.162362694745;_
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response 140;0.104686835833972;171.162362694745;_
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:26.172 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:26.173 [DEBUG] [Thread-68266 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40493)
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:26.176 [DEBUG] [Thread-68266 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:26.183 [DEBUG] [Thread-68266 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:26.183 [INFO] [Thread-68266 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03016399, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686835833972, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992715, telescope_ra=20.8801393, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.89989, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8548117398226, telescope_dec_j2k=-24.3520505337075, observability=1)
2025-11-17T14:43:28.322 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:28.323 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:28.324 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:43:28.325 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.614506721496582s
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:35.798 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:35.799 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:35.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8828194;-24.256289;50.108243;89.992715;50.08601;90.12017;17.90257;2460997.03027546;14.72657722;1.3;_
2025-11-17T14:43:35.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.8828194;-24.256289;50.108243;89.992715;50.08601;90.12017;17.90257;2460997.03027546;14.72657722;1.3;_
2025-11-17T14:43:35.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:35.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:35.800 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:35.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:35.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:35.801 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.8828194, teldec = -24.256289
2025-11-17T14:43:35.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.8828194 -24.256289
2025-11-17T14:43:35.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.8828194 -24.256289
2025-11-17T14:43:35.801 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8828194 -24.256289
2025-11-17T14:43:35.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.8828194;-24.256289;50.108243;89.992715;50.08601;90.12017;17.90257;2460997.03027549;14.72657722;1.3;_20.8574936028032 -24.3521255660745
2025-11-17T14:43:35.802 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8574936028032     dec_j2k = -24.3521255660745
2025-11-17T14:43:35.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:35.802 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686835833972;171.162351965909;_
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686835833972;171.162351965909;_
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:35.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:35.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:35.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:35.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:35.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:35.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:35.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:35.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:35.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:35.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56477)
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:35.809 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:35.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:35.816 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:35.816 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:35.817 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:43:35.817 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03027546, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686835833972, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992715, telescope_ra=20.8828194, telescope_dec=-24.256289, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.90257, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8574936028032, telescope_dec_j2k=-24.3521255660745, observability=1)
2025-11-17T14:43:35.817 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99221444129944 seconds ago
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Status age = 8.41896390914917s
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:44.236 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:44.237 [DEBUG] [Thread-68267 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:44.237 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:44.237 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:44.237 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:44.237 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:44.238 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 17;20.8851808;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90493;2460997.03037312;14.72893222;1.3;_
2025-11-17T14:43:44.238 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response 17;20.8851808;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90493;2460997.03037312;14.72893222;1.3;_
2025-11-17T14:43:44.238 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:44.238 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:44.238 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:44.239 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:44.239 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:44.239 [INFO] [Thread-68267 (handle)] [driver.py] [get_status()] Telra = 20.8851808, teldec = -24.256288
2025-11-17T14:43:44.239 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8851808 -24.256288
2025-11-17T14:43:44.239 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8851808 -24.256288
2025-11-17T14:43:44.239 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8851808 -24.256288
2025-11-17T14:43:44.240 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 17;20.8851808;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90493;2460997.03037315;14.72893222;1.3;_20.8598565575792 -24.35219063755
2025-11-17T14:43:44.240 [INFO] [Thread-68267 (handle)] [driver.py] [get_status()] ra_j2k = 20.8598565575792     dec_j2k = -24.35219063755
2025-11-17T14:43:44.240 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:44.240 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:44.240 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 140;0.104686194042887;171.162368059163;_
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162368059163;_
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:44.241 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:44.242 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:44.243 [DEBUG] [Thread-68267 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:44.243 [DEBUG] [Thread-68267 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:44.243 [DEBUG] [Thread-68267 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40833)
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:44.244 [DEBUG] [Thread-68267 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:44.251 [DEBUG] [Thread-68267 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:44.252 [DEBUG] [Thread-68267 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:44.252 [DEBUG] [Thread-68267 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:44.252 [INFO] [Thread-68267 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03037312, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992714, telescope_ra=20.8851808, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.90493, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8598565575792, telescope_dec_j2k=-24.35219063755, observability=1)
2025-11-17T14:43:50.886 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:43:50
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.634359836578369s
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:43:50.886 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:43:50.887 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:43:50.888 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:43:50.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.88702;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90677;2460997.0304501;14.73076639;1.3;_
2025-11-17T14:43:50.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.88702;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90677;2460997.0304501;14.73076639;1.3;_
2025-11-17T14:43:50.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:43:50.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:43:50.889 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:43:50.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:50.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:43:50.890 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.88702, teldec = -24.256288
2025-11-17T14:43:50.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.88702 -24.256288
2025-11-17T14:43:50.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.88702 -24.256288
2025-11-17T14:43:50.890 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.88702 -24.256288
2025-11-17T14:43:50.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.88702;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90677;2460997.03045013;14.73076639;1.3;_20.8616969692509 -24.3522420728174
2025-11-17T14:43:50.891 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.8616969692509     dec_j2k = -24.3522420728174
2025-11-17T14:43:50.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:43:50.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:43:50.891 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686274266773;171.162357330327;_
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686274266773;171.162357330327;_
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:43:50.892 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:43:50.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:50.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:43:50.893 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36555)
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:43:50.896 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:43:50.903 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:43:50.903 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:50.903 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:43:50.903 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:43:50.903 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:43:50.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:43:50.904 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:43:50.904 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:43:50.904 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:43:50.904 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0304501, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686274266773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992714, telescope_ra=20.88702, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.90677, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8616969692509, telescope_dec_j2k=-24.3522420728174, observability=1)
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Status age = 11.43961763381958s
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:02.343 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:02.344 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:02.348 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 17;20.8902043;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90995;2460997.03058272;14.73394194;1.3;_
2025-11-17T14:44:02.348 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response 17;20.8902043;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90995;2460997.03058272;14.73394194;1.3;_
2025-11-17T14:44:02.348 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:02.348 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:02.348 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:02.349 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:02.349 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:02.349 [INFO] [Thread-68268 (handle)] [driver.py] [get_status()] Telra = 20.8902043, teldec = -24.256288
2025-11-17T14:44:02.349 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8902043 -24.256288
2025-11-17T14:44:02.349 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8902043 -24.256288
2025-11-17T14:44:02.349 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8902043 -24.256288
2025-11-17T14:44:02.350 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 17;20.8902043;-24.256288;50.108243;89.992714;50.08601;90.12017;17.90995;2460997.03058275;14.73394194;1.3;_20.8648833688082 -24.3523310733192
2025-11-17T14:44:02.350 [INFO] [Thread-68268 (handle)] [driver.py] [get_status()] ra_j2k = 20.8648833688082     dec_j2k = -24.3523310733192
2025-11-17T14:44:02.350 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:02.350 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:02.350 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 140;0.104686795722029;171.162346601491;_
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response 140;0.104686795722029;171.162346601491;_
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:02.351 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:02.352 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:02.353 [DEBUG] [Thread-68268 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:02.353 [DEBUG] [Thread-68268 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:02.353 [DEBUG] [Thread-68268 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58121)
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:02.357 [DEBUG] [Thread-68268 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:02.364 [DEBUG] [Thread-68268 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:02.364 [INFO] [Thread-68268 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03058272, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686795722029, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992714, telescope_ra=20.8902043, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.90995, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:43:02.302049', telescope_ra_j2k=20.8648833688082, telescope_dec_j2k=-24.3523310733192, observability=1)
2025-11-17T14:44:02.444 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:02.444 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:02.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:02.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:02.445 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:02.445 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:02.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:02.447 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:44:02.447 [INFO] [ThreadPoolExecutor-2921_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:44:02.447 [INFO] [ThreadPoolExecutor-2921_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:44:12.269 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:12.269 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.905258178710938s
2025-11-17T14:44:12.269 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:12.269 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:12.270 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:12.270 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:12.270 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:12.270 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8929871;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91274;2460997.03069758;14.73671722;1.3;_
2025-11-17T14:44:12.271 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.8929871;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91274;2460997.03069758;14.73671722;1.3;_
2025-11-17T14:44:12.272 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:12.272 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:12.272 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:12.273 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:12.273 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:12.273 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.8929871, teldec = -24.256288
2025-11-17T14:44:12.273 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8929871 -24.256288
2025-11-17T14:44:12.273 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8929871 -24.256288
2025-11-17T14:44:12.273 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8929871 -24.256288
2025-11-17T14:44:12.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.8929871;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91274;2460997.03069762;14.73671722;1.3;_20.8676680054315 -24.3524087979833
2025-11-17T14:44:12.274 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.8676680054315     dec_j2k = -24.3524087979833
2025-11-17T14:44:12.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:12.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:12.274 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104686595162315;171.162357330327;_
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104686595162315;171.162357330327;_
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:12.275 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:12.276 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:12.277 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:12.277 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:12.277 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:12.282 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40729)
2025-11-17T14:44:12.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:12.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:12.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:12.283 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:12.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:12.290 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:12.290 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03069758, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686595162315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992713, telescope_ra=20.8929871, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.91274, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8676680054315, telescope_dec_j2k=-24.3524087979833, observability=1)
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.7355759143829346s
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8937431;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91349;2460997.03072949;14.73747111;1.3;_
2025-11-17T14:44:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.8937431;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91349;2460997.03072949;14.73747111;1.3;_
2025-11-17T14:44:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:15.029 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.8937431, teldec = -24.256288
2025-11-17T14:44:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8937431 -24.256288
2025-11-17T14:44:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8937431 -24.256288
2025-11-17T14:44:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8937431 -24.256288
2025-11-17T14:44:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.8937431;-24.256288;50.108243;89.992713;50.08601;90.12017;17.91349;2460997.03072951;14.73747111;1.3;_20.8684245046737 -24.3524299046456
2025-11-17T14:44:15.030 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.8684245046737     dec_j2k = -24.3524299046456
2025-11-17T14:44:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686274266773;171.162357330327;_
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686274266773;171.162357330327;_
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58949)
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:15.043 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:15.044 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03072949, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686274266773, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992713, telescope_ra=20.8937431, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.91349, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8684245046737, telescope_dec_j2k=-24.3524299046456, observability=1)
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Status age = 1.400266408920288s
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:16.444 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:16.445 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:16.445 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 17;20.8941539;-24.256288;50.108243;89.992713;50.08601;90.12017;17.9139;2460997.03074589;14.73788083;1.3;_
2025-11-17T14:44:16.446 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response 17;20.8941539;-24.256288;50.108243;89.992713;50.08601;90.12017;17.9139;2460997.03074589;14.73788083;1.3;_
2025-11-17T14:44:16.446 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:16.446 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:16.446 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:16.447 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:16.447 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:16.447 [INFO] [Thread-68269 (handle)] [driver.py] [get_status()] Telra = 20.8941539, teldec = -24.256288
2025-11-17T14:44:16.447 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8941539 -24.256288
2025-11-17T14:44:16.447 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8941539 -24.256288
2025-11-17T14:44:16.447 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8941539 -24.256288
2025-11-17T14:44:16.448 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 17;20.8941539;-24.256288;50.108243;89.992713;50.08601;90.12017;17.9139;2460997.03074593;14.73788083;1.3;_20.8688355760067 -24.3524413721552
2025-11-17T14:44:16.448 [INFO] [Thread-68269 (handle)] [driver.py] [get_status()] ra_j2k = 20.8688355760067     dec_j2k = -24.3524413721552
2025-11-17T14:44:16.448 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:16.448 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:16.448 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 140;0.104686635274258;171.162351965909;_
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response 140;0.104686635274258;171.162351965909;_
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:16.449 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:16.450 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:16.451 [DEBUG] [Thread-68269 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:16.451 [DEBUG] [Thread-68269 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:16.451 [DEBUG] [Thread-68269 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49505)
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:16.455 [DEBUG] [Thread-68269 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:16.463 [DEBUG] [Thread-68269 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:16.463 [INFO] [Thread-68269 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03074589, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686635274258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992713, telescope_ra=20.8941539, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9139, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8688355760067, telescope_dec_j2k=-24.3524413721552, observability=1)
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Status age = 3.944767713546753s
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:20.408 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:20.409 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:20.410 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 17;20.8952464;-24.256288;50.108243;89.992713;50.08601;90.12017;17.915;2460997.03079178;14.73897028;1.3;_
2025-11-17T14:44:20.410 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response 17;20.8952464;-24.256288;50.108243;89.992713;50.08601;90.12017;17.915;2460997.03079178;14.73897028;1.3;_
2025-11-17T14:44:20.410 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:20.410 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:20.410 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:20.411 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:20.411 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:20.411 [INFO] [Thread-68270 (handle)] [driver.py] [get_status()] Telra = 20.8952464, teldec = -24.256288
2025-11-17T14:44:20.411 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] UnCookCoordinates 20.8952464 -24.256288
2025-11-17T14:44:20.411 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.8952464 -24.256288
2025-11-17T14:44:20.411 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.8952464 -24.256288
2025-11-17T14:44:20.412 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 17;20.8952464;-24.256288;50.108243;89.992713;50.08601;90.12017;17.915;2460997.03079181;14.73897028;1.3;_20.8699287977793 -24.3524718640186
2025-11-17T14:44:20.412 [INFO] [Thread-68270 (handle)] [driver.py] [get_status()] ra_j2k = 20.8699287977793     dec_j2k = -24.3524718640186
2025-11-17T14:44:20.412 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:20.412 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:20.412 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 140;0.104686715498144;171.162368059163;_
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response 140;0.104686715498144;171.162368059163;_
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:20.413 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:20.414 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:20.415 [DEBUG] [Thread-68270 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:20.415 [DEBUG] [Thread-68270 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:20.415 [DEBUG] [Thread-68270 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58155)
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:20.418 [DEBUG] [Thread-68270 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:20.426 [DEBUG] [Thread-68270 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:20.426 [INFO] [Thread-68270 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03079178, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686715498144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992713, telescope_ra=20.8952464, telescope_dec=-24.256288, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.915, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8699287977793, telescope_dec_j2k=-24.3524718640186, observability=1)
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:44:23.326 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:23.327 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:23.328 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:23.328 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.328 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:23.328 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:23.329 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:44:23.330 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:23.331 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Park
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:44:23.332 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:44:23.333 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 29;20.8960772;-24.256287;50.108243;89.992713;50.08601;90.12017;17.91583;2460997.03082561;14.73979889;1.3;_Park Command Successful
2025-11-17T14:44:24.333 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:44:24.333 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:44:24.333 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:44:24.333 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:44:24.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:44:25.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:44:25.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:44:25.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:44:25.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:44:25.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:44:26.334 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:44:26.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:44:26.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:44:26.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:44:26.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:44:27.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:44:27.335 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:44:27.336 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:27.337 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:44:27.338 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:44:27.339 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:28.339 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:28.339 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:28.339 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:28.339 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:28.339 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:44:28.340 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:44:28.341 [DEBUG] [ThreadPoolExecutor-2920_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:28.341 [INFO] [ThreadPoolExecutor-2920_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.451220750808716s
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:35.877 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:35.878 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.899559;-24.256287;50.108243;89.992712;50.08601;90.12017;17.91931;2460997.03097082;14.74327111;1.3;_
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.899559;-24.256287;50.108243;89.992712;50.08601;90.12017;17.91931;2460997.03097082;14.74327111;1.3;_
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:35.879 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:35.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:35.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:35.880 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.899559, teldec = -24.256287
2025-11-17T14:44:35.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.899559 -24.256287
2025-11-17T14:44:35.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.899559 -24.256287
2025-11-17T14:44:35.880 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.899559 -24.256287
2025-11-17T14:44:35.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.899559;-24.256287;50.108243;89.992712;50.08601;90.12017;17.91931;2460997.03097084;14.74327111;1.3;_20.8742442496115 -24.3525911535839
2025-11-17T14:44:35.881 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8742442496115     dec_j2k = -24.3525911535839
2025-11-17T14:44:35.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:35.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:35.881 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:35.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686595162315;171.162351965909;_
2025-11-17T14:44:35.882 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686595162315;171.162351965909;_
2025-11-17T14:44:35.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:35.883 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:35.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:35.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:35.884 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37199)
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:35.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:35.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:35.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:35.892 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:35.892 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:35.892 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:35.893 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:35.893 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:35.893 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:35.893 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:44:35.893 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03097082, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686595162315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992712, telescope_ra=20.899559, telescope_dec=-24.256287, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.91931, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8742442496115, telescope_dec_j2k=-24.3525911535839, observability=1)
2025-11-17T14:44:35.893 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00698399543762 seconds ago
2025-11-17T14:44:38.471 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:38.471 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Status age = 2.578540325164795s
2025-11-17T14:44:38.471 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:38.471 [DEBUG] [Thread-68271 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:38.471 [DEBUG] [Thread-68271 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:38.472 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 17;20.9002879;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92004;2460997.03100084;14.74399806;1.3;_
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response 17;20.9002879;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92004;2460997.03100084;14.74399806;1.3;_
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:38.473 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:38.474 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:38.474 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:38.474 [INFO] [Thread-68271 (handle)] [driver.py] [get_status()] Telra = 20.9002879, teldec = -24.256287
2025-11-17T14:44:38.474 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9002879 -24.256287
2025-11-17T14:44:38.475 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9002879 -24.256287
2025-11-17T14:44:38.475 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9002879 -24.256287
2025-11-17T14:44:38.475 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 17;20.9002879;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92004;2460997.03100087;14.74399806;1.3;_20.8749736319888 -24.352611472494
2025-11-17T14:44:38.476 [INFO] [Thread-68271 (handle)] [driver.py] [get_status()] ra_j2k = 20.8749736319888     dec_j2k = -24.352611472494
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 140;0.10468651493843;171.162362694745;_
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response 140;0.10468651493843;171.162362694745;_
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:38.476 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:38.477 [DEBUG] [Thread-68271 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36943)
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:38.480 [DEBUG] [Thread-68271 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:38.487 [DEBUG] [Thread-68271 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:38.487 [INFO] [Thread-68271 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03100084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468651493843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992712, telescope_ra=20.9002879, telescope_dec=-24.256287, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.92004, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8749736319888, telescope_dec_j2k=-24.352611472494, observability=1)
2025-11-17T14:44:50.964 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:44:50
2025-11-17T14:44:50.964 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:50.964 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 12.476979970932007s
2025-11-17T14:44:50.964 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:50.964 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:50.965 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:50.966 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9037705;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92352;2460997.03114544;14.74747111;1.3;_
2025-11-17T14:44:50.966 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.9037705;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92352;2460997.03114544;14.74747111;1.3;_
2025-11-17T14:44:50.966 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:50.966 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:50.966 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:50.967 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:50.967 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:50.967 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.9037705, teldec = -24.256287
2025-11-17T14:44:50.967 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9037705 -24.256287
2025-11-17T14:44:50.967 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9037705 -24.256287
2025-11-17T14:44:50.967 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9037705 -24.256287
2025-11-17T14:44:50.968 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9037705;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92352;2460997.03114546;14.74747111;1.3;_20.8784585383127 -24.352708506047
2025-11-17T14:44:50.968 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.8784585383127     dec_j2k = -24.352708506047
2025-11-17T14:44:50.968 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:50.968 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10468651493843;171.162357330327;_
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10468651493843;171.162357330327;_
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:50.969 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:50.970 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:50.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:50.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:50.971 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37325)
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:50.975 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:50.983 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:50.983 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03114544, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468651493843, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992712, telescope_ra=20.9037705, telescope_dec=-24.256287, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.92352, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8784585383127, telescope_dec_j2k=-24.352708506047, observability=1)
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Status age = 5.629124402999878s
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:44:56.612 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:44:56.613 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:44:56.613 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:44:56.613 [DEBUG] [Thread-68272 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 17;20.9053295;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92508;2460997.03121081;14.74902583;1.3;_
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response 17;20.9053295;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92508;2460997.03121081;14.74902583;1.3;_
2025-11-17T14:44:56.614 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:44:56.615 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:44:56.615 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:44:56.616 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:56.616 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:44:56.616 [INFO] [Thread-68272 (handle)] [driver.py] [get_status()] Telra = 20.9053295, teldec = -24.256287
2025-11-17T14:44:56.616 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9053295 -24.256287
2025-11-17T14:44:56.616 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9053295 -24.256287
2025-11-17T14:44:56.616 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9053295 -24.256287
2025-11-17T14:44:56.617 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 17;20.9053295;-24.256287;50.108243;89.992712;50.08601;90.12017;17.92508;2460997.03121084;14.74902583;1.3;_20.8800185715946 -24.3527519178522
2025-11-17T14:44:56.617 [INFO] [Thread-68272 (handle)] [driver.py] [get_status()] ra_j2k = 20.8800185715946     dec_j2k = -24.3527519178522
2025-11-17T14:44:56.617 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:44:56.617 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:44:56.617 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 140;0.104687517737;171.162362694745;_
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response 140;0.104687517737;171.162362694745;_
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:56.618 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:44:56.619 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:44:56.620 [DEBUG] [Thread-68272 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:56.620 [DEBUG] [Thread-68272 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:44:56.620 [DEBUG] [Thread-68272 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:44:56.623 [DEBUG] [Thread-68272 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36539)
2025-11-17T14:44:56.624 [DEBUG] [Thread-68272 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:44:56.624 [DEBUG] [Thread-68272 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:44:56.624 [DEBUG] [Thread-68272 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:44:56.624 [DEBUG] [Thread-68272 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:44:56.624 [DEBUG] [Thread-68272 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:44:56.631 [DEBUG] [Thread-68272 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:44:56.631 [INFO] [Thread-68272 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03121081, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687517737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108243, telescope_az=89.992712, telescope_ra=20.9053295, telescope_dec=-24.256287, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.92508, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:44:02.444238', telescope_ra_j2k=20.8800185715946, telescope_dec_j2k=-24.3527519178522, observability=1)
2025-11-17T14:45:02.586 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:02.586 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:02.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:02.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:02.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:02.587 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:02.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:02.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:02.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:02.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:02.588 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:45:02.588 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:02.588 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:45:02.589 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:45:02.590 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:03.590 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:45:03.591 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:03.592 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:03.593 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:03.593 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:03.593 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:03.593 [DEBUG] [ThreadPoolExecutor-2922_0] [payload.py] [to_registers()] [0]
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48647)
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:03.595 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:03.603 [DEBUG] [ThreadPoolExecutor-2922_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:11.381 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:11.381 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.750213861465454s
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:11.382 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:11.383 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9094518;-24.256286;50.108242;89.992711;50.08601;90.12017;17.9292;2460997.03138175;14.75313694;1.3;_
2025-11-17T14:45:11.383 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9094518;-24.256286;50.108242;89.992711;50.08601;90.12017;17.9292;2460997.03138175;14.75313694;1.3;_
2025-11-17T14:45:11.383 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:11.383 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:11.383 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:11.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:11.384 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:11.384 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9094518, teldec = -24.256286
2025-11-17T14:45:11.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9094518 -24.256286
2025-11-17T14:45:11.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9094518 -24.256286
2025-11-17T14:45:11.384 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9094518 -24.256286
2025-11-17T14:45:11.385 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9094518;-24.256286;50.108242;89.992711;50.08601;90.12017;17.9292;2460997.03138177;14.75313694;1.3;_20.8841436064635 -24.352865630707
2025-11-17T14:45:11.385 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.8841436064635     dec_j2k = -24.352865630707
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687437513114;171.162357330327;_
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687437513114;171.162357330327;_
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:11.386 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:11.387 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:11.387 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:11.387 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:11.388 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:11.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:11.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:11.388 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:11.389 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:11.389 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:11.389 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:11.396 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49227)
2025-11-17T14:45:11.397 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:11.397 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:11.397 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:11.397 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:11.397 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:11.404 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:45:11.404 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03138175, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687437513114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992711, telescope_ra=20.9094518, telescope_dec=-24.256286, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8841436064635, telescope_dec_j2k=-24.352865630707, observability=1)
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Status age = 3.2620532512664795s
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:14.666 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:14.667 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:14.668 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 17;20.910349;-24.256286;50.108242;89.992711;50.08601;90.12017;17.9301;2460997.03141977;14.75403167;1.3;_
2025-11-17T14:45:14.668 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response 17;20.910349;-24.256286;50.108242;89.992711;50.08601;90.12017;17.9301;2460997.03141977;14.75403167;1.3;_
2025-11-17T14:45:14.668 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:14.668 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:14.668 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:14.671 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:14.671 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:14.672 [INFO] [Thread-68273 (handle)] [driver.py] [get_status()] Telra = 20.910349, teldec = -24.256286
2025-11-17T14:45:14.672 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] UnCookCoordinates 20.910349 -24.256286
2025-11-17T14:45:14.672 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.910349 -24.256286
2025-11-17T14:45:14.672 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.910349 -24.256286
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 17;20.9103771;-24.256286;50.108242;89.992711;50.08601;90.12017;17.93013;2460997.03141982;14.75405972;1.3;_20.8850414021476 -24.3528905826972
2025-11-17T14:45:14.673 [INFO] [Thread-68273 (handle)] [driver.py] [get_status()] ra_j2k = 20.8850414021476     dec_j2k = -24.3528905826972
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 140;0.104687557848943;171.162357330327;_
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response 140;0.104687557848943;171.162357330327;_
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:14.673 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:14.674 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:14.675 [DEBUG] [Thread-68273 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:14.675 [DEBUG] [Thread-68273 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:14.675 [DEBUG] [Thread-68273 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44361)
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:14.682 [DEBUG] [Thread-68273 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:14.689 [DEBUG] [Thread-68273 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:14.690 [DEBUG] [Thread-68273 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:14.690 [DEBUG] [Thread-68273 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:45:14.690 [INFO] [Thread-68273 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03141977, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687557848943, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992711, telescope_ra=20.910349, telescope_dec=-24.256286, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9301, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8850414021476, telescope_dec_j2k=-24.3528905826972, observability=1)
2025-11-17T14:45:14.992 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.3028132915496826s
2025-11-17T14:45:14.993 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3028132915496826
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Status age = 1.8115005493164062s
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:16.501 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:16.502 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:16.503 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 17;20.9108715;-24.256286;50.108242;89.992711;50.08601;90.12017;17.93062;2460997.03144101;14.75455278;1.3;_
2025-11-17T14:45:16.503 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response 17;20.9108715;-24.256286;50.108242;89.992711;50.08601;90.12017;17.93062;2460997.03144101;14.75455278;1.3;_
2025-11-17T14:45:16.503 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:16.503 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:16.503 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:16.504 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:16.504 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:16.504 [INFO] [Thread-68274 (handle)] [driver.py] [get_status()] Telra = 20.9108715, teldec = -24.256286
2025-11-17T14:45:16.504 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9108715 -24.256286
2025-11-17T14:45:16.504 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9108715 -24.256286
2025-11-17T14:45:16.504 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9108715 -24.256286
2025-11-17T14:45:16.505 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 17;20.9108715;-24.256286;50.108242;89.992711;50.08601;90.12017;17.93062;2460997.03144103;14.75455278;1.3;_20.8855642491344 -24.3529051114954
2025-11-17T14:45:16.505 [INFO] [Thread-68274 (handle)] [driver.py] [get_status()] ra_j2k = 20.8855642491344     dec_j2k = -24.3529051114954
2025-11-17T14:45:16.505 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:16.505 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 140;0.104687397401171;171.162351965909;_
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response 140;0.104687397401171;171.162351965909;_
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:16.506 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:16.507 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:16.507 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:16.507 [DEBUG] [Thread-68274 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:16.508 [DEBUG] [Thread-68274 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35175)
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:16.511 [DEBUG] [Thread-68274 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:16.519 [DEBUG] [Thread-68274 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:45:16.519 [INFO] [Thread-68274 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03144101, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687397401171, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992711, telescope_ra=20.9108715, telescope_dec=-24.256286, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.93062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8855642491344, telescope_dec_j2k=-24.3529051114954, observability=1)
2025-11-17T14:45:28.603 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:28.603 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:28.603 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:28.603 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:28.604 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:28.604 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:28.604 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:28.605 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:45:28.606 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:45:28.607 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:32.730 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:32.730 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Status age = 16.211193561553955s
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:32.731 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:32.732 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 17;20.9153922;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93514;2460997.03162884;14.75906111;1.3;_
2025-11-17T14:45:32.732 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response 17;20.9153922;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93514;2460997.03162884;14.75906111;1.3;_
2025-11-17T14:45:32.732 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:32.732 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:32.732 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:32.733 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:32.733 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:32.733 [INFO] [Thread-68275 (handle)] [driver.py] [get_status()] Telra = 20.9153922, teldec = -24.256286
2025-11-17T14:45:32.733 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9153922 -24.256286
2025-11-17T14:45:32.733 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9153922 -24.256286
2025-11-17T14:45:32.733 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9153922 -24.256286
2025-11-17T14:45:32.734 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 17;20.9153922;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93514;2460997.03162887;14.75906111;1.3;_20.8900879537349 -24.3530307408692
2025-11-17T14:45:32.734 [INFO] [Thread-68275 (handle)] [driver.py] [get_status()] ra_j2k = 20.8900879537349     dec_j2k = -24.3530307408692
2025-11-17T14:45:32.734 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:32.734 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:32.734 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 140;0.104687758408657;171.162368059163;_
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response 140;0.104687758408657;171.162368059163;_
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:32.735 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:32.736 [DEBUG] [Thread-68275 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:32.736 [DEBUG] [Thread-68275 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:32.736 [DEBUG] [Thread-68275 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37015)
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:32.742 [DEBUG] [Thread-68275 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:32.749 [DEBUG] [Thread-68275 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:32.749 [DEBUG] [Thread-68275 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:32.749 [DEBUG] [Thread-68275 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:32.750 [DEBUG] [Thread-68275 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:45:32.750 [INFO] [Thread-68275 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03162884, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687758408657, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.99271, telescope_ra=20.9153922, telescope_dec=-24.256286, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.93514, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8900879537349, telescope_dec_j2k=-24.3530307408692, observability=1)
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.203178882598877s
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:35.953 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:35.954 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:35.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9163069;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93606;2460997.03166615;14.75997333;1.3;_
2025-11-17T14:45:35.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.9163069;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93606;2460997.03166615;14.75997333;1.3;_
2025-11-17T14:45:35.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:35.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:35.955 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:35.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:35.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:35.956 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.9163069, teldec = -24.256286
2025-11-17T14:45:35.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.9163069 -24.256286
2025-11-17T14:45:35.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.9163069 -24.256286
2025-11-17T14:45:35.956 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9163069 -24.256286
2025-11-17T14:45:35.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9163069;-24.256286;50.108242;89.99271;50.08601;90.12017;17.93606;2460997.03166617;14.75997333;1.3;_20.8910032622079 -24.3530561439218
2025-11-17T14:45:35.957 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.8910032622079     dec_j2k = -24.3530561439218
2025-11-17T14:45:35.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:35.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:35.957 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687477625057;171.162357330327;_
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687477625057;171.162357330327;_
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:35.958 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:35.959 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:35.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:35.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:35.960 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54269)
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:35.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:35.970 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:35.971 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:45:35.971 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03166615, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687477625057, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.99271, telescope_ra=20.9163069, telescope_dec=-24.256286, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.93606, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8910032622079, telescope_dec_j2k=-24.3530561439218, observability=1)
2025-11-17T14:45:35.971 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.006871700286865 seconds ago
2025-11-17T14:45:50.859 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:50.859 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Status age = 14.888343334197998s
2025-11-17T14:45:50.859 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:45:50.859 [DEBUG] [Thread-68276 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:45:50.860 [DEBUG] [Thread-68276 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:45:50.860 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:45:50.860 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:45:50.860 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:45:50.861 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:45:50.862 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 17;20.9204335;-24.256285;50.108242;89.99271;50.08601;90.12017;17.94018;2460997.03183868;14.76408861;1.3;_
2025-11-17T14:45:50.862 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response 17;20.9204335;-24.256285;50.108242;89.99271;50.08601;90.12017;17.94018;2460997.03183868;14.76408861;1.3;_
2025-11-17T14:45:50.862 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:45:50.862 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:45:50.862 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:45:50.863 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:50.863 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:45:50.863 [INFO] [Thread-68276 (handle)] [driver.py] [get_status()] Telra = 20.9204335, teldec = -24.256285
2025-11-17T14:45:50.863 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9204335 -24.256285
2025-11-17T14:45:50.863 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9204335 -24.256285
2025-11-17T14:45:50.863 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9204335 -24.256285
2025-11-17T14:45:50.864 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 17;20.9204335;-24.256285;50.108242;89.99271;50.08601;90.12017;17.94018;2460997.0318387;14.76408861;1.3;_20.8951326096704 -24.3531696797797
2025-11-17T14:45:50.864 [INFO] [Thread-68276 (handle)] [driver.py] [get_status()] ra_j2k = 20.8951326096704     dec_j2k = -24.3531696797797
2025-11-17T14:45:50.864 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:45:50.864 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:45:50.864 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 140;0.1046869561698;171.162351965909;_
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response 140;0.1046869561698;171.162351965909;_
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:50.865 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:45:50.866 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:45:50.867 [DEBUG] [Thread-68276 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:50.867 [DEBUG] [Thread-68276 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:45:50.867 [DEBUG] [Thread-68276 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37675)
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:45:50.871 [DEBUG] [Thread-68276 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:45:50.878 [DEBUG] [Thread-68276 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:45:50.878 [INFO] [Thread-68276 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03183868, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046869561698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.99271, telescope_ra=20.9204335, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.94018, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:45:02.586123', telescope_ra_j2k=20.8951326096704, telescope_dec_j2k=-24.3531696797797, observability=1)
2025-11-17T14:45:51.044 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:45:51
2025-11-17T14:45:51.044 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:45:51.044 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.16592621803283691s
2025-11-17T14:45:51.044 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.16592621803283691
2025-11-17T14:46:02.727 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:02.727 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:02.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:02.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:02.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:02.728 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:02.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:02.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:02.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:02.729 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:02.729 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:46:02.729 [INFO] [ThreadPoolExecutor-2923_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:46:02.729 [INFO] [ThreadPoolExecutor-2923_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Status age = 18.049745798110962s
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:08.928 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:08.929 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:08.930 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 17;20.9254789;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94523;2460997.0320478;14.76912028;1.3;_
2025-11-17T14:46:08.930 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response 17;20.9254789;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94523;2460997.0320478;14.76912028;1.3;_
2025-11-17T14:46:08.930 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:08.930 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:08.930 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:08.931 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:08.931 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:08.931 [INFO] [Thread-68277 (handle)] [driver.py] [get_status()] Telra = 20.9254789, teldec = -24.256285
2025-11-17T14:46:08.931 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9254789 -24.256285
2025-11-17T14:46:08.931 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9254789 -24.256285
2025-11-17T14:46:08.931 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9254789 -24.256285
2025-11-17T14:46:08.932 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 17;20.9254789;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94523;2460997.03204782;14.76912028;1.3;_20.9001813736487 -24.3533095654301
2025-11-17T14:46:08.932 [INFO] [Thread-68277 (handle)] [driver.py] [get_status()] ra_j2k = 20.9001813736487     dec_j2k = -24.3533095654301
2025-11-17T14:46:08.932 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:08.932 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 140;0.104687357289228;171.162357330327;_
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response 140;0.104687357289228;171.162357330327;_
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:08.933 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:08.934 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:08.935 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:08.935 [DEBUG] [Thread-68277 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:08.935 [DEBUG] [Thread-68277 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:08.936 [DEBUG] [Thread-68277 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37293)
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:08.940 [DEBUG] [Thread-68277 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:08.947 [DEBUG] [Thread-68277 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:08.947 [INFO] [Thread-68277 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0320478, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687357289228, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992709, telescope_ra=20.9254789, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.94523, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9001813736487, telescope_dec_j2k=-24.3533095654301, observability=1)
2025-11-17T14:46:10.495 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:10.495 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.547992467880249s
2025-11-17T14:46:10.495 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:10.496 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:10.496 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:10.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:10.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:10.496 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:10.497 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:10.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9259182;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94567;2460997.03206595;14.76955833;1.3;_
2025-11-17T14:46:10.498 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9259182;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94567;2460997.03206595;14.76955833;1.3;_
2025-11-17T14:46:10.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:10.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:10.498 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:10.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:10.499 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:10.499 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9259182, teldec = -24.256285
2025-11-17T14:46:10.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9259182 -24.256285
2025-11-17T14:46:10.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9259182 -24.256285
2025-11-17T14:46:10.499 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9259182 -24.256285
2025-11-17T14:46:10.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9259182;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94567;2460997.03206597;14.76955833;1.3;_20.9006209668067 -24.3533217372778
2025-11-17T14:46:10.500 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9006209668067     dec_j2k = -24.3533217372778
2025-11-17T14:46:10.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:10.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:10.500 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687317177286;171.162362694745;_
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687317177286;171.162362694745;_
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:10.501 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:10.502 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:10.503 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:10.503 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58799)
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:10.504 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:10.511 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:10.512 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:10.512 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:10.512 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03206595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687317177286, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992709, telescope_ra=20.9259182, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.94567, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9006209668067, telescope_dec_j2k=-24.3533217372778, observability=1)
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.536341667175293s
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9271794;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94693;2460997.03211863;14.77081611;1.3;_
2025-11-17T14:46:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.9271794;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94693;2460997.03211863;14.77081611;1.3;_
2025-11-17T14:46:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:15.051 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.9271794, teldec = -24.256285
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9271794 -24.256285
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9271794 -24.256285
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9271794 -24.256285
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9271794;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94693;2460997.03211865;14.77081611;1.3;_20.901883008673 -24.3533566747649
2025-11-17T14:46:15.051 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.901883008673     dec_j2k = -24.3533566747649
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687999080313;171.162357330327;_
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687999080313;171.162357330327;_
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35385)
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:15.067 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03211863, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687999080313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992709, telescope_ra=20.9271794, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.94693, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.901883008673, telescope_dec_j2k=-24.3533566747649, observability=1)
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Status age = 1.4860773086547852s
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:16.553 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:16.554 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:16.555 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 17;20.9275902;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94734;2460997.03213605;14.77122583;1.3;_
2025-11-17T14:46:16.555 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response 17;20.9275902;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94734;2460997.03213605;14.77122583;1.3;_
2025-11-17T14:46:16.555 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:16.555 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:16.556 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:16.556 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:16.556 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:16.556 [INFO] [Thread-68278 (handle)] [driver.py] [get_status()] Telra = 20.9275902, teldec = -24.256285
2025-11-17T14:46:16.556 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9275902 -24.256285
2025-11-17T14:46:16.557 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9275902 -24.256285
2025-11-17T14:46:16.557 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9275902 -24.256285
2025-11-17T14:46:16.557 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 17;20.9275902;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94734;2460997.03213608;14.77122583;1.3;_20.9022940829606 -24.353368052399
2025-11-17T14:46:16.558 [INFO] [Thread-68278 (handle)] [driver.py] [get_status()] ra_j2k = 20.9022940829606     dec_j2k = -24.353368052399
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 140;0.1046872369534;171.162357330327;_
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response 140;0.1046872369534;171.162357330327;_
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:16.558 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:16.559 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:16.559 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:16.559 [DEBUG] [Thread-68278 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:16.560 [DEBUG] [Thread-68278 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48543)
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:16.566 [DEBUG] [Thread-68278 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:16.574 [DEBUG] [Thread-68278 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:16.574 [INFO] [Thread-68278 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03213605, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046872369534, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992709, telescope_ra=20.9275902, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.94734, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9022940829606, telescope_dec_j2k=-24.353368052399, observability=1)
2025-11-17T14:46:23.607 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.607 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.607 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:23.607 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:23.607 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:23.608 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.608 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:23.608 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:23.608 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:23.609 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:23.610 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:23.610 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:23.611 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:46:23.612 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:23.613 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Park
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:46:23.614 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:46:23.615 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 29;20.9295695;-24.256285;50.108242;89.992709;50.08601;90.12017;17.94932;2460997.03221777;14.77319972;1.3;_Park Command Successful
2025-11-17T14:46:24.615 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:46:24.615 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:46:24.615 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:46:24.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:46:24.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:46:25.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:46:25.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:46:25.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:46:25.616 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:46:25.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:46:26.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:46:26.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:46:26.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:46:26.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:46:26.617 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:46:27.040 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:27.040 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Status age = 10.466120481491089s
2025-11-17T14:46:27.040 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:27.040 [DEBUG] [Thread-68279 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:27.041 [DEBUG] [Thread-68279 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:27.041 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:27.041 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:27.041 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:27.042 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:27.043 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 17;20.9305221;-24.256285;50.108242;89.992709;50.08601;90.12017;17.95027;2460997.03225744;14.77414972;1.3;_
2025-11-17T14:46:27.043 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response 17;20.9305221;-24.256285;50.108242;89.992709;50.08601;90.12017;17.95027;2460997.03225744;14.77414972;1.3;_
2025-11-17T14:46:27.043 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:27.043 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:27.043 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:27.044 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:27.044 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:27.044 [INFO] [Thread-68279 (handle)] [driver.py] [get_status()] Telra = 20.9305221, teldec = -24.256285
2025-11-17T14:46:27.044 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9305221 -24.256285
2025-11-17T14:46:27.044 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9305221 -24.256285
2025-11-17T14:46:27.044 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9305221 -24.256285
2025-11-17T14:46:27.045 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 17;20.9305221;-24.256285;50.108242;89.992709;50.08601;90.12017;17.95027;2460997.03225747;14.77414972;1.3;_20.9052279416151 -24.3534492229095
2025-11-17T14:46:27.045 [INFO] [Thread-68279 (handle)] [driver.py] [get_status()] ra_j2k = 20.9052279416151     dec_j2k = -24.3534492229095
2025-11-17T14:46:27.045 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:27.045 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:27.045 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 140;0.104687838632542;171.162351965909;_
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response 140;0.104687838632542;171.162351965909;_
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:27.046 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:27.047 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:27.048 [DEBUG] [Thread-68279 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:27.048 [DEBUG] [Thread-68279 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:27.048 [DEBUG] [Thread-68279 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50383)
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:27.054 [DEBUG] [Thread-68279 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:27.061 [DEBUG] [Thread-68279 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:27.061 [INFO] [Thread-68279 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03225744, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687838632542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992709, telescope_ra=20.9305221, telescope_dec=-24.256285, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.95027, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9052279416151, telescope_dec_j2k=-24.3534492229095, observability=1)
2025-11-17T14:46:27.618 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:46:27.618 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:46:27.618 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:27.619 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:46:27.620 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:46:27.621 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:28.621 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:28.621 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:28.621 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:28.621 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:28.621 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:46:28.622 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:46:28.623 [DEBUG] [ThreadPoolExecutor-2922_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:28.623 [INFO] [ThreadPoolExecutor-2922_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.970192432403564s
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:36.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:36.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:36.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:36.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:36.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:36.032 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9330251;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95278;2460997.03236149;14.77664583;1.3;_
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.9330251;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95278;2460997.03236149;14.77664583;1.3;_
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:36.033 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:36.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:36.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:36.034 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.9330251, teldec = -24.256284
2025-11-17T14:46:36.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.9330251 -24.256284
2025-11-17T14:46:36.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.9330251 -24.256284
2025-11-17T14:46:36.034 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9330251 -24.256284
2025-11-17T14:46:36.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9330251;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95278;2460997.03236152;14.77664583;1.3;_20.9077326153481 -24.3535174745345
2025-11-17T14:46:36.035 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9077326153481     dec_j2k = -24.3535174745345
2025-11-17T14:46:36.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:36.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:36.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:36.035 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687597960885;171.162362694745;_
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687597960885;171.162362694745;_
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:36.036 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:36.037 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:36.038 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53575)
2025-11-17T14:46:36.038 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:36.038 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:36.038 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:36.038 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:36.039 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:36.046 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:46:36.046 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03236149, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687597960885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992708, telescope_ra=20.9330251, telescope_dec=-24.256284, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.95278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9077326153481, telescope_dec_j2k=-24.3535174745345, observability=1)
2025-11-17T14:46:36.046 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00232458114624 seconds ago
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Status age = 9.071895360946655s
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:45.118 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:45.119 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:45.120 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 17;20.9355648;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95532;2460997.03246667;14.77917861;1.3;_
2025-11-17T14:46:45.120 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response 17;20.9355648;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95532;2460997.03246667;14.77917861;1.3;_
2025-11-17T14:46:45.120 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:45.120 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:45.120 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:45.121 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:45.121 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:45.121 [INFO] [Thread-68280 (handle)] [driver.py] [get_status()] Telra = 20.9355648, teldec = -24.256284
2025-11-17T14:46:45.121 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9355648 -24.256284
2025-11-17T14:46:45.121 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9355648 -24.256284
2025-11-17T14:46:45.121 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9355648 -24.256284
2025-11-17T14:46:45.122 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 17;20.9355648;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95532;2460997.03246669;14.77917861;1.3;_20.9102740148426 -24.353587699283
2025-11-17T14:46:45.122 [INFO] [Thread-68280 (handle)] [driver.py] [get_status()] ra_j2k = 20.9102740148426     dec_j2k = -24.353587699283
2025-11-17T14:46:45.122 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 140;0.104687517737;171.162351965909;_
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response 140;0.104687517737;171.162351965909;_
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:45.123 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:45.124 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:45.125 [DEBUG] [Thread-68280 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:45.125 [DEBUG] [Thread-68280 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:45.125 [DEBUG] [Thread-68280 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45161)
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:45.131 [DEBUG] [Thread-68280 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:45.139 [DEBUG] [Thread-68280 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:45.139 [DEBUG] [Thread-68280 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:45.139 [DEBUG] [Thread-68280 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:45.139 [DEBUG] [Thread-68280 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:45.139 [DEBUG] [Thread-68280 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:45.140 [DEBUG] [Thread-68280 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:45.140 [DEBUG] [Thread-68280 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:45.140 [DEBUG] [Thread-68280 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:45.140 [DEBUG] [Thread-68280 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:45.140 [INFO] [Thread-68280 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03246667, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687517737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992708, telescope_ra=20.9355648, telescope_dec=-24.256284, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.95532, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9102740148426, telescope_dec_j2k=-24.353587699283, observability=1)
2025-11-17T14:46:51.105 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:46:51
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.96512246131897s
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:46:51.105 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9372371;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95699;2460997.03253595;14.78084639;1.3;_
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.9372371;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95699;2460997.03253595;14.78084639;1.3;_
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:46:51.106 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:46:51.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:51.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:46:51.107 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.9372371, teldec = -24.256284
2025-11-17T14:46:51.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9372371 -24.256284
2025-11-17T14:46:51.107 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9372371 -24.256284
2025-11-17T14:46:51.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9372371 -24.256284
2025-11-17T14:46:51.108 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9372371;-24.256284;50.108242;89.992708;50.08601;90.12017;17.95699;2460997.03253597;14.78084639;1.3;_20.9119474346515 -24.3536339165141
2025-11-17T14:46:51.109 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9119474346515     dec_j2k = -24.3536339165141
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104687597960885;171.162357330327;_
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104687597960885;171.162357330327;_
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:46:51.109 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:51.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:51.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:51.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:51.110 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:51.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:51.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:46:51.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:46:51.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:46:51.111 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:51.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:46:51.112 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:46:51.114 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46321)
2025-11-17T14:46:51.114 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:46:51.114 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:46:51.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:46:51.115 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:46:51.115 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:46:51.122 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:46:51.122 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03253595, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687597960885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108242, telescope_az=89.992708, telescope_ra=20.9372371, telescope_dec=-24.256284, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.95699, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:46:02.726915', telescope_ra_j2k=20.9119474346515, telescope_dec_j2k=-24.3536339165141, observability=1)
2025-11-17T14:47:02.872 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:02.872 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:02.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:02.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:02.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:02.873 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:02.873 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:02.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:02.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:02.874 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:02.874 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:47:02.874 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:02.874 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:02.874 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:02.874 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:02.874 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:47:02.875 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:47:02.876 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Status age = 12.052095651626587s
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:03.174 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:03.175 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:03.175 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:03.176 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:03.177 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 17;20.9405804;-24.256284;50.108241;89.992707;50.08601;90.12017;17.96033;2460997.03267566;14.78418056;1.3;_
2025-11-17T14:47:03.177 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response 17;20.9405804;-24.256284;50.108241;89.992707;50.08601;90.12017;17.96033;2460997.03267566;14.78418056;1.3;_
2025-11-17T14:47:03.177 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:03.177 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:03.177 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:03.178 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:03.178 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:03.178 [INFO] [Thread-68281 (handle)] [driver.py] [get_status()] Telra = 20.9405804, teldec = -24.256284
2025-11-17T14:47:03.178 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9405804 -24.256284
2025-11-17T14:47:03.178 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9405804 -24.256284
2025-11-17T14:47:03.178 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9405804 -24.256284
2025-11-17T14:47:03.179 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 17;20.9405804;-24.256284;50.108241;89.992707;50.08601;90.12017;17.96033;2460997.03267568;14.78418056;1.3;_20.915292975192 -24.3537262597543
2025-11-17T14:47:03.179 [INFO] [Thread-68281 (handle)] [driver.py] [get_status()] ra_j2k = 20.915292975192     dec_j2k = -24.3537262597543
2025-11-17T14:47:03.179 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:03.179 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:03.179 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 140;0.1046869561698;171.162351965909;_
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response 140;0.1046869561698;171.162351965909;_
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:03.180 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:03.181 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:03.182 [DEBUG] [Thread-68281 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:03.182 [DEBUG] [Thread-68281 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:03.182 [DEBUG] [Thread-68281 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52231)
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:03.186 [DEBUG] [Thread-68281 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:03.193 [DEBUG] [Thread-68281 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:03.194 [DEBUG] [Thread-68281 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:03.194 [INFO] [Thread-68281 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03267566, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.1046869561698, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992707, telescope_ra=20.9405804, telescope_dec=-24.256284, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.96033, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.915292975192, telescope_dec_j2k=-24.3537262597543, observability=1)
2025-11-17T14:47:03.876 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:03.876 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:03.876 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:03.876 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:03.876 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:47:03.877 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:03.878 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:03.879 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:03.879 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:03.879 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:03.880 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:03.880 [DEBUG] [ThreadPoolExecutor-2924_0] [payload.py] [to_registers()] [0]
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59591)
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:03.881 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:03.888 [DEBUG] [ThreadPoolExecutor-2924_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.402087211608887s
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:09.596 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:09.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:09.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9423636;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96211;2460997.03274998;14.78595889;1.3;_
2025-11-17T14:47:09.598 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9423636;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96211;2460997.03274998;14.78595889;1.3;_
2025-11-17T14:47:09.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:09.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:09.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:09.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:09.599 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:09.599 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9423636, teldec = -24.256283
2025-11-17T14:47:09.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9423636 -24.256283
2025-11-17T14:47:09.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9423636 -24.256283
2025-11-17T14:47:09.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9423636 -24.256283
2025-11-17T14:47:09.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9423636;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96211;2460997.03275;14.78595889;1.3;_20.9170773713431 -24.353774482363
2025-11-17T14:47:09.600 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9170773713431     dec_j2k = -24.353774482363
2025-11-17T14:47:09.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687918856428;171.162362694745;_
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687918856428;171.162362694745;_
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:09.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:09.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:09.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:09.602 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:09.602 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:09.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:09.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:09.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:09.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:09.603 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:09.604 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52305)
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:09.606 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:09.613 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:09.613 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03274998, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687918856428, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992707, telescope_ra=20.9423636, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.96211, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9170773713431, telescope_dec_j2k=-24.353774482363, observability=1)
2025-11-17T14:47:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.406026124954224s
2025-11-17T14:47:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:15.019 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:15.020 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.943897;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96365;2460997.03281275;14.78748806;1.3;_
2025-11-17T14:47:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.943897;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96365;2460997.03281275;14.78748806;1.3;_
2025-11-17T14:47:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:15.023 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.943897, teldec = -24.256283
2025-11-17T14:47:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.943897 -24.256283
2025-11-17T14:47:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.943897 -24.256283
2025-11-17T14:47:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.943897 -24.256283
2025-11-17T14:47:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.943897;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96365;2460997.03281278;14.78748806;1.3;_20.9186118003474 -24.3538167927351
2025-11-17T14:47:15.024 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.9186118003474     dec_j2k = -24.3538167927351
2025-11-17T14:47:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687517737;171.162362694745;_
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687517737;171.162362694745;_
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44925)
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:15.032 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:15.040 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03281275, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687517737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992707, telescope_ra=20.943897, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.96365, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9186118003474, telescope_dec_j2k=-24.3538167927351, observability=1)
2025-11-17T14:47:16.611 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:16.611 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Status age = 1.5717670917510986s
2025-11-17T14:47:16.611 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:16.611 [DEBUG] [Thread-68282 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:16.611 [DEBUG] [Thread-68282 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:16.612 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:16.612 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:16.612 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:16.612 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:16.612 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 17;20.9443165;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96407;2460997.03283117;14.78790639;1.3;_
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response 17;20.9443165;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96407;2460997.03283117;14.78790639;1.3;_
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:16.613 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:16.614 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:16.614 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:16.614 [INFO] [Thread-68282 (handle)] [driver.py] [get_status()] Telra = 20.9443165, teldec = -24.256283
2025-11-17T14:47:16.614 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9443165 -24.256283
2025-11-17T14:47:16.614 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9443165 -24.256283
2025-11-17T14:47:16.615 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9443165 -24.256283
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 17;20.9443165;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96407;2460997.03283119;14.78790639;1.3;_20.9190315819448 -24.3538283650919
2025-11-17T14:47:16.616 [INFO] [Thread-68282 (handle)] [driver.py] [get_status()] ra_j2k = 20.9190315819448     dec_j2k = -24.3538283650919
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 140;0.104687477625057;171.162351965909;_
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response 140;0.104687477625057;171.162351965909;_
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:16.616 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:16.617 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:47:16.617 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:47:16.617 [DEBUG] [Thread-68282 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:47:16.617 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:16.617 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:16.618 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:16.618 [DEBUG] [Thread-68282 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:16.618 [DEBUG] [Thread-68282 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:16.618 [DEBUG] [Thread-68282 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56889)
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:16.623 [DEBUG] [Thread-68282 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:16.630 [DEBUG] [Thread-68282 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:16.630 [DEBUG] [Thread-68282 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:16.631 [DEBUG] [Thread-68282 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:16.631 [INFO] [Thread-68282 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03283117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687477625057, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992707, telescope_ra=20.9443165, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.96407, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9190315819448, telescope_dec_j2k=-24.3538283650919, observability=1)
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Status age = 4.6631200313568115s
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:21.294 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:21.295 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:21.295 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:21.295 [DEBUG] [Thread-68283 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:21.296 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:21.296 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:21.296 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:21.296 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:21.296 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 17;20.9456239;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96537;2460997.03288537;14.78921028;1.3;_
2025-11-17T14:47:21.297 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response 17;20.9456239;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96537;2460997.03288537;14.78921028;1.3;_
2025-11-17T14:47:21.297 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:21.297 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:21.297 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:21.298 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:21.298 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:21.298 [INFO] [Thread-68283 (handle)] [driver.py] [get_status()] Telra = 20.9456239, teldec = -24.256283
2025-11-17T14:47:21.298 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9456239 -24.256283
2025-11-17T14:47:21.298 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9456239 -24.256283
2025-11-17T14:47:21.298 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9456239 -24.256283
2025-11-17T14:47:21.299 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 17;20.9456239;-24.256283;50.108241;89.992707;50.08601;90.12017;17.96537;2460997.03288541;14.78921028;1.3;_20.9203398598032 -24.3538644236617
2025-11-17T14:47:21.299 [INFO] [Thread-68283 (handle)] [driver.py] [get_status()] ra_j2k = 20.9203398598032     dec_j2k = -24.3538644236617
2025-11-17T14:47:21.299 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:21.299 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:21.299 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:21.299 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 140;0.104687718296714;171.162362694745;_
2025-11-17T14:47:21.300 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response 140;0.104687718296714;171.162362694745;_
2025-11-17T14:47:21.300 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:21.300 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:21.300 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:21.300 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:21.301 [DEBUG] [Thread-68283 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45619)
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:21.307 [DEBUG] [Thread-68283 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:21.314 [DEBUG] [Thread-68283 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:21.315 [DEBUG] [Thread-68283 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:21.315 [INFO] [Thread-68283 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03288537, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687718296714, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992707, telescope_ra=20.9456239, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.96537, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9203398598032, telescope_dec_j2k=-24.3538644236617, observability=1)
2025-11-17T14:47:28.888 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:28.889 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:47:28.890 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:47:28.891 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.791056632995605s
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:36.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:36.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:36.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9497496;-24.256283;50.108241;89.992706;50.08601;90.12017;17.9695;2460997.03305681;14.79332472;1.3;_
2025-11-17T14:47:36.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.9497496;-24.256283;50.108241;89.992706;50.08601;90.12017;17.9695;2460997.03305681;14.79332472;1.3;_
2025-11-17T14:47:36.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:36.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:36.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:36.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:36.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:36.109 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.9497496, teldec = -24.256283
2025-11-17T14:47:36.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.9497496 -24.256283
2025-11-17T14:47:36.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.9497496 -24.256283
2025-11-17T14:47:36.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9497496 -24.256283
2025-11-17T14:47:36.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9497496;-24.256283;50.108241;89.992706;50.08601;90.12017;17.9695;2460997.03305683;14.79332472;1.3;_20.9244683324115 -24.3539781378757
2025-11-17T14:47:36.110 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9244683324115     dec_j2k = -24.3539781378757
2025-11-17T14:47:36.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:36.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:36.110 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687397401171;171.162346601491;_
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687397401171;171.162346601491;_
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:36.111 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:36.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:36.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:36.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:36.112 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:36.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:36.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:36.113 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41997)
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:36.114 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:36.122 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:47:36.122 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03305681, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687397401171, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992706, telescope_ra=20.9497496, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9695, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9244683324115, telescope_dec_j2k=-24.3539781378757, observability=1)
2025-11-17T14:47:36.122 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.017544984817505 seconds ago
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Status age = 3.232726573944092s
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:39.355 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:39.356 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:39.357 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:39.357 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 17;20.9506649;-24.256283;50.108241;89.992706;50.08601;90.12017;17.97042;2460997.03309441;14.7942375;1.3;_
2025-11-17T14:47:39.357 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response 17;20.9506649;-24.256283;50.108241;89.992706;50.08601;90.12017;17.97042;2460997.03309441;14.7942375;1.3;_
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:39.358 [INFO] [Thread-68284 (handle)] [driver.py] [get_status()] Telra = 20.9506649, teldec = -24.256283
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9506649 -24.256283
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9506649 -24.256283
2025-11-17T14:47:39.358 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9506649 -24.256283
2025-11-17T14:47:39.359 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 17;20.9506649;-24.256283;50.108241;89.992706;50.08601;90.12017;17.97042;2460997.03309443;14.7942375;1.3;_20.9253842480159 -24.3540033504828
2025-11-17T14:47:39.359 [INFO] [Thread-68284 (handle)] [driver.py] [get_status()] ra_j2k = 20.9253842480159     dec_j2k = -24.3540033504828
2025-11-17T14:47:39.359 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:39.359 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:39.359 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 140;0.104687958968371;171.162357330327;_
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response 140;0.104687958968371;171.162357330327;_
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:39.360 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:39.361 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:39.362 [DEBUG] [Thread-68284 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:39.362 [DEBUG] [Thread-68284 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:39.362 [DEBUG] [Thread-68284 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49089)
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:39.366 [DEBUG] [Thread-68284 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:39.374 [DEBUG] [Thread-68284 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:39.374 [INFO] [Thread-68284 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03309441, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687958968371, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992706, telescope_ra=20.9506649, telescope_dec=-24.256283, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.97042, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9253842480159, telescope_dec_j2k=-24.3540033504828, observability=1)
2025-11-17T14:47:51.183 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:47:51
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.809254169464111s
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:51.183 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:51.184 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:51.185 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9539508;-24.256282;50.108241;89.992706;50.08601;90.12017;17.9737;2460997.03323131;14.79751444;1.3;_
2025-11-17T14:47:51.185 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.9539508;-24.256282;50.108241;89.992706;50.08601;90.12017;17.9737;2460997.03323131;14.79751444;1.3;_
2025-11-17T14:47:51.185 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:51.185 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:51.185 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:51.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:51.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:51.186 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.9539508, teldec = -24.256282
2025-11-17T14:47:51.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9539508 -24.256282
2025-11-17T14:47:51.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9539508 -24.256282
2025-11-17T14:47:51.186 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9539508 -24.256282
2025-11-17T14:47:51.187 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9539508;-24.256282;50.108241;89.992706;50.08601;90.12017;17.9737;2460997.03323133;14.79751444;1.3;_20.9286723596367 -24.3540928173974
2025-11-17T14:47:51.187 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9286723596367     dec_j2k = -24.3540928173974
2025-11-17T14:47:51.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:51.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:51.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:51.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104687638072828;171.162351965909;_
2025-11-17T14:47:51.188 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104687638072828;171.162351965909;_
2025-11-17T14:47:51.189 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:51.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:51.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:51.189 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:51.190 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:51.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:51.191 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:51.194 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53213)
2025-11-17T14:47:51.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:51.194 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:51.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:51.195 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:51.195 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:51.202 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:51.203 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:51.203 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:51.203 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03323131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687638072828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992706, telescope_ra=20.9539508, telescope_dec=-24.256282, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9737, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9286723596367, telescope_dec_j2k=-24.3540928173974, observability=1)
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Status age = 6.2285847663879395s
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:47:57.431 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:47:57.432 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:47:57.433 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 17;20.9557067;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97546;2460997.03330362;14.79926556;1.3;_
2025-11-17T14:47:57.433 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response 17;20.9557067;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97546;2460997.03330362;14.79926556;1.3;_
2025-11-17T14:47:57.433 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:47:57.433 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:47:57.433 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:47:57.434 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:57.434 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:47:57.434 [INFO] [Thread-68285 (handle)] [driver.py] [get_status()] Telra = 20.9557067, teldec = -24.256282
2025-11-17T14:47:57.434 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9557067 -24.256282
2025-11-17T14:47:57.434 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9557067 -24.256282
2025-11-17T14:47:57.435 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9557067 -24.256282
2025-11-17T14:47:57.435 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 17;20.9557067;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97546;2460997.03330365;14.79926556;1.3;_20.9304294423345 -24.3541411312018
2025-11-17T14:47:57.436 [INFO] [Thread-68285 (handle)] [driver.py] [get_status()] ra_j2k = 20.9304294423345     dec_j2k = -24.3541411312018
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 140;0.104688079304199;171.162351965909;_
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response 140;0.104688079304199;171.162351965909;_
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:57.436 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:57.437 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:57.438 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:57.438 [DEBUG] [Thread-68285 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:57.438 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:47:57.438 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:47:57.438 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:47:57.439 [DEBUG] [Thread-68285 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:57.439 [DEBUG] [Thread-68285 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:47:57.439 [DEBUG] [Thread-68285 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50671)
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:47:57.445 [DEBUG] [Thread-68285 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:47:57.452 [DEBUG] [Thread-68285 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:47:57.453 [DEBUG] [Thread-68285 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:47:57.453 [DEBUG] [Thread-68285 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:47:57.453 [DEBUG] [Thread-68285 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:47:57.453 [INFO] [Thread-68285 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03330362, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688079304199, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992705, telescope_ra=20.9557067, telescope_dec=-24.256282, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.97546, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:47:02.871574', telescope_ra_j2k=20.9304294423345, telescope_dec_j2k=-24.3541411312018, observability=1)
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:03.015 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:03.016 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:03.016 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:03.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:03.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:03.017 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:03.017 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:48:03.017 [INFO] [ThreadPoolExecutor-2925_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:48:03.017 [INFO] [ThreadPoolExecutor-2925_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:48:08.702 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:08.702 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 11.24972128868103s
2025-11-17T14:48:08.702 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:08.702 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:08.703 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:08.704 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:08.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:08.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:08.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:08.704 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9588258;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97858;2460997.03343407;14.80237611;1.3;_
2025-11-17T14:48:08.705 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9588258;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97858;2460997.03343407;14.80237611;1.3;_
2025-11-17T14:48:08.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:08.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:08.705 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:08.706 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:08.706 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:08.706 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9588258, teldec = -24.256282
2025-11-17T14:48:08.706 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9588258 -24.256282
2025-11-17T14:48:08.706 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9588258 -24.256282
2025-11-17T14:48:08.706 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9588258 -24.256282
2025-11-17T14:48:08.707 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9588258;-24.256282;50.108241;89.992705;50.08601;90.12017;17.97858;2460997.03343411;14.80237611;1.3;_20.9335506448439 -24.3542269032177
2025-11-17T14:48:08.707 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9335506448439     dec_j2k = -24.3542269032177
2025-11-17T14:48:08.707 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:08.707 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:08.707 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688119416142;171.162357330327;_
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688119416142;171.162357330327;_
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:08.708 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:08.709 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:08.710 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:08.710 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:08.710 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:08.715 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59411)
2025-11-17T14:48:08.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:08.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:08.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:08.716 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:08.716 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:08.723 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:48:08.723 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03343407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688119416142, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992705, telescope_ra=20.9588258, telescope_dec=-24.256282, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.97858, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9335506448439, telescope_dec_j2k=-24.3542269032177, observability=1)
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.315946578979492s
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9606187;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98037;2460997.03350742;14.80416417;1.3;_
2025-11-17T14:48:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.9606187;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98037;2460997.03350742;14.80416417;1.3;_
2025-11-17T14:48:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:15.043 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.9606187, teldec = -24.256282
2025-11-17T14:48:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9606187 -24.256282
2025-11-17T14:48:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9606187 -24.256282
2025-11-17T14:48:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9606187 -24.256282
2025-11-17T14:48:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9606187;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98037;2460997.03350745;14.80416417;1.3;_20.9353447543317 -24.3542761768972
2025-11-17T14:48:15.044 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.9353447543317     dec_j2k = -24.3542761768972
2025-11-17T14:48:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687196841457;171.162351965909;_
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687196841457;171.162351965909;_
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:15.053 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35285)
2025-11-17T14:48:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:15.054 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:15.054 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:15.061 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:48:15.061 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03350742, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687196841457, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992705, telescope_ra=20.9606187, telescope_dec=-24.256282, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.98037, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9353447543317, telescope_dec_j2k=-24.3542761768972, observability=1)
2025-11-17T14:48:15.556 [DEBUG] [Thread-68286 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:15.556 [DEBUG] [Thread-68286 (handle)] [server.py] [get_status()] Status age = 0.4953150749206543s
2025-11-17T14:48:15.556 [DEBUG] [Thread-68286 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4953150749206543
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Status age = 1.6053617000579834s
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:16.666 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:16.667 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:16.668 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 17;20.9610577;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98081;2460997.03352625;14.80460194;1.3;_
2025-11-17T14:48:16.668 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response 17;20.9610577;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98081;2460997.03352625;14.80460194;1.3;_
2025-11-17T14:48:16.668 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:16.668 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:16.669 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:16.669 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:16.669 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:16.669 [INFO] [Thread-68287 (handle)] [driver.py] [get_status()] Telra = 20.9610577, teldec = -24.256282
2025-11-17T14:48:16.669 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9610577 -24.256282
2025-11-17T14:48:16.670 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9610577 -24.256282
2025-11-17T14:48:16.670 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9610577 -24.256282
2025-11-17T14:48:16.671 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 17;20.9610577;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98081;2460997.03352627;14.80460194;1.3;_20.9357840505848 -24.3542882385378
2025-11-17T14:48:16.671 [INFO] [Thread-68287 (handle)] [driver.py] [get_status()] ra_j2k = 20.9357840505848     dec_j2k = -24.3542882385378
2025-11-17T14:48:16.671 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:16.671 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:16.671 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 140;0.104687958968371;171.162362694745;_
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response 140;0.104687958968371;171.162362694745;_
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:16.672 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:16.673 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:16.674 [DEBUG] [Thread-68287 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:16.674 [DEBUG] [Thread-68287 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:16.674 [DEBUG] [Thread-68287 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:16.679 [DEBUG] [Thread-68287 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34259)
2025-11-17T14:48:16.679 [DEBUG] [Thread-68287 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:16.679 [DEBUG] [Thread-68287 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:16.679 [DEBUG] [Thread-68287 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:16.679 [DEBUG] [Thread-68287 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:16.680 [DEBUG] [Thread-68287 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:16.687 [DEBUG] [Thread-68287 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:48:16.687 [INFO] [Thread-68287 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03352625, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687958968371, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992705, telescope_ra=20.9610577, telescope_dec=-24.256282, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.98081, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9357840505848, telescope_dec_j2k=-24.3542882385378, observability=1)
2025-11-17T14:48:23.891 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.891 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.891 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:23.891 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:23.892 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:23.892 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.892 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:23.892 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:23.892 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.893 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.894 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:23.894 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:23.894 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:23.894 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:23.895 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:48:23.896 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:23.897 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Park
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:48:23.898 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:48:23.899 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 29;20.9630649;-24.256282;50.108241;89.992705;50.08601;90.12017;17.98282;2460997.03360994;14.80660361;1.3;_Park Command Successful
2025-11-17T14:48:24.899 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:48:24.899 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:48:24.899 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:48:24.900 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:48:24.900 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:48:25.900 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:48:25.900 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:48:25.900 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:48:25.901 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:48:25.901 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:48:26.901 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:48:26.901 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:48:26.901 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:48:26.902 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:48:26.902 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:48:27.902 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:48:27.903 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:48:27.903 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:48:27.903 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:27.904 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:48:27.905 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:48:27.906 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:28.906 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:28.906 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:28.906 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:28.906 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:28.906 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:48:28.907 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:48:28.908 [DEBUG] [ThreadPoolExecutor-2924_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:28.908 [INFO] [ThreadPoolExecutor-2924_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Status age = 16.915343761444092s
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:33.602 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:33.603 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:33.604 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 17;20.965772;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98552;2460997.03372227;14.80930333;1.3;_
2025-11-17T14:48:33.604 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response 17;20.965772;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98552;2460997.03372227;14.80930333;1.3;_
2025-11-17T14:48:33.604 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:33.604 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:33.604 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:33.605 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:33.605 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:33.605 [INFO] [Thread-68288 (handle)] [driver.py] [get_status()] Telra = 20.965772, teldec = -24.256281
2025-11-17T14:48:33.605 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] UnCookCoordinates 20.965772 -24.256281
2025-11-17T14:48:33.605 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.965772 -24.256281
2025-11-17T14:48:33.605 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.965772 -24.256281
2025-11-17T14:48:33.606 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 17;20.965772;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98552;2460997.03372229;14.80930333;1.3;_20.9405015346955 -24.3544166845937
2025-11-17T14:48:33.606 [INFO] [Thread-68288 (handle)] [driver.py] [get_status()] ra_j2k = 20.9405015346955     dec_j2k = -24.3544166845937
2025-11-17T14:48:33.606 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:33.606 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 140;0.104687718296714;171.162346601491;_
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response 140;0.104687718296714;171.162346601491;_
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:33.607 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:33.608 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:33.608 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:33.608 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:33.608 [DEBUG] [Thread-68288 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:33.608 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:33.609 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:33.609 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:33.609 [DEBUG] [Thread-68288 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:33.609 [DEBUG] [Thread-68288 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:33.610 [DEBUG] [Thread-68288 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52055)
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:33.614 [DEBUG] [Thread-68288 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:33.621 [DEBUG] [Thread-68288 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:33.622 [DEBUG] [Thread-68288 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:48:33.622 [INFO] [Thread-68288 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03372227, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687718296714, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992704, telescope_ra=20.965772, telescope_dec=-24.256281, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.98552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9405015346955, telescope_dec_j2k=-24.3544166845937, observability=1)
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.560575485229492s
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:36.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:36.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:36.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9664912;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98624;2460997.03375213;14.81002056;1.3;_
2025-11-17T14:48:36.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.9664912;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98624;2460997.03375213;14.81002056;1.3;_
2025-11-17T14:48:36.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:36.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:36.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:36.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:36.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:36.185 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.9664912, teldec = -24.256281
2025-11-17T14:48:36.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.9664912 -24.256281
2025-11-17T14:48:36.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.9664912 -24.256281
2025-11-17T14:48:36.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9664912 -24.256281
2025-11-17T14:48:36.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9664912;-24.256281;50.108241;89.992704;50.08601;90.12017;17.98624;2460997.03375215;14.81002056;1.3;_20.9412212208473 -24.3544364195112
2025-11-17T14:48:36.186 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9412212208473     dec_j2k = -24.3544364195112
2025-11-17T14:48:36.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:36.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:36.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687437513114;171.162357330327;_
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687437513114;171.162357330327;_
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:36.187 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:36.188 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54187)
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:36.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:36.198 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:48:36.198 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03375213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687437513114, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108241, telescope_az=89.992704, telescope_ra=20.9664912, telescope_dec=-24.256281, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.98624, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9412212208473, telescope_dec_j2k=-24.3544364195112, observability=1)
2025-11-17T14:48:36.198 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.01503300666809 seconds ago
2025-11-17T14:48:51.264 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:48:51
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.065794467926025s
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:48:51.264 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9707032;-24.256281;50.10824;89.992704;50.08601;90.12017;17.99045;2460997.03392668;14.81422111;1.3;_
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.9707032;-24.256281;50.10824;89.992704;50.08601;90.12017;17.99045;2460997.03392668;14.81422111;1.3;_
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:48:51.265 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:48:51.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:51.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:48:51.266 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.9707032, teldec = -24.256281
2025-11-17T14:48:51.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9707032 -24.256281
2025-11-17T14:48:51.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9707032 -24.256281
2025-11-17T14:48:51.266 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9707032 -24.256281
2025-11-17T14:48:51.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9707032;-24.256281;50.10824;89.992704;50.08601;90.12017;17.99045;2460997.0339267;14.81422111;1.3;_20.9454360702056 -24.3545519281227
2025-11-17T14:48:51.267 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9454360702056     dec_j2k = -24.3545519281227
2025-11-17T14:48:51.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:48:51.267 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104688119416142;171.162362694745;_
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104688119416142;171.162362694745;_
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:51.268 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:48:51.269 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:48:51.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:51.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:48:51.270 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35767)
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:48:51.276 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:48:51.283 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:48:51.284 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:48:51.284 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:48:51.284 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:48:51.284 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03392668, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688119416142, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992704, telescope_ra=20.9707032, telescope_dec=-24.256281, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.99045, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:48:03.015011', telescope_ra_j2k=20.9454360702056, telescope_dec_j2k=-24.3545519281227, observability=1)
2025-11-17T14:48:51.687 [DEBUG] [Thread-68289 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:48:51.687 [DEBUG] [Thread-68289 (handle)] [server.py] [get_status()] Status age = 0.4030747413635254s
2025-11-17T14:48:51.687 [DEBUG] [Thread-68289 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.4030747413635254
2025-11-17T14:49:03.156 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:03.157 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:03.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:03.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:03.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:03.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:03.158 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:03.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:03.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:03.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:03.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:03.159 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:49:03.159 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:03.159 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:03.159 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:03.159 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:03.159 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:49:03.160 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:49:03.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:04.161 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:04.162 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:04.162 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:49:04.162 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:49:04.162 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:49:04.162 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:04.163 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:04.163 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:04.163 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:04.163 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:04.163 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:04.164 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:04.164 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:04.164 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:04.164 [DEBUG] [ThreadPoolExecutor-2926_0] [payload.py] [to_registers()] [0]
2025-11-17T14:49:04.165 [DEBUG] [ThreadPoolExecutor-2926_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59447)
2025-11-17T14:49:04.165 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:04.166 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:04.166 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:49:04.166 [DEBUG] [ThreadPoolExecutor-2926_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:04.166 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:04.173 [DEBUG] [ThreadPoolExecutor-2926_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 16.530404567718506s
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:07.814 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9753008;-24.256281;50.10824;89.992703;50.08601;90.12017;17.99505;2460997.03411823;14.81880611;1.3;_
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9753008;-24.256281;50.10824;89.992703;50.08601;90.12017;17.99505;2460997.03411823;14.81880611;1.3;_
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:07.815 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:07.816 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:07.816 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:07.816 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9753008, teldec = -24.256281
2025-11-17T14:49:07.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9753008 -24.256281
2025-11-17T14:49:07.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9753008 -24.256281
2025-11-17T14:49:07.817 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9753008 -24.256281
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9753008;-24.256281;50.10824;89.992703;50.08601;90.12017;17.99505;2460997.03411825;14.81880611;1.3;_20.950036784717 -24.35467787649
2025-11-17T14:49:07.818 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.950036784717     dec_j2k = -24.35467787649
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687758408657;171.162362694745;_
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687758408657;171.162362694745;_
2025-11-17T14:49:07.818 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:07.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:07.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:07.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:07.819 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:07.820 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:07.820 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:07.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:07.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:07.820 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:07.821 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:07.821 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:07.821 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51121)
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:07.828 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:07.836 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:07.836 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03411823, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687758408657, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992703, telescope_ra=20.9753008, telescope_dec=-24.256281, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.99505, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.950036784717, telescope_dec_j2k=-24.35467787649, observability=1)
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Status age = 1.9583864212036133s
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:09.795 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:09.796 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:09.797 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 17;20.9758523;-24.256281;50.10824;89.992703;50.08601;90.12017;17.9956;2460997.03414117;14.81935611;1.3;_
2025-11-17T14:49:09.797 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response 17;20.9758523;-24.256281;50.10824;89.992703;50.08601;90.12017;17.9956;2460997.03414117;14.81935611;1.3;_
2025-11-17T14:49:09.797 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:09.797 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:09.798 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:09.798 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:09.798 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:09.799 [INFO] [Thread-68290 (handle)] [driver.py] [get_status()] Telra = 20.9758523, teldec = -24.256281
2025-11-17T14:49:09.799 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9758523 -24.256281
2025-11-17T14:49:09.799 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9758523 -24.256281
2025-11-17T14:49:09.799 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9758523 -24.256281
2025-11-17T14:49:09.800 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 17;20.9758523;-24.256281;50.10824;89.992703;50.08601;90.12017;17.9956;2460997.0341412;14.81935611;1.3;_20.950588658616 -24.3546929750256
2025-11-17T14:49:09.800 [INFO] [Thread-68290 (handle)] [driver.py] [get_status()] ra_j2k = 20.950588658616     dec_j2k = -24.3546929750256
2025-11-17T14:49:09.800 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:09.800 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:09.800 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:09.800 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 140;0.104687838632542;171.162351965909;_
2025-11-17T14:49:09.801 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response 140;0.104687838632542;171.162351965909;_
2025-11-17T14:49:09.801 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:09.801 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:09.801 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:09.801 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:09.802 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:09.803 [DEBUG] [Thread-68290 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:09.803 [DEBUG] [Thread-68290 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:09.803 [DEBUG] [Thread-68290 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48339)
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:09.805 [DEBUG] [Thread-68290 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:09.812 [DEBUG] [Thread-68290 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:09.813 [DEBUG] [Thread-68290 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:09.813 [DEBUG] [Thread-68290 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:09.813 [INFO] [Thread-68290 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03414117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687838632542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992703, telescope_ra=20.9758523, telescope_dec=-24.256281, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.9956, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.950588658616, telescope_dec_j2k=-24.3546929750256, observability=1)
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.2294042110443115s
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9773299;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99708;2460997.0342019;14.82082972;1.3;_
2025-11-17T14:49:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.9773299;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99708;2460997.0342019;14.82082972;1.3;_
2025-11-17T14:49:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:15.045 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.9773299, teldec = -24.25628
2025-11-17T14:49:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9773299 -24.25628
2025-11-17T14:49:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9773299 -24.25628
2025-11-17T14:49:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9773299 -24.25628
2025-11-17T14:49:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9773299;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99708;2460997.03420192;14.82082972;1.3;_20.9520672608451 -24.3547324177055
2025-11-17T14:49:15.046 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.9520672608451     dec_j2k = -24.3547324177055
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688119416142;171.162357330327;_
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688119416142;171.162357330327;_
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37237)
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:15.061 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:15.061 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:15.061 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0342019, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688119416142, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992703, telescope_ra=20.9773299, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.99708, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9520672608451, telescope_dec_j2k=-24.3547324177055, observability=1)
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Status age = 1.6682705879211426s
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:16.729 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:16.730 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:16.730 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 17;20.9777787;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99753;2460997.03422141;14.82127722;1.3;_
2025-11-17T14:49:16.730 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response 17;20.9777787;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99753;2460997.03422141;14.82127722;1.3;_
2025-11-17T14:49:16.730 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:16.730 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:16.731 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:16.731 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:16.731 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:16.732 [INFO] [Thread-68291 (handle)] [driver.py] [get_status()] Telra = 20.9777787, teldec = -24.25628
2025-11-17T14:49:16.732 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9777787 -24.25628
2025-11-17T14:49:16.732 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9777787 -24.25628
2025-11-17T14:49:16.732 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9777787 -24.25628
2025-11-17T14:49:16.733 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 17;20.9777787;-24.25628;50.10824;89.992703;50.08601;90.12017;17.99753;2460997.03422144;14.82127722;1.3;_20.9525163653051 -24.3547446986821
2025-11-17T14:49:16.733 [INFO] [Thread-68291 (handle)] [driver.py] [get_status()] ra_j2k = 20.9525163653051     dec_j2k = -24.3547446986821
2025-11-17T14:49:16.733 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:16.733 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:16.733 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 140;0.104687678184771;171.162362694745;_
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response 140;0.104687678184771;171.162362694745;_
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:16.734 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:16.735 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:16.736 [DEBUG] [Thread-68291 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:16.736 [DEBUG] [Thread-68291 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:16.736 [DEBUG] [Thread-68291 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36279)
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:16.743 [DEBUG] [Thread-68291 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:16.750 [DEBUG] [Thread-68291 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:16.750 [INFO] [Thread-68291 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03422141, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687678184771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992703, telescope_ra=20.9777787, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=17.99753, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9525163653051, telescope_dec_j2k=-24.3547446986821, observability=1)
2025-11-17T14:49:27.861 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Status age = 11.111136436462402s
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:27.862 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:27.863 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:27.864 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 17;20.9808963;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00065;2460997.03435027;14.82438639;1.3;_
2025-11-17T14:49:27.864 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response 17;20.9808963;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00065;2460997.03435027;14.82438639;1.3;_
2025-11-17T14:49:27.864 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:27.864 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:27.864 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:27.865 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:27.865 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:27.865 [INFO] [Thread-68292 (handle)] [driver.py] [get_status()] Telra = 20.9808963, teldec = -24.25628
2025-11-17T14:49:27.865 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9808963 -24.25628
2025-11-17T14:49:27.865 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9808963 -24.25628
2025-11-17T14:49:27.865 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9808963 -24.25628
2025-11-17T14:49:27.866 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 17;20.9808963;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00065;2460997.0343503;14.82438639;1.3;_20.9556360814225 -24.3548299716891
2025-11-17T14:49:27.866 [INFO] [Thread-68292 (handle)] [driver.py] [get_status()] ra_j2k = 20.9556360814225     dec_j2k = -24.3548299716891
2025-11-17T14:49:27.866 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:27.866 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:27.866 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 140;0.104687878744485;171.162346601491;_
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response 140;0.104687878744485;171.162346601491;_
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:27.867 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:27.868 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:27.868 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:27.868 [DEBUG] [Thread-68292 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:27.868 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:27.868 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:27.869 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:27.869 [DEBUG] [Thread-68292 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:27.869 [DEBUG] [Thread-68292 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:27.869 [DEBUG] [Thread-68292 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43009)
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:27.876 [DEBUG] [Thread-68292 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:27.883 [DEBUG] [Thread-68292 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:27.883 [INFO] [Thread-68292 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03435027, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687878744485, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992702, telescope_ra=20.9808963, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.00065, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9556360814225, telescope_dec_j2k=-24.3548299716891, observability=1)
2025-11-17T14:49:29.173 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:29.173 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:29.173 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:29.173 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:29.173 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:29.174 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:49:29.175 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:49:29.176 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.374554634094238s
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:36.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:36.259 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:36.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:36.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:36.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:36.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.98324;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00299;2460997.03444744;14.82672361;1.3;_
2025-11-17T14:49:36.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.98324;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00299;2460997.03444744;14.82672361;1.3;_
2025-11-17T14:49:36.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:36.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:36.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:36.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:36.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:36.261 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.98324, teldec = -24.25628
2025-11-17T14:49:36.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.98324 -24.25628
2025-11-17T14:49:36.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.98324 -24.25628
2025-11-17T14:49:36.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.98324 -24.25628
2025-11-17T14:49:36.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.98324;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00299;2460997.03444748;14.82672361;1.3;_20.9579813735997 -24.354894034157
2025-11-17T14:49:36.262 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9579813735997     dec_j2k = -24.354894034157
2025-11-17T14:49:36.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:36.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:36.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687838632542;171.162357330327;_
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687838632542;171.162357330327;_
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:36.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:36.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:36.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:36.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:36.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52351)
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:36.267 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:36.274 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:49:36.275 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03444744, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687838632542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992702, telescope_ra=20.98324, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.00299, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9579813735997, telescope_dec_j2k=-24.354894034157, observability=1)
2025-11-17T14:49:36.275 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.0109007358551 seconds ago
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Status age = 9.654635429382324s
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:45.929 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:45.930 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:45.930 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 17;20.9859111;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00566;2460997.03455939;14.8293875;1.3;_
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response 17;20.9859111;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00566;2460997.03455939;14.8293875;1.3;_
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:45.931 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:45.932 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:45.932 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:45.932 [INFO] [Thread-68293 (handle)] [driver.py] [get_status()] Telra = 20.9859111, teldec = -24.25628
2025-11-17T14:49:45.932 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9859111 -24.25628
2025-11-17T14:49:45.932 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9859111 -24.25628
2025-11-17T14:49:45.932 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9859111 -24.25628
2025-11-17T14:49:45.933 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 17;20.9859111;-24.25628;50.10824;89.992702;50.08601;90.12017;18.00566;2460997.03455941;14.8293875;1.3;_20.9606542896122 -24.3549670009993
2025-11-17T14:49:45.933 [INFO] [Thread-68293 (handle)] [driver.py] [get_status()] ra_j2k = 20.9606542896122     dec_j2k = -24.3549670009993
2025-11-17T14:49:45.933 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:45.933 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 140;0.104688440311684;171.162362694745;_
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response 140;0.104688440311684;171.162362694745;_
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:45.934 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:49:45.935 [DEBUG] [Thread-68293 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50301)
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:45.942 [DEBUG] [Thread-68293 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:45.949 [DEBUG] [Thread-68293 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:45.950 [DEBUG] [Thread-68293 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:45.950 [INFO] [Thread-68293 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03455939, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688440311684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992702, telescope_ra=20.9859111, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.00566, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9606542896122, telescope_dec_j2k=-24.3549670009993, observability=1)
2025-11-17T14:49:51.345 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:49:51
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.394898176193237s
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:49:51.345 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9874414;-24.25628;50.10824;89.992701;50.08601;90.12017;18.00719;2460997.03462206;14.83091361;1.3;_
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;20.9874414;-24.25628;50.10824;89.992701;50.08601;90.12017;18.00719;2460997.03462206;14.83091361;1.3;_
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:49:51.346 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:49:51.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:51.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:49:51.347 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 20.9874414, teldec = -24.25628
2025-11-17T14:49:51.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9874414 -24.25628
2025-11-17T14:49:51.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9874414 -24.25628
2025-11-17T14:49:51.347 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9874414 -24.25628
2025-11-17T14:49:51.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;20.9874414;-24.25628;50.10824;89.992701;50.08601;90.12017;18.00719;2460997.03462208;14.83091361;1.3;_20.9621856307044 -24.3550087829454
2025-11-17T14:49:51.348 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9621856307044     dec_j2k = -24.3550087829454
2025-11-17T14:49:51.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:49:51.348 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104688480423627;171.162357330327;_
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104688480423627;171.162357330327;_
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:51.349 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:49:51.350 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35991)
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:49:51.351 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:49:51.358 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:49:51.358 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:49:51.359 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:49:51.359 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03462206, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688480423627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992701, telescope_ra=20.9874414, telescope_dec=-24.25628, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.00719, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:49:03.156316', telescope_ra_j2k=20.9621856307044, telescope_dec_j2k=-24.3550087829454, observability=1)
2025-11-17T14:50:03.300 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:03.300 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:03.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:03.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:03.301 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:03.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:03.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:03.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:03.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:03.302 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:50:03.302 [INFO] [ThreadPoolExecutor-2927_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:50:03.303 [INFO] [ThreadPoolExecutor-2927_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:50:04.040 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:04.040 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Status age = 12.68145203590393s
2025-11-17T14:50:04.040 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:04.041 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:04.042 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 17;20.9909532;-24.256279;50.10824;89.992701;50.08601;90.12017;18.0107;2460997.034769;14.83441583;1.3;_
2025-11-17T14:50:04.042 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response 17;20.9909532;-24.256279;50.10824;89.992701;50.08601;90.12017;18.0107;2460997.034769;14.83441583;1.3;_
2025-11-17T14:50:04.042 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:04.042 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:04.042 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:04.043 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:04.043 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:04.043 [INFO] [Thread-68294 (handle)] [driver.py] [get_status()] Telra = 20.9909532, teldec = -24.256279
2025-11-17T14:50:04.043 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9909532 -24.256279
2025-11-17T14:50:04.043 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9909532 -24.256279
2025-11-17T14:50:04.044 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9909532 -24.256279
2025-11-17T14:50:04.044 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 17;20.9909532;-24.256279;50.10824;89.992701;50.08601;90.12017;18.0107;2460997.03476903;14.83441583;1.3;_20.9656998218677 -24.3551036068702
2025-11-17T14:50:04.044 [INFO] [Thread-68294 (handle)] [driver.py] [get_status()] ra_j2k = 20.9656998218677     dec_j2k = -24.3551036068702
2025-11-17T14:50:04.045 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:04.045 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:04.045 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 140;0.104688159528085;171.162357330327;_
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response 140;0.104688159528085;171.162357330327;_
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:04.046 [DEBUG] [Thread-68294 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:04.047 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:04.047 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:04.047 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:04.048 [DEBUG] [Thread-68294 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:04.048 [DEBUG] [Thread-68294 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:04.048 [DEBUG] [Thread-68294 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43173)
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:04.053 [DEBUG] [Thread-68294 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:04.060 [DEBUG] [Thread-68294 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:04.060 [INFO] [Thread-68294 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.034769, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688159528085, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992701, telescope_ra=20.9909532, telescope_dec=-24.256279, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.0107, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9656998218677, telescope_dec_j2k=-24.3551036068702, observability=1)
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.8666343688964844s
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:06.927 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:06.928 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:06.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9917663;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01152;2460997.03480242;14.83522667;1.3;_
2025-11-17T14:50:06.929 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;20.9917663;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01152;2460997.03480242;14.83522667;1.3;_
2025-11-17T14:50:06.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:06.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:06.929 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:06.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:06.930 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:06.930 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 20.9917663, teldec = -24.256279
2025-11-17T14:50:06.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9917663 -24.256279
2025-11-17T14:50:06.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9917663 -24.256279
2025-11-17T14:50:06.930 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9917663 -24.256279
2025-11-17T14:50:06.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;20.9917663;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01152;2460997.03480244;14.83522667;1.3;_20.9665134758405 -24.3551257815449
2025-11-17T14:50:06.931 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9665134758405     dec_j2k = -24.3551257815449
2025-11-17T14:50:06.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:06.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:06.931 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:06.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688400199741;171.162346601491;_
2025-11-17T14:50:06.932 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688400199741;171.162346601491;_
2025-11-17T14:50:06.932 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:06.932 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:06.933 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35005)
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:06.939 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:06.947 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:06.947 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03480242, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688400199741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992701, telescope_ra=20.9917663, telescope_dec=-24.256279, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.01152, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9665134758405, telescope_dec_j2k=-24.3551257815449, observability=1)
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.065967798233032s
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:15.013 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:15.014 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9940264;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01378;2460997.03489601;14.83748056;1.3;_
2025-11-17T14:50:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;20.9940264;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01378;2460997.03489601;14.83748056;1.3;_
2025-11-17T14:50:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:15.015 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:15.016 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 20.9940264, teldec = -24.256279
2025-11-17T14:50:15.016 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9940264 -24.256279
2025-11-17T14:50:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9940264 -24.256279
2025-11-17T14:50:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9940264 -24.256279
2025-11-17T14:50:15.017 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;20.9940264;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01378;2460997.03489603;14.83748056;1.3;_20.9687751164022 -24.3551873952085
2025-11-17T14:50:15.017 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.9687751164022     dec_j2k = -24.3551873952085
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10468823975197;171.162346601491;_
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10468823975197;171.162346601491;_
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:15.018 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:15.019 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:50:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:15.020 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39847)
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:15.025 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:15.033 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03489601, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468823975197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992701, telescope_ra=20.9940264, telescope_dec=-24.256279, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.01378, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9687751164022, telescope_dec_j2k=-24.3551873952085, observability=1)
2025-11-17T14:50:16.786 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:16.786 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Status age = 1.7531826496124268s
2025-11-17T14:50:16.786 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:16.786 [DEBUG] [Thread-68295 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:16.786 [DEBUG] [Thread-68295 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:16.787 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:16.788 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 17;20.9945222;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01427;2460997.03491653;14.837975;1.3;_
2025-11-17T14:50:16.788 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response 17;20.9945222;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01427;2460997.03491653;14.837975;1.3;_
2025-11-17T14:50:16.788 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:16.788 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:16.788 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:16.789 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:16.789 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:16.789 [INFO] [Thread-68295 (handle)] [driver.py] [get_status()] Telra = 20.9945222, teldec = -24.256279
2025-11-17T14:50:16.789 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9945222 -24.256279
2025-11-17T14:50:16.789 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9945222 -24.256279
2025-11-17T14:50:16.789 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9945222 -24.256279
2025-11-17T14:50:16.790 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 17;20.9945222;-24.256279;50.10824;89.992701;50.08601;90.12017;18.01427;2460997.03491655;14.837975;1.3;_20.9692712545008 -24.3552009068715
2025-11-17T14:50:16.790 [INFO] [Thread-68295 (handle)] [driver.py] [get_status()] ra_j2k = 20.9692712545008     dec_j2k = -24.3552009068715
2025-11-17T14:50:16.790 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:16.790 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:16.790 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 140;0.104688119416142;171.162362694745;_
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response 140;0.104688119416142;171.162362694745;_
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:16.791 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:16.792 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:16.793 [DEBUG] [Thread-68295 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:16.793 [DEBUG] [Thread-68295 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:16.793 [DEBUG] [Thread-68295 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40883)
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:16.799 [DEBUG] [Thread-68295 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:16.806 [DEBUG] [Thread-68295 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:16.806 [INFO] [Thread-68295 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03491653, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688119416142, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992701, telescope_ra=20.9945222, telescope_dec=-24.256279, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.01427, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9692712545008, telescope_dec_j2k=-24.3552009068715, observability=1)
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Status age = 5.297513961791992s
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:22.104 [DEBUG] [Thread-68296 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 17;20.9959976;-24.256279;50.10824;89.9927;50.08601;90.12017;18.01575;2460997.03497807;14.83944639;1.3;_
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response 17;20.9959976;-24.256279;50.10824;89.9927;50.08601;90.12017;18.01575;2460997.03497807;14.83944639;1.3;_
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:22.105 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:22.106 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:22.106 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:22.106 [INFO] [Thread-68296 (handle)] [driver.py] [get_status()] Telra = 20.9959976, teldec = -24.256279
2025-11-17T14:50:22.106 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] UnCookCoordinates 20.9959976 -24.256279
2025-11-17T14:50:22.106 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 20.9959976 -24.256279
2025-11-17T14:50:22.106 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9959976 -24.256279
2025-11-17T14:50:22.107 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 17;20.9959976;-24.256279;50.10824;89.9927;50.08601;90.12017;18.01575;2460997.03497809;14.83944639;1.3;_20.9707476609208 -24.3552411050869
2025-11-17T14:50:22.107 [INFO] [Thread-68296 (handle)] [driver.py] [get_status()] ra_j2k = 20.9707476609208     dec_j2k = -24.3552411050869
2025-11-17T14:50:22.107 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:22.107 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:22.107 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 140;0.104688600759455;171.162357330327;_
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response 140;0.104688600759455;171.162357330327;_
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:22.108 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:22.109 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:22.110 [DEBUG] [Thread-68296 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:22.110 [DEBUG] [Thread-68296 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:22.110 [DEBUG] [Thread-68296 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:22.112 [DEBUG] [Thread-68296 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56337)
2025-11-17T14:50:22.113 [DEBUG] [Thread-68296 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:22.113 [DEBUG] [Thread-68296 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:22.113 [DEBUG] [Thread-68296 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:22.113 [DEBUG] [Thread-68296 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:22.113 [DEBUG] [Thread-68296 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:22.120 [DEBUG] [Thread-68296 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:22.120 [INFO] [Thread-68296 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03497807, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688600759455, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.9927, telescope_ra=20.9959976, telescope_dec=-24.256279, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.01575, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9707476609208, telescope_dec_j2k=-24.3552411050869, observability=1)
2025-11-17T14:50:24.176 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.176 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.176 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:24.176 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:24.176 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:50:24.177 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:24.178 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:24.179 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:50:24.180 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:24.181 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Park
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:50:24.182 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:50:24.183 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 29;20.9965872;-24.256279;50.10824;89.9927;50.08601;90.12017;18.01634;2460997.03500212;14.84003444;1.3;_Park Command Successful
2025-11-17T14:50:25.183 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:50:25.183 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:50:25.183 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:50:25.184 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:50:25.184 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:50:26.184 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:50:26.184 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:50:26.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:50:26.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:50:26.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:50:27.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:50:27.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:50:27.185 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:50:27.186 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:50:27.186 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:50:28.186 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:50:28.186 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:50:28.186 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:28.187 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:50:28.188 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:50:28.189 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:29.189 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:29.189 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:29.189 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:29.189 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:29.189 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:50:29.190 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:50:29.191 [DEBUG] [ThreadPoolExecutor-2926_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:29.191 [INFO] [ThreadPoolExecutor-2926_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.214389324188232s
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:36.335 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:36.336 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:36.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9999554;-24.256272;50.10824;89.992689;50.08601;90.12016;18.01971;2460997.03514279;14.84339361;1.3;_
2025-11-17T14:50:36.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;20.9999554;-24.256272;50.10824;89.992689;50.08601;90.12016;18.01971;2460997.03514279;14.84339361;1.3;_
2025-11-17T14:50:36.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:36.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:36.337 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:36.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:36.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:36.338 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 20.9999554, teldec = -24.256272
2025-11-17T14:50:36.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 20.9999554 -24.256272
2025-11-17T14:50:36.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 20.9999554 -24.256272
2025-11-17T14:50:36.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 20.9999554 -24.256272
2025-11-17T14:50:36.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;20.9999554;-24.256272;50.10824;89.992689;50.08601;90.12016;18.01971;2460997.03514281;14.84339361;1.3;_20.9747081639588 -24.3553418664606
2025-11-17T14:50:36.339 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9747081639588     dec_j2k = -24.3553418664606
2025-11-17T14:50:36.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:36.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:36.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104688841431112;171.162357330327;_
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104688841431112;171.162357330327;_
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:36.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:36.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:36.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:36.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:36.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35509)
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:36.343 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:36.350 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:50:36.351 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03514279, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688841431112, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.992689, telescope_ra=20.9999554, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.01971, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9747081639588, telescope_dec_j2k=-24.3553418664606, observability=1)
2025-11-17T14:50:36.351 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.005945920944214 seconds ago
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Status age = 3.815290927886963s
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:40.166 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:40.167 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:40.168 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 17;21.0010213;-24.256278;50.10824;89.9927;50.08601;90.12017;18.02077;2460997.03518713;14.84445639;1.3;_
2025-11-17T14:50:40.168 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response 17;21.0010213;-24.256278;50.10824;89.9927;50.08601;90.12017;18.02077;2460997.03518713;14.84445639;1.3;_
2025-11-17T14:50:40.168 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:40.168 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:40.168 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:40.169 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:40.169 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:40.169 [INFO] [Thread-68297 (handle)] [driver.py] [get_status()] Telra = 21.0010213, teldec = -24.256278
2025-11-17T14:50:40.169 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0010213 -24.256278
2025-11-17T14:50:40.169 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0010213 -24.256278
2025-11-17T14:50:40.169 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0010213 -24.256278
2025-11-17T14:50:40.170 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 17;21.0010213;-24.256278;50.10824;89.9927;50.08601;90.12017;18.02077;2460997.03518715;14.84445639;1.3;_20.9757747913476 -24.3553768696134
2025-11-17T14:50:40.170 [INFO] [Thread-68297 (handle)] [driver.py] [get_status()] ra_j2k = 20.9757747913476     dec_j2k = -24.3553768696134
2025-11-17T14:50:40.170 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:40.170 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:40.170 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 140;0.104688801319169;171.162351965909;_
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response 140;0.104688801319169;171.162351965909;_
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:40.171 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:40.172 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:40.173 [DEBUG] [Thread-68297 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:40.173 [DEBUG] [Thread-68297 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:40.173 [DEBUG] [Thread-68297 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33905)
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:40.178 [DEBUG] [Thread-68297 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:40.185 [DEBUG] [Thread-68297 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:40.185 [DEBUG] [Thread-68297 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:40.186 [DEBUG] [Thread-68297 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:40.186 [INFO] [Thread-68297 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03518713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688801319169, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10824, telescope_az=89.9927, telescope_ra=21.0010213, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.02077, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9757747913476, telescope_dec_j2k=-24.3553768696134, observability=1)
2025-11-17T14:50:51.420 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:50:51
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.23422622680664s
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:51.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:51.421 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:51.422 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:51.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0041643;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02391;2460997.0353174;14.84759083;1.3;_
2025-11-17T14:50:51.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0041643;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02391;2460997.0353174;14.84759083;1.3;_
2025-11-17T14:50:51.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:51.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:51.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:51.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:51.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:51.424 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0041643, teldec = -24.256278
2025-11-17T14:50:51.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0041643 -24.256278
2025-11-17T14:50:51.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0041643 -24.256278
2025-11-17T14:50:51.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0041643 -24.256278
2025-11-17T14:50:51.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0041643;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02391;2460997.03531742;14.84759083;1.3;_20.9789199401572 -24.3554623480048
2025-11-17T14:50:51.425 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9789199401572     dec_j2k = -24.3554623480048
2025-11-17T14:50:51.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:51.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:51.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104689202438598;171.162351965909;_
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104689202438598;171.162351965909;_
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:51.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:51.427 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:51.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:51.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:51.428 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44473)
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:51.432 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:51.439 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:51.439 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0353174, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689202438598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992699, telescope_ra=21.0041643, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.02391, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9789199401572, telescope_dec_j2k=-24.3554623480048, observability=1)
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Status age = 6.8478593826293945s
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:50:58.287 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:50:58.288 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:50:58.289 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 17;21.0060628;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02581;2460997.03539686;14.84948417;1.3;_
2025-11-17T14:50:58.289 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response 17;21.0060628;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02581;2460997.03539686;14.84948417;1.3;_
2025-11-17T14:50:58.289 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:50:58.289 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:50:58.289 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:50:58.290 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:58.290 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:50:58.290 [INFO] [Thread-68298 (handle)] [driver.py] [get_status()] Telra = 21.0060628, teldec = -24.256278
2025-11-17T14:50:58.290 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0060628 -24.256278
2025-11-17T14:50:58.290 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0060628 -24.256278
2025-11-17T14:50:58.290 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0060628 -24.256278
2025-11-17T14:50:58.291 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 17;21.006091;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02584;2460997.03539689;14.84951222;1.3;_20.9808197391346 -24.3555139482791
2025-11-17T14:50:58.291 [INFO] [Thread-68298 (handle)] [driver.py] [get_status()] ra_j2k = 20.9808197391346     dec_j2k = -24.3555139482791
2025-11-17T14:50:58.291 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:50:58.291 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:50:58.291 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:58.292 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:50:58.293 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:50:58.294 [DEBUG] [Thread-68298 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:58.294 [DEBUG] [Thread-68298 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:50:58.294 [DEBUG] [Thread-68298 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42477)
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:50:58.295 [DEBUG] [Thread-68298 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:50:58.302 [DEBUG] [Thread-68298 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:50:58.302 [DEBUG] [Thread-68298 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:50:58.303 [DEBUG] [Thread-68298 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:50:58.303 [INFO] [Thread-68298 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03539686, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688640871398, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992699, telescope_ra=21.0060628, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.02581, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:50:03.300136', telescope_ra_j2k=20.9808197391346, telescope_dec_j2k=-24.3555139482791, observability=1)
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:03.441 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:03.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:03.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:03.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:03.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:03.442 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:51:03.442 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:03.443 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:51:03.444 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:51:03.444 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:51:03.444 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:04.445 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:04.445 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:04.445 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:04.445 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:04.445 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:51:04.446 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:04.447 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:04.448 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:04.448 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:04.448 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:04.448 [DEBUG] [ThreadPoolExecutor-2928_0] [payload.py] [to_registers()] [0]
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50141)
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:04.452 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:04.459 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:04.459 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:51:04.459 [DEBUG] [ThreadPoolExecutor-2928_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:51:04.459 [DEBUG] [ThreadPoolExecutor-2928_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:51:04.459 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:04.460 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:04.460 [DEBUG] [ThreadPoolExecutor-2928_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.734858751296997s
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:06.038 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:06.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:06.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:06.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:06.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0082326;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02798;2460997.03548656;14.85164806;1.3;_
2025-11-17T14:51:06.040 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.0082326;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02798;2460997.03548656;14.85164806;1.3;_
2025-11-17T14:51:06.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:06.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:06.040 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:06.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:06.041 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:06.041 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.0082326, teldec = -24.256278
2025-11-17T14:51:06.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0082326 -24.256278
2025-11-17T14:51:06.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0082326 -24.256278
2025-11-17T14:51:06.041 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0082326 -24.256278
2025-11-17T14:51:06.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0082326;-24.256278;50.108239;89.992699;50.08601;90.12017;18.02798;2460997.0354866;14.85164806;1.3;_20.9829910246688 -24.3555728926749
2025-11-17T14:51:06.042 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9829910246688     dec_j2k = -24.3555728926749
2025-11-17T14:51:06.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:06.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:06.042 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104689082102769;171.162357330327;_
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104689082102769;171.162357330327;_
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:06.043 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:06.044 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:06.045 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:06.045 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:06.045 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43449)
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:06.052 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:06.059 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:06.059 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:06.060 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:06.060 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03548656, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689082102769, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992699, telescope_ra=21.0082326, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.02798, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9829910246688, telescope_dec_j2k=-24.3555728926749, observability=1)
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.972846984863281s
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0107386;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03049;2460997.03559068;14.85414722;1.3;_
2025-11-17T14:51:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.0107386;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03049;2460997.03559068;14.85414722;1.3;_
2025-11-17T14:51:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:15.036 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.0107386, teldec = -24.256278
2025-11-17T14:51:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0107386 -24.256278
2025-11-17T14:51:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0107386 -24.256278
2025-11-17T14:51:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0107386 -24.256278
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0107386;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03049;2460997.03559071;14.85414722;1.3;_20.9854987416131 -24.3556409308034
2025-11-17T14:51:15.038 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 20.9854987416131     dec_j2k = -24.3556409308034
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104689202438598;171.162351965909;_
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104689202438598;171.162351965909;_
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57969)
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:15.051 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:15.051 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:15.051 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03559068, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689202438598, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992699, telescope_ra=21.0107386, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.03049, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9854987416131, telescope_dec_j2k=-24.3556409308034, observability=1)
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Status age = 1.3064892292022705s
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:16.357 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:16.358 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:16.359 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 17;21.0111046;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03085;2460997.03560601;14.85451222;1.3;_
2025-11-17T14:51:16.359 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response 17;21.0111046;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03085;2460997.03560601;14.85451222;1.3;_
2025-11-17T14:51:16.359 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:16.359 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:16.359 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:16.360 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:16.360 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:16.360 [INFO] [Thread-68299 (handle)] [driver.py] [get_status()] Telra = 21.0111046, teldec = -24.256278
2025-11-17T14:51:16.360 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0111046 -24.256278
2025-11-17T14:51:16.360 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0111046 -24.256278
2025-11-17T14:51:16.360 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0111046 -24.256278
2025-11-17T14:51:16.361 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 17;21.0111046;-24.256278;50.108239;89.992699;50.08601;90.12017;18.03085;2460997.03560603;14.85451222;1.3;_20.9858649924826 -24.3556508641992
2025-11-17T14:51:16.361 [INFO] [Thread-68299 (handle)] [driver.py] [get_status()] ra_j2k = 20.9858649924826     dec_j2k = -24.3556508641992
2025-11-17T14:51:16.361 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:16.361 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:16.361 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 140;0.104688921654998;171.162357330327;_
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response 140;0.104688921654998;171.162357330327;_
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:16.362 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:16.363 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:16.363 [DEBUG] [Thread-68299 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:16.363 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:16.363 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:16.363 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:16.364 [DEBUG] [Thread-68299 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:16.364 [DEBUG] [Thread-68299 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:16.364 [DEBUG] [Thread-68299 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47439)
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:16.365 [DEBUG] [Thread-68299 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:16.373 [DEBUG] [Thread-68299 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:16.373 [INFO] [Thread-68299 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03560601, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688921654998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992699, telescope_ra=21.0111046, telescope_dec=-24.256278, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.03085, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9858649924826, telescope_dec_j2k=-24.3556508641992, observability=1)
2025-11-17T14:51:16.840 [DEBUG] [Thread-68300 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:16.840 [DEBUG] [Thread-68300 (handle)] [server.py] [get_status()] Status age = 0.46656084060668945s
2025-11-17T14:51:16.840 [DEBUG] [Thread-68300 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.46656084060668945
2025-11-17T14:51:29.460 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:29.460 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:29.460 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:29.460 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:29.460 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:29.461 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:51:29.462 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:51:29.463 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Status age = 18.103760242462158s
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:34.477 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:34.478 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:34.478 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:34.478 [DEBUG] [Thread-68301 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 17;21.0161431;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03589;2460997.03581573;14.85953694;1.3;_
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response 17;21.0161431;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03589;2460997.03581573;14.85953694;1.3;_
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:34.479 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:34.480 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:34.480 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:34.480 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:34.481 [INFO] [Thread-68301 (handle)] [driver.py] [get_status()] Telra = 21.0161431, teldec = -24.256277
2025-11-17T14:51:34.481 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0161431 -24.256277
2025-11-17T14:51:34.481 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0161431 -24.256277
2025-11-17T14:51:34.481 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0161431 -24.256277
2025-11-17T14:51:34.482 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 17;21.0161713;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03592;2460997.03581575;14.859565;1.3;_20.99090694906 -24.3557865196235
2025-11-17T14:51:34.482 [INFO] [Thread-68301 (handle)] [driver.py] [get_status()] ra_j2k = 20.99090694906     dec_j2k = -24.3557865196235
2025-11-17T14:51:34.482 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:34.482 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:34.482 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:34.482 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 140;0.104688400199741;171.162362694745;_
2025-11-17T14:51:34.483 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response 140;0.104688400199741;171.162362694745;_
2025-11-17T14:51:34.483 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:34.483 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:34.483 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:34.483 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:34.484 [DEBUG] [Thread-68301 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57877)
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:34.487 [DEBUG] [Thread-68301 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:34.494 [DEBUG] [Thread-68301 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:34.494 [DEBUG] [Thread-68301 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:34.494 [DEBUG] [Thread-68301 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:34.494 [DEBUG] [Thread-68301 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:34.495 [DEBUG] [Thread-68301 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:34.495 [DEBUG] [Thread-68301 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:34.495 [DEBUG] [Thread-68301 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:34.495 [DEBUG] [Thread-68301 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:34.495 [DEBUG] [Thread-68301 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:34.495 [INFO] [Thread-68301 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03581573, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688400199741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992698, telescope_ra=21.0161431, telescope_dec=-24.256277, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.03589, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.99090694906, telescope_dec_j2k=-24.3557865196235, observability=1)
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.9159395694732666s
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:36.411 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:36.412 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:36.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0167047;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03645;2460997.03583811;14.86009694;1.3;_
2025-11-17T14:51:36.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.0167047;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03645;2460997.03583811;14.86009694;1.3;_
2025-11-17T14:51:36.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:36.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:36.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:36.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:36.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:36.414 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.0167047, teldec = -24.256277
2025-11-17T14:51:36.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.0167047 -24.256277
2025-11-17T14:51:36.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.0167047 -24.256277
2025-11-17T14:51:36.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0167047 -24.256277
2025-11-17T14:51:36.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0167047;-24.256277;50.108239;89.992698;50.08601;90.12017;18.03645;2460997.03583814;14.86009694;1.3;_20.9914689346506 -24.3558017408668
2025-11-17T14:51:36.415 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 20.9914689346506     dec_j2k = -24.3558017408668
2025-11-17T14:51:36.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:36.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:36.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104688881543055;171.162351965909;_
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104688881543055;171.162351965909;_
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:36.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:36.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:36.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:36.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:36.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58781)
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:36.421 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:36.429 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:51:36.429 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03583811, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688881543055, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992698, telescope_ra=21.0167047, telescope_dec=-24.256277, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.03645, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9914689346506, telescope_dec_j2k=-24.3558017408668, observability=1)
2025-11-17T14:51:36.429 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.009318828582764 seconds ago
2025-11-17T14:51:51.500 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:51:51
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.071163415908813s
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:51.500 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:51.501 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:51.502 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:51.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0208872;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04064;2460997.03601277;14.86426806;1.3;_
2025-11-17T14:51:51.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0208872;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04064;2460997.03601277;14.86426806;1.3;_
2025-11-17T14:51:51.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:51.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:51.503 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:51.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:51.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:51.504 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0208872, teldec = -24.256277
2025-11-17T14:51:51.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0208872 -24.256277
2025-11-17T14:51:51.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0208872 -24.256277
2025-11-17T14:51:51.504 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0208872 -24.256277
2025-11-17T14:51:51.505 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0208872;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04064;2460997.03601279;14.86426806;1.3;_20.9956543084109 -24.3559150337192
2025-11-17T14:51:51.505 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 20.9956543084109     dec_j2k = -24.3559150337192
2025-11-17T14:51:51.505 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:51.505 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:51.505 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104689362886369;171.162346601491;_
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104689362886369;171.162346601491;_
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:51.506 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:51.507 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:51.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:51.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:51.508 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43577)
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:51.515 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:51.522 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:51.523 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:51.523 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:51.523 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03601277, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689362886369, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992697, telescope_ra=21.0208872, telescope_dec=-24.256277, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04064, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9956543084109, telescope_dec_j2k=-24.3559150337192, observability=1)
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Status age = 1.0290253162384033s
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:51:52.552 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:51:52.553 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 17;21.0211858;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04094;2460997.03602492;14.86456583;1.3;_
2025-11-17T14:51:52.553 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response 17;21.0211858;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04094;2460997.03602492;14.86456583;1.3;_
2025-11-17T14:51:52.553 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:51:52.553 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:51:52.553 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:51:52.554 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:52.554 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:51:52.554 [INFO] [Thread-68302 (handle)] [driver.py] [get_status()] Telra = 21.0211858, teldec = -24.256277
2025-11-17T14:51:52.555 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0211858 -24.256277
2025-11-17T14:51:52.555 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0211858 -24.256277
2025-11-17T14:51:52.555 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0211858 -24.256277
2025-11-17T14:51:52.556 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 17;21.0211858;-24.256277;50.108239;89.992697;50.08601;90.12017;18.04094;2460997.03602494;14.86456583;1.3;_20.9959531137169 -24.3559231174876
2025-11-17T14:51:52.556 [INFO] [Thread-68302 (handle)] [driver.py] [get_status()] ra_j2k = 20.9959531137169     dec_j2k = -24.3559231174876
2025-11-17T14:51:52.556 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:51:52.556 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:51:52.556 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 140;0.104688480423627;171.162368059163;_
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response 140;0.104688480423627;171.162368059163;_
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:51:52.557 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:51:52.558 [DEBUG] [Thread-68302 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:52.558 [DEBUG] [Thread-68302 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:51:52.558 [DEBUG] [Thread-68302 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56249)
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:51:52.565 [DEBUG] [Thread-68302 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:51:52.572 [DEBUG] [Thread-68302 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:51:52.573 [INFO] [Thread-68302 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03602492, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688480423627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992697, telescope_ra=21.0211858, telescope_dec=-24.256277, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04094, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:51:03.440649', telescope_ra_j2k=20.9959531137169, telescope_dec_j2k=-24.3559231174876, observability=1)
2025-11-17T14:52:03.583 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:03.583 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:03.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:03.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:03.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:03.584 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:03.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:03.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:03.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:03.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:03.585 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:52:03.585 [INFO] [ThreadPoolExecutor-2929_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:52:03.585 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.582297801971436s
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:05.155 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:05.156 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:05.157 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0246982;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04445;2460997.0361708;14.86806861;1.3;_
2025-11-17T14:52:05.157 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.0246982;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04445;2460997.0361708;14.86806861;1.3;_
2025-11-17T14:52:05.157 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:05.157 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:05.157 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:05.158 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:05.158 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:05.158 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.0246982, teldec = -24.256276
2025-11-17T14:52:05.158 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0246982 -24.256276
2025-11-17T14:52:05.158 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0246982 -24.256276
2025-11-17T14:52:05.158 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0246982 -24.256276
2025-11-17T14:52:05.159 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0246982;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04445;2460997.03617082;14.86806861;1.3;_20.9994679302601 -24.3560171608926
2025-11-17T14:52:05.159 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 20.9994679302601     dec_j2k = -24.3560171608926
2025-11-17T14:52:05.159 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:05.159 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:05.159 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:05.160 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:52:05.160 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:52:05.160 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:05.160 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:05.160 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:05.161 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:05.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:05.162 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:05.162 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:05.163 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58403)
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:05.165 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:05.172 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:05.173 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:05.173 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0361708, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688640871398, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992697, telescope_ra=21.0246982, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04445, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=20.9994679302601, telescope_dec_j2k=-24.3560171608926, observability=1)
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Status age = 5.428633213043213s
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:10.601 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:10.602 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:10.603 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 17;21.0262031;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04595;2460997.03623383;14.86956944;1.3;_
2025-11-17T14:52:10.603 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response 17;21.0262031;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04595;2460997.03623383;14.86956944;1.3;_
2025-11-17T14:52:10.603 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:10.603 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:10.603 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:10.604 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:10.604 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:10.604 [INFO] [Thread-68303 (handle)] [driver.py] [get_status()] Telra = 21.0262031, teldec = -24.256276
2025-11-17T14:52:10.604 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0262031 -24.256276
2025-11-17T14:52:10.604 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0262031 -24.256276
2025-11-17T14:52:10.605 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0262031 -24.256276
2025-11-17T14:52:10.605 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 17;21.0262031;-24.256276;50.108239;89.992697;50.08601;90.12017;18.04595;2460997.03623385;14.86956944;1.3;_21.0009738663666 -24.3560578570189
2025-11-17T14:52:10.606 [INFO] [Thread-68303 (handle)] [driver.py] [get_status()] ra_j2k = 21.0009738663666     dec_j2k = -24.3560578570189
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 140;0.104689402998312;171.162357330327;_
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response 140;0.104689402998312;171.162357330327;_
2025-11-17T14:52:10.606 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:10.607 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:10.607 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:10.607 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:10.608 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:10.609 [DEBUG] [Thread-68303 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:10.609 [DEBUG] [Thread-68303 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:10.609 [DEBUG] [Thread-68303 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46855)
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:10.616 [DEBUG] [Thread-68303 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:10.623 [DEBUG] [Thread-68303 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:10.623 [DEBUG] [Thread-68303 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:10.623 [DEBUG] [Thread-68303 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:10.623 [DEBUG] [Thread-68303 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:10.624 [DEBUG] [Thread-68303 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:10.624 [DEBUG] [Thread-68303 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:10.624 [DEBUG] [Thread-68303 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:10.624 [DEBUG] [Thread-68303 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:10.624 [DEBUG] [Thread-68303 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:10.624 [INFO] [Thread-68303 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03623383, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689402998312, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992697, telescope_ra=21.0262031, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0009738663666, telescope_dec_j2k=-24.3560578570189, observability=1)
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.411715507507324s
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0274638;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04721;2460997.03628516;14.87082667;1.3;_
2025-11-17T14:52:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.0274638;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04721;2460997.03628516;14.87082667;1.3;_
2025-11-17T14:52:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:15.039 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.0274638, teldec = -24.256276
2025-11-17T14:52:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0274638 -24.256276
2025-11-17T14:52:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0274638 -24.256276
2025-11-17T14:52:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0274638 -24.256276
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0274638;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04721;2460997.03628519;14.87082667;1.3;_21.0022354347099 -24.3560919376021
2025-11-17T14:52:15.041 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.0022354347099     dec_j2k = -24.3560919376021
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688360087799;171.162362694745;_
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688360087799;171.162362694745;_
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39487)
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:15.050 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:15.055 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:15.056 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03628516, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688360087799, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992696, telescope_ra=21.0274638, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04721, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0022354347099, telescope_dec_j2k=-24.3560919376021, observability=1)
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Status age = 1.8165974617004395s
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:16.872 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:16.873 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 17;21.0279587;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04771;2460997.0363064;14.87132028;1.3;_
2025-11-17T14:52:16.874 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response 17;21.0279587;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04771;2460997.0363064;14.87132028;1.3;_
2025-11-17T14:52:16.874 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:16.874 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:16.874 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:16.875 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:16.875 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:16.875 [INFO] [Thread-68304 (handle)] [driver.py] [get_status()] Telra = 21.0279587, teldec = -24.256276
2025-11-17T14:52:16.875 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0279587 -24.256276
2025-11-17T14:52:16.875 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0279587 -24.256276
2025-11-17T14:52:16.875 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0279587 -24.256276
2025-11-17T14:52:16.876 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 17;21.0279587;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04771;2460997.03630644;14.87132028;1.3;_21.0027306756776 -24.3561053133273
2025-11-17T14:52:16.876 [INFO] [Thread-68304 (handle)] [driver.py] [get_status()] ra_j2k = 21.0027306756776     dec_j2k = -24.3561053133273
2025-11-17T14:52:16.876 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:16.876 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:16.876 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 140;0.104689082102769;171.162346601491;_
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response 140;0.104689082102769;171.162346601491;_
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:16.877 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:16.878 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:16.879 [DEBUG] [Thread-68304 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:16.879 [DEBUG] [Thread-68304 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:16.879 [DEBUG] [Thread-68304 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:16.884 [DEBUG] [Thread-68304 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36813)
2025-11-17T14:52:16.884 [DEBUG] [Thread-68304 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:16.884 [DEBUG] [Thread-68304 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:16.884 [DEBUG] [Thread-68304 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:16.884 [DEBUG] [Thread-68304 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:16.885 [DEBUG] [Thread-68304 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:16.892 [DEBUG] [Thread-68304 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:16.892 [INFO] [Thread-68304 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0363064, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689082102769, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992696, telescope_ra=21.0279587, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.04771, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0027306756776, telescope_dec_j2k=-24.3561053133273, observability=1)
2025-11-17T14:52:24.463 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.463 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.463 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:24.463 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:24.463 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:52:24.464 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:24.465 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:24.466 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:52:24.467 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:24.468 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Park
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:52:24.469 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:52:24.470 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 29;21.0300784;-24.256276;50.108239;89.992696;50.08601;90.12017;18.04983;2460997.03639433;14.87343417;1.3;_Park Command Successful
2025-11-17T14:52:25.470 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:52:25.470 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:52:25.470 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:52:25.471 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:52:25.471 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:52:26.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:52:26.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:52:26.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:52:26.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:52:26.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:52:27.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:52:27.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:52:27.472 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:52:27.473 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:52:27.473 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:52:28.473 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:52:28.473 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:52:28.473 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:28.474 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:52:28.475 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:52:28.476 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Status age = 11.858174085617065s
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:28.750 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:28.751 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 17;21.031273;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05102;2460997.03644389;14.87462556;1.3;_
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response 17;21.031273;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05102;2460997.03644389;14.87462556;1.3;_
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:28.752 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:28.753 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:28.753 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:28.753 [INFO] [Thread-68305 (handle)] [driver.py] [get_status()] Telra = 21.031273, teldec = -24.256276
2025-11-17T14:52:28.753 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] UnCookCoordinates 21.031273 -24.256276
2025-11-17T14:52:28.753 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.031273 -24.256276
2025-11-17T14:52:28.753 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.031273 -24.256276
2025-11-17T14:52:28.754 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 17;21.031273;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05102;2460997.03644391;14.87462556;1.3;_21.00604726043 -24.3561948466255
2025-11-17T14:52:28.754 [INFO] [Thread-68305 (handle)] [driver.py] [get_status()] ra_j2k = 21.00604726043     dec_j2k = -24.3561948466255
2025-11-17T14:52:28.754 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:28.754 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:28.754 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:28.755 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 140;0.104688801319169;171.162357330327;_
2025-11-17T14:52:28.755 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response 140;0.104688801319169;171.162357330327;_
2025-11-17T14:52:28.756 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:28.756 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:28.756 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:28.756 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:28.757 [DEBUG] [Thread-68305 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:28.758 [DEBUG] [Thread-68305 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49657)
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:28.765 [DEBUG] [Thread-68305 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:28.772 [DEBUG] [Thread-68305 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:28.773 [INFO] [Thread-68305 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03644389, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688801319169, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992696, telescope_ra=21.031273, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.05102, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.00604726043, telescope_dec_j2k=-24.3561948466255, observability=1)
2025-11-17T14:52:29.476 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:29.476 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:29.476 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:29.476 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:29.476 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:52:29.477 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:52:29.478 [DEBUG] [ThreadPoolExecutor-2928_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:29.478 [INFO] [ThreadPoolExecutor-2928_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.716248512268066s
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:36.489 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:36.490 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0334211;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05317;2460997.03653345;14.87676778;1.3;_
2025-11-17T14:52:36.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.0334211;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05317;2460997.03653345;14.87676778;1.3;_
2025-11-17T14:52:36.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:36.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:36.491 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:36.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:36.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:36.492 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.0334211, teldec = -24.256276
2025-11-17T14:52:36.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.0334211 -24.256276
2025-11-17T14:52:36.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.0334211 -24.256276
2025-11-17T14:52:36.492 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0334211 -24.256276
2025-11-17T14:52:36.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0334211;-24.256276;50.108239;89.992696;50.08601;90.12017;18.05317;2460997.03653348;14.87676778;1.3;_21.0081968424778 -24.3562528361995
2025-11-17T14:52:36.493 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.0081968424778     dec_j2k = -24.3562528361995
2025-11-17T14:52:36.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:36.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:36.493 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104688360087799;171.162362694745;_
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104688360087799;171.162362694745;_
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:36.494 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:36.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:36.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:36.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:36.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60227)
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:36.500 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:36.508 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:52:36.508 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03653345, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688360087799, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108239, telescope_az=89.992696, telescope_ra=21.0334211, telescope_dec=-24.256276, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.05317, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0081968424778, telescope_dec_j2k=-24.3562528361995, observability=1)
2025-11-17T14:52:36.508 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00816488265991 seconds ago
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Status age = 10.3138267993927s
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:46.822 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:46.823 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 17;21.036316;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05607;2460997.03665306;14.87965472;1.3;_
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response 17;21.036316;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05607;2460997.03665306;14.87965472;1.3;_
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:46.824 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:46.825 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:46.825 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:46.825 [INFO] [Thread-68306 (handle)] [driver.py] [get_status()] Telra = 21.036316, teldec = -24.256275
2025-11-17T14:52:46.825 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] UnCookCoordinates 21.036316 -24.256275
2025-11-17T14:52:46.825 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.036316 -24.256275
2025-11-17T14:52:46.825 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.036316 -24.256275
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 17;21.036316;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05607;2460997.03665308;14.87965472;1.3;_21.0110937414414 -24.3563299368466
2025-11-17T14:52:46.826 [INFO] [Thread-68306 (handle)] [driver.py] [get_status()] ra_j2k = 21.0110937414414     dec_j2k = -24.3563299368466
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 140;0.104689122214712;171.162357330327;_
2025-11-17T14:52:46.826 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response 140;0.104689122214712;171.162357330327;_
2025-11-17T14:52:46.827 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:46.827 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:46.827 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:46.827 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:46.828 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:46.829 [DEBUG] [Thread-68306 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:46.829 [DEBUG] [Thread-68306 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:46.829 [DEBUG] [Thread-68306 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33999)
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:46.830 [DEBUG] [Thread-68306 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:46.837 [DEBUG] [Thread-68306 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:46.837 [INFO] [Thread-68306 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03665306, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689122214712, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992695, telescope_ra=21.036316, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.05607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0110937414414, telescope_dec_j2k=-24.3563299368466, observability=1)
2025-11-17T14:52:51.583 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:52:51
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.745802164077759s
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:52:51.583 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0376321;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05738;2460997.03670815;14.88096722;1.3;_
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0376321;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05738;2460997.03670815;14.88096722;1.3;_
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:52:51.584 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:52:51.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:51.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:52:51.585 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0376321, teldec = -24.256275
2025-11-17T14:52:51.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0376321 -24.256275
2025-11-17T14:52:51.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0376321 -24.256275
2025-11-17T14:52:51.585 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0376321 -24.256275
2025-11-17T14:52:51.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0376321;-24.256275;50.108238;89.992695;50.08601;90.12017;18.05738;2460997.03670817;14.88096722;1.3;_21.0124107507387 -24.3563654246887
2025-11-17T14:52:51.586 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.0124107507387     dec_j2k = -24.3563654246887
2025-11-17T14:52:51.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:52:51.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:52:51.586 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104688881543055;171.162351965909;_
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104688881543055;171.162351965909;_
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:52:51.587 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:52:51.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:52:51.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:51.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:52:51.588 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40123)
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:52:51.593 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:52:51.600 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:52:51.601 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:52:51.601 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03670815, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688881543055, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992695, telescope_ra=21.0376321, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.05738, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:52:03.583083', telescope_ra_j2k=21.0124107507387, telescope_dec_j2k=-24.3563654246887, observability=1)
2025-11-17T14:53:03.727 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:03.727 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:03.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:03.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:03.727 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:03.728 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:03.728 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:03.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:03.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:03.730 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:03.730 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:53:03.730 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:03.730 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:03.730 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:03.730 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:03.730 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:53:03.731 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:53:03.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.661178350448608s
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:04.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:04.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:04.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:04.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.041172;-24.256275;50.108238;89.992695;50.08601;90.12017;18.06092;2460997.03685491;14.8844975;1.3;_
2025-11-17T14:53:04.264 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.041172;-24.256275;50.108238;89.992695;50.08601;90.12017;18.06092;2460997.03685491;14.8844975;1.3;_
2025-11-17T14:53:04.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:04.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:04.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:04.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:04.266 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:04.266 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.041172, teldec = -24.256275
2025-11-17T14:53:04.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.041172 -24.256275
2025-11-17T14:53:04.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.041172 -24.256275
2025-11-17T14:53:04.266 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.041172 -24.256275
2025-11-17T14:53:04.267 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.041172;-24.256275;50.108238;89.992695;50.08601;90.12017;18.06092;2460997.03685494;14.8844975;1.3;_21.0159530982637 -24.3564608176521
2025-11-17T14:53:04.267 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.0159530982637     dec_j2k = -24.3564608176521
2025-11-17T14:53:04.267 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:04.267 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:04.267 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688841431112;171.162357330327;_
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688841431112;171.162357330327;_
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:04.268 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:04.269 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:04.270 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:04.270 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:04.270 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40823)
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:04.275 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:04.282 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:04.282 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:04.283 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:04.283 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03685491, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688841431112, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992695, telescope_ra=21.041172, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.06092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0159530982637, telescope_dec_j2k=-24.3564608176521, observability=1)
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:04.732 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:04.733 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:04.734 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:04.734 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:04.734 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:04.734 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:04.735 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:04.735 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:04.735 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:04.735 [DEBUG] [ThreadPoolExecutor-2930_0] [payload.py] [to_registers()] [0]
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41255)
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:04.736 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:04.743 [DEBUG] [ThreadPoolExecutor-2930_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:04.883 [DEBUG] [Thread-68307 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:04.883 [DEBUG] [Thread-68307 (handle)] [server.py] [get_status()] Status age = 0.6006062030792236s
2025-11-17T14:53:04.884 [DEBUG] [Thread-68307 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6006062030792236
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.756441354751587s
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0441788;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06393;2460997.03697964;14.88749611;1.3;_
2025-11-17T14:53:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.0441788;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06393;2460997.03697964;14.88749611;1.3;_
2025-11-17T14:53:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:15.043 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.0441788, teldec = -24.256275
2025-11-17T14:53:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0441788 -24.256275
2025-11-17T14:53:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0441788 -24.256275
2025-11-17T14:53:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0441788 -24.256275
2025-11-17T14:53:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0441788;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06393;2460997.03697968;14.88749611;1.3;_21.0189619792553 -24.3565417778631
2025-11-17T14:53:15.044 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.0189619792553     dec_j2k = -24.3565417778631
2025-11-17T14:53:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688961766941;171.162351965909;_
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688961766941;171.162351965909;_
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53921)
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:15.060 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:15.060 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:15.061 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:15.061 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:15.061 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:15.061 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03697964, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688961766941, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992694, telescope_ra=21.0441788, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.06393, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0189619792553, telescope_dec_j2k=-24.3565417778631, observability=1)
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Status age = 1.8602852821350098s
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:16.921 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:16.922 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:16.923 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 17;21.0447053;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06446;2460997.03700142;14.88802111;1.3;_
2025-11-17T14:53:16.923 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response 17;21.0447053;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06446;2460997.03700142;14.88802111;1.3;_
2025-11-17T14:53:16.923 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:16.923 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:16.923 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:16.924 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:16.924 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:16.924 [INFO] [Thread-68308 (handle)] [driver.py] [get_status()] Telra = 21.0447053, teldec = -24.256275
2025-11-17T14:53:16.924 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0447053 -24.256275
2025-11-17T14:53:16.924 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0447053 -24.256275
2025-11-17T14:53:16.924 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0447053 -24.256275
2025-11-17T14:53:16.925 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 17;21.0447053;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06446;2460997.03700145;14.88802111;1.3;_21.0194888438377 -24.3565559479288
2025-11-17T14:53:16.925 [INFO] [Thread-68308 (handle)] [driver.py] [get_status()] ra_j2k = 21.0194888438377     dec_j2k = -24.3565559479288
2025-11-17T14:53:16.925 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:16.925 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:16.925 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 140;0.104688721095284;171.162357330327;_
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response 140;0.104688721095284;171.162357330327;_
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:16.926 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:16.927 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:16.928 [DEBUG] [Thread-68308 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:16.928 [DEBUG] [Thread-68308 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:16.928 [DEBUG] [Thread-68308 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59139)
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:16.934 [DEBUG] [Thread-68308 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:16.942 [DEBUG] [Thread-68308 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:16.942 [INFO] [Thread-68308 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03700142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688721095284, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992694, telescope_ra=21.0447053, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.06446, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0194888438377, telescope_dec_j2k=-24.3565559479288, observability=1)
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Status age = 6.069487810134888s
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:23.012 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:23.013 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:23.014 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 17;21.0463759;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06613;2460997.03707192;14.88968722;1.3;_
2025-11-17T14:53:23.014 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response 17;21.0463759;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06613;2460997.03707192;14.88968722;1.3;_
2025-11-17T14:53:23.014 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:23.014 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:23.014 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:23.015 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:23.015 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:23.015 [INFO] [Thread-68309 (handle)] [driver.py] [get_status()] Telra = 21.0463759, teldec = -24.256275
2025-11-17T14:53:23.015 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0463759 -24.256275
2025-11-17T14:53:23.015 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0463759 -24.256275
2025-11-17T14:53:23.015 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0463759 -24.256275
2025-11-17T14:53:23.016 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 17;21.0463759;-24.256275;50.108238;89.992694;50.08601;90.12017;18.06613;2460997.03707194;14.88968722;1.3;_21.0211606010517 -24.3566008974923
2025-11-17T14:53:23.016 [INFO] [Thread-68309 (handle)] [driver.py] [get_status()] ra_j2k = 21.0211606010517     dec_j2k = -24.3566008974923
2025-11-17T14:53:23.016 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:23.016 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:23.016 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 140;0.104688560647513;171.162341237072;_
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response 140;0.104688560647513;171.162341237072;_
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:23.017 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:23.018 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:23.019 [DEBUG] [Thread-68309 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:23.019 [DEBUG] [Thread-68309 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:23.019 [DEBUG] [Thread-68309 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41597)
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:23.022 [DEBUG] [Thread-68309 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:23.029 [DEBUG] [Thread-68309 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:23.030 [DEBUG] [Thread-68309 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:23.030 [INFO] [Thread-68309 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03707192, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688560647513, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992694, telescope_ra=21.0463759, telescope_dec=-24.256275, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.06613, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0211606010517, telescope_dec_j2k=-24.3566008974923, observability=1)
2025-11-17T14:53:29.744 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:29.744 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:29.744 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:29.744 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:29.744 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:29.745 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:53:29.746 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:53:29.747 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:36.568 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 13.538894414901733s
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:36.569 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:36.570 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:36.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0501671;-24.256274;50.108238;89.992694;50.08601;90.12017;18.06992;2460997.03722883;14.89346806;1.3;_
2025-11-17T14:53:36.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.0501671;-24.256274;50.108238;89.992694;50.08601;90.12017;18.06992;2460997.03722883;14.89346806;1.3;_
2025-11-17T14:53:36.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:36.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:36.571 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:36.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:36.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:36.572 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.0501671, teldec = -24.256274
2025-11-17T14:53:36.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.0501671 -24.256274
2025-11-17T14:53:36.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.0501671 -24.256274
2025-11-17T14:53:36.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0501671 -24.256274
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0501671;-24.256274;50.108238;89.992694;50.08601;90.12017;18.06992;2460997.03722885;14.89346806;1.3;_21.0249544294971 -24.3567018341265
2025-11-17T14:53:36.573 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.0249544294971     dec_j2k = -24.3567018341265
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104689322774426;171.162357330327;_
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104689322774426;171.162357330327;_
2025-11-17T14:53:36.573 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:36.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:36.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:36.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:36.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39279)
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:36.579 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:36.586 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:53:36.586 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03722883, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689322774426, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992694, telescope_ra=21.0501671, telescope_dec=-24.256274, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.06992, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0249544294971, telescope_dec_j2k=-24.3567018341265, observability=1)
2025-11-17T14:53:36.586 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00340247154236 seconds ago
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Status age = 4.495701789855957s
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:41.082 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:41.083 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:41.084 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 17;21.051418;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07117;2460997.03728106;14.89471556;1.3;_
2025-11-17T14:53:41.084 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response 17;21.051418;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07117;2460997.03728106;14.89471556;1.3;_
2025-11-17T14:53:41.084 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:41.084 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:41.084 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:41.085 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:41.085 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:41.085 [INFO] [Thread-68310 (handle)] [driver.py] [get_status()] Telra = 21.051418, teldec = -24.256274
2025-11-17T14:53:41.085 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] UnCookCoordinates 21.051418 -24.256274
2025-11-17T14:53:41.085 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.051418 -24.256274
2025-11-17T14:53:41.085 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.051418 -24.256274
2025-11-17T14:53:41.086 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 17;21.051418;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07117;2460997.03728109;14.89471556;1.3;_21.0262061973587 -24.3567354464572
2025-11-17T14:53:41.086 [INFO] [Thread-68310 (handle)] [driver.py] [get_status()] ra_j2k = 21.0262061973587     dec_j2k = -24.3567354464572
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 140;0.104688761207227;171.162357330327;_
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response 140;0.104688761207227;171.162357330327;_
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:41.087 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:41.088 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:41.088 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:41.088 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:41.088 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:41.089 [DEBUG] [Thread-68310 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:41.089 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:41.089 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:41.089 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:41.090 [DEBUG] [Thread-68310 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:53:41.090 [DEBUG] [Thread-68310 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:53:41.090 [DEBUG] [Thread-68310 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:53:41.096 [DEBUG] [Thread-68310 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38317)
2025-11-17T14:53:41.096 [DEBUG] [Thread-68310 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:41.096 [DEBUG] [Thread-68310 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:41.096 [DEBUG] [Thread-68310 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:41.096 [DEBUG] [Thread-68310 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:41.097 [DEBUG] [Thread-68310 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:41.104 [DEBUG] [Thread-68310 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:41.104 [INFO] [Thread-68310 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03728106, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688761207227, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992693, telescope_ra=21.051418, telescope_dec=-24.256274, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.07117, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0262061973587, telescope_dec_j2k=-24.3567354464572, observability=1)
2025-11-17T14:53:51.661 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:53:51
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.556692838668823s
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:51.661 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:51.662 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:51.663 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0543792;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07413;2460997.03740351;14.89766861;1.3;_
2025-11-17T14:53:51.663 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0543792;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07413;2460997.03740351;14.89766861;1.3;_
2025-11-17T14:53:51.663 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:51.663 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:51.663 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:51.664 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:51.664 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:51.664 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0543792, teldec = -24.256274
2025-11-17T14:53:51.664 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0543792 -24.256274
2025-11-17T14:53:51.664 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0543792 -24.256274
2025-11-17T14:53:51.664 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0543792 -24.256274
2025-11-17T14:53:51.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0543792;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07413;2460997.03740353;14.89766861;1.3;_21.0291694531095 -24.3568149729725
2025-11-17T14:53:51.665 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.0291694531095     dec_j2k = -24.3568149729725
2025-11-17T14:53:51.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:51.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:51.665 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104689122214712;171.162351965909;_
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104689122214712;171.162351965909;_
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:51.666 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:51.667 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:51.668 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49201)
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:51.672 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:51.679 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:51.679 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:51.679 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:51.679 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:51.679 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:51.680 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:51.680 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:51.680 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:51.680 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:51.680 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03740351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689122214712, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992693, telescope_ra=21.0543792, telescope_dec=-24.256274, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.07413, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0291694531095, telescope_dec_j2k=-24.3568149729725, observability=1)
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Status age = 7.473555326461792s
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:53:59.153 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:53:59.154 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:53:59.155 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 17;21.0564624;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07621;2460997.03749022;14.89974611;1.3;_
2025-11-17T14:53:59.155 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response 17;21.0564624;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07621;2460997.03749022;14.89974611;1.3;_
2025-11-17T14:53:59.155 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:53:59.155 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:53:59.156 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:53:59.156 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:59.156 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:53:59.157 [INFO] [Thread-68311 (handle)] [driver.py] [get_status()] Telra = 21.0564624, teldec = -24.256274
2025-11-17T14:53:59.157 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0564624 -24.256274
2025-11-17T14:53:59.157 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0564624 -24.256274
2025-11-17T14:53:59.157 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0564624 -24.256274
2025-11-17T14:53:59.158 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 17;21.0564624;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07621;2460997.03749024;14.89974611;1.3;_21.0312541004223 -24.3568708839685
2025-11-17T14:53:59.158 [INFO] [Thread-68311 (handle)] [driver.py] [get_status()] ra_j2k = 21.0312541004223     dec_j2k = -24.3568708839685
2025-11-17T14:53:59.158 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:53:59.158 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:53:59.158 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 140;0.104688440311684;171.162368059163;_
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response 140;0.104688440311684;171.162368059163;_
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:59.159 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:53:59.160 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:53:59.161 [DEBUG] [Thread-68311 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:59.161 [DEBUG] [Thread-68311 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:53:59.161 [DEBUG] [Thread-68311 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58493)
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:53:59.165 [DEBUG] [Thread-68311 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:53:59.172 [DEBUG] [Thread-68311 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:53:59.172 [INFO] [Thread-68311 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03749022, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688440311684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992693, telescope_ra=21.0564624, telescope_dec=-24.256274, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.07621, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0312541004223, telescope_dec_j2k=-24.3568708839685, observability=1)
2025-11-17T14:54:03.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:03.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.201034069061279s
2025-11-17T14:54:03.373 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:03.373 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:03.373 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:03.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:03.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:03.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:03.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:03.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:03.375 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:03.375 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:03.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:03.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:03.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:03.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0576398;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07739;2460997.03753906;14.90092028;1.3;_
2025-11-17T14:54:03.376 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.0576398;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07739;2460997.03753906;14.90092028;1.3;_
2025-11-17T14:54:03.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:03.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:03.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:03.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:03.377 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:03.377 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.0576398, teldec = -24.256274
2025-11-17T14:54:03.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0576398 -24.256274
2025-11-17T14:54:03.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0576398 -24.256274
2025-11-17T14:54:03.377 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0576398 -24.256274
2025-11-17T14:54:03.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0576398;-24.256274;50.108238;89.992693;50.08601;90.12017;18.07739;2460997.0375391;14.90092028;1.3;_21.0324323188264 -24.356902471118
2025-11-17T14:54:03.378 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.0324323188264     dec_j2k = -24.356902471118
2025-11-17T14:54:03.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:03.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:03.378 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688921654998;171.162351965909;_
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688921654998;171.162351965909;_
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:03.379 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_GetRotatorData
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:03.380 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:03.381 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:54:03.381 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:54:03.381 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43631)
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:03.384 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:03.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:03.392 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:03.392 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03753906, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688921654998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992693, telescope_ra=21.0576398, telescope_dec=-24.256274, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.07739, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:53:03.726871', telescope_ra_j2k=21.0324323188264, telescope_dec_j2k=-24.356902471118, observability=1)
2025-11-17T14:54:03.870 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:03.870 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:03.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:03.870 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:03.871 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:03.871 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:03.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:03.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:03.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:03.872 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:03.872 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:54:03.873 [INFO] [ThreadPoolExecutor-2931_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:54:03.873 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.634733438491821s
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0608725;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08062;2460997.03767395;14.90414417;1.3;_
2025-11-17T14:54:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.0608725;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08062;2460997.03767395;14.90414417;1.3;_
2025-11-17T14:54:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:15.030 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.0608725, teldec = -24.256273
2025-11-17T14:54:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0608725 -24.256273
2025-11-17T14:54:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0608725 -24.256273
2025-11-17T14:54:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0608725 -24.256273
2025-11-17T14:54:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0608725;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08062;2460997.03767397;14.90414417;1.3;_21.0356672674854 -24.3569881490967
2025-11-17T14:54:15.031 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.0356672674854     dec_j2k = -24.3569881490967
2025-11-17T14:54:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688480423627;171.162362694745;_
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688480423627;171.162362694745;_
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53477)
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:15.043 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:15.043 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03767395, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688480423627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992692, telescope_ra=21.0608725, telescope_dec=-24.256273, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.08062, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0356672674854, telescope_dec_j2k=-24.3569881490967, observability=1)
2025-11-17T14:54:16.976 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:16.976 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Status age = 1.93318772315979s
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:16.977 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:16.978 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:16.979 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 17;21.0614245;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08117;2460997.03769652;14.90469472;1.3;_
2025-11-17T14:54:16.979 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response 17;21.0614245;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08117;2460997.03769652;14.90469472;1.3;_
2025-11-17T14:54:16.979 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:16.979 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:16.979 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:16.980 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:16.980 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:16.980 [INFO] [Thread-68312 (handle)] [driver.py] [get_status()] Telra = 21.0614245, teldec = -24.256273
2025-11-17T14:54:16.980 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0614245 -24.256273
2025-11-17T14:54:16.980 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0614245 -24.256273
2025-11-17T14:54:16.980 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0614245 -24.256273
2025-11-17T14:54:16.981 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 17;21.0614245;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08117;2460997.03769654;14.90469472;1.3;_21.0362196516483 -24.3570029426589
2025-11-17T14:54:16.981 [INFO] [Thread-68312 (handle)] [driver.py] [get_status()] ra_j2k = 21.0362196516483     dec_j2k = -24.3570029426589
2025-11-17T14:54:16.981 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:16.981 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:16.981 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response 140;0.104688640871398;171.162351965909;_
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:16.982 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:16.983 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:16.984 [DEBUG] [Thread-68312 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:16.984 [DEBUG] [Thread-68312 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:16.984 [DEBUG] [Thread-68312 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36989)
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:16.986 [DEBUG] [Thread-68312 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:16.993 [DEBUG] [Thread-68312 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:16.993 [INFO] [Thread-68312 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03769652, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688640871398, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992692, telescope_ra=21.0614245, telescope_dec=-24.256273, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.08117, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0362196516483, telescope_dec_j2k=-24.3570029426589, observability=1)
2025-11-17T14:54:17.268 [DEBUG] [Thread-68313 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:17.268 [DEBUG] [Thread-68313 (handle)] [server.py] [get_status()] Status age = 0.2744927406311035s
2025-11-17T14:54:17.268 [DEBUG] [Thread-68313 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2744927406311035
2025-11-17T14:54:24.747 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.747 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.747 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:24.747 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:24.747 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:54:24.748 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:24.749 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:24.750 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.750 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:24.750 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:24.750 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.750 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.751 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:24.751 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:24.751 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:24.751 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.751 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:54:24.752 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:24.753 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Park
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:54:24.754 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 29;21.0635757;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08333;2460997.0377865;14.90684;1.3;_Park Command Successful
2025-11-17T14:54:25.755 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:54:25.755 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:54:25.755 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:54:25.755 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:54:25.756 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:54:26.756 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:54:26.756 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:54:26.756 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:54:26.757 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:54:26.757 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:54:27.757 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:54:27.757 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:54:27.757 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:54:27.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:54:27.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:28.758 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:54:28.759 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:54:28.760 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:29.760 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:29.760 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:29.760 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:29.760 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:29.760 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:54:29.761 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:54:29.762 [DEBUG] [ThreadPoolExecutor-2930_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:29.762 [INFO] [ThreadPoolExecutor-2930_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Status age = 18.342265844345093s
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:35.336 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:35.337 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:35.338 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 17;21.0665265;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08628;2460997.037909;14.90978278;1.3;_
2025-11-17T14:54:35.338 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response 17;21.0665265;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08628;2460997.037909;14.90978278;1.3;_
2025-11-17T14:54:35.338 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:35.338 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:35.338 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:35.339 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:35.339 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:35.339 [INFO] [Thread-68314 (handle)] [driver.py] [get_status()] Telra = 21.0665265, teldec = -24.256273
2025-11-17T14:54:35.339 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0665265 -24.256273
2025-11-17T14:54:35.339 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0665265 -24.256273
2025-11-17T14:54:35.339 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0665265 -24.256273
2025-11-17T14:54:35.340 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 17;21.0665265;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08628;2460997.03790903;14.90978278;1.3;_21.0413252053716 -24.3571395774147
2025-11-17T14:54:35.340 [INFO] [Thread-68314 (handle)] [driver.py] [get_status()] ra_j2k = 21.0413252053716     dec_j2k = -24.3571395774147
2025-11-17T14:54:35.340 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:35.340 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:35.340 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 140;0.104689041990826;171.162357330327;_
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response 140;0.104689041990826;171.162357330327;_
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:35.341 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:35.342 [DEBUG] [Thread-68314 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34705)
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:35.345 [DEBUG] [Thread-68314 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:35.352 [DEBUG] [Thread-68314 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:35.352 [INFO] [Thread-68314 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.037909, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104689041990826, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992692, telescope_ra=21.0665265, telescope_dec=-24.256273, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.08628, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0413252053716, telescope_dec_j2k=-24.3571395774147, observability=1)
2025-11-17T14:54:36.646 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:54:36.646 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.2940354347229004s
2025-11-17T14:54:36.646 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:36.646 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:36.647 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0668903;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08664;2460997.03792417;14.91014556;1.3;_
2025-11-17T14:54:36.648 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.0668903;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08664;2460997.03792417;14.91014556;1.3;_
2025-11-17T14:54:36.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:36.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:36.649 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:36.650 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:36.650 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:36.650 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.0668903, teldec = -24.256273
2025-11-17T14:54:36.650 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.0668903 -24.256273
2025-11-17T14:54:36.650 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.0668903 -24.256273
2025-11-17T14:54:36.650 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0668903 -24.256273
2025-11-17T14:54:36.651 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0668903;-24.256273;50.108238;89.992692;50.08601;90.12017;18.08664;2460997.0379242;14.91014556;1.3;_21.0416892589778 -24.3571493134134
2025-11-17T14:54:36.651 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.0416892589778     dec_j2k = -24.3571493134134
2025-11-17T14:54:36.651 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:36.651 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:36.651 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104688801319169;171.162357330327;_
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104688801319169;171.162357330327;_
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:36.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:36.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:36.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:36.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:36.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41617)
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:36.659 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:36.666 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:36.667 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:54:36.667 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03792417, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688801319169, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108238, telescope_az=89.992692, telescope_ra=21.0668903, telescope_dec=-24.256273, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.08664, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0416892589778, telescope_dec_j2k=-24.3571493134134, observability=1)
2025-11-17T14:54:36.667 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00622081756592 seconds ago
2025-11-17T14:54:51.740 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:54:51
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.073086738586426s
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:51.740 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:51.741 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:51.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0710915;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09084;2460997.03809887;14.91433528;1.3;_
2025-11-17T14:54:51.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0710915;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09084;2460997.03809887;14.91433528;1.3;_
2025-11-17T14:54:51.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:51.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:51.742 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:51.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:51.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:51.743 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0710915, teldec = -24.256272
2025-11-17T14:54:51.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0710915 -24.256272
2025-11-17T14:54:51.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0710915 -24.256272
2025-11-17T14:54:51.743 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0710915 -24.256272
2025-11-17T14:54:51.744 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0710915;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09084;2460997.03809889;14.91433528;1.3;_21.0458933897845 -24.3572606802562
2025-11-17T14:54:51.745 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.0458933897845     dec_j2k = -24.3572606802562
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104688440311684;171.162351965909;_
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104688440311684;171.162351965909;_
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:51.745 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:51.746 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:51.747 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56523)
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:51.751 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:51.758 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:51.759 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:51.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:51.759 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03809887, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688440311684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992691, telescope_ra=21.0710915, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09084, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0458933897845, telescope_dec_j2k=-24.3572606802562, observability=1)
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Status age = 1.6403131484985352s
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:54:53.399 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:54:53.400 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:54:53.401 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 17;21.0715681;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09132;2460997.03811807;14.91481056;1.3;_
2025-11-17T14:54:53.401 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response 17;21.0715681;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09132;2460997.03811807;14.91481056;1.3;_
2025-11-17T14:54:53.401 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:54:53.401 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:54:53.401 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:54:53.402 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:53.402 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:54:53.402 [INFO] [Thread-68315 (handle)] [driver.py] [get_status()] Telra = 21.0715681, teldec = -24.256272
2025-11-17T14:54:53.402 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0715681 -24.256272
2025-11-17T14:54:53.402 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0715681 -24.256272
2025-11-17T14:54:53.402 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0715681 -24.256272
2025-11-17T14:54:53.403 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 17;21.0715681;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09132;2460997.03811809;14.91481056;1.3;_21.0463703224815 -24.3572734199377
2025-11-17T14:54:53.403 [INFO] [Thread-68315 (handle)] [driver.py] [get_status()] ra_j2k = 21.0463703224815     dec_j2k = -24.3572734199377
2025-11-17T14:54:53.403 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:54:53.403 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 140;0.104688480423627;171.162351965909;_
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response 140;0.104688480423627;171.162351965909;_
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:53.404 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:53.405 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:53.405 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:53.405 [DEBUG] [Thread-68315 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:53.405 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:54:53.406 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:54:53.406 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:54:53.406 [DEBUG] [Thread-68315 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:53.406 [DEBUG] [Thread-68315 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:54:53.406 [DEBUG] [Thread-68315 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:54:53.407 [DEBUG] [Thread-68315 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52073)
2025-11-17T14:54:53.407 [DEBUG] [Thread-68315 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:54:53.407 [DEBUG] [Thread-68315 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:54:53.408 [DEBUG] [Thread-68315 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:54:53.408 [DEBUG] [Thread-68315 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:54:53.408 [DEBUG] [Thread-68315 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:54:53.415 [DEBUG] [Thread-68315 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:54:53.415 [INFO] [Thread-68315 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03811807, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688480423627, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992691, telescope_ra=21.0715681, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09132, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0463703224815, telescope_dec_j2k=-24.3572734199377, observability=1)
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.070021867752075s
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:02.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:02.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:02.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:02.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:02.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0741075;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09386;2460997.03822324;14.91734306;1.3;_
2025-11-17T14:55:02.488 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.0741075;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09386;2460997.03822324;14.91734306;1.3;_
2025-11-17T14:55:02.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:02.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:02.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:02.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:02.489 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:02.489 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.0741075, teldec = -24.256272
2025-11-17T14:55:02.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0741075 -24.256272
2025-11-17T14:55:02.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0741075 -24.256272
2025-11-17T14:55:02.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0741075 -24.256272
2025-11-17T14:55:02.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0741075;-24.256272;50.108237;89.992691;50.08601;90.12017;18.09386;2460997.03822326;14.91734306;1.3;_21.0489114959387 -24.3573412727551
2025-11-17T14:55:02.490 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.0489114959387     dec_j2k = -24.3573412727551
2025-11-17T14:55:02.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:02.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:02.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688400199741;171.162357330327;_
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688400199741;171.162357330327;_
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:02.491 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:02.492 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:02.493 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:02.493 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:02.493 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38561)
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:02.498 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:02.505 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:02.506 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:02.506 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03822324, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688400199741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992691, telescope_ra=21.0741075, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09386, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:54:03.870394', telescope_ra_j2k=21.0489114959387, telescope_dec_j2k=-24.3573412727551, observability=1)
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:04.012 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:04.012 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:55:04.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:04.013 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:04.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:04.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:04.013 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:04.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:04.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:04.014 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:04.014 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:55:04.014 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:04.014 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:04.014 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:04.014 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:04.014 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:55:04.015 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:55:04.016 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:05.016 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:05.016 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:05.016 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:05.016 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:05.016 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:55:05.017 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:05.018 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:05.019 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:05.019 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:05.019 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:05.020 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:05.020 [DEBUG] [ThreadPoolExecutor-2932_0] [payload.py] [to_registers()] [0]
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38615)
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:05.021 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:05.029 [DEBUG] [ThreadPoolExecutor-2932_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Status age = 9.032787561416626s
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:11.539 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 17;21.0766099;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09636;2460997.03832801;14.91983861;1.3;_
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response 17;21.0766099;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09636;2460997.03832801;14.91983861;1.3;_
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:11.540 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:11.541 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:11.541 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:11.542 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:11.542 [INFO] [Thread-68316 (handle)] [driver.py] [get_status()] Telra = 21.0766099, teldec = -24.256272
2025-11-17T14:55:11.542 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0766099 -24.256272
2025-11-17T14:55:11.542 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0766099 -24.256272
2025-11-17T14:55:11.542 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0766099 -24.256272
2025-11-17T14:55:11.543 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 17;21.0766099;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09636;2460997.03832804;14.91983861;1.3;_21.0514156448647 -24.357408093724
2025-11-17T14:55:11.543 [INFO] [Thread-68316 (handle)] [driver.py] [get_status()] ra_j2k = 21.0514156448647     dec_j2k = -24.357408093724
2025-11-17T14:55:11.543 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:11.543 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:11.543 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 140;0.104688319975856;171.162362694745;_
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response 140;0.104688319975856;171.162362694745;_
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:11.544 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response 16;2.931;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.931 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:11.545 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:11.546 [DEBUG] [Thread-68316 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:11.546 [DEBUG] [Thread-68316 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:11.546 [DEBUG] [Thread-68316 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54749)
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:11.548 [DEBUG] [Thread-68316 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:11.555 [DEBUG] [Thread-68316 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:11.555 [DEBUG] [Thread-68316 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:11.556 [DEBUG] [Thread-68316 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:11.556 [INFO] [Thread-68316 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03832801, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.931, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.10600000000001), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688319975856, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.99269, telescope_ra=21.0766099, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09636, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0514156448647, telescope_dec_j2k=-24.357408093724, observability=1)
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.473904848098755s
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0775903;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09734;2460997.03836841;14.92081639;1.3;_
2025-11-17T14:55:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.0775903;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09734;2460997.03836841;14.92081639;1.3;_
2025-11-17T14:55:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:15.033 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.0775903, teldec = -24.256272
2025-11-17T14:55:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0775903 -24.256272
2025-11-17T14:55:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0775903 -24.256272
2025-11-17T14:55:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0775903 -24.256272
2025-11-17T14:55:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.0775903;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09734;2460997.03836844;14.92081639;1.3;_21.0523967304198 -24.357434261403
2025-11-17T14:55:15.034 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.0523967304198     dec_j2k = -24.357434261403
2025-11-17T14:55:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688360087799;171.162368059163;_
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688360087799;171.162368059163;_
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53155)
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:15.039 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:15.047 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03836841, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688360087799, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.99269, telescope_ra=21.0775903, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09734, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0523967304198, telescope_dec_j2k=-24.357434261403, observability=1)
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Status age = 1.9800302982330322s
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:17.027 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 17;21.0781418;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09789;2460997.03839153;14.92136639;1.3;_
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response 17;21.0781418;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09789;2460997.03839153;14.92136639;1.3;_
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:17.028 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:17.029 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:17.029 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:17.029 [INFO] [Thread-68317 (handle)] [driver.py] [get_status()] Telra = 21.0781418, teldec = -24.256272
2025-11-17T14:55:17.029 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0781418 -24.256272
2025-11-17T14:55:17.030 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0781418 -24.256272
2025-11-17T14:55:17.030 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0781418 -24.256272
2025-11-17T14:55:17.030 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 17;21.0781418;-24.256272;50.108237;89.99269;50.08601;90.12017;18.09789;2460997.03839155;14.92136639;1.3;_21.0529486161496 -24.3574489784938
2025-11-17T14:55:17.031 [INFO] [Thread-68317 (handle)] [driver.py] [get_status()] ra_j2k = 21.0529486161496     dec_j2k = -24.3574489784938
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 140;0.104688600759455;171.162357330327;_
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response 140;0.104688600759455;171.162357330327;_
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:17.031 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:17.032 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:17.032 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:17.032 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:17.033 [DEBUG] [Thread-68317 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47137)
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:17.035 [DEBUG] [Thread-68317 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:17.043 [DEBUG] [Thread-68317 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:17.043 [INFO] [Thread-68317 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03839153, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688600759455, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.99269, telescope_ra=21.0781418, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.09789, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0529486161496, telescope_dec_j2k=-24.3574489784938, observability=1)
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Status age = 12.555800437927246s
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:29.599 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 17;21.0816308;-24.256272;50.108237;89.99269;50.08601;90.12017;18.10138;2460997.03853704;14.92484583;1.3;_
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response 17;21.0816308;-24.256272;50.108237;89.99269;50.08601;90.12017;18.10138;2460997.03853704;14.92484583;1.3;_
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:29.600 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:29.601 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:29.601 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:29.601 [INFO] [Thread-68318 (handle)] [driver.py] [get_status()] Telra = 21.0816308, teldec = -24.256272
2025-11-17T14:55:29.601 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0816308 -24.256272
2025-11-17T14:55:29.602 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0816308 -24.256272
2025-11-17T14:55:29.602 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0816308 -24.256272
2025-11-17T14:55:29.602 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 17;21.0816589;-24.256272;50.108237;89.99269;50.08601;90.12017;18.10141;2460997.03853706;14.92487389;1.3;_21.0564400578845 -24.357542036097
2025-11-17T14:55:29.603 [INFO] [Thread-68318 (handle)] [driver.py] [get_status()] ra_j2k = 21.0564400578845     dec_j2k = -24.357542036097
2025-11-17T14:55:29.603 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:29.603 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:29.603 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 140;0.104688440311684;171.162346601491;_
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response 140;0.104688440311684;171.162346601491;_
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:29.604 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:29.605 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:29.606 [DEBUG] [Thread-68318 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:29.606 [DEBUG] [Thread-68318 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:29.606 [DEBUG] [Thread-68318 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38607)
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:29.608 [DEBUG] [Thread-68318 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:29.616 [DEBUG] [Thread-68318 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:29.616 [INFO] [Thread-68318 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03853704, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688440311684, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.99269, telescope_ra=21.0816308, telescope_dec=-24.256272, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.10138, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0564400578845, telescope_dec_j2k=-24.357542036097, observability=1)
2025-11-17T14:55:30.029 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:30.029 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:30.029 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:30.029 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:30.029 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:30.030 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:55:30.031 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:55:30.032 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.110873222351074s
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:36.727 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:36.728 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:36.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0836316;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10338;2460997.03861955;14.92684111;1.3;_
2025-11-17T14:55:36.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.0836316;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10338;2460997.03861955;14.92684111;1.3;_
2025-11-17T14:55:36.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:36.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:36.729 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:36.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:36.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:36.730 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.0836316, teldec = -24.256271
2025-11-17T14:55:36.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.0836316 -24.256271
2025-11-17T14:55:36.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.0836316 -24.256271
2025-11-17T14:55:36.730 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0836316 -24.256271
2025-11-17T14:55:36.731 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.0836316;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10338;2460997.03861957;14.92684111;1.3;_21.0584422594007 -24.3575943632695
2025-11-17T14:55:36.731 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.0584422594007     dec_j2k = -24.3575943632695
2025-11-17T14:55:36.731 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:36.731 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:36.731 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104688319975856;171.162357330327;_
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104688319975856;171.162357330327;_
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:36.732 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:36.733 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:36.734 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:36.735 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37799)
2025-11-17T14:55:36.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:36.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:36.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:36.736 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:36.736 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:36.743 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:55:36.743 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03861955, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688319975856, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992689, telescope_ra=21.0836316, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.10338, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0584422594007, telescope_dec_j2k=-24.3575943632695, observability=1)
2025-11-17T14:55:36.743 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00347566604614 seconds ago
2025-11-17T14:55:47.661 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:47.661 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Status age = 10.918213367462158s
2025-11-17T14:55:47.661 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:47.661 [DEBUG] [Thread-68319 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:47.662 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:47.663 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 17;21.0866743;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10642;2460997.0387461;14.92987556;1.3;_
2025-11-17T14:55:47.663 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response 17;21.0866743;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10642;2460997.0387461;14.92987556;1.3;_
2025-11-17T14:55:47.663 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:47.663 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:47.663 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:47.664 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:47.664 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:47.664 [INFO] [Thread-68319 (handle)] [driver.py] [get_status()] Telra = 21.0866743, teldec = -24.256271
2025-11-17T14:55:47.664 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0866743 -24.256271
2025-11-17T14:55:47.664 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0866743 -24.256271
2025-11-17T14:55:47.664 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0866743 -24.256271
2025-11-17T14:55:47.665 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 17;21.0866743;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10642;2460997.03874612;14.92987556;1.3;_21.0614870921161 -24.3576754072811
2025-11-17T14:55:47.665 [INFO] [Thread-68319 (handle)] [driver.py] [get_status()] ra_j2k = 21.0614870921161     dec_j2k = -24.3576754072811
2025-11-17T14:55:47.665 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:47.665 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:47.665 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:47.666 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 140;0.104688279863913;171.162351965909;_
2025-11-17T14:55:47.666 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response 140;0.104688279863913;171.162351965909;_
2025-11-17T14:55:47.666 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:47.666 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:47.666 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:47.667 [DEBUG] [Thread-68319 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53283)
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:47.670 [DEBUG] [Thread-68319 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:47.677 [DEBUG] [Thread-68319 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:47.677 [DEBUG] [Thread-68319 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:47.677 [DEBUG] [Thread-68319 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:47.677 [DEBUG] [Thread-68319 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:47.678 [DEBUG] [Thread-68319 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:47.678 [DEBUG] [Thread-68319 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:47.678 [DEBUG] [Thread-68319 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:47.678 [DEBUG] [Thread-68319 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:47.678 [DEBUG] [Thread-68319 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:47.678 [INFO] [Thread-68319 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0387461, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688279863913, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992689, telescope_ra=21.0866743, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.10642, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0614870921161, telescope_dec_j2k=-24.3576754072811, observability=1)
2025-11-17T14:55:51.819 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:55:51
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.141176223754883s
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:55:51.819 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:55:51.820 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0878414;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10759;2460997.03879421;14.93103944;1.3;_
2025-11-17T14:55:51.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.0878414;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10759;2460997.03879421;14.93103944;1.3;_
2025-11-17T14:55:51.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:55:51.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:55:51.821 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:55:51.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:51.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:55:51.822 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.0878414, teldec = -24.256271
2025-11-17T14:55:51.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0878414 -24.256271
2025-11-17T14:55:51.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0878414 -24.256271
2025-11-17T14:55:51.822 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0878414 -24.256271
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.0878414;-24.256271;50.108237;89.992689;50.08601;90.12017;18.10759;2460997.03879425;14.93103944;1.3;_21.0626550106781 -24.3577064767604
2025-11-17T14:55:51.823 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.0626550106781     dec_j2k = -24.3577064767604
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104687838632542;171.162362694745;_
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104687838632542;171.162362694745;_
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:51.823 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:55:51.824 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:55:51.830 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48707)
2025-11-17T14:55:51.830 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:55:51.830 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:55:51.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:55:51.831 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:55:51.831 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:55:51.839 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:55:51.840 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03879421, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687838632542, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992689, telescope_ra=21.0878414, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.10759, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.0626550106781, telescope_dec_j2k=-24.3577064767604, observability=1)
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.757757425308228s
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:01.597 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:01.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:01.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0905694;-24.256271;50.108237;89.992689;50.08601;90.12017;18.11032;2460997.0389074;14.93376;1.3;_
2025-11-17T14:56:01.599 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.0905694;-24.256271;50.108237;89.992689;50.08601;90.12017;18.11032;2460997.0389074;14.93376;1.3;_
2025-11-17T14:56:01.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:01.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:01.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:01.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:01.600 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:01.600 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.0905694, teldec = -24.256271
2025-11-17T14:56:01.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0905694 -24.256271
2025-11-17T14:56:01.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0905694 -24.256271
2025-11-17T14:56:01.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0905694 -24.256271
2025-11-17T14:56:01.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.0905694;-24.256271;50.108237;89.992689;50.08601;90.12017;18.11032;2460997.03890742;14.93376;1.3;_21.065384925098 -24.3577790625772
2025-11-17T14:56:01.601 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.065384925098     dec_j2k = -24.3577790625772
2025-11-17T14:56:01.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:01.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687678184771;171.162357330327;_
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687678184771;171.162357330327;_
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:01.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:01.604 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:01.605 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52951)
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:01.609 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:01.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:01.616 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0389074, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687678184771, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992689, telescope_ra=21.0905694, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.11032, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:55:04.011586', telescope_ra_j2k=21.065384925098, telescope_dec_j2k=-24.3577790625772, observability=1)
2025-11-17T14:56:04.153 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:04.153 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:04.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:04.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:04.153 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:04.154 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:04.154 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:04.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:04.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:04.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:04.155 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:56:04.155 [INFO] [ThreadPoolExecutor-2933_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:56:04.156 [INFO] [ThreadPoolExecutor-2933_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Status age = 4.165359020233154s
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:05.782 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:05.783 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 17;21.0917384;-24.256271;50.108237;89.992688;50.08601;90.12017;18.11149;2460997.03895582;14.93492583;1.3;_
2025-11-17T14:56:05.783 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response 17;21.0917384;-24.256271;50.108237;89.992688;50.08601;90.12017;18.11149;2460997.03895582;14.93492583;1.3;_
2025-11-17T14:56:05.783 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:05.783 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:05.783 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:05.784 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:05.784 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:05.784 [INFO] [Thread-68320 (handle)] [driver.py] [get_status()] Telra = 21.0917384, teldec = -24.256271
2025-11-17T14:56:05.784 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0917384 -24.256271
2025-11-17T14:56:05.784 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0917384 -24.256271
2025-11-17T14:56:05.784 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0917384 -24.256271
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 17;21.0917384;-24.256271;50.108237;89.992688;50.08601;90.12017;18.11149;2460997.03895584;14.93492583;1.3;_21.0665547459343 -24.3578101513152
2025-11-17T14:56:05.785 [INFO] [Thread-68320 (handle)] [driver.py] [get_status()] ra_j2k = 21.0665547459343     dec_j2k = -24.3578101513152
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 140;0.104687758408657;171.162362694745;_
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response 140;0.104687758408657;171.162362694745;_
2025-11-17T14:56:05.785 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:05.786 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:05.786 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:05.786 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:05.786 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:05.787 [DEBUG] [Thread-68320 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:05.788 [DEBUG] [Thread-68320 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:05.788 [DEBUG] [Thread-68320 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48851)
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:05.793 [DEBUG] [Thread-68320 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:05.800 [DEBUG] [Thread-68320 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:05.800 [INFO] [Thread-68320 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03895582, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687758408657, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992688, telescope_ra=21.0917384, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.11149, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0665547459343, telescope_dec_j2k=-24.3578101513152, observability=1)
2025-11-17T14:56:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.233203172683716s
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.094304;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11405;2460997.03906292;14.93748444;1.3;_
2025-11-17T14:56:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.094304;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11405;2460997.03906292;14.93748444;1.3;_
2025-11-17T14:56:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:15.037 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.094304, teldec = -24.25627
2025-11-17T14:56:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.094304 -24.25627
2025-11-17T14:56:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.094304 -24.25627
2025-11-17T14:56:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.094304 -24.25627
2025-11-17T14:56:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.094304;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11405;2460997.03906294;14.93748444;1.3;_21.0691221485526 -24.3578773487806
2025-11-17T14:56:15.038 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.0691221485526     dec_j2k = -24.3578773487806
2025-11-17T14:56:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104688721095284;171.162362694745;_
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104688721095284;171.162362694745;_
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43975)
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:15.052 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:15.052 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03906292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688721095284, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992688, telescope_ra=21.094304, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.11405, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0691221485526, telescope_dec_j2k=-24.3578773487806, observability=1)
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Status age = 2.0243537425994873s
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:17.077 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:17.078 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:17.078 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 17;21.0948653;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11462;2460997.03908655;14.93804417;1.3;_
2025-11-17T14:56:17.078 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response 17;21.0948653;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11462;2460997.03908655;14.93804417;1.3;_
2025-11-17T14:56:17.079 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:17.079 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:17.079 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:17.080 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:17.080 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:17.080 [INFO] [Thread-68321 (handle)] [driver.py] [get_status()] Telra = 21.0948653, teldec = -24.25627
2025-11-17T14:56:17.080 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0948653 -24.25627
2025-11-17T14:56:17.080 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0948653 -24.25627
2025-11-17T14:56:17.080 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0948653 -24.25627
2025-11-17T14:56:17.081 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 17;21.0948653;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11462;2460997.03908659;14.93804417;1.3;_21.0696838430782 -24.3578922629061
2025-11-17T14:56:17.081 [INFO] [Thread-68321 (handle)] [driver.py] [get_status()] ra_j2k = 21.0696838430782     dec_j2k = -24.3578922629061
2025-11-17T14:56:17.081 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:17.081 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:17.081 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 140;0.104687517737;171.162346601491;_
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response 140;0.104687517737;171.162346601491;_
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:17.082 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:17.083 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:17.084 [DEBUG] [Thread-68321 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:17.084 [DEBUG] [Thread-68321 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:17.084 [DEBUG] [Thread-68321 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53139)
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:17.086 [DEBUG] [Thread-68321 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:17.093 [DEBUG] [Thread-68321 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:17.094 [DEBUG] [Thread-68321 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:17.094 [INFO] [Thread-68321 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03908655, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687517737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992688, telescope_ra=21.0948653, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.11462, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0696838430782, telescope_dec_j2k=-24.3578922629061, observability=1)
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Status age = 6.7513368129730225s
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:23.845 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:23.846 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:23.846 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:23.846 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:23.846 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:23.847 [DEBUG] [Thread-68322 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:23.847 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:23.847 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:23.847 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:23.847 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:23.848 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 17;21.0967552;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11651;2460997.03916491;14.93992889;1.3;_
2025-11-17T14:56:23.848 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response 17;21.0967552;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11651;2460997.03916491;14.93992889;1.3;_
2025-11-17T14:56:23.848 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:23.848 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:23.848 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:23.849 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:23.849 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:23.849 [INFO] [Thread-68322 (handle)] [driver.py] [get_status()] Telra = 21.0967552, teldec = -24.25627
2025-11-17T14:56:23.849 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] UnCookCoordinates 21.0967552 -24.25627
2025-11-17T14:56:23.849 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.0967552 -24.25627
2025-11-17T14:56:23.849 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.0967552 -24.25627
2025-11-17T14:56:23.850 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 17;21.0967552;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11651;2460997.03916493;14.93992889;1.3;_21.071575071926 -24.3579424628887
2025-11-17T14:56:23.850 [INFO] [Thread-68322 (handle)] [driver.py] [get_status()] ra_j2k = 21.071575071926     dec_j2k = -24.3579424628887
2025-11-17T14:56:23.850 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:23.850 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:23.850 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:23.851 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:23.852 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:23.853 [DEBUG] [Thread-68322 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:23.853 [DEBUG] [Thread-68322 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:23.853 [DEBUG] [Thread-68322 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:23.860 [DEBUG] [Thread-68322 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47303)
2025-11-17T14:56:23.860 [DEBUG] [Thread-68322 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:23.860 [DEBUG] [Thread-68322 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:23.860 [DEBUG] [Thread-68322 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:23.861 [DEBUG] [Thread-68322 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:23.861 [DEBUG] [Thread-68322 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:23.868 [DEBUG] [Thread-68322 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:23.868 [INFO] [Thread-68322 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03916491, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687798520599, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992688, telescope_ra=21.0967552, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.11651, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.071575071926, telescope_dec_j2k=-24.3579424628887, observability=1)
2025-11-17T14:56:25.032 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.032 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.032 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:25.032 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:25.032 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:56:25.033 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:25.034 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:25.035 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.035 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:25.035 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:25.035 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.036 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:56:25.037 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:25.038 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Park
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:56:25.039 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:56:25.040 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 29;21.0970922;-24.25627;50.108237;89.992688;50.08601;90.12017;18.11684;2460997.0391787;14.940265;1.3;_Park Command Successful
2025-11-17T14:56:26.040 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:56:26.040 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:56:26.040 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:56:26.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:56:26.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T14:56:27.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:56:27.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:56:27.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:56:27.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:56:27.041 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:56:28.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:56:28.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:56:28.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:56:28.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:56:28.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:56:29.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:56:29.042 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:56:29.043 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:56:29.043 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:56:29.043 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:56:29.044 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:29.044 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:29.044 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:29.044 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:29.044 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:56:29.045 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:56:29.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:30.046 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:56:30.047 [DEBUG] [ThreadPoolExecutor-2932_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:30.047 [INFO] [ThreadPoolExecutor-2932_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.935085773468018s
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:36.803 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:36.804 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:36.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1003519;-24.25627;50.108237;89.992687;50.08601;90.12017;18.1201;2460997.03931487;14.94351583;1.3;_
2025-11-17T14:56:36.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.1003519;-24.25627;50.108237;89.992687;50.08601;90.12017;18.1201;2460997.03931487;14.94351583;1.3;_
2025-11-17T14:56:36.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:36.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:36.805 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:36.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:36.806 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:36.806 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.1003519, teldec = -24.25627
2025-11-17T14:56:36.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.1003519 -24.25627
2025-11-17T14:56:36.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.1003519 -24.25627
2025-11-17T14:56:36.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1003519 -24.25627
2025-11-17T14:56:36.807 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1003519;-24.25627;50.108237;89.992687;50.08601;90.12017;18.12013;2460997.0393149;14.94354361;1.3;_21.0751743029144 -24.3580379313065
2025-11-17T14:56:36.808 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.0751743029144     dec_j2k = -24.3580379313065
2025-11-17T14:56:36.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:36.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:36.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:36.808 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687999080313;171.162357330327;_
2025-11-17T14:56:36.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687999080313;171.162357330327;_
2025-11-17T14:56:36.809 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:36.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:36.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:36.809 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:36.810 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:36.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:36.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:36.811 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:36.812 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54137)
2025-11-17T14:56:36.812 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:36.812 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:36.812 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:36.813 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:36.813 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:36.820 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:36.821 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:36.821 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:56:36.821 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03931487, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687999080313, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108237, telescope_az=89.992687, telescope_ra=21.1003519, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1201, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0751743029144, telescope_dec_j2k=-24.3580379313065, observability=1)
2025-11-17T14:56:36.821 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 45.00191020965576 seconds ago
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Status age = 5.1375956535339355s
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:41.958 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:41.959 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:41.959 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:41.959 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:41.960 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 17;21.1018003;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12155;2460997.03937454;14.94496028;1.3;_
2025-11-17T14:56:41.961 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response 17;21.1018003;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12155;2460997.03937454;14.94496028;1.3;_
2025-11-17T14:56:41.961 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:41.961 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:41.961 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:41.962 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:41.962 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:41.962 [INFO] [Thread-68323 (handle)] [driver.py] [get_status()] Telra = 21.1018003, teldec = -24.25627
2025-11-17T14:56:41.962 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1018003 -24.25627
2025-11-17T14:56:41.962 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1018003 -24.25627
2025-11-17T14:56:41.962 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1018003 -24.25627
2025-11-17T14:56:41.963 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 17;21.1018003;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12155;2460997.03937457;14.94496028;1.3;_21.0766237229033 -24.358076351479
2025-11-17T14:56:41.963 [INFO] [Thread-68323 (handle)] [driver.py] [get_status()] ra_j2k = 21.0766237229033     dec_j2k = -24.358076351479
2025-11-17T14:56:41.963 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:41.963 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:41.963 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 140;0.104688400199741;171.162351965909;_
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response 140;0.104688400199741;171.162351965909;_
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:41.964 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:41.965 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:41.965 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:41.965 [DEBUG] [Thread-68323 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:41.965 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:41.965 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:41.966 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:41.966 [DEBUG] [Thread-68323 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:41.966 [DEBUG] [Thread-68323 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:41.966 [DEBUG] [Thread-68323 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39471)
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:41.969 [DEBUG] [Thread-68323 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:41.976 [DEBUG] [Thread-68323 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:41.976 [DEBUG] [Thread-68323 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:41.977 [DEBUG] [Thread-68323 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:41.977 [INFO] [Thread-68323 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03937454, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688400199741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992687, telescope_ra=21.1018003, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.12155, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0766237229033, telescope_dec_j2k=-24.358076351479, observability=1)
2025-11-17T14:56:51.900 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:56:51
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.92309284210205s
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:56:51.900 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:56:51.901 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:56:51.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1045824;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12433;2460997.03948961;14.94773472;1.3;_
2025-11-17T14:56:51.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1045824;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12433;2460997.03948961;14.94773472;1.3;_
2025-11-17T14:56:51.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:56:51.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:56:51.902 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:56:51.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:51.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:56:51.903 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1045824, teldec = -24.25627
2025-11-17T14:56:51.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1045824 -24.25627
2025-11-17T14:56:51.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1045824 -24.25627
2025-11-17T14:56:51.903 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1045824 -24.25627
2025-11-17T14:56:51.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1045824;-24.25627;50.108236;89.992687;50.08601;90.12017;18.12433;2460997.03948963;14.94773472;1.3;_21.0794077833202 -24.3581501086882
2025-11-17T14:56:51.904 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.0794077833202     dec_j2k = -24.3581501086882
2025-11-17T14:56:51.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:56:51.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:56:51.904 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:51.905 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:56:51.906 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:56:51.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:51.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:56:51.907 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46411)
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:56:51.911 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:56:51.919 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:56:51.919 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03948961, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687798520599, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992687, telescope_ra=21.1045824, telescope_dec=-24.25627, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.12433, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0794077833202, telescope_dec_j2k=-24.3581501086882, observability=1)
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Status age = 8.105607509613037s
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:00.025 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:00.026 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:00.026 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 17;21.1068438;-24.256269;50.108236;89.992686;50.08601;90.12017;18.12659;2460997.03958365;14.94999;1.3;_
2025-11-17T14:57:00.027 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response 17;21.1068438;-24.256269;50.108236;89.992686;50.08601;90.12017;18.12659;2460997.03958365;14.94999;1.3;_
2025-11-17T14:57:00.028 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:00.028 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:00.028 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:00.029 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:00.029 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:00.029 [INFO] [Thread-68324 (handle)] [driver.py] [get_status()] Telra = 21.1068438, teldec = -24.256269
2025-11-17T14:57:00.029 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1068438 -24.256269
2025-11-17T14:57:00.029 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1068438 -24.256269
2025-11-17T14:57:00.029 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1068438 -24.256269
2025-11-17T14:57:00.030 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 17;21.1068438;-24.256269;50.108236;89.992686;50.08601;90.12017;18.12659;2460997.03958368;14.94999;1.3;_21.0816707781405 -24.3582090221637
2025-11-17T14:57:00.030 [INFO] [Thread-68324 (handle)] [driver.py] [get_status()] ra_j2k = 21.0816707781405     dec_j2k = -24.3582090221637
2025-11-17T14:57:00.030 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:00.030 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:00.030 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 140;0.104688039192256;171.162351965909;_
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response 140;0.104688039192256;171.162351965909;_
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:00.031 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:00.032 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:00.033 [DEBUG] [Thread-68324 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:57:00.033 [DEBUG] [Thread-68324 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:57:00.033 [DEBUG] [Thread-68324 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:57:00.037 [DEBUG] [Thread-68324 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53691)
2025-11-17T14:57:00.037 [DEBUG] [Thread-68324 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:00.038 [DEBUG] [Thread-68324 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:00.038 [DEBUG] [Thread-68324 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:00.038 [DEBUG] [Thread-68324 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:00.038 [DEBUG] [Thread-68324 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:00.045 [DEBUG] [Thread-68324 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:00.045 [INFO] [Thread-68324 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.03958365, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688039192256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992686, telescope_ra=21.1068438, telescope_dec=-24.256269, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.12659, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:56:04.152822', telescope_ra_j2k=21.0816707781405, telescope_dec_j2k=-24.3582090221637, observability=1)
2025-11-17T14:57:00.712 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:00.712 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.6669230461120605s
2025-11-17T14:57:00.712 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6669230461120605
2025-11-17T14:57:04.295 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:04.295 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:04.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:04.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:04.295 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:04.296 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:04.296 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:04.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:04.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:04.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:04.297 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:04.298 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:04.298 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:57:04.299 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:57:04.300 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:05.300 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:05.300 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:05.300 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:05.300 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:05.300 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:57:05.301 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:05.302 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:05.303 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:05.303 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:05.303 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:05.303 [DEBUG] [ThreadPoolExecutor-2934_0] [payload.py] [to_registers()] [0]
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39861)
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:05.307 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:05.315 [DEBUG] [ThreadPoolExecutor-2934_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 15.007866621017456s
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.111028;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13078;2460997.03975758;14.95416278;1.3;_
2025-11-17T14:57:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.111028;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13078;2460997.03975758;14.95416278;1.3;_
2025-11-17T14:57:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:15.057 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.111028, teldec = -24.256269
2025-11-17T14:57:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.111028 -24.256269
2025-11-17T14:57:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.111028 -24.256269
2025-11-17T14:57:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.111028 -24.256269
2025-11-17T14:57:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.111028;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13078;2460997.03975762;14.95416278;1.3;_21.085857931502 -24.358319784887
2025-11-17T14:57:15.058 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.085857931502     dec_j2k = -24.358319784887
2025-11-17T14:57:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687958968371;171.162368059163;_
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687958968371;171.162368059163;_
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60001)
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:15.074 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:15.074 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.03975758, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687958968371, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992686, telescope_ra=21.111028, telescope_dec=-24.256269, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.13078, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.085857931502, telescope_dec_j2k=-24.358319784887, observability=1)
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Status age = 2.0528523921966553s
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:17.127 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:17.128 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:17.129 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:17.130 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 17;21.1116071;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13136;2460997.0397816;14.95474028;1.3;_
2025-11-17T14:57:17.130 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response 17;21.1116071;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13136;2460997.0397816;14.95474028;1.3;_
2025-11-17T14:57:17.130 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:17.130 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:17.130 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:17.131 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:17.131 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:17.131 [INFO] [Thread-68325 (handle)] [driver.py] [get_status()] Telra = 21.1116071, teldec = -24.256269
2025-11-17T14:57:17.131 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1116071 -24.256269
2025-11-17T14:57:17.131 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1116071 -24.256269
2025-11-17T14:57:17.131 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1116071 -24.256269
2025-11-17T14:57:17.132 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 17;21.1116071;-24.256269;50.108236;89.992686;50.08601;90.12017;18.13136;2460997.03978162;14.95474028;1.3;_21.0864374405358 -24.358335105089
2025-11-17T14:57:17.132 [INFO] [Thread-68325 (handle)] [driver.py] [get_status()] ra_j2k = 21.0864374405358     dec_j2k = -24.358335105089
2025-11-17T14:57:17.132 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:17.132 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:17.132 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 140;0.104688039192256;171.162357330327;_
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response 140;0.104688039192256;171.162357330327;_
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:17.133 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:17.134 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:17.135 [DEBUG] [Thread-68325 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:17.135 [DEBUG] [Thread-68325 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:17.135 [DEBUG] [Thread-68325 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58805)
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:17.137 [DEBUG] [Thread-68325 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:17.144 [DEBUG] [Thread-68325 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:17.144 [INFO] [Thread-68325 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0397816, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688039192256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992686, telescope_ra=21.1116071, telescope_dec=-24.256269, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.13136, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.0864374405358, telescope_dec_j2k=-24.358335105089, observability=1)
2025-11-17T14:57:18.091 [DEBUG] [Thread-68326 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:18.091 [DEBUG] [Thread-68326 (handle)] [server.py] [get_status()] Status age = 0.9466202259063721s
2025-11-17T14:57:18.091 [DEBUG] [Thread-68326 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9466202259063721
2025-11-17T14:57:30.315 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:30.316 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:30.316 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:30.316 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:30.316 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:30.317 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:57:30.318 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:57:30.319 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Status age = 19.071908712387085s
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:36.216 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 17;21.116928;-24.256268;50.108236;89.992685;50.08601;90.12017;18.13668;2460997.04000251;14.96004667;1.3;_
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response 17;21.116928;-24.256268;50.108236;89.992685;50.08601;90.12017;18.13668;2460997.04000251;14.96004667;1.3;_
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:36.217 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:36.218 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:36.218 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:36.218 [INFO] [Thread-68327 (handle)] [driver.py] [get_status()] Telra = 21.116928, teldec = -24.256268
2025-11-17T14:57:36.218 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] UnCookCoordinates 21.116928 -24.256268
2025-11-17T14:57:36.219 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.116928 -24.256268
2025-11-17T14:57:36.219 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.116928 -24.256268
2025-11-17T14:57:36.219 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 17;21.116928;-24.256268;50.108236;89.992685;50.08601;90.12017;18.13668;2460997.04000253;14.96004667;1.3;_21.0917621021976 -24.3584747619897
2025-11-17T14:57:36.220 [INFO] [Thread-68327 (handle)] [driver.py] [get_status()] ra_j2k = 21.0917621021976     dec_j2k = -24.3584747619897
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 140;0.10468823975197;171.162362694745;_
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response 140;0.10468823975197;171.162362694745;_
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:36.220 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:36.221 [DEBUG] [Thread-68327 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51701)
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:36.224 [DEBUG] [Thread-68327 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:36.231 [DEBUG] [Thread-68327 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:36.231 [INFO] [Thread-68327 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04000251, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468823975197, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992685, telescope_ra=21.116928, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.13668, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.0917621021976, telescope_dec_j2k=-24.3584747619897, observability=1)
2025-11-17T14:57:36.881 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:57:36.881 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.6495382785797119s
2025-11-17T14:57:36.881 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.6495382785797119
2025-11-17T14:57:36.881 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.98112869262695 seconds ago
2025-11-17T14:57:51.980 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:57:51
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.748628854751587s
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:51.980 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:51.981 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:51.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1213072;-24.256268;50.108236;89.992685;50.08601;90.12017;18.14106;2460997.04018498;14.96441389;1.3;_
2025-11-17T14:57:51.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1213072;-24.256268;50.108236;89.992685;50.08601;90.12017;18.14106;2460997.04018498;14.96441389;1.3;_
2025-11-17T14:57:51.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:51.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:51.982 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:51.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:51.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:51.983 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1213072, teldec = -24.256268
2025-11-17T14:57:51.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1213072 -24.256268
2025-11-17T14:57:51.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1213072 -24.256268
2025-11-17T14:57:51.983 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1213072 -24.256268
2025-11-17T14:57:51.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1213072;-24.256268;50.108236;89.992685;50.08601;90.12017;18.14106;2460997.040185;14.96441389;1.3;_21.096144402362 -24.3585903780387
2025-11-17T14:57:51.984 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.096144402362     dec_j2k = -24.3585903780387
2025-11-17T14:57:51.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:51.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:51.984 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104688319975856;171.162362694745;_
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104688319975856;171.162362694745;_
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:51.985 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:51.986 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58685)
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:51.991 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:51.998 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:51.998 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:51.998 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:51.999 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:51.999 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04018498, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688319975856, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992685, telescope_ra=21.1213072, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.14106, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.096144402362, telescope_dec_j2k=-24.3585903780387, observability=1)
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Status age = 2.2864060401916504s
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:54.285 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 17;21.1219506;-24.256268;50.108236;89.992685;50.08601;90.12017;18.1417;2460997.04021164;14.96505556;1.3;_
2025-11-17T14:57:54.286 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response 17;21.1219506;-24.256268;50.108236;89.992685;50.08601;90.12017;18.1417;2460997.04021164;14.96505556;1.3;_
2025-11-17T14:57:54.287 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:54.287 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:54.287 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:54.288 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:54.288 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:54.288 [INFO] [Thread-68328 (handle)] [driver.py] [get_status()] Telra = 21.1219506, teldec = -24.256268
2025-11-17T14:57:54.288 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1219506 -24.256268
2025-11-17T14:57:54.288 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1219506 -24.256268
2025-11-17T14:57:54.288 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1219506 -24.256268
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 17;21.1219506;-24.256268;50.108236;89.992685;50.08601;90.12017;18.1417;2460997.04021168;14.96505556;1.3;_21.0967882581754 -24.3586073533556
2025-11-17T14:57:54.289 [INFO] [Thread-68328 (handle)] [driver.py] [get_status()] ra_j2k = 21.0967882581754     dec_j2k = -24.3586073533556
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 140;0.104687798520599;171.162362694745;_
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response 140;0.104687798520599;171.162362694745;_
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:54.289 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:54.290 [DEBUG] [Thread-68328 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:54.290 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:54.290 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:54.290 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:54.291 [DEBUG] [Thread-68328 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:54.291 [DEBUG] [Thread-68328 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:54.291 [DEBUG] [Thread-68328 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34509)
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:54.297 [DEBUG] [Thread-68328 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:54.304 [DEBUG] [Thread-68328 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:54.304 [DEBUG] [Thread-68328 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:54.304 [DEBUG] [Thread-68328 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:54.305 [DEBUG] [Thread-68328 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:54.305 [INFO] [Thread-68328 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04021164, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687798520599, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992685, telescope_ra=21.1219506, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1417, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.0967882581754, telescope_dec_j2k=-24.3586073533556, observability=1)
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.502380847930908s
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:57:59.807 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:57:59.808 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:57:59.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1234823;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14323;2460997.04027557;14.96658306;1.3;_
2025-11-17T14:57:59.809 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.1234823;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14323;2460997.04027557;14.96658306;1.3;_
2025-11-17T14:57:59.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:57:59.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:57:59.809 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:57:59.810 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:59.810 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:57:59.810 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.1234823, teldec = -24.256268
2025-11-17T14:57:59.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1234823 -24.256268
2025-11-17T14:57:59.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1234823 -24.256268
2025-11-17T14:57:59.811 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1234823 -24.256268
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1234823;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14323;2460997.04027559;14.96658306;1.3;_21.0983210436421 -24.3586477538186
2025-11-17T14:57:59.812 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.0983210436421     dec_j2k = -24.3586477538186
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104688921654998;171.162357330327;_
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104688921654998;171.162357330327;_
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:59.812 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:59.813 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:59.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:57:59.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:57:59.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:57:59.813 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:59.814 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:57:59.814 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40361)
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:57:59.819 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:57:59.826 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:57:59.826 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:59.826 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:57:59.826 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:57:59.826 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:57:59.827 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:57:59.827 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:57:59.827 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:57:59.827 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:57:59.827 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04027557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688921654998, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992684, telescope_ra=21.1234823, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.14323, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:57:04.295159', telescope_ra_j2k=21.0983210436421, telescope_dec_j2k=-24.3586477538186, observability=1)
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:04.437 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:04.438 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:04.438 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:04.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:04.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:04.439 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:04.439 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:58:04.439 [INFO] [ThreadPoolExecutor-2935_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T14:58:04.439 [INFO] [ThreadPoolExecutor-2935_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:58:12.350 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:12.350 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Status age = 12.523722410202026s
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:12.351 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:12.352 [DEBUG] [Thread-68329 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:12.352 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:12.352 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:12.352 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:12.352 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:12.353 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 17;21.1269871;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14674;2460997.04042074;14.97007833;1.3;_
2025-11-17T14:58:12.353 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response 17;21.1269871;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14674;2460997.04042074;14.97007833;1.3;_
2025-11-17T14:58:12.353 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:12.353 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:12.353 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:12.354 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:12.354 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:12.354 [INFO] [Thread-68329 (handle)] [driver.py] [get_status()] Telra = 21.1269871, teldec = -24.256268
2025-11-17T14:58:12.354 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1269871 -24.256268
2025-11-17T14:58:12.354 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1269871 -24.256268
2025-11-17T14:58:12.354 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1269871 -24.256268
2025-11-17T14:58:12.355 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 17;21.1269871;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14674;2460997.04042078;14.97007833;1.3;_21.1018283291915 -24.3587401359525
2025-11-17T14:58:12.355 [INFO] [Thread-68329 (handle)] [driver.py] [get_status()] ra_j2k = 21.1018283291915     dec_j2k = -24.3587401359525
2025-11-17T14:58:12.355 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:12.355 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:12.355 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 140;0.104687878744485;171.162357330327;_
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response 140;0.104687878744485;171.162357330327;_
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:12.356 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:12.357 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:12.358 [DEBUG] [Thread-68329 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:12.358 [DEBUG] [Thread-68329 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:12.358 [DEBUG] [Thread-68329 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35165)
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:12.363 [DEBUG] [Thread-68329 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:12.371 [DEBUG] [Thread-68329 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:12.371 [INFO] [Thread-68329 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04042074, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687878744485, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992684, telescope_ra=21.1269871, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.14674, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1018283291915, telescope_dec_j2k=-24.3587401359525, observability=1)
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.652862548828125s
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1277164;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14747;2460997.04045169;14.97080556;1.3;_
2025-11-17T14:58:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.1277164;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14747;2460997.04045169;14.97080556;1.3;_
2025-11-17T14:58:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:15.027 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.1277164, teldec = -24.256268
2025-11-17T14:58:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1277164 -24.256268
2025-11-17T14:58:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1277164 -24.256268
2025-11-17T14:58:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1277164 -24.256268
2025-11-17T14:58:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1277164;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14747;2460997.04045171;14.97080556;1.3;_21.1025581467161 -24.3587593486647
2025-11-17T14:58:15.028 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.1025581467161     dec_j2k = -24.3587593486647
2025-11-17T14:58:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687638072828;171.162357330327;_
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687638072828;171.162357330327;_
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:15.035 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37041)
2025-11-17T14:58:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:15.036 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:15.036 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:15.043 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:15.044 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04045169, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687638072828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992684, telescope_ra=21.1277164, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.14747, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1025581467161, telescope_dec_j2k=-24.3587593486647, observability=1)
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Status age = 2.134599447250366s
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:17.179 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:17.180 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:17.181 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 17;21.1283319;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14808;2460997.04047663;14.97141944;1.3;_
2025-11-17T14:58:17.181 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response 17;21.1283319;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14808;2460997.04047663;14.97141944;1.3;_
2025-11-17T14:58:17.181 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:17.181 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:17.181 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:17.182 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:17.182 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:17.182 [INFO] [Thread-68330 (handle)] [driver.py] [get_status()] Telra = 21.1283319, teldec = -24.256268
2025-11-17T14:58:17.182 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1283319 -24.256268
2025-11-17T14:58:17.182 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1283319 -24.256268
2025-11-17T14:58:17.182 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1283319 -24.256268
2025-11-17T14:58:17.183 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 17;21.1283319;-24.256268;50.108236;89.992684;50.08601;90.12017;18.14808;2460997.04047666;14.97141944;1.3;_21.1031740835709 -24.3587755605495
2025-11-17T14:58:17.183 [INFO] [Thread-68330 (handle)] [driver.py] [get_status()] ra_j2k = 21.1031740835709     dec_j2k = -24.3587755605495
2025-11-17T14:58:17.183 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:17.183 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:17.183 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 140;0.104688400199741;171.162357330327;_
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response 140;0.104688400199741;171.162357330327;_
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:17.184 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:17.185 [DEBUG] [Thread-68330 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:17.186 [DEBUG] [Thread-68330 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:17.186 [DEBUG] [Thread-68330 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60279)
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:17.192 [DEBUG] [Thread-68330 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:17.200 [DEBUG] [Thread-68330 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:17.200 [INFO] [Thread-68330 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04047663, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688400199741, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992684, telescope_ra=21.1283319, telescope_dec=-24.256268, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.14808, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1031740835709, telescope_dec_j2k=-24.3587755605495, observability=1)
2025-11-17T14:58:25.319 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.319 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.319 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T14:58:25.320 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:25.321 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:25.322 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T14:58:25.323 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:25.324 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:25.325 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:25.325 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:25.325 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:25.325 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Park
2025-11-17T14:58:25.325 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command Park
2025-11-17T14:58:25.326 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to Park
2025-11-17T14:58:25.326 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 29;21.1305825;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15033;2460997.0405709;14.97366389;1.3;_Park Command Successful
2025-11-17T14:58:26.326 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:58:26.326 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:58:26.326 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:58:26.327 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:58:26.327 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:58:27.327 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:58:27.327 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:58:27.327 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:58:27.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:58:27.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:58:28.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T14:58:28.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T14:58:28.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T14:58:28.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:58:28.328 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] ParkRotator
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:29.329 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T14:58:29.330 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T14:58:29.331 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:30.331 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:58:30.332 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:58:30.333 [DEBUG] [ThreadPoolExecutor-2934_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:30.333 [INFO] [ThreadPoolExecutor-2934_0] [server.py] [done()] Shutdown complete...
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Status age = 13.26051664352417s
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:30.461 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:30.462 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 17;21.1320292;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15178;2460997.04063035;14.97510667;1.3;_
2025-11-17T14:58:30.463 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response 17;21.1320292;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15178;2460997.04063035;14.97510667;1.3;_
2025-11-17T14:58:30.463 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:30.463 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:30.463 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:30.464 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:30.464 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:30.464 [INFO] [Thread-68331 (handle)] [driver.py] [get_status()] Telra = 21.1320292, teldec = -24.256267
2025-11-17T14:58:30.464 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1320292 -24.256267
2025-11-17T14:58:30.464 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1320292 -24.256267
2025-11-17T14:58:30.464 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1320292 -24.256267
2025-11-17T14:58:30.465 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 17;21.1320292;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15178;2460997.04063038;14.97510667;1.3;_21.1068740095257 -24.3588718898043
2025-11-17T14:58:30.465 [INFO] [Thread-68331 (handle)] [driver.py] [get_status()] ra_j2k = 21.1068740095257     dec_j2k = -24.3588718898043
2025-11-17T14:58:30.465 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:30.465 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:30.465 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 140;0.104688721095284;171.162351965909;_
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response 140;0.104688721095284;171.162351965909;_
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:30.466 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:30.467 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:30.468 [DEBUG] [Thread-68331 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:30.468 [DEBUG] [Thread-68331 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:30.468 [DEBUG] [Thread-68331 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36785)
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:30.470 [DEBUG] [Thread-68331 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:30.477 [DEBUG] [Thread-68331 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:30.477 [DEBUG] [Thread-68331 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:30.477 [DEBUG] [Thread-68331 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:30.477 [DEBUG] [Thread-68331 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:30.478 [DEBUG] [Thread-68331 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:30.478 [DEBUG] [Thread-68331 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:30.478 [DEBUG] [Thread-68331 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:30.478 [DEBUG] [Thread-68331 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:30.478 [DEBUG] [Thread-68331 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:30.478 [INFO] [Thread-68331 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04063035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688721095284, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992683, telescope_ra=21.1320292, telescope_dec=-24.256267, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.15178, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1068740095257, telescope_dec_j2k=-24.3588718898043, observability=1)
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 6.463353872299194s
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:36.941 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:36.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:36.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1338403;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15359;2460997.04070536;14.97691278;1.3;_
2025-11-17T14:58:36.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.1338403;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15359;2460997.04070536;14.97691278;1.3;_
2025-11-17T14:58:36.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:36.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:36.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:36.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:36.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:36.944 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.1338403, teldec = -24.256267
2025-11-17T14:58:36.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.1338403 -24.256267
2025-11-17T14:58:36.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.1338403 -24.256267
2025-11-17T14:58:36.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1338403 -24.256267
2025-11-17T14:58:36.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1338403;-24.256267;50.108236;89.992683;50.08601;90.12017;18.15359;2460997.04070538;14.97691278;1.3;_21.1086863967857 -24.3589195312155
2025-11-17T14:58:36.945 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.1086863967857     dec_j2k = -24.3589195312155
2025-11-17T14:58:36.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:36.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:36.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687958968371;171.162351965909;_
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687958968371;171.162351965909;_
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:36.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:36.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:36.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:36.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:36.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52557)
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:36.954 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:36.961 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:58:36.961 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04070536, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687958968371, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108236, telescope_az=89.992683, telescope_ra=21.1338403, telescope_dec=-24.256267, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.15359, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1086863967857, telescope_dec_j2k=-24.3589195312155, observability=1)
2025-11-17T14:58:36.961 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.981634855270386 seconds ago
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Status age = 11.56450867652893s
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:48.526 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:48.527 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:48.528 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 17;21.1370527;-24.256267;50.108235;89.992683;50.08601;90.12017;18.1568;2460997.04083944;14.98011639;1.3;_
2025-11-17T14:58:48.528 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response 17;21.1370527;-24.256267;50.108235;89.992683;50.08601;90.12017;18.1568;2460997.04083944;14.98011639;1.3;_
2025-11-17T14:58:48.528 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:48.528 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:48.528 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:48.529 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:48.529 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:48.529 [INFO] [Thread-68332 (handle)] [driver.py] [get_status()] Telra = 21.1370527, teldec = -24.256267
2025-11-17T14:58:48.529 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1370527 -24.256267
2025-11-17T14:58:48.529 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1370527 -24.256267
2025-11-17T14:58:48.529 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1370527 -24.256267
2025-11-17T14:58:48.530 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 17;21.1370527;-24.256267;50.108235;89.992683;50.08601;90.12017;18.1568;2460997.04083947;14.98011639;1.3;_21.1119010816863 -24.359003978002
2025-11-17T14:58:48.530 [INFO] [Thread-68332 (handle)] [driver.py] [get_status()] ra_j2k = 21.1119010816863     dec_j2k = -24.359003978002
2025-11-17T14:58:48.530 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:48.530 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 140;0.104688039192256;171.162357330327;_
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response 140;0.104688039192256;171.162357330327;_
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:48.531 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:48.532 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:48.532 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:48.532 [DEBUG] [Thread-68332 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:48.532 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:48.532 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:48.533 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:48.533 [DEBUG] [Thread-68332 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:48.533 [DEBUG] [Thread-68332 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:48.533 [DEBUG] [Thread-68332 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48121)
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:48.535 [DEBUG] [Thread-68332 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:48.542 [DEBUG] [Thread-68332 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:48.542 [DEBUG] [Thread-68332 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:48.542 [DEBUG] [Thread-68332 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:48.543 [DEBUG] [Thread-68332 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:48.543 [INFO] [Thread-68332 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04083944, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688039192256, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992683, telescope_ra=21.1370527, telescope_dec=-24.256267, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1568, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1119010816863, telescope_dec_j2k=-24.359003978002, observability=1)
2025-11-17T14:58:52.060 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:58:52
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.5172412395477295s
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:52.060 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:52.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:52.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1380239;-24.256267;50.108235;89.992683;50.08601;90.12017;18.15777;2460997.04088035;14.981085;1.3;_
2025-11-17T14:58:52.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1380239;-24.256267;50.108235;89.992683;50.08601;90.12017;18.15777;2460997.04088035;14.981085;1.3;_
2025-11-17T14:58:52.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:52.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:52.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:52.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:52.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:52.063 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1380239, teldec = -24.256267
2025-11-17T14:58:52.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1380239 -24.256267
2025-11-17T14:58:52.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1380239 -24.256267
2025-11-17T14:58:52.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1380239 -24.256267
2025-11-17T14:58:52.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1380518;-24.256267;50.108235;89.992683;50.08601;90.12017;18.1578;2460997.04088037;14.98111278;1.3;_21.1128729728923 -24.3590294945255
2025-11-17T14:58:52.065 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.1128729728923     dec_j2k = -24.3590294945255
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104687718296714;171.162362694745;_
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104687718296714;171.162362694745;_
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:52.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:52.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:52.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:52.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:52.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54489)
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:52.069 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:52.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:52.076 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04088035, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687718296714, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992683, telescope_ra=21.1380239, telescope_dec=-24.256267, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.15777, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1128729728923, telescope_dec_j2k=-24.3590294945255, observability=1)
2025-11-17T14:58:58.917 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.841162204742432s
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:58:58.918 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1399481;-24.256267;50.108235;89.992682;50.08601;90.12017;18.1597;2460997.04095971;14.98300389;1.3;_
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.1399481;-24.256267;50.108235;89.992682;50.08601;90.12017;18.1597;2460997.04095971;14.98300389;1.3;_
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:58:58.919 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:58:58.920 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:58.920 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:58:58.921 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.1399481, teldec = -24.256267
2025-11-17T14:58:58.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1399481 -24.256267
2025-11-17T14:58:58.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1399481 -24.256267
2025-11-17T14:58:58.921 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1399481 -24.256267
2025-11-17T14:58:58.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1399481;-24.256267;50.108235;89.992682;50.08601;90.12017;18.1597;2460997.04095973;14.98300389;1.3;_21.1147985429204 -24.3590800299945
2025-11-17T14:58:58.922 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1147985429204     dec_j2k = -24.3590800299945
2025-11-17T14:58:58.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:58:58.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:58:58.922 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687798520599;171.162357330327;_
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:58.923 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:58:58.924 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59817)
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:58:58.930 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:58:58.937 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:58:58.938 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:58:58.938 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:58:58.938 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:58:58.938 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04095971, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687798520599, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992682, telescope_ra=21.1399481, telescope_dec=-24.256267, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1597, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:58:04.436620', telescope_ra_j2k=21.1147985429204, telescope_dec_j2k=-24.3590800299945, observability=1)
2025-11-17T14:59:04.577 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:04.577 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:04.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:04.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:04.577 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:04.578 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:04.578 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:04.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:04.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:04.579 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:04.579 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T14:59:04.579 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:04.579 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:04.579 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:04.579 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:04.579 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T14:59:04.580 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T14:59:04.581 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:05.581 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:05.581 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:05.581 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:05.581 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:05.582 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T14:59:05.583 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:05.584 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:05.585 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:05.585 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:05.585 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:05.585 [DEBUG] [ThreadPoolExecutor-2936_0] [payload.py] [to_registers()] [0]
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52211)
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:05.586 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:05.593 [DEBUG] [ThreadPoolExecutor-2936_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Status age = 7.660339832305908s
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:06.598 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 17;21.1420959;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16185;2460997.0410486;14.98514583;1.3;_
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response 17;21.1420959;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16185;2460997.0410486;14.98514583;1.3;_
2025-11-17T14:59:06.599 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:06.600 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:06.600 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:06.600 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:06.601 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:06.601 [INFO] [Thread-68333 (handle)] [driver.py] [get_status()] Telra = 21.1420959, teldec = -24.256266
2025-11-17T14:59:06.601 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1420959 -24.256266
2025-11-17T14:59:06.601 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1420959 -24.256266
2025-11-17T14:59:06.601 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1420959 -24.256266
2025-11-17T14:59:06.602 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 17;21.1420959;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16185;2460997.04104863;14.98514583;1.3;_21.1169478731852 -24.3591354075166
2025-11-17T14:59:06.602 [INFO] [Thread-68333 (handle)] [driver.py] [get_status()] ra_j2k = 21.1169478731852     dec_j2k = -24.3591354075166
2025-11-17T14:59:06.602 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:06.602 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:06.602 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 140;0.104687517737;171.162351965909;_
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response 140;0.104687517737;171.162351965909;_
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:06.603 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:06.604 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:06.605 [DEBUG] [Thread-68333 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:06.605 [DEBUG] [Thread-68333 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:06.605 [DEBUG] [Thread-68333 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:06.609 [DEBUG] [Thread-68333 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55499)
2025-11-17T14:59:06.609 [DEBUG] [Thread-68333 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:06.609 [DEBUG] [Thread-68333 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:06.610 [DEBUG] [Thread-68333 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:06.610 [DEBUG] [Thread-68333 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:06.610 [DEBUG] [Thread-68333 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:06.617 [DEBUG] [Thread-68333 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:06.618 [DEBUG] [Thread-68333 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:06.618 [INFO] [Thread-68333 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0410486, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687517737, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992682, telescope_ra=21.1420959, telescope_dec=-24.256266, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.16185, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1169478731852, telescope_dec_j2k=-24.3591354075166, observability=1)
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.40952444076538s
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1444306;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16418;2460997.04114617;14.98747417;1.3;_
2025-11-17T14:59:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.1444306;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16418;2460997.04114617;14.98747417;1.3;_
2025-11-17T14:59:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:15.029 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:15.030 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:15.031 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.1444306, teldec = -24.256266
2025-11-17T14:59:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1444306 -24.256266
2025-11-17T14:59:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1444306 -24.256266
2025-11-17T14:59:15.031 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1444306 -24.256266
2025-11-17T14:59:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1444306;-24.256266;50.108235;89.992682;50.08601;90.12017;18.16418;2460997.0411462;14.98747417;1.3;_21.1192842375282 -24.3591966543744
2025-11-17T14:59:15.032 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.1192842375282     dec_j2k = -24.3591966543744
2025-11-17T14:59:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:15.032 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687597960885;171.162357330327;_
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687597960885;171.162357330327;_
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:15.033 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:15.034 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41691)
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:15.037 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:15.044 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04114617, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687597960885, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992682, telescope_ra=21.1444306, telescope_dec=-24.256266, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.16418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1192842375282, telescope_dec_j2k=-24.3591966543744, observability=1)
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Status age = 2.198472499847412s
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:17.243 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:17.244 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:17.244 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:17.244 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:17.245 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 17;21.1450473;-24.256266;50.108235;89.992682;50.08601;90.12017;18.1648;2460997.04117182;14.98808917;1.3;_
2025-11-17T14:59:17.245 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response 17;21.1450473;-24.256266;50.108235;89.992682;50.08601;90.12017;18.1648;2460997.04117182;14.98808917;1.3;_
2025-11-17T14:59:17.245 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:17.245 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:17.245 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:17.246 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:17.246 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:17.246 [INFO] [Thread-68334 (handle)] [driver.py] [get_status()] Telra = 21.1450473, teldec = -24.256266
2025-11-17T14:59:17.246 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1450473 -24.256266
2025-11-17T14:59:17.246 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1450473 -24.256266
2025-11-17T14:59:17.246 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1450473 -24.256266
2025-11-17T14:59:17.247 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 17;21.1450473;-24.256266;50.108235;89.992682;50.08601;90.12017;18.1648;2460997.04117184;14.98808917;1.3;_21.1199013773423 -24.3592128260944
2025-11-17T14:59:17.247 [INFO] [Thread-68334 (handle)] [driver.py] [get_status()] ra_j2k = 21.1199013773423     dec_j2k = -24.3592128260944
2025-11-17T14:59:17.247 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:17.247 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:17.247 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:17.247 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 140;0.104687277065343;171.162351965909;_
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response 140;0.104687277065343;171.162351965909;_
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:17.248 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:17.249 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:17.249 [DEBUG] [Thread-68334 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:17.249 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:17.249 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:17.249 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:17.250 [DEBUG] [Thread-68334 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:17.250 [DEBUG] [Thread-68334 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:17.250 [DEBUG] [Thread-68334 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47807)
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:17.252 [DEBUG] [Thread-68334 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:17.260 [DEBUG] [Thread-68334 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:17.260 [INFO] [Thread-68334 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04117182, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687277065343, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992682, telescope_ra=21.1450473, telescope_dec=-24.256266, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1648, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1199013773423, telescope_dec_j2k=-24.3592128260944, observability=1)
2025-11-17T14:59:24.722 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:24.722 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Status age = 7.461999416351318s
2025-11-17T14:59:24.722 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:24.722 [DEBUG] [Thread-68335 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 17;21.1471383;-24.256266;50.108235;89.992681;50.08601;90.12017;18.16689;2460997.04125837;14.99017444;1.3;_
2025-11-17T14:59:24.723 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response 17;21.1471383;-24.256266;50.108235;89.992681;50.08601;90.12017;18.16689;2460997.04125837;14.99017444;1.3;_
2025-11-17T14:59:24.724 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:24.724 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:24.724 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:24.725 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:24.725 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:24.725 [INFO] [Thread-68335 (handle)] [driver.py] [get_status()] Telra = 21.1471383, teldec = -24.256266
2025-11-17T14:59:24.725 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1471383 -24.256266
2025-11-17T14:59:24.725 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1471383 -24.256266
2025-11-17T14:59:24.725 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1471383 -24.256266
2025-11-17T14:59:24.726 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 17;21.1471383;-24.256266;50.108235;89.992681;50.08601;90.12017;18.16689;2460997.0412584;14.99017444;1.3;_21.1219938691656 -24.3592676386158
2025-11-17T14:59:24.726 [INFO] [Thread-68335 (handle)] [driver.py] [get_status()] ra_j2k = 21.1219938691656     dec_j2k = -24.3592676386158
2025-11-17T14:59:24.726 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:24.726 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:24.726 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 140;0.104687477625057;171.162357330327;_
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response 140;0.104687477625057;171.162357330327;_
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:24.727 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:24.728 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:24.729 [DEBUG] [Thread-68335 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:24.729 [DEBUG] [Thread-68335 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:24.729 [DEBUG] [Thread-68335 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:59:24.732 [DEBUG] [Thread-68335 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38305)
2025-11-17T14:59:24.733 [DEBUG] [Thread-68335 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:24.733 [DEBUG] [Thread-68335 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:24.733 [DEBUG] [Thread-68335 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:24.733 [DEBUG] [Thread-68335 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:24.733 [DEBUG] [Thread-68335 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:24.740 [DEBUG] [Thread-68335 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:24.740 [DEBUG] [Thread-68335 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:24.741 [DEBUG] [Thread-68335 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:24.741 [INFO] [Thread-68335 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04125837, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687477625057, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992681, telescope_ra=21.1471383, telescope_dec=-24.256266, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.16689, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1219938691656, telescope_dec_j2k=-24.3592676386158, observability=1)
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:30.594 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] CloseShutters
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T14:59:30.595 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T14:59:30.596 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:37.021 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 12.280744552612305s
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:37.022 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1505587;-24.256266;50.108235;89.992681;50.08601;90.12017;18.17031;2460997.04140073;14.99358556;1.3;_
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.1505587;-24.256266;50.108235;89.992681;50.08601;90.12017;18.17031;2460997.04140073;14.99358556;1.3;_
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:37.023 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:37.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:37.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:37.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:37.025 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.1505587, teldec = -24.256266
2025-11-17T14:59:37.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.1505587 -24.256266
2025-11-17T14:59:37.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.1505587 -24.256266
2025-11-17T14:59:37.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1505587 -24.256266
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1505587;-24.256266;50.108235;89.992681;50.08601;90.12017;18.17031;2460997.04140076;14.99358556;1.3;_21.125416711371 -24.3593572336047
2025-11-17T14:59:37.026 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.125416711371     dec_j2k = -24.3593572336047
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104687638072828;171.162351965909;_
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104687638072828;171.162351965909;_
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:37.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:37.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:37.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:37.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T14:59:37.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39149)
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:37.033 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:37.041 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T14:59:37.042 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04140073, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687638072828, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992681, telescope_ra=21.1505587, telescope_dec=-24.256266, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.17031, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.125416711371, telescope_dec_j2k=-24.3593572336047, observability=1)
2025-11-17T14:59:37.042 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.98173379898071 seconds ago
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Status age = 5.747362375259399s
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:42.789 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:42.790 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:42.791 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 17;21.1521765;-24.256265;50.108235;89.992681;50.08601;90.12017;18.17193;2460997.04146749;14.99519889;1.3;_
2025-11-17T14:59:42.791 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response 17;21.1521765;-24.256265;50.108235;89.992681;50.08601;90.12017;18.17193;2460997.04146749;14.99519889;1.3;_
2025-11-17T14:59:42.791 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:42.791 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:42.791 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:42.792 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:42.792 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:42.792 [INFO] [Thread-68336 (handle)] [driver.py] [get_status()] Telra = 21.1521765, teldec = -24.256265
2025-11-17T14:59:42.792 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1521765 -24.256265
2025-11-17T14:59:42.792 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1521765 -24.256265
2025-11-17T14:59:42.792 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1521765 -24.256265
2025-11-17T14:59:42.793 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 17;21.1521765;-24.256265;50.108235;89.992681;50.08601;90.12017;18.17193;2460997.04146751;14.99519889;1.3;_21.1270356674697 -24.3593985823688
2025-11-17T14:59:42.793 [INFO] [Thread-68336 (handle)] [driver.py] [get_status()] ra_j2k = 21.1270356674697     dec_j2k = -24.3593985823688
2025-11-17T14:59:42.793 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:42.793 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:42.793 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 140;0.104687758408657;171.162368059163;_
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response 140;0.104687758408657;171.162368059163;_
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:42.794 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:42.795 [DEBUG] [Thread-68336 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:42.795 [DEBUG] [Thread-68336 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:42.795 [DEBUG] [Thread-68336 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34185)
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:42.797 [DEBUG] [Thread-68336 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:42.804 [DEBUG] [Thread-68336 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:42.804 [DEBUG] [Thread-68336 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:42.804 [DEBUG] [Thread-68336 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:42.804 [DEBUG] [Thread-68336 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:42.804 [DEBUG] [Thread-68336 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:42.805 [DEBUG] [Thread-68336 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:42.805 [DEBUG] [Thread-68336 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:42.805 [DEBUG] [Thread-68336 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:42.805 [DEBUG] [Thread-68336 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:42.805 [INFO] [Thread-68336 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04146749, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687758408657, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992681, telescope_ra=21.1521765, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.17193, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1270356674697, telescope_dec_j2k=-24.3593985823688, observability=1)
2025-11-17T14:59:52.137 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T14:59:52
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.332553625106812s
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:52.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:52.138 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:52.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1547724;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17452;2460997.04157568;14.99778778;1.3;_
2025-11-17T14:59:52.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1547724;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17452;2460997.04157568;14.99778778;1.3;_
2025-11-17T14:59:52.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:52.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:52.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:52.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:52.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:52.140 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1547724, teldec = -24.256265
2025-11-17T14:59:52.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1547724 -24.256265
2025-11-17T14:59:52.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1547724 -24.256265
2025-11-17T14:59:52.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1547724 -24.256265
2025-11-17T14:59:52.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1547724;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17452;2460997.04157571;14.99778778;1.3;_21.129633423419 -24.3594664962251
2025-11-17T14:59:52.141 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.129633423419     dec_j2k = -24.3594664962251
2025-11-17T14:59:52.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:52.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686795722029;171.162362694745;_
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686795722029;171.162362694745;_
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:52.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:52.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:52.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:52.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:52.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:52.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:52.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:52.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:52.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:52.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:52.146 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43029)
2025-11-17T14:59:52.146 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:52.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:52.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:52.147 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:52.147 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:52.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:52.155 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:52.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:52.155 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04157568, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686795722029, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99268, telescope_ra=21.1547724, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.17452, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.129633423419, telescope_dec_j2k=-24.3594664962251, observability=1)
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.877164363861084s
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T14:59:58.032 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T14:59:58.033 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1564161;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17617;2460997.0416439;14.99942694;1.3;_
2025-11-17T14:59:58.034 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.1564161;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17617;2460997.0416439;14.99942694;1.3;_
2025-11-17T14:59:58.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T14:59:58.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T14:59:58.034 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T14:59:58.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:58.035 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T14:59:58.035 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.1564161, teldec = -24.256265
2025-11-17T14:59:58.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1564161 -24.256265
2025-11-17T14:59:58.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1564161 -24.256265
2025-11-17T14:59:58.035 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1564161 -24.256265
2025-11-17T14:59:58.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1564161;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17617;2460997.04164394;14.99942694;1.3;_21.1312782992984 -24.3595094742803
2025-11-17T14:59:58.036 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1312782992984     dec_j2k = -24.3595094742803
2025-11-17T14:59:58.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T14:59:58.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T14:59:58.036 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104687357289228;171.162351965909;_
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104687357289228;171.162351965909;_
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:58.037 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T14:59:58.038 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T14:59:58.039 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:58.039 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T14:59:58.039 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T14:59:58.045 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43383)
2025-11-17T14:59:58.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T14:59:58.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T14:59:58.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T14:59:58.046 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T14:59:58.046 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T14:59:58.053 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T14:59:58.053 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0416439, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687357289228, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99268, telescope_ra=21.1564161, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.17617, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1312782992984, telescope_dec_j2k=-24.3595094742803, observability=1)
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Status age = 2.805422067642212s
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:00.859 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:00.860 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 17;21.1571907;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17694;2460997.04167662;15.00019944;1.3;_
2025-11-17T15:00:00.860 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response 17;21.1571907;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17694;2460997.04167662;15.00019944;1.3;_
2025-11-17T15:00:00.860 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:00.861 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:00.861 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:00.861 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:00.862 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:00.862 [INFO] [Thread-68337 (handle)] [driver.py] [get_status()] Telra = 21.1571907, teldec = -24.256265
2025-11-17T15:00:00.862 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1571907 -24.256265
2025-11-17T15:00:00.862 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1571907 -24.256265
2025-11-17T15:00:00.862 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1571907 -24.256265
2025-11-17T15:00:00.863 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 17;21.1571907;-24.256265;50.108235;89.99268;50.08601;90.12017;18.17694;2460997.04167666;15.00019944;1.3;_21.1320534536267 -24.3595297213009
2025-11-17T15:00:00.863 [INFO] [Thread-68337 (handle)] [driver.py] [get_status()] ra_j2k = 21.1320534536267     dec_j2k = -24.3595297213009
2025-11-17T15:00:00.863 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:00.863 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:00.863 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 140;0.104688279863913;171.162357330327;_
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response 140;0.104688279863913;171.162357330327;_
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:00.864 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:00.865 [DEBUG] [Thread-68337 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:00.865 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:00.865 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:00.865 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:00.866 [DEBUG] [Thread-68337 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:00.866 [DEBUG] [Thread-68337 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:00.866 [DEBUG] [Thread-68337 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45029)
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:00.871 [DEBUG] [Thread-68337 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:00.878 [DEBUG] [Thread-68337 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:00.879 [INFO] [Thread-68337 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04167662, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104688279863913, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99268, telescope_ra=21.1571907, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.17694, lcu_permission=False, lcu_permission_timestamp='2025-11-17T14:59:04.576958', telescope_ra_j2k=21.1320534536267, telescope_dec_j2k=-24.3595297213009, observability=1)
2025-11-17T15:00:04.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:04.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:04.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:04.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:04.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:04.718 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:04.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:04.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:04.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:04.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:04.719 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:04.719 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:00:04.719 [INFO] [ThreadPoolExecutor-2937_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:00:04.720 [INFO] [ThreadPoolExecutor-2937_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 14.168477773666382s
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:15.048 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1611498;-24.256271;50.108235;89.99269;50.08601;90.12018;18.1809;2460997.04184084;15.0041475;1.3;_
2025-11-17T15:00:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.1611498;-24.256271;50.108235;89.99269;50.08601;90.12018;18.1809;2460997.04184084;15.0041475;1.3;_
2025-11-17T15:00:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:15.052 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.1611498, teldec = -24.256271
2025-11-17T15:00:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1611498 -24.256271
2025-11-17T15:00:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1611498 -24.256271
2025-11-17T15:00:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1611498 -24.256271
2025-11-17T15:00:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1611498;-24.256271;50.108235;89.99269;50.08601;90.12018;18.1809;2460997.04184089;15.0041475;1.3;_21.1360153879517 -24.3596391407369
2025-11-17T15:00:15.056 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.1360153879517     dec_j2k = -24.3596391407369
2025-11-17T15:00:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104687918856428;171.162368059163;_
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104687918856428;171.162368059163;_
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36355)
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:15.070 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:15.070 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04184084, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687918856428, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99269, telescope_ra=21.1611498, telescope_dec=-24.256271, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.1809, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1360153879517, telescope_dec_j2k=-24.3596391407369, observability=1)
2025-11-17T15:00:17.294 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:17.294 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Status age = 2.224148988723755s
2025-11-17T15:00:17.294 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:17.295 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:17.296 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 17;21.1617944;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18154;2460997.04186685;15.00479056;1.3;_
2025-11-17T15:00:17.297 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response 17;21.1617944;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18154;2460997.04186685;15.00479056;1.3;_
2025-11-17T15:00:17.297 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:17.297 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:17.297 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:17.298 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:17.298 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:17.298 [INFO] [Thread-68338 (handle)] [driver.py] [get_status()] Telra = 21.1617944, teldec = -24.256265
2025-11-17T15:00:17.298 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1617944 -24.256265
2025-11-17T15:00:17.298 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1617944 -24.256265
2025-11-17T15:00:17.298 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1617944 -24.256265
2025-11-17T15:00:17.299 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 17;21.1617944;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18154;2460997.04186689;15.00479056;1.3;_21.1366604506981 -24.3596499692448
2025-11-17T15:00:17.299 [INFO] [Thread-68338 (handle)] [driver.py] [get_status()] ra_j2k = 21.1366604506981     dec_j2k = -24.3596499692448
2025-11-17T15:00:17.299 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:17.299 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:17.299 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 140;0.104686715498144;171.162357330327;_
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response 140;0.104686715498144;171.162357330327;_
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:17.300 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:17.301 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:17.302 [DEBUG] [Thread-68338 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:17.302 [DEBUG] [Thread-68338 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:17.302 [DEBUG] [Thread-68338 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38161)
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:17.306 [DEBUG] [Thread-68338 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:17.313 [DEBUG] [Thread-68338 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:17.313 [INFO] [Thread-68338 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04186685, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686715498144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99268, telescope_ra=21.1617944, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.18154, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1366604506981, telescope_dec_j2k=-24.3596499692448, observability=1)
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Status age = 1.6679174900054932s
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:18.981 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:18.982 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:18.982 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:18.983 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:18.984 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 17;21.162242;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18199;2460997.04188639;15.00523694;1.3;_
2025-11-17T15:00:18.984 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response 17;21.162242;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18199;2460997.04188639;15.00523694;1.3;_
2025-11-17T15:00:18.984 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:18.984 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:18.985 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:18.986 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:18.986 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:18.986 [INFO] [Thread-68339 (handle)] [driver.py] [get_status()] Telra = 21.162242, teldec = -24.256265
2025-11-17T15:00:18.986 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] UnCookCoordinates 21.162242 -24.256265
2025-11-17T15:00:18.986 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.162242 -24.256265
2025-11-17T15:00:18.986 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.162242 -24.256265
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 17;21.162242;-24.256265;50.108235;89.99268;50.08601;90.12017;18.18199;2460997.04188642;15.00523694;1.3;_21.1371083714895 -24.3596616525685
2025-11-17T15:00:18.987 [INFO] [Thread-68339 (handle)] [driver.py] [get_status()] ra_j2k = 21.1371083714895     dec_j2k = -24.3596616525685
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 140;0.104686835833972;171.162357330327;_
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response 140;0.104686835833972;171.162357330327;_
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:18.987 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:18.988 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:18.988 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:18.988 [DEBUG] [Thread-68339 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:18.988 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:18.988 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:18.989 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:18.989 [DEBUG] [Thread-68339 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:18.989 [DEBUG] [Thread-68339 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:18.989 [DEBUG] [Thread-68339 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42755)
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:18.992 [DEBUG] [Thread-68339 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:18.999 [DEBUG] [Thread-68339 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:18.999 [DEBUG] [Thread-68339 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:18.999 [DEBUG] [Thread-68339 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:18.999 [DEBUG] [Thread-68339 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:19.000 [DEBUG] [Thread-68339 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:19.000 [DEBUG] [Thread-68339 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:19.000 [DEBUG] [Thread-68339 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:19.000 [DEBUG] [Thread-68339 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:19.000 [DEBUG] [Thread-68339 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:19.000 [INFO] [Thread-68339 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04188639, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686835833972, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.99268, telescope_ra=21.162242, telescope_dec=-24.256265, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.18199, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1371083714895, telescope_dec_j2k=-24.3596616525685, observability=1)
2025-11-17T15:00:25.596 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.596 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.596 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:00:25.597 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:25.598 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:25.599 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:00:25.600 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:25.601 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Park
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:00:25.602 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:00:25.603 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 29;21.164109;-24.256264;50.108235;89.992679;50.08601;90.12017;18.18386;2460997.041963;15.00709889;1.3;_Park Command Successful
2025-11-17T15:00:26.603 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:00:26.603 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:00:26.603 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:00:26.604 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:00:26.604 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:00:27.604 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:00:27.604 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:00:27.604 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:00:27.605 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:00:27.605 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:00:28.605 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:00:28.605 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:00:28.605 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:00:28.606 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:00:28.606 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:00:29.606 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:00:29.606 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:00:29.606 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:29.607 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:29.608 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:00:29.609 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:00:29.609 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:00:29.609 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:30.609 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:00:30.610 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:00:30.611 [DEBUG] [ThreadPoolExecutor-2936_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:30.611 [INFO] [ThreadPoolExecutor-2936_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Status age = 18.055563926696777s
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:37.055 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:37.056 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:37.057 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:37.057 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 17;21.1672841;-24.256264;50.108235;89.992679;50.08601;90.12017;18.18703;2460997.04209557;15.01026528;1.3;_
2025-11-17T15:00:37.057 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response 17;21.1672841;-24.256264;50.108235;89.992679;50.08601;90.12017;18.18703;2460997.04209557;15.01026528;1.3;_
2025-11-17T15:00:37.057 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:37.057 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:37.058 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:37.058 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:37.059 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:37.059 [INFO] [Thread-68340 (handle)] [driver.py] [get_status()] Telra = 21.1672841, teldec = -24.256264
2025-11-17T15:00:37.059 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1672841 -24.256264
2025-11-17T15:00:37.059 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1672841 -24.256264
2025-11-17T15:00:37.059 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1672841 -24.256264
2025-11-17T15:00:37.060 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 17;21.1672841;-24.256264;50.108235;89.992679;50.08601;90.12017;18.18703;2460997.0420956;15.01026528;1.3;_21.142154088073 -24.3597921652891
2025-11-17T15:00:37.060 [INFO] [Thread-68340 (handle)] [driver.py] [get_status()] ra_j2k = 21.142154088073     dec_j2k = -24.3597921652891
2025-11-17T15:00:37.060 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:37.060 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:37.060 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:37.060 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 140;0.104687397401171;171.162351965909;_
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response 140;0.104687397401171;171.162351965909;_
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:37.061 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:37.062 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:37.062 [DEBUG] [Thread-68340 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:00:37.062 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:37.062 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:37.062 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:37.063 [DEBUG] [Thread-68340 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:37.063 [DEBUG] [Thread-68340 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:00:37.063 [DEBUG] [Thread-68340 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45135)
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:37.065 [DEBUG] [Thread-68340 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:37.072 [DEBUG] [Thread-68340 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:37.072 [INFO] [Thread-68340 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04209557, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104687397401171, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992679, telescope_ra=21.1672841, telescope_dec=-24.256264, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.18703, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.142154088073, telescope_dec_j2k=-24.3597921652891, observability=1)
2025-11-17T15:00:37.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:00:37.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.02956247329711914s
2025-11-17T15:00:37.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.02956247329711914
2025-11-17T15:00:37.102 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96460843086243 seconds ago
2025-11-17T15:00:52.215 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:00:52
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.143463373184204s
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:52.216 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:52.217 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:52.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1714928;-24.256264;50.108235;89.992678;50.08601;90.12017;18.19124;2460997.04227104;15.0144625;1.3;_
2025-11-17T15:00:52.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1714928;-24.256264;50.108235;89.992678;50.08601;90.12017;18.19124;2460997.04227104;15.0144625;1.3;_
2025-11-17T15:00:52.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:52.218 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:52.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:52.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:52.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:52.219 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1714928, teldec = -24.256264
2025-11-17T15:00:52.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1714928 -24.256264
2025-11-17T15:00:52.219 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1714928 -24.256264
2025-11-17T15:00:52.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1714928 -24.256264
2025-11-17T15:00:52.220 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1714928;-24.256264;50.108235;89.992678;50.08601;90.12017;18.19124;2460997.04227106;15.0144625;1.3;_21.1463658107121 -24.3599018038013
2025-11-17T15:00:52.220 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.1463658107121     dec_j2k = -24.3599018038013
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686555050372;171.162351965909;_
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686555050372;171.162351965909;_
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:52.221 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:52.222 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42035)
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:52.229 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:52.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:52.236 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:52.236 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:52.236 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:52.237 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:52.237 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:52.237 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:52.237 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:52.237 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:52.237 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04227104, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686555050372, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108235, telescope_az=89.992678, telescope_ra=21.1714928, telescope_dec=-24.256264, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19124, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1463658107121, telescope_dec_j2k=-24.3599018038013, observability=1)
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Status age = 2.8930275440216064s
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:55.130 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:55.131 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:55.132 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 17;21.1723245;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19207;2460997.04230477;15.01529194;1.3;_
2025-11-17T15:00:55.132 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response 17;21.1723245;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19207;2460997.04230477;15.01529194;1.3;_
2025-11-17T15:00:55.132 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:55.132 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:55.132 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:55.133 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:55.133 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:55.133 [INFO] [Thread-68341 (handle)] [driver.py] [get_status()] Telra = 21.1723245, teldec = -24.256264
2025-11-17T15:00:55.133 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1723245 -24.256264
2025-11-17T15:00:55.133 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1723245 -24.256264
2025-11-17T15:00:55.134 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1723245 -24.256264
2025-11-17T15:00:55.134 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 17;21.1723245;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19207;2460997.04230479;15.01529194;1.3;_21.1471981084544 -24.359923455235
2025-11-17T15:00:55.134 [INFO] [Thread-68341 (handle)] [driver.py] [get_status()] ra_j2k = 21.1471981084544     dec_j2k = -24.359923455235
2025-11-17T15:00:55.135 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:55.135 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:55.135 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:55.135 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 140;0.104686595162315;171.162362694745;_
2025-11-17T15:00:55.135 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response 140;0.104686595162315;171.162362694745;_
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:55.136 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:55.137 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:55.137 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:55.137 [DEBUG] [Thread-68341 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:55.137 [DEBUG] [Thread-68341 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:55.137 [DEBUG] [Thread-68341 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43891)
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:55.143 [DEBUG] [Thread-68341 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:55.150 [DEBUG] [Thread-68341 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:55.150 [DEBUG] [Thread-68341 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:55.150 [DEBUG] [Thread-68341 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:55.150 [DEBUG] [Thread-68341 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:55.151 [DEBUG] [Thread-68341 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:55.151 [DEBUG] [Thread-68341 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:55.151 [DEBUG] [Thread-68341 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:55.151 [DEBUG] [Thread-68341 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:55.151 [DEBUG] [Thread-68341 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:55.151 [INFO] [Thread-68341 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04230477, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686595162315, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992678, telescope_ra=21.1723245, telescope_dec=-24.256264, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1471981084544, telescope_dec_j2k=-24.359923455235, observability=1)
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.9934048652648926s
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:00:57.144 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:00:57.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:00:57.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:00:57.145 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:00:57.145 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:00:57.146 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1728849;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19264;2460997.04232808;15.01585083;1.3;_
2025-11-17T15:00:57.147 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.1728849;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19264;2460997.04232808;15.01585083;1.3;_
2025-11-17T15:00:57.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:00:57.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:00:57.147 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:00:57.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:57.148 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:00:57.148 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.1728849, teldec = -24.256264
2025-11-17T15:00:57.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1728849 -24.256264
2025-11-17T15:00:57.148 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1728849 -24.256264
2025-11-17T15:00:57.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1728849 -24.256264
2025-11-17T15:00:57.149 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1728849;-24.256264;50.108234;89.992678;50.08601;90.12017;18.19264;2460997.04232811;15.01585083;1.3;_21.1477589112926 -24.359938041244
2025-11-17T15:00:57.150 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1477589112926     dec_j2k = -24.359938041244
2025-11-17T15:00:57.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:00:57.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:00:57.150 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:57.151 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:00:57.152 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:00:57.153 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:57.153 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:00:57.153 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:00:57.155 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49319)
2025-11-17T15:00:57.155 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:00:57.155 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:00:57.155 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:00:57.155 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:00:57.156 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:00:57.163 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:00:57.164 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:00:57.164 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04232808, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992678, telescope_ra=21.1728849, telescope_dec=-24.256264, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19264, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:00:04.716748', telescope_ra_j2k=21.1477589112926, telescope_dec_j2k=-24.359938041244, observability=1)
2025-11-17T15:01:04.860 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:04.860 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:04.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:04.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:04.860 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:04.861 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:04.861 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:04.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:04.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:04.862 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:04.862 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:01:04.862 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:04.862 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:04.862 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:01:04.863 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:01:04.864 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:05.864 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:01:05.865 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:05.866 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:05.867 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:05.867 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:05.867 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:05.867 [DEBUG] [ThreadPoolExecutor-2938_0] [payload.py] [to_registers()] [0]
2025-11-17T15:01:05.872 [DEBUG] [ThreadPoolExecutor-2938_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51825)
2025-11-17T15:01:05.872 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:05.873 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:05.873 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:01:05.873 [DEBUG] [ThreadPoolExecutor-2938_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:05.873 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:05.880 [DEBUG] [ThreadPoolExecutor-2938_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Status age = 16.107370615005493s
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:13.271 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:13.272 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:13.273 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 17;21.177368;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19712;2460997.04251473;15.02032167;1.3;_
2025-11-17T15:01:13.273 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response 17;21.177368;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19712;2460997.04251473;15.02032167;1.3;_
2025-11-17T15:01:13.273 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:13.273 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:13.273 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:13.274 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:13.274 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:13.274 [INFO] [Thread-68342 (handle)] [driver.py] [get_status()] Telra = 21.177368, teldec = -24.256263
2025-11-17T15:01:13.274 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] UnCookCoordinates 21.177368 -24.256263
2025-11-17T15:01:13.274 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.177368 -24.256263
2025-11-17T15:01:13.274 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.177368 -24.256263
2025-11-17T15:01:13.275 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 17;21.177368;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19712;2460997.04251476;15.02032167;1.3;_21.1522452363559 -24.3600536473283
2025-11-17T15:01:13.275 [INFO] [Thread-68342 (handle)] [driver.py] [get_status()] ra_j2k = 21.1522452363559     dec_j2k = -24.3600536473283
2025-11-17T15:01:13.275 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:13.275 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:13.275 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 140;0.104686795722029;171.162351965909;_
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response 140;0.104686795722029;171.162351965909;_
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:13.276 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:13.277 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:13.277 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:13.277 [DEBUG] [Thread-68342 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:13.278 [DEBUG] [Thread-68342 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:13.283 [DEBUG] [Thread-68342 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57899)
2025-11-17T15:01:13.283 [DEBUG] [Thread-68342 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:13.284 [DEBUG] [Thread-68342 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:13.284 [DEBUG] [Thread-68342 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:13.284 [DEBUG] [Thread-68342 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:13.284 [DEBUG] [Thread-68342 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:13.291 [DEBUG] [Thread-68342 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:13.291 [INFO] [Thread-68342 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04251473, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686795722029, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992678, telescope_ra=21.177368, telescope_dec=-24.256263, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19712, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1522452363559, telescope_dec_j2k=-24.3600536473283, observability=1)
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.7590129375457764s
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1778727;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19762;2460997.04253532;15.020825;1.3;_
2025-11-17T15:01:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.1778727;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19762;2460997.04253532;15.020825;1.3;_
2025-11-17T15:01:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:15.053 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.1778727, teldec = -24.256263
2025-11-17T15:01:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1778727 -24.256263
2025-11-17T15:01:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1778727 -24.256263
2025-11-17T15:01:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1778727 -24.256263
2025-11-17T15:01:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1778727;-24.256263;50.108234;89.992678;50.08601;90.12017;18.19762;2460997.04253535;15.020825;1.3;_21.1527502996674 -24.3600667657843
2025-11-17T15:01:15.054 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.1527502996674     dec_j2k = -24.3600667657843
2025-11-17T15:01:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686835833972;171.162362694745;_
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686835833972;171.162362694745;_
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51423)
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:15.065 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:15.065 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:15.065 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:15.066 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:15.066 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04253532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686835833972, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992678, telescope_ra=21.1778727, telescope_dec=-24.256263, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19762, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1527502996674, telescope_dec_j2k=-24.3600667657843, observability=1)
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Status age = 2.2801434993743896s
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:17.346 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:17.347 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:17.348 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 17;21.1785072;-24.256263;50.108234;89.992677;50.08601;90.12017;18.19826;2460997.0425619;15.02145778;1.3;_
2025-11-17T15:01:17.348 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response 17;21.1785072;-24.256263;50.108234;89.992677;50.08601;90.12017;18.19826;2460997.0425619;15.02145778;1.3;_
2025-11-17T15:01:17.348 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:17.348 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:17.348 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:17.349 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:17.349 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:17.349 [INFO] [Thread-68343 (handle)] [driver.py] [get_status()] Telra = 21.1785072, teldec = -24.256263
2025-11-17T15:01:17.349 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1785072 -24.256263
2025-11-17T15:01:17.349 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1785072 -24.256263
2025-11-17T15:01:17.349 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1785072 -24.256263
2025-11-17T15:01:17.350 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 17;21.1785072;-24.256263;50.108234;89.992677;50.08601;90.12017;18.19826;2460997.04256192;15.02145778;1.3;_21.1533852564895 -24.360083255534
2025-11-17T15:01:17.350 [INFO] [Thread-68343 (handle)] [driver.py] [get_status()] ra_j2k = 21.1533852564895     dec_j2k = -24.360083255534
2025-11-17T15:01:17.350 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:17.350 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:17.351 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 140;0.104686635274258;171.162357330327;_
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response 140;0.104686635274258;171.162357330327;_
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:17.352 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:17.353 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:17.353 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:17.353 [DEBUG] [Thread-68343 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:17.354 [DEBUG] [Thread-68343 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:17.354 [DEBUG] [Thread-68343 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:17.358 [DEBUG] [Thread-68343 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60117)
2025-11-17T15:01:17.359 [DEBUG] [Thread-68343 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:17.359 [DEBUG] [Thread-68343 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:17.359 [DEBUG] [Thread-68343 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:17.359 [DEBUG] [Thread-68343 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:17.359 [DEBUG] [Thread-68343 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:17.366 [DEBUG] [Thread-68343 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:17.366 [INFO] [Thread-68343 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0425619, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686635274258, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992677, telescope_ra=21.1785072, telescope_dec=-24.256263, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.19826, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1533852564895, telescope_dec_j2k=-24.360083255534, observability=1)
2025-11-17T15:01:30.880 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:30.880 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:30.880 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:30.880 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:30.881 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:01:30.882 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:01:30.883 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Status age = 13.976711988449097s
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:31.343 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:31.344 [DEBUG] [Thread-68344 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:31.344 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:31.344 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:31.344 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:31.344 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:31.345 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 17;21.1824104;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20216;2460997.0427239;15.02535028;1.3;_
2025-11-17T15:01:31.345 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response 17;21.1824104;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20216;2460997.0427239;15.02535028;1.3;_
2025-11-17T15:01:31.345 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:31.345 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:31.345 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:31.346 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:31.346 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:31.346 [INFO] [Thread-68344 (handle)] [driver.py] [get_status()] Telra = 21.1824104, teldec = -24.256263
2025-11-17T15:01:31.346 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1824104 -24.256263
2025-11-17T15:01:31.346 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1824104 -24.256263
2025-11-17T15:01:31.346 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1824104 -24.256263
2025-11-17T15:01:31.347 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 17;21.1824104;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20216;2460997.04272392;15.02535028;1.3;_21.1572912684749 -24.3601846317852
2025-11-17T15:01:31.347 [INFO] [Thread-68344 (handle)] [driver.py] [get_status()] ra_j2k = 21.1572912684749     dec_j2k = -24.3601846317852
2025-11-17T15:01:31.347 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:31.347 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:31.347 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 140;0.104686715498144;171.162368059163;_
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response 140;0.104686715498144;171.162368059163;_
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:31.348 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:31.349 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:31.350 [DEBUG] [Thread-68344 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:31.350 [DEBUG] [Thread-68344 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:31.350 [DEBUG] [Thread-68344 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44821)
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:31.354 [DEBUG] [Thread-68344 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:31.361 [DEBUG] [Thread-68344 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:31.361 [DEBUG] [Thread-68344 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:31.362 [DEBUG] [Thread-68344 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:31.362 [INFO] [Thread-68344 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0427239, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686715498144, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992677, telescope_ra=21.1824104, telescope_dec=-24.256263, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.20216, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1572912684749, telescope_dec_j2k=-24.3601846317852, observability=1)
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.799682855606079s
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:37.162 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:37.163 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:37.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1840287;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20378;2460997.04279125;15.02696417;1.3;_
2025-11-17T15:01:37.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.1840287;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20378;2460997.04279125;15.02696417;1.3;_
2025-11-17T15:01:37.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:37.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:37.164 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:37.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:37.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:37.165 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.1840287, teldec = -24.256263
2025-11-17T15:01:37.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.1840287 -24.256263
2025-11-17T15:01:37.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.1840287 -24.256263
2025-11-17T15:01:37.165 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1840287 -24.256263
2025-11-17T15:01:37.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.1840287;-24.256263;50.108234;89.992677;50.08601;90.12017;18.20378;2460997.04279127;15.02696417;1.3;_21.1589107352516 -24.3602266317727
2025-11-17T15:01:37.166 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.1589107352516     dec_j2k = -24.3602266317727
2025-11-17T15:01:37.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:37.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:37.166 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686033595116;171.162351965909;_
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686033595116;171.162351965909;_
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:37.167 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:37.168 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58399)
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:37.171 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:37.178 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:37.179 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:37.179 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:01:37.179 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04279125, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686033595116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992677, telescope_ra=21.1840287, telescope_dec=-24.256263, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.20378, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1589107352516, telescope_dec_j2k=-24.3602266317727, observability=1)
2025-11-17T15:01:37.179 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96331167221069 seconds ago
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Status age = 12.31441855430603s
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:49.493 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:49.494 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:49.495 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 17;21.1874514;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2072;2460997.04293396;15.0303775;1.3;_
2025-11-17T15:01:49.495 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response 17;21.1874514;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2072;2460997.04293396;15.0303775;1.3;_
2025-11-17T15:01:49.495 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:49.495 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:49.495 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:49.496 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:49.496 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:49.496 [INFO] [Thread-68345 (handle)] [driver.py] [get_status()] Telra = 21.1874514, teldec = -24.256262
2025-11-17T15:01:49.496 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1874514 -24.256262
2025-11-17T15:01:49.496 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1874514 -24.256262
2025-11-17T15:01:49.496 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1874514 -24.256262
2025-11-17T15:01:49.497 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 17;21.1874514;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2072;2460997.04293399;15.0303775;1.3;_21.1623359048631 -24.3603144009145
2025-11-17T15:01:49.497 [INFO] [Thread-68345 (handle)] [driver.py] [get_status()] ra_j2k = 21.1623359048631     dec_j2k = -24.3603144009145
2025-11-17T15:01:49.497 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:49.497 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:49.497 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 140;0.104686755610086;171.162357330327;_
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response 140;0.104686755610086;171.162357330327;_
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:49.498 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:49.499 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:49.500 [DEBUG] [Thread-68345 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:49.500 [DEBUG] [Thread-68345 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:49.500 [DEBUG] [Thread-68345 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51481)
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:49.507 [DEBUG] [Thread-68345 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:49.514 [DEBUG] [Thread-68345 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:49.515 [DEBUG] [Thread-68345 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:49.515 [INFO] [Thread-68345 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04293396, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686755610086, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992676, telescope_ra=21.1874514, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2072, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1623359048631, telescope_dec_j2k=-24.3603144009145, observability=1)
2025-11-17T15:01:52.298 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:01:52
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.7827491760253906s
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:52.298 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:52.299 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1882371;-24.256262;50.108234;89.992676;50.08601;90.12017;18.20799;2460997.04296642;15.03116111;1.3;_
2025-11-17T15:01:52.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.1882371;-24.256262;50.108234;89.992676;50.08601;90.12017;18.20799;2460997.04296642;15.03116111;1.3;_
2025-11-17T15:01:52.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:52.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:52.300 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:52.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:52.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:52.301 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.1882371, teldec = -24.256262
2025-11-17T15:01:52.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1882371 -24.256262
2025-11-17T15:01:52.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1882371 -24.256262
2025-11-17T15:01:52.301 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1882371 -24.256262
2025-11-17T15:01:52.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.1882371;-24.256262;50.108234;89.992676;50.08601;90.12017;18.20799;2460997.04296646;15.03116111;1.3;_21.1631221720784 -24.3603347666865
2025-11-17T15:01:52.302 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.1631221720784     dec_j2k = -24.3603347666865
2025-11-17T15:01:52.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:52.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:52.302 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162357330327;_
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162357330327;_
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:52.303 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:52.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:52.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:52.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:52.304 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:52.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:52.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:52.305 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57021)
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:52.311 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:52.318 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:52.318 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04296642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992676, telescope_ra=21.1882371, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.20799, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1631221720784, telescope_dec_j2k=-24.3603347666865, observability=1)
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.9397871494293213s
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:01:56.258 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:01:56.259 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:01:56.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1893502;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2091;2460997.04301227;15.03227111;1.3;_
2025-11-17T15:01:56.260 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.1893502;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2091;2460997.04301227;15.03227111;1.3;_
2025-11-17T15:01:56.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:01:56.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:01:56.260 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:01:56.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:56.261 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:01:56.261 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.1893502, teldec = -24.256262
2025-11-17T15:01:56.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1893502 -24.256262
2025-11-17T15:01:56.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1893502 -24.256262
2025-11-17T15:01:56.261 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1893502 -24.256262
2025-11-17T15:01:56.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.1893502;-24.256262;50.108234;89.992676;50.08601;90.12017;18.2091;2460997.04301229;15.03227111;1.3;_21.1642360758648 -24.3603636113884
2025-11-17T15:01:56.262 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1642360758648     dec_j2k = -24.3603636113884
2025-11-17T15:01:56.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:01:56.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:01:56.262 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104686875945915;171.162362694745;_
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104686875945915;171.162362694745;_
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:56.263 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:01:56.264 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:01:56.265 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:56.265 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:01:56.265 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33107)
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:01:56.270 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:01:56.277 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:01:56.278 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:01:56.278 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04301227, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686875945915, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992676, telescope_ra=21.1893502, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2091, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:01:04.860045', telescope_ra_j2k=21.1642360758648, telescope_dec_j2k=-24.3603636113884, observability=1)
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:05.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:05.005 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:05.005 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:05.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:05.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:05.006 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:05.006 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:02:05.006 [INFO] [ThreadPoolExecutor-2939_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:02:05.006 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Status age = 11.29222846031189s
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:07.570 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:07.571 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:07.572 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 17;21.1924974;-24.256262;50.108234;89.992676;50.08601;90.12017;18.21225;2460997.04314319;15.03540972;1.3;_
2025-11-17T15:02:07.572 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response 17;21.1924974;-24.256262;50.108234;89.992676;50.08601;90.12017;18.21225;2460997.04314319;15.03540972;1.3;_
2025-11-17T15:02:07.572 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:07.572 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:07.572 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:07.573 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:07.573 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:07.574 [INFO] [Thread-68346 (handle)] [driver.py] [get_status()] Telra = 21.1924974, teldec = -24.256262
2025-11-17T15:02:07.574 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1924974 -24.256262
2025-11-17T15:02:07.574 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1924974 -24.256262
2025-11-17T15:02:07.574 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1924974 -24.256262
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 17;21.1924974;-24.256262;50.108234;89.992676;50.08601;90.12017;18.21225;2460997.04314323;15.03540972;1.3;_21.1673855498586 -24.360445120121
2025-11-17T15:02:07.575 [INFO] [Thread-68346 (handle)] [driver.py] [get_status()] ra_j2k = 21.1673855498586     dec_j2k = -24.360445120121
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 140;0.104685512139859;171.162357330327;_
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response 140;0.104685512139859;171.162357330327;_
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:07.575 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:07.576 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:07.577 [DEBUG] [Thread-68346 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51025)
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:07.579 [DEBUG] [Thread-68346 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:07.586 [DEBUG] [Thread-68346 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:07.587 [DEBUG] [Thread-68346 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:07.587 [DEBUG] [Thread-68346 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:07.587 [INFO] [Thread-68346 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04314319, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685512139859, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992676, telescope_ra=21.1924974, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.21225, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1673855498586, telescope_dec_j2k=-24.360445120121, observability=1)
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.434103965759277s
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:15.021 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:15.022 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1945611;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21431;2460997.04322943;15.03746778;1.3;_
2025-11-17T15:02:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.1945611;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21431;2460997.04322943;15.03746778;1.3;_
2025-11-17T15:02:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:15.023 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:15.024 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.1945611, teldec = -24.256262
2025-11-17T15:02:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1945611 -24.256262
2025-11-17T15:02:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1945611 -24.256262
2025-11-17T15:02:15.024 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1945611 -24.256262
2025-11-17T15:02:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.1945611;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21431;2460997.04322946;15.03746778;1.3;_21.1694507420594 -24.3604985295187
2025-11-17T15:02:15.025 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.1694507420594     dec_j2k = -24.3604985295187
2025-11-17T15:02:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:15.025 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686033595116;171.162362694745;_
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686033595116;171.162362694745;_
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:15.026 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:15.027 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:15.028 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:15.034 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39935)
2025-11-17T15:02:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:15.035 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:15.035 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:15.042 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04322943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686033595116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992675, telescope_ra=21.1945611, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.21431, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1694507420594, telescope_dec_j2k=-24.3604985295187, observability=1)
2025-11-17T15:02:17.394 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Status age = 2.3521814346313477s
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:17.395 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:17.396 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:17.397 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 17;21.1952329;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21498;2460997.04325691;15.03813778;1.3;_
2025-11-17T15:02:17.397 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response 17;21.1952329;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21498;2460997.04325691;15.03813778;1.3;_
2025-11-17T15:02:17.397 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:17.397 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:17.397 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:17.398 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:17.398 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:17.398 [INFO] [Thread-68347 (handle)] [driver.py] [get_status()] Telra = 21.1952329, teldec = -24.256262
2025-11-17T15:02:17.398 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1952329 -24.256262
2025-11-17T15:02:17.398 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1952329 -24.256262
2025-11-17T15:02:17.398 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1952329 -24.256262
2025-11-17T15:02:17.399 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 17;21.1952329;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21498;2460997.04325693;15.03813778;1.3;_21.1701230280036 -24.3605159094839
2025-11-17T15:02:17.399 [INFO] [Thread-68347 (handle)] [driver.py] [get_status()] ra_j2k = 21.1701230280036     dec_j2k = -24.3605159094839
2025-11-17T15:02:17.399 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:17.399 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:17.399 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 140;0.104686354490658;171.162362694745;_
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response 140;0.104686354490658;171.162362694745;_
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:17.401 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:17.403 [DEBUG] [Thread-68347 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:17.403 [DEBUG] [Thread-68347 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:17.403 [DEBUG] [Thread-68347 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54789)
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:17.409 [DEBUG] [Thread-68347 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:17.416 [DEBUG] [Thread-68347 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:17.417 [DEBUG] [Thread-68347 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:17.417 [DEBUG] [Thread-68347 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:17.417 [INFO] [Thread-68347 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04325691, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686354490658, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992675, telescope_ra=21.1952329, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.21498, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1701230280036, telescope_dec_j2k=-24.3605159094839, observability=1)
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Status age = 8.228435277938843s
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:25.645 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 17;21.1975389;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21729;2460997.04335238;15.0404375;1.3;_
2025-11-17T15:02:25.646 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response 17;21.1975389;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21729;2460997.04335238;15.0404375;1.3;_
2025-11-17T15:02:25.647 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:25.647 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:25.647 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:25.648 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:25.648 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:25.648 [INFO] [Thread-68348 (handle)] [driver.py] [get_status()] Telra = 21.1975389, teldec = -24.256262
2025-11-17T15:02:25.648 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] UnCookCoordinates 21.1975389 -24.256262
2025-11-17T15:02:25.648 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.1975389 -24.256262
2025-11-17T15:02:25.648 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.1975389 -24.256262
2025-11-17T15:02:25.649 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 17;21.1975389;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21729;2460997.04335242;15.0404375;1.3;_21.1724306967323 -24.3605755431462
2025-11-17T15:02:25.649 [INFO] [Thread-68348 (handle)] [driver.py] [get_status()] ra_j2k = 21.1724306967323     dec_j2k = -24.3605755431462
2025-11-17T15:02:25.649 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:25.649 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:25.649 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 140;0.104686474826487;171.162357330327;_
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response 140;0.104686474826487;171.162357330327;_
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:25.650 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:25.651 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:25.652 [DEBUG] [Thread-68348 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:25.652 [DEBUG] [Thread-68348 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:25.652 [DEBUG] [Thread-68348 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50763)
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:25.653 [DEBUG] [Thread-68348 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:25.661 [DEBUG] [Thread-68348 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:25.661 [INFO] [Thread-68348 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04335238, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686474826487, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992675, telescope_ra=21.1975389, telescope_dec=-24.256262, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.21729, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1724306967323, telescope_dec_j2k=-24.3605755431462, observability=1)
2025-11-17T15:02:25.884 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.884 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.884 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:25.884 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:25.884 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:02:25.885 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:25.886 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:25.887 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:02:25.888 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:25.889 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:25.890 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:25.890 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:25.890 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:25.890 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Park
2025-11-17T15:02:25.890 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:02:25.891 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:02:25.891 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 29;21.1975949;-24.256262;50.108234;89.992675;50.08601;90.12017;18.21735;2460997.04335522;15.04049333;1.3;_Park Command Successful
2025-11-17T15:02:26.891 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:02:26.892 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:02:26.892 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:02:26.892 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:02:26.892 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:02:27.892 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:02:27.893 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:02:27.893 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:02:27.894 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:02:27.894 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:02:28.894 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:02:28.894 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:02:28.894 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:02:28.895 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:02:28.895 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:02:29.895 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:29.896 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:02:29.897 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:02:29.898 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:30.898 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:30.898 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:30.898 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:30.898 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:02:30.899 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:02:30.900 [DEBUG] [ThreadPoolExecutor-2938_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:30.900 [INFO] [ThreadPoolExecutor-2938_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 11.577694654464722s
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:37.239 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:37.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2007694;-24.256261;50.108234;89.992675;50.08601;90.12017;18.22052;2460997.04348657;15.04365917;1.3;_
2025-11-17T15:02:37.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2007694;-24.256261;50.108234;89.992675;50.08601;90.12017;18.22052;2460997.04348657;15.04365917;1.3;_
2025-11-17T15:02:37.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:37.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:37.240 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:37.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:37.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:37.241 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2007694, teldec = -24.256261
2025-11-17T15:02:37.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2007694 -24.256261
2025-11-17T15:02:37.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2007694 -24.256261
2025-11-17T15:02:37.241 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2007694 -24.256261
2025-11-17T15:02:37.242 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2007694;-24.256261;50.108234;89.992675;50.08601;90.12017;18.22052;2460997.0434866;15.04365917;1.3;_21.1756635364118 -24.3606580214278
2025-11-17T15:02:37.243 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.1756635364118     dec_j2k = -24.3606580214278
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:37.243 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:37.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:37.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:37.244 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:37.245 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54315)
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:37.247 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:37.255 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:02:37.255 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04348657, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992675, telescope_ra=21.2007694, telescope_dec=-24.256261, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.22052, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1756635364118, telescope_dec_j2k=-24.3606580214278, observability=1)
2025-11-17T15:02:37.255 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.957894802093506 seconds ago
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Status age = 6.5112481117248535s
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:43.767 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:43.768 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:43.769 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 17;21.2025805;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22233;2460997.04356214;15.04546528;1.3;_
2025-11-17T15:02:43.769 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response 17;21.2025805;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22233;2460997.04356214;15.04546528;1.3;_
2025-11-17T15:02:43.769 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:43.769 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:43.769 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:43.770 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:43.770 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:43.770 [INFO] [Thread-68349 (handle)] [driver.py] [get_status()] Telra = 21.2025805, teldec = -24.256261
2025-11-17T15:02:43.770 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2025805 -24.256261
2025-11-17T15:02:43.770 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2025805 -24.256261
2025-11-17T15:02:43.771 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2025805 -24.256261
2025-11-17T15:02:43.771 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 17;21.2025805;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22233;2460997.04356216;15.04546528;1.3;_21.1774759489368 -24.3607047890978
2025-11-17T15:02:43.771 [INFO] [Thread-68349 (handle)] [driver.py] [get_status()] ra_j2k = 21.1774759489368     dec_j2k = -24.3607047890978
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 140;0.104686113819002;171.162362694745;_
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response 140;0.104686113819002;171.162362694745;_
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:43.772 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:43.773 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:43.773 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:43.773 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:43.773 [DEBUG] [Thread-68349 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:43.774 [DEBUG] [Thread-68349 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34179)
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:43.781 [DEBUG] [Thread-68349 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:43.788 [DEBUG] [Thread-68349 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:43.788 [DEBUG] [Thread-68349 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:43.789 [DEBUG] [Thread-68349 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:43.789 [INFO] [Thread-68349 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04356214, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686113819002, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992674, telescope_ra=21.2025805, telescope_dec=-24.256261, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.22233, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1774759489368, telescope_dec_j2k=-24.3607047890978, observability=1)
2025-11-17T15:02:52.379 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:02:52
2025-11-17T15:02:52.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:52.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 8.590507984161377s
2025-11-17T15:02:52.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:52.379 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:52.379 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:52.380 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2049801;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22473;2460997.04366182;15.04785833;1.3;_
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.2049801;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22473;2460997.04366182;15.04785833;1.3;_
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:52.381 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:52.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:52.382 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:52.382 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.2049801, teldec = -24.256261
2025-11-17T15:02:52.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2049801 -24.256261
2025-11-17T15:02:52.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2049801 -24.256261
2025-11-17T15:02:52.383 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2049801 -24.256261
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2049801;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22473;2460997.04366184;15.04785833;1.3;_21.179877288971 -24.3607667177086
2025-11-17T15:02:52.384 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.179877288971     dec_j2k = -24.3607667177086
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:02:52.384 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686194042887;171.162357330327;_
2025-11-17T15:02:52.385 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:52.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:52.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:52.385 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:52.386 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53943)
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:52.391 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:52.398 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:52.399 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:52.399 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04366182, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686194042887, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992674, telescope_ra=21.2049801, telescope_dec=-24.256261, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.22473, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.179877288971, telescope_dec_j2k=-24.3607667177086, observability=1)
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.9700117111206055s
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:02:55.369 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:02:55.370 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:02:55.370 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:02:55.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:02:55.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:02:55.370 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:02:55.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2058201;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22557;2460997.04369642;15.04869611;1.3;_
2025-11-17T15:02:55.371 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.2058201;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22557;2460997.04369642;15.04869611;1.3;_
2025-11-17T15:02:55.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:02:55.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:02:55.371 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:02:55.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:55.372 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:02:55.372 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.2058201, teldec = -24.256261
2025-11-17T15:02:55.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2058201 -24.256261
2025-11-17T15:02:55.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2058201 -24.256261
2025-11-17T15:02:55.372 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2058201 -24.256261
2025-11-17T15:02:55.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2058201;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22557;2460997.04369645;15.04869611;1.3;_21.1807178983581 -24.360788386696
2025-11-17T15:02:55.373 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1807178983581     dec_j2k = -24.360788386696
2025-11-17T15:02:55.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:02:55.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:02:55.373 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104686675386201;171.162362694745;_
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104686675386201;171.162362694745;_
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:55.374 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:02:55.375 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:02:55.376 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:55.376 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:02:55.376 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43221)
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:02:55.383 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:02:55.390 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:02:55.390 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:55.390 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:02:55.390 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:02:55.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:02:55.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:02:55.391 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:02:55.391 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:02:55.391 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:02:55.391 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04369642, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686675386201, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992674, telescope_ra=21.2058201, telescope_dec=-24.256261, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.22557, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1807178983581, telescope_dec_j2k=-24.360788386696, observability=1)
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Status age = 6.436846017837524s
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:01.828 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 17;21.2075961;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22735;2460997.04377117;15.05046722;1.3;_
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response 17;21.2075961;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22735;2460997.04377117;15.05046722;1.3;_
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:01.829 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:01.830 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:01.830 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:01.831 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:01.831 [INFO] [Thread-68350 (handle)] [driver.py] [get_status()] Telra = 21.2075961, teldec = -24.256261
2025-11-17T15:03:01.831 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2075961 -24.256261
2025-11-17T15:03:01.831 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2075961 -24.256261
2025-11-17T15:03:01.831 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2075961 -24.256261
2025-11-17T15:03:01.832 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 17;21.2075961;-24.256261;50.108234;89.992674;50.08601;90.12017;18.22735;2460997.0437712;15.05046722;1.3;_21.1824951872435 -24.3608341846621
2025-11-17T15:03:01.832 [INFO] [Thread-68350 (handle)] [driver.py] [get_status()] ra_j2k = 21.1824951872435     dec_j2k = -24.3608341846621
2025-11-17T15:03:01.832 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:01.832 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:01.832 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 140;0.104686314378716;171.162357330327;_
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response 140;0.104686314378716;171.162357330327;_
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:01.833 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:01.834 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:01.835 [DEBUG] [Thread-68350 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:01.835 [DEBUG] [Thread-68350 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:01.835 [DEBUG] [Thread-68350 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53459)
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:01.838 [DEBUG] [Thread-68350 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:01.845 [DEBUG] [Thread-68350 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:01.845 [DEBUG] [Thread-68350 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:01.845 [DEBUG] [Thread-68350 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:01.845 [DEBUG] [Thread-68350 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:01.845 [DEBUG] [Thread-68350 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:01.846 [DEBUG] [Thread-68350 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:01.846 [DEBUG] [Thread-68350 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:01.846 [DEBUG] [Thread-68350 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:01.846 [DEBUG] [Thread-68350 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:01.846 [INFO] [Thread-68350 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04377117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686314378716, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108234, telescope_az=89.992674, telescope_ra=21.2075961, telescope_dec=-24.256261, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.22735, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:02:05.003832', telescope_ra_j2k=21.1824951872435, telescope_dec_j2k=-24.3608341846621, observability=1)
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:05.147 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:05.147 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:05.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:05.148 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:05.149 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:03:05.150 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:06.151 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:06.151 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:06.151 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:06.151 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:06.151 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:03:06.152 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:06.153 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:06.154 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:06.154 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:06.154 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:06.154 [DEBUG] [ThreadPoolExecutor-2940_0] [payload.py] [to_registers()] [0]
2025-11-17T15:03:06.157 [DEBUG] [ThreadPoolExecutor-2940_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41673)
2025-11-17T15:03:06.158 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:06.158 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:06.158 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:03:06.158 [DEBUG] [ThreadPoolExecutor-2940_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:06.158 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:06.165 [DEBUG] [ThreadPoolExecutor-2940_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 13.195096969604492s
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2112814;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23103;2460997.0439241;15.0541425;1.3;_
2025-11-17T15:03:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.2112814;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23103;2460997.0439241;15.0541425;1.3;_
2025-11-17T15:03:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:15.044 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.2112814, teldec = -24.25626
2025-11-17T15:03:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2112814 -24.25626
2025-11-17T15:03:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2112814 -24.25626
2025-11-17T15:03:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2112814 -24.25626
2025-11-17T15:03:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2112814;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23103;2460997.04392413;15.0541425;1.3;_21.186183163913 -24.3609281467583
2025-11-17T15:03:15.045 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.186183163913     dec_j2k = -24.3609281467583
2025-11-17T15:03:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104686434714544;171.162351965909;_
2025-11-17T15:03:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104686434714544;171.162351965909;_
2025-11-17T15:03:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33077)
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:15.063 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0439241, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686434714544, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992673, telescope_ra=21.2112814, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.23103, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.186183163913, telescope_dec_j2k=-24.3609281467583, observability=1)
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Status age = 2.3850760459899902s
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:17.448 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:17.449 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:17.449 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:17.450 [DEBUG] [Thread-68351 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:17.450 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:17.450 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:17.450 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:17.450 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:17.451 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 17;21.2119722;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23172;2460997.04395197;15.05483139;1.3;_
2025-11-17T15:03:17.451 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response 17;21.2119722;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23172;2460997.04395197;15.05483139;1.3;_
2025-11-17T15:03:17.451 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:17.451 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:17.451 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:17.452 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:17.452 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:17.452 [INFO] [Thread-68351 (handle)] [driver.py] [get_status()] Telra = 21.2119722, teldec = -24.25626
2025-11-17T15:03:17.452 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2119722 -24.25626
2025-11-17T15:03:17.452 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2119722 -24.25626
2025-11-17T15:03:17.452 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2119722 -24.25626
2025-11-17T15:03:17.453 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 17;21.2119722;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23172;2460997.043952;15.05483139;1.3;_21.1868744659255 -24.3609459364163
2025-11-17T15:03:17.453 [INFO] [Thread-68351 (handle)] [driver.py] [get_status()] ra_j2k = 21.1868744659255     dec_j2k = -24.3609459364163
2025-11-17T15:03:17.453 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:17.453 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:17.453 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 140;0.104686153930944;171.162351965909;_
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response 140;0.104686153930944;171.162351965909;_
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:17.454 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:17.455 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:17.456 [DEBUG] [Thread-68351 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:17.456 [DEBUG] [Thread-68351 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:17.456 [DEBUG] [Thread-68351 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:17.460 [DEBUG] [Thread-68351 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39139)
2025-11-17T15:03:17.461 [DEBUG] [Thread-68351 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:17.461 [DEBUG] [Thread-68351 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:17.461 [DEBUG] [Thread-68351 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:17.461 [DEBUG] [Thread-68351 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:17.461 [DEBUG] [Thread-68351 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:17.468 [DEBUG] [Thread-68351 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:17.468 [INFO] [Thread-68351 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04395197, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686153930944, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992673, telescope_ra=21.2119722, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.23172, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1868744659255, telescope_dec_j2k=-24.3609459364163, observability=1)
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Status age = 2.4302728176116943s
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:19.898 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:19.899 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:19.899 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:19.899 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:19.899 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 17;21.2126457;-24.25626;50.108233;89.992673;50.08601;90.12017;18.2324;2460997.04398032;15.05550306;1.3;_
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response 17;21.2126457;-24.25626;50.108233;89.992673;50.08601;90.12017;18.2324;2460997.04398032;15.05550306;1.3;_
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:19.900 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:19.901 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:19.901 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:19.901 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:19.901 [INFO] [Thread-68352 (handle)] [driver.py] [get_status()] Telra = 21.2126457, teldec = -24.25626
2025-11-17T15:03:19.902 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2126457 -24.25626
2025-11-17T15:03:19.902 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2126457 -24.25626
2025-11-17T15:03:19.902 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2126457 -24.25626
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 17;21.2126457;-24.25626;50.108233;89.992673;50.08601;90.12017;18.2324;2460997.04398035;15.05550306;1.3;_21.1875484554581 -24.3609632772994
2025-11-17T15:03:19.903 [INFO] [Thread-68352 (handle)] [driver.py] [get_status()] ra_j2k = 21.1875484554581     dec_j2k = -24.3609632772994
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 140;0.104686113819002;171.162357330327;_
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response 140;0.104686113819002;171.162357330327;_
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:19.903 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:19.904 [DEBUG] [Thread-68352 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58725)
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:19.905 [DEBUG] [Thread-68352 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:19.913 [DEBUG] [Thread-68352 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:19.913 [INFO] [Thread-68352 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04398032, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686113819002, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992673, telescope_ra=21.2126457, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2324, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1875484554581, telescope_dec_j2k=-24.3609632772994, observability=1)
2025-11-17T15:03:31.165 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:31.165 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:31.165 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:31.165 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:31.165 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:31.166 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:03:31.167 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:03:31.168 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 17.401730060577393s
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:37.315 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:37.316 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:37.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2174884;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23724;2460997.04418191;15.0603325;1.3;_
2025-11-17T15:03:37.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2174884;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23724;2460997.04418191;15.0603325;1.3;_
2025-11-17T15:03:37.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:37.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:37.317 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:37.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:37.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:37.318 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2174884, teldec = -24.25626
2025-11-17T15:03:37.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2174884 -24.25626
2025-11-17T15:03:37.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2174884 -24.25626
2025-11-17T15:03:37.318 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2174884 -24.25626
2025-11-17T15:03:37.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2174884;-24.25626;50.108233;89.992673;50.08601;90.12017;18.23724;2460997.04418193;15.0603325;1.3;_21.1923946780479 -24.3610878694467
2025-11-17T15:03:37.319 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.1923946780479     dec_j2k = -24.3610878694467
2025-11-17T15:03:37.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:37.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:37.319 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104685873147345;171.162351965909;_
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104685873147345;171.162351965909;_
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:37.320 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:37.321 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:37.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:37.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:37.322 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57151)
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:37.323 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:37.332 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:03:37.332 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04418191, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685873147345, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992673, telescope_ra=21.2174884, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.23724, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1923946780479, telescope_dec_j2k=-24.3610878694467, observability=1)
2025-11-17T15:03:37.332 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.95297837257385 seconds ago
2025-11-17T15:03:38.033 [DEBUG] [Thread-68353 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:38.033 [DEBUG] [Thread-68353 (handle)] [server.py] [get_status()] Status age = 0.7009239196777344s
2025-11-17T15:03:38.033 [DEBUG] [Thread-68353 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.7009239196777344
2025-11-17T15:03:52.460 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:03:52
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.128044366836548s
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:52.460 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:52.461 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:52.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2217272;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24148;2460997.0443572;15.06455972;1.3;_
2025-11-17T15:03:52.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.2217272;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24148;2460997.0443572;15.06455972;1.3;_
2025-11-17T15:03:52.462 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:52.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:52.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:52.463 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:52.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:52.464 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.2217272, teldec = -24.25626
2025-11-17T15:03:52.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2217272 -24.25626
2025-11-17T15:03:52.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2217272 -24.25626
2025-11-17T15:03:52.464 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2217272 -24.25626
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2217272;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24148;2460997.04435723;15.06455972;1.3;_21.1966365652181 -24.3611967877636
2025-11-17T15:03:52.465 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.1966365652181     dec_j2k = -24.3611967877636
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104686033595116;171.162351965909;_
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104686033595116;171.162351965909;_
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:52.465 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:52.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:52.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:52.466 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:52.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:03:52.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:52.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:52.467 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:52.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:52.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:03:52.468 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45831)
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:52.474 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:52.481 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:52.482 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:52.482 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0443572, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686033595116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992672, telescope_ra=21.2217272, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.24148, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1966365652181, telescope_dec_j2k=-24.3611967877636, observability=1)
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.0021681785583496s
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:54.484 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:54.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.222287;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24204;2460997.04438061;15.06511806;1.3;_
2025-11-17T15:03:54.485 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.222287;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24204;2460997.04438061;15.06511806;1.3;_
2025-11-17T15:03:54.485 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:54.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:54.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:54.486 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:54.486 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:54.487 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.222287, teldec = -24.25626
2025-11-17T15:03:54.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.222287 -24.25626
2025-11-17T15:03:54.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.222287 -24.25626
2025-11-17T15:03:54.487 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.222287 -24.25626
2025-11-17T15:03:54.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.222287;-24.25626;50.108233;89.992672;50.08601;90.12017;18.24204;2460997.04438065;15.06511806;1.3;_21.1971967731963 -24.3612111625814
2025-11-17T15:03:54.488 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.1971967731963     dec_j2k = -24.3612111625814
2025-11-17T15:03:54.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:54.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:54.488 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10468595337123;171.162362694745;_
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10468595337123;171.162362694745;_
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:54.489 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:54.490 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:54.490 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:54.490 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53623)
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:54.495 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:54.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:54.502 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:54.502 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:54.503 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:54.503 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04438061, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468595337123, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992672, telescope_ra=21.222287, telescope_dec=-24.25626, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.24204, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1971967731963, telescope_dec_j2k=-24.3612111625814, observability=1)
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Status age = 1.594911813735962s
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:03:56.098 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:03:56.099 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:03:56.100 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 17;21.2227347;-24.256259;50.108233;89.992672;50.08601;90.12017;18.24248;2460997.04439931;15.06556444;1.3;_
2025-11-17T15:03:56.100 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response 17;21.2227347;-24.256259;50.108233;89.992672;50.08601;90.12017;18.24248;2460997.04439931;15.06556444;1.3;_
2025-11-17T15:03:56.100 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:03:56.100 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:03:56.100 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:03:56.101 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:56.101 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:03:56.101 [INFO] [Thread-68354 (handle)] [driver.py] [get_status()] Telra = 21.2227347, teldec = -24.256259
2025-11-17T15:03:56.101 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2227347 -24.256259
2025-11-17T15:03:56.101 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2227347 -24.256259
2025-11-17T15:03:56.101 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2227347 -24.256259
2025-11-17T15:03:56.102 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 17;21.2227347;-24.256259;50.108233;89.992672;50.08601;90.12017;18.24248;2460997.04439933;15.06556444;1.3;_21.1976447996594 -24.3612216573349
2025-11-17T15:03:56.102 [INFO] [Thread-68354 (handle)] [driver.py] [get_status()] ra_j2k = 21.1976447996594     dec_j2k = -24.3612216573349
2025-11-17T15:03:56.103 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:03:56.103 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:03:56.103 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:03:56.103 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 140;0.104686033595116;171.162357330327;_
2025-11-17T15:03:56.103 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response 140;0.104686033595116;171.162357330327;_
2025-11-17T15:03:56.104 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:03:56.104 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:56.104 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:56.104 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:56.104 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:56.105 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:56.105 [DEBUG] [Thread-68354 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:56.105 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:03:56.105 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:03:56.105 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:03:56.106 [DEBUG] [Thread-68354 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:56.106 [DEBUG] [Thread-68354 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:03:56.106 [DEBUG] [Thread-68354 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39189)
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:03:56.109 [DEBUG] [Thread-68354 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:03:56.117 [DEBUG] [Thread-68354 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:03:56.118 [INFO] [Thread-68354 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04439931, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686033595116, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992672, telescope_ra=21.2227347, telescope_dec=-24.256259, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.24248, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:03:05.146515', telescope_ra_j2k=21.1976447996594, telescope_dec_j2k=-24.3612216573349, observability=1)
2025-11-17T15:04:05.289 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:05.289 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:05.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:05.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:05.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:05.291 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:05.291 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:05.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:05.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:05.292 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:05.292 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:04:05.292 [INFO] [ThreadPoolExecutor-2941_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:04:05.292 [INFO] [ThreadPoolExecutor-2941_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Status age = 18.058754920959473s
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:14.176 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:14.177 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:14.177 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:14.177 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:14.177 [DEBUG] [Thread-68355 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:14.178 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:14.178 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:14.178 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:14.178 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:14.178 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 17;21.2277492;-24.256259;50.108233;89.992671;50.08601;90.12017;18.2475;2460997.04460854;15.07056528;1.3;_
2025-11-17T15:04:14.179 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response 17;21.2277492;-24.256259;50.108233;89.992671;50.08601;90.12017;18.2475;2460997.04460854;15.07056528;1.3;_
2025-11-17T15:04:14.179 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:14.179 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:14.179 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:14.180 [INFO] [Thread-68355 (handle)] [driver.py] [get_status()] Telra = 21.2277492, teldec = -24.256259
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2277492 -24.256259
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2277492 -24.256259
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2277492 -24.256259
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 17;21.2277492;-24.256259;50.108233;89.992671;50.08601;90.12017;18.2475;2460997.04460856;15.07056528;1.3;_21.2026629574375 -24.3613503066369
2025-11-17T15:04:14.180 [INFO] [Thread-68355 (handle)] [driver.py] [get_status()] ra_j2k = 21.2026629574375     dec_j2k = -24.3613503066369
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:14.180 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 140;0.10468623415483;171.162368059163;_
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response 140;0.10468623415483;171.162368059163;_
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:14.181 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:14.182 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:14.183 [DEBUG] [Thread-68355 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:14.183 [DEBUG] [Thread-68355 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:14.183 [DEBUG] [Thread-68355 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38539)
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:14.185 [DEBUG] [Thread-68355 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:14.192 [DEBUG] [Thread-68355 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:14.192 [DEBUG] [Thread-68355 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:14.192 [DEBUG] [Thread-68355 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:14.192 [DEBUG] [Thread-68355 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:14.193 [DEBUG] [Thread-68355 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:14.193 [DEBUG] [Thread-68355 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:14.193 [DEBUG] [Thread-68355 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:14.193 [DEBUG] [Thread-68355 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:14.193 [DEBUG] [Thread-68355 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:14.193 [INFO] [Thread-68355 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04460854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468623415483, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992671, telescope_ra=21.2277492, telescope_dec=-24.256259, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2475, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2026629574375, telescope_dec_j2k=-24.3613503066369, observability=1)
2025-11-17T15:04:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 0.8512263298034668s
2025-11-17T15:04:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8512263298034668
2025-11-17T15:04:17.500 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:17.500 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Status age = 3.3076012134552s
2025-11-17T15:04:17.500 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:17.500 [DEBUG] [Thread-68356 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:17.501 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:17.502 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:17.502 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 17;21.2286948;-24.256259;50.108233;89.992671;50.08601;90.12017;18.24845;2460997.04464701;15.07150833;1.3;_
2025-11-17T15:04:17.502 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response 17;21.2286948;-24.256259;50.108233;89.992671;50.08601;90.12017;18.24845;2460997.04464701;15.07150833;1.3;_
2025-11-17T15:04:17.503 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:17.503 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:17.503 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:17.504 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:17.504 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:17.504 [INFO] [Thread-68356 (handle)] [driver.py] [get_status()] Telra = 21.2286948, teldec = -24.256259
2025-11-17T15:04:17.504 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2286948 -24.256259
2025-11-17T15:04:17.504 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2286948 -24.256259
2025-11-17T15:04:17.504 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2286948 -24.256259
2025-11-17T15:04:17.505 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 17;21.2286948;-24.256259;50.108233;89.992671;50.08601;90.12017;18.24845;2460997.04464705;15.07150833;1.3;_21.2036092477598 -24.3613745463664
2025-11-17T15:04:17.505 [INFO] [Thread-68356 (handle)] [driver.py] [get_status()] ra_j2k = 21.2036092477598     dec_j2k = -24.3613745463664
2025-11-17T15:04:17.505 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:17.505 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:17.505 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:17.505 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 140;0.104685752811516;171.162362694745;_
2025-11-17T15:04:17.506 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response 140;0.104685752811516;171.162362694745;_
2025-11-17T15:04:17.506 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:17.506 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:17.506 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:17.506 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:17.507 [DEBUG] [Thread-68356 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44989)
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:17.514 [DEBUG] [Thread-68356 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:17.521 [DEBUG] [Thread-68356 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:17.521 [DEBUG] [Thread-68356 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:17.521 [DEBUG] [Thread-68356 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:17.522 [DEBUG] [Thread-68356 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:17.522 [DEBUG] [Thread-68356 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:17.523 [DEBUG] [Thread-68356 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:17.523 [DEBUG] [Thread-68356 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:17.523 [DEBUG] [Thread-68356 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:17.523 [DEBUG] [Thread-68356 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:17.523 [INFO] [Thread-68356 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04464701, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685752811516, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992671, telescope_ra=21.2286948, telescope_dec=-24.256259, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.24845, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2036092477598, telescope_dec_j2k=-24.3613745463664, observability=1)
2025-11-17T15:04:26.168 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.168 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.168 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:26.168 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:26.168 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:26.169 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.169 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:26.169 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:26.169 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.170 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.171 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.171 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:26.171 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:26.171 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:26.171 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:26.172 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:04:26.173 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:26.174 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Park
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:04:26.176 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:04:26.177 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 29;21.2310869;-24.256259;50.108233;89.992671;50.08601;90.12017;18.25087;2460997.04474742;15.07392167;1.3;_Park Command Successful
2025-11-17T15:04:27.177 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:04:27.177 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:04:27.177 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:04:27.178 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:04:27.178 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:04:28.179 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:04:28.179 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:04:28.179 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:04:28.179 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:04:28.179 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:04:29.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:04:29.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:04:29.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:04:29.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:04:29.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:04:30.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:04:30.180 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:04:30.181 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:04:30.181 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:04:30.181 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:04:30.182 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:30.182 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:30.182 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:30.182 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:30.182 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:04:30.183 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:04:30.184 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:31.184 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:31.184 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:31.184 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:31.184 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:31.184 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:04:31.185 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:04:31.186 [DEBUG] [ThreadPoolExecutor-2940_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:31.186 [INFO] [ThreadPoolExecutor-2940_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Status age = 14.770110130310059s
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:32.293 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:32.294 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:32.294 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:32.295 [DEBUG] [Thread-68357 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:32.295 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:32.295 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:32.295 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:32.295 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:32.296 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 17;21.2328138;-24.256259;50.108233;89.992671;50.08601;90.12017;18.25256;2460997.04481824;15.07561611;1.3;_
2025-11-17T15:04:32.296 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response 17;21.2328138;-24.256259;50.108233;89.992671;50.08601;90.12017;18.25256;2460997.04481824;15.07561611;1.3;_
2025-11-17T15:04:32.296 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:32.296 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:32.296 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:32.297 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:32.297 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:32.297 [INFO] [Thread-68357 (handle)] [driver.py] [get_status()] Telra = 21.2328138, teldec = -24.256259
2025-11-17T15:04:32.297 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2328138 -24.256259
2025-11-17T15:04:32.297 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2328138 -24.256259
2025-11-17T15:04:32.297 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2328138 -24.256259
2025-11-17T15:04:32.298 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 17;21.2328138;-24.256259;50.108233;89.992671;50.08601;90.12017;18.25256;2460997.04481826;15.07561611;1.3;_21.2077312568637 -24.3614800594048
2025-11-17T15:04:32.298 [INFO] [Thread-68357 (handle)] [driver.py] [get_status()] ra_j2k = 21.2077312568637     dec_j2k = -24.3614800594048
2025-11-17T15:04:32.298 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:32.298 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:32.298 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 140;0.104685472027917;171.162357330327;_
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response 140;0.104685472027917;171.162357330327;_
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:32.299 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:32.300 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:32.301 [DEBUG] [Thread-68357 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:32.301 [DEBUG] [Thread-68357 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:32.301 [DEBUG] [Thread-68357 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33401)
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:32.302 [DEBUG] [Thread-68357 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:32.309 [DEBUG] [Thread-68357 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:32.309 [DEBUG] [Thread-68357 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:32.309 [DEBUG] [Thread-68357 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:32.310 [DEBUG] [Thread-68357 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:32.310 [INFO] [Thread-68357 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04481824, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685472027917, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992671, telescope_ra=21.2328138, telescope_dec=-24.256259, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.25256, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2077312568637, telescope_dec_j2k=-24.3614800594048, observability=1)
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 5.081913471221924s
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:37.392 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:37.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2342422;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25399;2460997.04487723;15.07704056;1.3;_
2025-11-17T15:04:37.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2342422;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25399;2460997.04487723;15.07704056;1.3;_
2025-11-17T15:04:37.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:37.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:37.393 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:37.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:37.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:37.394 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2342422, teldec = -24.256258
2025-11-17T15:04:37.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2342422 -24.256258
2025-11-17T15:04:37.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2342422 -24.256258
2025-11-17T15:04:37.394 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2342422 -24.256258
2025-11-17T15:04:37.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2342422;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25399;2460997.04487726;15.07704056;1.3;_21.2091607012986 -24.3615156213921
2025-11-17T15:04:37.395 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2091607012986     dec_j2k = -24.3615156213921
2025-11-17T15:04:37.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:37.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:37.395 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104685672587631;171.162357330327;_
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104685672587631;171.162357330327;_
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:37.396 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:37.397 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:37.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:37.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:37.398 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56263)
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:37.403 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:37.410 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:04:37.410 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04487723, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685672587631, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.99267, telescope_ra=21.2342422, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.25399, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2091607012986, telescope_dec_j2k=-24.3615156213921, observability=1)
2025-11-17T15:04:37.411 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9507257938385 seconds ago
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Status age = 12.949823141098022s
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:50.360 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:50.361 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:50.361 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:50.361 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:50.361 [DEBUG] [Thread-68358 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:50.361 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:50.362 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:50.362 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:50.362 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:50.363 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 17;21.2378364;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25759;2460997.04502735;15.080625;1.3;_
2025-11-17T15:04:50.363 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response 17;21.2378364;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25759;2460997.04502735;15.080625;1.3;_
2025-11-17T15:04:50.363 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:50.363 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:50.363 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:50.364 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:50.364 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:50.364 [INFO] [Thread-68358 (handle)] [driver.py] [get_status()] Telra = 21.2378364, teldec = -24.256258
2025-11-17T15:04:50.364 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2378364 -24.256258
2025-11-17T15:04:50.364 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2378364 -24.256258
2025-11-17T15:04:50.364 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2378364 -24.256258
2025-11-17T15:04:50.365 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 17;21.2378364;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25759;2460997.04502737;15.080625;1.3;_21.2127575308064 -24.3616075555168
2025-11-17T15:04:50.365 [INFO] [Thread-68358 (handle)] [driver.py] [get_status()] ra_j2k = 21.2127575308064     dec_j2k = -24.3616075555168
2025-11-17T15:04:50.365 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:50.365 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:50.365 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 140;0.104686073707059;171.162357330327;_
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response 140;0.104686073707059;171.162357330327;_
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:50.367 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:50.368 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:50.369 [DEBUG] [Thread-68358 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:50.369 [DEBUG] [Thread-68358 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:50.369 [DEBUG] [Thread-68358 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48007)
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:50.375 [DEBUG] [Thread-68358 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:50.382 [DEBUG] [Thread-68358 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:50.383 [DEBUG] [Thread-68358 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:50.383 [DEBUG] [Thread-68358 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:50.383 [DEBUG] [Thread-68358 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:50.383 [INFO] [Thread-68358 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04502735, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104686073707059, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.99267, telescope_ra=21.2378364, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.25759, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2127575308064, telescope_dec_j2k=-24.3616075555168, observability=1)
2025-11-17T15:04:52.542 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:04:52
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.159268379211426s
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:52.542 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:52.543 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:52.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2384434;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25819;2460997.04505259;15.08123028;1.3;_
2025-11-17T15:04:52.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.2384434;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25819;2460997.04505259;15.08123028;1.3;_
2025-11-17T15:04:52.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:52.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:52.544 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:52.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:52.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:52.545 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.2384434, teldec = -24.256258
2025-11-17T15:04:52.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2384434 -24.256258
2025-11-17T15:04:52.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2384434 -24.256258
2025-11-17T15:04:52.545 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2384434 -24.256258
2025-11-17T15:04:52.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2384434;-24.256258;50.108233;89.99267;50.08601;90.12017;18.25819;2460997.04505262;15.08123028;1.3;_21.2133649751404 -24.3616230725399
2025-11-17T15:04:52.546 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.2133649751404     dec_j2k = -24.3616230725399
2025-11-17T15:04:52.546 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162362694745;_
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162362694745;_
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:52.547 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:52.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:52.548 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:04:52.549 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:04:52.552 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52439)
2025-11-17T15:04:52.552 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:52.552 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:52.552 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:52.553 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:52.553 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:52.559 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:52.560 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:52.560 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04505259, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.99267, telescope_ra=21.2384434, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.25819, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2133649751404, telescope_dec_j2k=-24.3616230725399, observability=1)
2025-11-17T15:04:53.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:04:53.597 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.0375161170959473s
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:04:53.598 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:04:53.599 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:04:53.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2387517;-24.256258;50.108233;89.99267;50.08601;90.12017;18.2585;2460997.04506482;15.08153778;1.3;_
2025-11-17T15:04:53.600 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.2387517;-24.256258;50.108233;89.99267;50.08601;90.12017;18.2585;2460997.04506482;15.08153778;1.3;_
2025-11-17T15:04:53.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:04:53.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:04:53.600 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:04:53.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:53.601 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:04:53.601 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.2387517, teldec = -24.256258
2025-11-17T15:04:53.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2387517 -24.256258
2025-11-17T15:04:53.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2387517 -24.256258
2025-11-17T15:04:53.601 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2387517 -24.256258
2025-11-17T15:04:53.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2387517;-24.256258;50.108233;89.99267;50.08601;90.12017;18.2585;2460997.04506484;15.08153778;1.3;_21.2136735008492 -24.3616309527481
2025-11-17T15:04:53.602 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.2136735008492     dec_j2k = -24.3616309527481
2025-11-17T15:04:53.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:04:53.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:04:53.602 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104685431915974;171.162357330327;_
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104685431915974;171.162357330327;_
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:53.603 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:04:53.604 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:04:53.605 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:53.605 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:04:53.605 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56531)
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:04:53.608 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:04:53.615 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:04:53.615 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04506482, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685431915974, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.99267, telescope_ra=21.2387517, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2585, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:04:05.289292', telescope_ra_j2k=21.2136735008492, telescope_dec_j2k=-24.3616309527481, observability=1)
2025-11-17T15:05:05.432 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:05.432 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:05.432 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:05.432 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:05.432 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:05.433 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:05.433 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:05.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:05.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:05.434 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:05.434 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:05:05.434 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:05.434 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:05.434 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:05.434 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:05:05.435 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:05:05.436 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:06.436 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:06.436 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:06.436 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:06.436 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:06.436 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:05:06.437 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:06.438 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:06.439 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:06.439 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:06.439 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:06.439 [DEBUG] [ThreadPoolExecutor-2942_0] [payload.py] [to_registers()] [0]
2025-11-17T15:05:06.445 [DEBUG] [ThreadPoolExecutor-2942_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43339)
2025-11-17T15:05:06.445 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:06.445 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:06.445 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:05:06.446 [DEBUG] [ThreadPoolExecutor-2942_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:06.446 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:06.453 [DEBUG] [ThreadPoolExecutor-2942_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Status age = 14.811834335327148s
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:08.427 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:08.428 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:08.429 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:08.430 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 17;21.2428799;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26263;2460997.04523646;15.08565472;1.3;_
2025-11-17T15:05:08.430 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response 17;21.2428799;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26263;2460997.04523646;15.08565472;1.3;_
2025-11-17T15:05:08.430 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:08.430 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:08.430 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:08.431 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:08.431 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:08.431 [INFO] [Thread-68359 (handle)] [driver.py] [get_status()] Telra = 21.2428799, teldec = -24.256258
2025-11-17T15:05:08.431 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2428799 -24.256258
2025-11-17T15:05:08.431 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2428799 -24.256258
2025-11-17T15:05:08.431 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2428799 -24.256258
2025-11-17T15:05:08.432 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 17;21.2428799;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26263;2460997.04523648;15.08565472;1.3;_21.2178047249619 -24.3617364048949
2025-11-17T15:05:08.432 [INFO] [Thread-68359 (handle)] [driver.py] [get_status()] ra_j2k = 21.2178047249619     dec_j2k = -24.3617364048949
2025-11-17T15:05:08.432 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:08.432 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:08.432 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 140;0.104685913259287;171.162351965909;_
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response 140;0.104685913259287;171.162351965909;_
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:08.433 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:08.434 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:08.435 [DEBUG] [Thread-68359 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:08.435 [DEBUG] [Thread-68359 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:08.435 [DEBUG] [Thread-68359 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37705)
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:08.443 [DEBUG] [Thread-68359 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:08.450 [DEBUG] [Thread-68359 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:08.450 [INFO] [Thread-68359 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04523646, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685913259287, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992669, telescope_ra=21.2428799, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.26263, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2178047249619, telescope_dec_j2k=-24.3617364048949, observability=1)
2025-11-17T15:05:15.045 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 6.595292568206787s
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2447188;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26447;2460997.04531304;15.08748861;1.3;_
2025-11-17T15:05:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.2447188;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26447;2460997.04531304;15.08748861;1.3;_
2025-11-17T15:05:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:15.048 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.2447188, teldec = -24.256258
2025-11-17T15:05:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2447188 -24.256258
2025-11-17T15:05:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2447188 -24.256258
2025-11-17T15:05:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2447188 -24.256258
2025-11-17T15:05:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2447188;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26447;2460997.04531307;15.08748861;1.3;_21.219644973141 -24.3617833391494
2025-11-17T15:05:15.050 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.219644973141     dec_j2k = -24.3617833391494
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685792923459;171.162362694745;_
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685792923459;171.162362694745;_
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43293)
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:15.059 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:15.066 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:15.066 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:15.066 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:15.067 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:15.067 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:15.067 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04531304, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685792923459, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992669, telescope_ra=21.2447188, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.26447, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.219644973141, telescope_dec_j2k=-24.3617833391494, observability=1)
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Status age = 2.489445686340332s
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:17.556 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:17.557 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:17.557 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:17.557 [DEBUG] [Thread-68360 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:17.557 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:17.558 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:17.558 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:17.558 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:17.559 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 17;21.2454099;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26516;2460997.04534212;15.08817778;1.3;_
2025-11-17T15:05:17.559 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response 17;21.2454099;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26516;2460997.04534212;15.08817778;1.3;_
2025-11-17T15:05:17.559 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:17.559 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:17.559 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:17.560 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:17.560 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:17.560 [INFO] [Thread-68360 (handle)] [driver.py] [get_status()] Telra = 21.2454099, teldec = -24.256258
2025-11-17T15:05:17.560 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2454099 -24.256258
2025-11-17T15:05:17.560 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2454099 -24.256258
2025-11-17T15:05:17.560 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2454099 -24.256258
2025-11-17T15:05:17.561 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 17;21.2454099;-24.256258;50.108233;89.992669;50.08601;90.12017;18.26516;2460997.04534214;15.08817778;1.3;_21.2203365799911 -24.3618009718432
2025-11-17T15:05:17.561 [INFO] [Thread-68360 (handle)] [driver.py] [get_status()] ra_j2k = 21.2203365799911     dec_j2k = -24.3618009718432
2025-11-17T15:05:17.561 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:17.561 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 140;0.104684990684603;171.162357330327;_
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response 140;0.104684990684603;171.162357330327;_
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:17.562 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:17.563 [DEBUG] [Thread-68360 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57021)
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:17.568 [DEBUG] [Thread-68360 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:17.575 [DEBUG] [Thread-68360 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:17.575 [INFO] [Thread-68360 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04534212, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684990684603, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108233, telescope_az=89.992669, telescope_ra=21.2454099, telescope_dec=-24.256258, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.26516, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2203365799911, telescope_dec_j2k=-24.3618009718432, observability=1)
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Status age = 8.9696204662323s
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:26.545 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:26.546 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:26.546 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 17;21.2479217;-24.256257;50.108232;89.992669;50.08601;90.12017;18.26767;2460997.04544613;15.09068278;1.3;_
2025-11-17T15:05:26.546 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response 17;21.2479217;-24.256257;50.108232;89.992669;50.08601;90.12017;18.26767;2460997.04544613;15.09068278;1.3;_
2025-11-17T15:05:26.546 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:26.547 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:26.547 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:26.547 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:26.548 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:26.548 [INFO] [Thread-68361 (handle)] [driver.py] [get_status()] Telra = 21.2479217, teldec = -24.256257
2025-11-17T15:05:26.548 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2479217 -24.256257
2025-11-17T15:05:26.548 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2479217 -24.256257
2025-11-17T15:05:26.548 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2479217 -24.256257
2025-11-17T15:05:26.549 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 17;21.2479217;-24.256257;50.108232;89.992669;50.08601;90.12017;18.26767;2460997.04544617;15.09068278;1.3;_21.2228502230727 -24.3618640291004
2025-11-17T15:05:26.549 [INFO] [Thread-68361 (handle)] [driver.py] [get_status()] ra_j2k = 21.2228502230727     dec_j2k = -24.3618640291004
2025-11-17T15:05:26.549 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:26.549 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:26.549 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:26.550 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:26.551 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:26.552 [DEBUG] [Thread-68361 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:26.552 [DEBUG] [Thread-68361 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:26.552 [DEBUG] [Thread-68361 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51475)
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:26.558 [DEBUG] [Thread-68361 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:26.565 [DEBUG] [Thread-68361 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:26.565 [INFO] [Thread-68361 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04544613, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992669, telescope_ra=21.2479217, telescope_dec=-24.256257, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.26767, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2228502230727, telescope_dec_j2k=-24.3618640291004, observability=1)
2025-11-17T15:05:31.453 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:31.453 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:31.453 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:31.453 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:31.453 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:31.454 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:31.455 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:05:31.456 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:05:31.457 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.905481576919556s
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:37.471 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:37.472 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:37.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2509553;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27071;2460997.0455726;15.09370806;1.3;_
2025-11-17T15:05:37.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2509553;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27071;2460997.0455726;15.09370806;1.3;_
2025-11-17T15:05:37.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:37.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:37.473 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:37.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:37.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:37.474 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2509553, teldec = -24.256257
2025-11-17T15:05:37.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2509553 -24.256257
2025-11-17T15:05:37.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2509553 -24.256257
2025-11-17T15:05:37.474 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2509553 -24.256257
2025-11-17T15:05:37.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2509553;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27071;2460997.04557263;15.09370806;1.3;_21.2258860505433 -24.3619413332217
2025-11-17T15:05:37.475 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2258860505433     dec_j2k = -24.3619413332217
2025-11-17T15:05:37.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:37.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:37.475 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104685391804031;171.162357330327;_
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104685391804031;171.162357330327;_
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:37.476 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:37.477 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:37.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:37.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:37.478 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42021)
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:37.484 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:37.491 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:37.492 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:37.492 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:37.492 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:05:37.492 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0455726, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685391804031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992668, telescope_ra=21.2509553, telescope_dec=-24.256257, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.27071, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2258860505433, telescope_dec_j2k=-24.3619413332217, observability=1)
2025-11-17T15:05:37.492 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.950023889541626 seconds ago
2025-11-17T15:05:44.609 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Status age = 7.1178200244903564s
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:44.610 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:44.611 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:44.612 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 17;21.2529357;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27269;2460997.04565523;15.09568306;1.3;_
2025-11-17T15:05:44.612 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response 17;21.2529357;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27269;2460997.04565523;15.09568306;1.3;_
2025-11-17T15:05:44.612 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:44.612 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:44.612 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:44.614 [INFO] [Thread-68362 (handle)] [driver.py] [get_status()] Telra = 21.2529357, teldec = -24.256257
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2529357 -24.256257
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2529357 -24.256257
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2529357 -24.256257
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 17;21.2529636;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27271;2460997.04565525;15.09571083;1.3;_21.2278679056715 -24.3619917634544
2025-11-17T15:05:44.614 [INFO] [Thread-68362 (handle)] [driver.py] [get_status()] ra_j2k = 21.2278679056715     dec_j2k = -24.3619917634544
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:44.614 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 140;0.104685351692088;171.162357330327;_
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response 140;0.104685351692088;171.162357330327;_
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:44.615 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:44.616 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:44.617 [DEBUG] [Thread-68362 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:44.617 [DEBUG] [Thread-68362 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:44.617 [DEBUG] [Thread-68362 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:44.620 [DEBUG] [Thread-68362 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49597)
2025-11-17T15:05:44.620 [DEBUG] [Thread-68362 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:44.620 [DEBUG] [Thread-68362 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:44.620 [DEBUG] [Thread-68362 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:44.621 [DEBUG] [Thread-68362 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:44.621 [DEBUG] [Thread-68362 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:44.627 [DEBUG] [Thread-68362 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:44.628 [DEBUG] [Thread-68362 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:44.628 [INFO] [Thread-68362 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04565523, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685351692088, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992668, telescope_ra=21.2529357, telescope_dec=-24.256257, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.27269, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2278679056715, telescope_dec_j2k=-24.3619917634544, observability=1)
2025-11-17T15:05:52.621 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:05:52
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 7.992945432662964s
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:05:52.621 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:05:52.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:05:52.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:05:52.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:05:52.622 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:05:52.622 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:05:52.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:05:52.623 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:05:52.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2551949;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27495;2460997.04574796;15.09793611;1.3;_
2025-11-17T15:05:52.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.2551949;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27495;2460997.04574796;15.09793611;1.3;_
2025-11-17T15:05:52.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:05:52.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:05:52.624 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:05:52.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:52.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:05:52.625 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.2551949, teldec = -24.256257
2025-11-17T15:05:52.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2551949 -24.256257
2025-11-17T15:05:52.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2551949 -24.256257
2025-11-17T15:05:52.625 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2551949 -24.256257
2025-11-17T15:05:52.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2551949;-24.256257;50.108232;89.992668;50.08601;90.12017;18.27495;2460997.04574799;15.09793611;1.3;_21.2301287666035 -24.3620492588991
2025-11-17T15:05:52.626 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.2301287666035     dec_j2k = -24.3620492588991
2025-11-17T15:05:52.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:05:52.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:05:52.626 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104685512139859;171.162357330327;_
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104685512139859;171.162357330327;_
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:52.627 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:05:52.628 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:05:52.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:52.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:05:52.629 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60609)
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:05:52.630 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:05:52.637 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:05:52.637 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04574796, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685512139859, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992668, telescope_ra=21.2551949, telescope_dec=-24.256257, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.27495, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2301287666035, telescope_dec_j2k=-24.3620492588991, observability=1)
2025-11-17T15:05:52.710 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:05:52.710 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.07241415977478027s
2025-11-17T15:05:52.710 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.07241415977478027
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Status age = 10.038494348526001s
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:02.676 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:02.677 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 17;21.2579789;-24.256256;50.108232;89.992667;50.08601;90.12017;18.27773;2460997.04586432;15.1007125;1.3;_
2025-11-17T15:06:02.677 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response 17;21.2579789;-24.256256;50.108232;89.992667;50.08601;90.12017;18.27773;2460997.04586432;15.1007125;1.3;_
2025-11-17T15:06:02.677 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:02.677 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:02.677 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:02.678 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:02.678 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:02.678 [INFO] [Thread-68363 (handle)] [driver.py] [get_status()] Telra = 21.2579789, teldec = -24.256256
2025-11-17T15:06:02.678 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2579789 -24.256256
2025-11-17T15:06:02.678 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2579789 -24.256256
2025-11-17T15:06:02.678 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2579789 -24.256256
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 17;21.2579789;-24.256256;50.108232;89.992667;50.08601;90.12017;18.27773;2460997.04586434;15.1007125;1.3;_21.2329148148911 -24.3621190599615
2025-11-17T15:06:02.679 [INFO] [Thread-68363 (handle)] [driver.py] [get_status()] ra_j2k = 21.2329148148911     dec_j2k = -24.3621190599615
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 140;0.104685191244317;171.162351965909;_
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response 140;0.104685191244317;171.162351965909;_
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:02.679 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:02.680 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:02.680 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:02.681 [DEBUG] [Thread-68363 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:02.682 [DEBUG] [Thread-68363 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:02.685 [DEBUG] [Thread-68363 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42959)
2025-11-17T15:06:02.685 [DEBUG] [Thread-68363 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:02.685 [DEBUG] [Thread-68363 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:02.686 [DEBUG] [Thread-68363 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:02.686 [DEBUG] [Thread-68363 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:02.686 [DEBUG] [Thread-68363 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:02.693 [DEBUG] [Thread-68363 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:02.694 [DEBUG] [Thread-68363 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:02.694 [INFO] [Thread-68363 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04586432, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685191244317, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992667, telescope_ra=21.2579789, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.27773, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:05:05.431424', telescope_ra_j2k=21.2329148148911, telescope_dec_j2k=-24.3621190599615, observability=1)
2025-11-17T15:06:05.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:05.573 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:05.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:05.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:05.573 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:05.574 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:05.574 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:05.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:05.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:05.575 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:05.575 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:06:05.575 [INFO] [ThreadPoolExecutor-2943_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:06:05.575 [INFO] [ThreadPoolExecutor-2943_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:06:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:15.034 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.340414047241211s
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:15.035 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:15.036 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2614339;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28118;2460997.04600737;15.10415806;1.3;_
2025-11-17T15:06:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.2614339;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28118;2460997.04600737;15.10415806;1.3;_
2025-11-17T15:06:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:15.038 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.2614339, teldec = -24.256256
2025-11-17T15:06:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2614339 -24.256256
2025-11-17T15:06:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2614339 -24.256256
2025-11-17T15:06:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2614339 -24.256256
2025-11-17T15:06:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2614339;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28118;2460997.0460074;15.10415806;1.3;_21.2363723588265 -24.3622068480053
2025-11-17T15:06:15.039 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.2363723588265     dec_j2k = -24.3622068480053
2025-11-17T15:06:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685351692088;171.162357330327;_
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685351692088;171.162357330327;_
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48565)
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:15.045 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:15.053 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04600737, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685351692088, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992667, telescope_ra=21.2614339, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.28118, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2363723588265, telescope_dec_j2k=-24.3622068480053, observability=1)
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Status age = 2.5560872554779053s
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:17.609 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:17.610 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:17.610 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:17.611 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:17.612 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 17;21.2621353;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28189;2460997.04603718;15.1048575;1.3;_
2025-11-17T15:06:17.612 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response 17;21.2621353;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28189;2460997.04603718;15.1048575;1.3;_
2025-11-17T15:06:17.612 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:17.612 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:17.612 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:17.613 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:17.613 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:17.613 [INFO] [Thread-68364 (handle)] [driver.py] [get_status()] Telra = 21.2621353, teldec = -24.256256
2025-11-17T15:06:17.613 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2621353 -24.256256
2025-11-17T15:06:17.613 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2621353 -24.256256
2025-11-17T15:06:17.613 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2621353 -24.256256
2025-11-17T15:06:17.614 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 17;21.2621353;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28189;2460997.0460372;15.1048575;1.3;_21.2370742755602 -24.362224659397
2025-11-17T15:06:17.614 [INFO] [Thread-68364 (handle)] [driver.py] [get_status()] ra_j2k = 21.2370742755602     dec_j2k = -24.362224659397
2025-11-17T15:06:17.614 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:17.614 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:17.614 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 140;0.104685111020431;171.162357330327;_
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response 140;0.104685111020431;171.162357330327;_
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:17.615 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:17.616 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:17.617 [DEBUG] [Thread-68364 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:17.617 [DEBUG] [Thread-68364 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:17.617 [DEBUG] [Thread-68364 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47121)
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:17.625 [DEBUG] [Thread-68364 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:17.632 [DEBUG] [Thread-68364 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:17.632 [DEBUG] [Thread-68364 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:17.632 [DEBUG] [Thread-68364 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:17.633 [DEBUG] [Thread-68364 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:17.633 [INFO] [Thread-68364 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04603718, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685111020431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992667, telescope_ra=21.2621353, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.28189, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2370742755602, telescope_dec_j2k=-24.362224659397, observability=1)
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Status age = 3.16322922706604s
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:20.796 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:20.797 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:20.798 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 17;21.2630252;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28278;2460997.04607405;15.105745;1.3;_
2025-11-17T15:06:20.798 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response 17;21.2630252;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28278;2460997.04607405;15.105745;1.3;_
2025-11-17T15:06:20.798 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:20.798 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:20.798 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:20.799 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:20.799 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:20.799 [INFO] [Thread-68365 (handle)] [driver.py] [get_status()] Telra = 21.2630252, teldec = -24.256256
2025-11-17T15:06:20.799 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2630252 -24.256256
2025-11-17T15:06:20.799 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2630252 -24.256256
2025-11-17T15:06:20.800 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2630252 -24.256256
2025-11-17T15:06:20.800 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 17;21.2630252;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28278;2460997.04607407;15.105745;1.3;_21.2379648313056 -24.3622472524803
2025-11-17T15:06:20.801 [INFO] [Thread-68365 (handle)] [driver.py] [get_status()] ra_j2k = 21.2379648313056     dec_j2k = -24.3622472524803
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 140;0.104685431915974;171.162351965909;_
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response 140;0.104685431915974;171.162351965909;_
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:20.801 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:20.802 [DEBUG] [Thread-68365 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42961)
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:20.806 [DEBUG] [Thread-68365 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:20.813 [DEBUG] [Thread-68365 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:20.814 [INFO] [Thread-68365 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04607405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685431915974, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992667, telescope_ra=21.2630252, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.28278, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2379648313056, telescope_dec_j2k=-24.3622472524803, observability=1)
2025-11-17T15:06:26.457 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.457 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.457 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:26.457 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:26.457 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:06:26.458 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:26.459 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:26.460 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:26.461 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:26.461 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.461 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:26.461 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:06:26.462 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.463 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:26.463 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:26.463 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:26.463 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:26.463 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Park
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:06:26.464 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:06:26.465 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 29;21.2646151;-24.256256;50.108232;89.992667;50.08601;90.12017;18.28437;2460997.04613964;15.10733056;1.3;_Park Command Successful
2025-11-17T15:06:27.465 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:06:27.465 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:06:27.466 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:06:27.466 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:06:27.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:06:28.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:06:28.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:06:28.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:06:28.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:06:28.467 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:06:29.468 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:06:29.468 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:06:29.468 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:06:29.469 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:06:29.469 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:06:30.469 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:06:30.469 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:06:30.469 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:30.470 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:06:30.471 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:06:30.472 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:31.472 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:31.472 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:31.472 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:31.472 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:31.472 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:06:31.473 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:06:31.474 [DEBUG] [ThreadPoolExecutor-2942_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:31.474 [INFO] [ThreadPoolExecutor-2942_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.738494634628296s
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:37.552 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:37.553 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:37.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2677066;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28746;2460997.04626799;15.11041361;1.3;_
2025-11-17T15:06:37.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2677066;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28746;2460997.04626799;15.11041361;1.3;_
2025-11-17T15:06:37.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:37.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:37.554 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:37.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:37.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:37.555 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2677066, teldec = -24.256256
2025-11-17T15:06:37.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2677066 -24.256256
2025-11-17T15:06:37.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2677066 -24.256256
2025-11-17T15:06:37.555 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2677066 -24.256256
2025-11-17T15:06:37.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2677066;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28746;2460997.04626801;15.11041361;1.3;_21.2426496834969 -24.3623660116928
2025-11-17T15:06:37.556 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2426496834969     dec_j2k = -24.3623660116928
2025-11-17T15:06:37.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:37.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:37.556 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104684870348775;171.162362694745;_
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104684870348775;171.162362694745;_
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:37.557 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:37.558 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42181)
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:37.560 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:37.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:37.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:37.567 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:37.567 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:37.567 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:37.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:37.568 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:37.568 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:37.568 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:06:37.568 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04626799, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684870348775, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992666, telescope_ra=21.2677066, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.28746, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2426496834969, telescope_dec_j2k=-24.3623660116928, observability=1)
2025-11-17T15:06:37.568 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.94698786735535 seconds ago
2025-11-17T15:06:38.863 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:38.863 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Status age = 1.2956502437591553s
2025-11-17T15:06:38.863 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:38.863 [DEBUG] [Thread-68366 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:38.863 [DEBUG] [Thread-68366 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:38.864 [DEBUG] [Thread-68366 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 17;21.2680704;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28782;2460997.04628316;15.11077639;1.3;_
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response 17;21.2680704;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28782;2460997.04628316;15.11077639;1.3;_
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:38.865 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:38.866 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:38.866 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:38.866 [INFO] [Thread-68366 (handle)] [driver.py] [get_status()] Telra = 21.2680704, teldec = -24.256256
2025-11-17T15:06:38.866 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2680704 -24.256256
2025-11-17T15:06:38.866 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2680704 -24.256256
2025-11-17T15:06:38.866 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2680704 -24.256256
2025-11-17T15:06:38.867 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 17;21.2680704;-24.256256;50.108232;89.992666;50.08601;90.12017;18.28782;2460997.04628318;15.11077639;1.3;_21.2430137519546 -24.3623752340831
2025-11-17T15:06:38.867 [INFO] [Thread-68366 (handle)] [driver.py] [get_status()] ra_j2k = 21.2430137519546     dec_j2k = -24.3623752340831
2025-11-17T15:06:38.867 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:38.867 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:38.867 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 140;0.104685472027917;171.162351965909;_
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response 140;0.104685472027917;171.162351965909;_
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:38.868 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:38.869 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:38.869 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:38.869 [DEBUG] [Thread-68366 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:38.869 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:38.870 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:38.870 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:38.870 [DEBUG] [Thread-68366 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:38.870 [DEBUG] [Thread-68366 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:38.870 [DEBUG] [Thread-68366 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48251)
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:38.872 [DEBUG] [Thread-68366 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:38.880 [DEBUG] [Thread-68366 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:38.880 [INFO] [Thread-68366 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04628316, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685472027917, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992666, telescope_ra=21.2680704, telescope_dec=-24.256256, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.28782, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2430137519546, telescope_dec_j2k=-24.3623752340831, observability=1)
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 12.919155359268188s
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:51.799 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:51.800 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:51.801 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:51.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2716643;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29141;2460997.04643289;15.11436056;1.3;_
2025-11-17T15:06:51.802 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.2716643;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29141;2460997.04643289;15.11436056;1.3;_
2025-11-17T15:06:51.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:51.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:51.802 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:51.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:51.803 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:51.803 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.2716643, teldec = -24.256255
2025-11-17T15:06:51.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2716643 -24.256255
2025-11-17T15:06:51.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2716643 -24.256255
2025-11-17T15:06:51.803 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2716643 -24.256255
2025-11-17T15:06:51.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2716643;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29141;2460997.04643292;15.11436056;1.3;_21.2466103055316 -24.3624652889505
2025-11-17T15:06:51.804 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.2466103055316     dec_j2k = -24.3624652889505
2025-11-17T15:06:51.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:51.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:51.804 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:51.805 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:06:51.806 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:06:51.808 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39959)
2025-11-17T15:06:51.809 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:51.809 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:51.809 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:51.809 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:51.809 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:51.816 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:51.816 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04643289, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992666, telescope_ra=21.2716643, telescope_dec=-24.256255, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.29141, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2466103055316, telescope_dec_j2k=-24.3624652889505, observability=1)
2025-11-17T15:06:52.698 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:06:52
2025-11-17T15:06:52.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:52.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.8816912174224854s
2025-11-17T15:06:52.698 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.8816912174224854
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Status age = 5.175375699996948s
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:06:56.992 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:06:56.993 [DEBUG] [Thread-68367 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:06:56.993 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:06:56.993 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:06:56.993 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:06:56.993 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:06:56.994 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 17;21.2731119;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29286;2460997.04649299;15.11580417;1.3;_
2025-11-17T15:06:56.994 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response 17;21.2731119;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29286;2460997.04649299;15.11580417;1.3;_
2025-11-17T15:06:56.994 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:06:56.994 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:06:56.994 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:06:56.995 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:56.995 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:06:56.995 [INFO] [Thread-68367 (handle)] [driver.py] [get_status()] Telra = 21.2731119, teldec = -24.256255
2025-11-17T15:06:56.995 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2731119 -24.256255
2025-11-17T15:06:56.995 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2731119 -24.256255
2025-11-17T15:06:56.995 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2731119 -24.256255
2025-11-17T15:06:56.996 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 17;21.2731119;-24.256255;50.108232;89.992666;50.08601;90.12017;18.29286;2460997.04649301;15.11580417;1.3;_21.2480589750424 -24.3625019389524
2025-11-17T15:06:56.996 [INFO] [Thread-68367 (handle)] [driver.py] [get_status()] ra_j2k = 21.2480589750424     dec_j2k = -24.3625019389524
2025-11-17T15:06:56.996 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:06:56.996 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:06:56.996 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 140;0.104685391804031;171.162346601491;_
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response 140;0.104685391804031;171.162346601491;_
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:56.997 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:06:56.998 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:06:56.999 [DEBUG] [Thread-68367 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:56.999 [DEBUG] [Thread-68367 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:06:56.999 [DEBUG] [Thread-68367 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:06:57.003 [DEBUG] [Thread-68367 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54647)
2025-11-17T15:06:57.003 [DEBUG] [Thread-68367 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:06:57.003 [DEBUG] [Thread-68367 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:06:57.003 [DEBUG] [Thread-68367 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:06:57.003 [DEBUG] [Thread-68367 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:06:57.004 [DEBUG] [Thread-68367 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:06:57.010 [DEBUG] [Thread-68367 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:06:57.010 [DEBUG] [Thread-68367 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:06:57.011 [DEBUG] [Thread-68367 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:06:57.011 [INFO] [Thread-68367 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04649299, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685391804031, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992666, telescope_ra=21.2731119, telescope_dec=-24.256255, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.29286, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:06:05.572779', telescope_ra_j2k=21.2480589750424, telescope_dec_j2k=-24.3625019389524, observability=1)
2025-11-17T15:07:05.716 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:05.716 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:05.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:05.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:05.716 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:05.717 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:05.717 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:05.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:05.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:05.718 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:05.718 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:07:05.718 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:05.718 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:05.718 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:05.718 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:07:05.719 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:07:05.720 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:06.720 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:06.720 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:06.720 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:06.720 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:06.720 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:07:06.721 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:06.722 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:06.723 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:06.723 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:06.723 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:06.723 [DEBUG] [ThreadPoolExecutor-2944_0] [payload.py] [to_registers()] [0]
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36189)
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:06.724 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:06.731 [DEBUG] [ThreadPoolExecutor-2944_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 18.026850938796997s
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2781532;-24.256255;50.108232;89.992665;50.08601;90.12017;18.2979;2460997.04670185;15.12083167;1.3;_
2025-11-17T15:07:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.2781532;-24.256255;50.108232;89.992665;50.08601;90.12017;18.2979;2460997.04670185;15.12083167;1.3;_
2025-11-17T15:07:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:15.042 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.2781532, teldec = -24.256255
2025-11-17T15:07:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2781532 -24.256255
2025-11-17T15:07:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2781532 -24.256255
2025-11-17T15:07:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2781532 -24.256255
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2781532;-24.256255;50.108232;89.992665;50.08601;90.12017;18.2979;2460997.04670189;15.12083167;1.3;_21.2531040028703 -24.3626294555367
2025-11-17T15:07:15.043 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.2531040028703     dec_j2k = -24.3626294555367
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104685111020431;171.162368059163;_
2025-11-17T15:07:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104685111020431;171.162368059163;_
2025-11-17T15:07:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34369)
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:07:15.058 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04670185, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685111020431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992665, telescope_ra=21.2781532, telescope_dec=-24.256255, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.2979, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2531040028703, telescope_dec_j2k=-24.3626294555367, observability=1)
2025-11-17T15:07:15.059 [DEBUG] [Thread-68368 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:15.059 [DEBUG] [Thread-68368 (handle)] [server.py] [get_status()] Status age = 0.0011022090911865234s
2025-11-17T15:07:15.060 [DEBUG] [Thread-68368 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.0011022090911865234
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Status age = 2.6107537746429443s
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:17.669 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:17.670 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:17.671 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 17;21.2788819;-24.256248;50.108232;89.992654;50.08601;90.12016;18.29863;2460997.0467323;15.12155861;1.3;_
2025-11-17T15:07:17.671 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response 17;21.2788819;-24.256248;50.108232;89.992654;50.08601;90.12016;18.29863;2460997.0467323;15.12155861;1.3;_
2025-11-17T15:07:17.671 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:17.671 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:17.671 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:17.672 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:17.672 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:17.672 [INFO] [Thread-68369 (handle)] [driver.py] [get_status()] Telra = 21.2788819, teldec = -24.256248
2025-11-17T15:07:17.672 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2788819 -24.256248
2025-11-17T15:07:17.672 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2788819 -24.256248
2025-11-17T15:07:17.672 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2788819 -24.256248
2025-11-17T15:07:17.673 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 17;21.2788819;-24.256248;50.108232;89.992654;50.08601;90.12016;18.29863;2460997.04673233;15.12155861;1.3;_21.2538332430749 -24.3626408730888
2025-11-17T15:07:17.673 [INFO] [Thread-68369 (handle)] [driver.py] [get_status()] ra_j2k = 21.2538332430749     dec_j2k = -24.3626408730888
2025-11-17T15:07:17.673 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 140;0.104685111020431;171.162362694745;_
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response 140;0.104685111020431;171.162362694745;_
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:17.674 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:17.675 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:17.675 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:17.675 [DEBUG] [Thread-68369 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:17.676 [DEBUG] [Thread-68369 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36457)
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:17.677 [DEBUG] [Thread-68369 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:17.684 [DEBUG] [Thread-68369 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:07:17.684 [INFO] [Thread-68369 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0467323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685111020431, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992654, telescope_ra=21.2788819, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.29863, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2538332430749, telescope_dec_j2k=-24.3626408730888, observability=1)
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:31.732 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:31.733 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:31.733 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:31.733 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:31.733 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:31.733 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:31.734 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:07:31.734 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:07:31.734 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:07:31.734 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Status age = 15.449533462524414s
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:33.134 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:33.135 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:33.135 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:33.136 [DEBUG] [Thread-68370 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:33.136 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:33.136 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:33.136 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:33.136 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:33.137 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 17;21.2831655;-24.256254;50.108232;89.992664;50.08601;90.12017;18.30292;2460997.04691131;15.12583028;1.3;_
2025-11-17T15:07:33.137 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response 17;21.2831655;-24.256254;50.108232;89.992664;50.08601;90.12017;18.30292;2460997.04691131;15.12583028;1.3;_
2025-11-17T15:07:33.137 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:33.137 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:33.137 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:33.138 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:33.138 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:33.138 [INFO] [Thread-68370 (handle)] [driver.py] [get_status()] Telra = 21.2831655, teldec = -24.256254
2025-11-17T15:07:33.138 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2831655 -24.256254
2025-11-17T15:07:33.138 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2831655 -24.256254
2025-11-17T15:07:33.138 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2831655 -24.256254
2025-11-17T15:07:33.139 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 17;21.2831933;-24.256254;50.108232;89.992664;50.08601;90.12017;18.30294;2460997.04691133;15.12585806;1.3;_21.2581200143626 -24.3627550569236
2025-11-17T15:07:33.139 [INFO] [Thread-68370 (handle)] [driver.py] [get_status()] ra_j2k = 21.2581200143626     dec_j2k = -24.3627550569236
2025-11-17T15:07:33.139 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:33.139 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:33.139 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 140;0.104685191244317;171.162351965909;_
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response 140;0.104685191244317;171.162351965909;_
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:33.140 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:33.141 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:33.142 [DEBUG] [Thread-68370 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:07:33.142 [DEBUG] [Thread-68370 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:07:33.142 [DEBUG] [Thread-68370 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36791)
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:33.143 [DEBUG] [Thread-68370 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:33.150 [DEBUG] [Thread-68370 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:33.150 [DEBUG] [Thread-68370 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:33.150 [DEBUG] [Thread-68370 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:33.150 [DEBUG] [Thread-68370 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:33.151 [DEBUG] [Thread-68370 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:33.151 [DEBUG] [Thread-68370 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:33.151 [DEBUG] [Thread-68370 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:33.151 [DEBUG] [Thread-68370 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:33.151 [DEBUG] [Thread-68370 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:07:33.151 [INFO] [Thread-68370 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04691131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104685191244317, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108232, telescope_az=89.992664, telescope_ra=21.2831655, telescope_dec=-24.256254, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.30292, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2581200143626, telescope_dec_j2k=-24.3627550569236, observability=1)
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 4.476897478103638s
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:37.628 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:37.629 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:37.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2844256;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30418;2460997.04696331;15.12708694;1.3;_
2025-11-17T15:07:37.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.2844256;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30418;2460997.04696331;15.12708694;1.3;_
2025-11-17T15:07:37.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:37.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:37.630 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:37.631 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:37.631 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:37.631 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.2844256, teldec = -24.256254
2025-11-17T15:07:37.631 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.2844256 -24.256254
2025-11-17T15:07:37.631 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.2844256 -24.256254
2025-11-17T15:07:37.631 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2844256 -24.256254
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.2844256;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30418;2460997.04696333;15.12708694;1.3;_21.2593810481829 -24.3627868561493
2025-11-17T15:07:37.632 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2593810481829     dec_j2k = -24.3627868561493
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104684308781575;171.162362694745;_
2025-11-17T15:07:37.632 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104684308781575;171.162362694745;_
2025-11-17T15:07:37.633 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:37.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:37.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:37.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:37.633 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:37.634 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54179)
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:37.639 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:37.646 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:37.647 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:37.647 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:07:37.647 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04696331, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684308781575, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992664, telescope_ra=21.2844256, telescope_dec=-24.256254, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.30418, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2593810481829, telescope_dec_j2k=-24.3627868561493, observability=1)
2025-11-17T15:07:37.647 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.94880175590515 seconds ago
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.261312484741211s
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:50.908 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:50.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:50.909 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:50.909 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:50.909 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:50.909 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:50.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:50.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:50.910 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2881315;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30788;2460997.04711701;15.13078278;1.3;_
2025-11-17T15:07:50.910 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.2881315;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30788;2460997.04711701;15.13078278;1.3;_
2025-11-17T15:07:50.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:50.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:50.911 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:50.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:50.912 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:50.912 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.2881315, teldec = -24.256254
2025-11-17T15:07:50.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2881315 -24.256254
2025-11-17T15:07:50.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2881315 -24.256254
2025-11-17T15:07:50.912 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2881315 -24.256254
2025-11-17T15:07:50.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.2881315;-24.256254;50.108231;89.992664;50.08601;90.12017;18.30788;2460997.04711705;15.13078278;1.3;_21.2630896963212 -24.3628803098132
2025-11-17T15:07:50.913 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.2630896963212     dec_j2k = -24.3628803098132
2025-11-17T15:07:50.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:50.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:50.913 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104684750012946;171.162362694745;_
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104684750012946;171.162362694745;_
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:50.914 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:50.915 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:50.916 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:50.916 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:50.916 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39483)
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:50.919 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:50.926 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:07:50.927 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04711701, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684750012946, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992664, telescope_ra=21.2881315, telescope_dec=-24.256254, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.30788, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2630896963212, telescope_dec_j2k=-24.3628803098132, observability=1)
2025-11-17T15:07:51.266 [DEBUG] [Thread-68371 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:51.266 [DEBUG] [Thread-68371 (handle)] [server.py] [get_status()] Status age = 0.3393576145172119s
2025-11-17T15:07:51.266 [DEBUG] [Thread-68371 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3393576145172119
2025-11-17T15:07:52.759 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:07:52
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 1.8324847221374512s
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:07:52.759 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:07:52.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:07:52.760 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:07:52.761 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2886546;-24.256254;50.108231;89.992664;50.08601;90.12017;18.3084;2460997.04713844;15.13130444;1.3;_
2025-11-17T15:07:52.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.2886546;-24.256254;50.108231;89.992664;50.08601;90.12017;18.3084;2460997.04713844;15.13130444;1.3;_
2025-11-17T15:07:52.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:07:52.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:07:52.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:07:52.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:52.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:07:52.763 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.2886546, teldec = -24.256254
2025-11-17T15:07:52.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2886546 -24.256254
2025-11-17T15:07:52.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2886546 -24.256254
2025-11-17T15:07:52.763 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2886546 -24.256254
2025-11-17T15:07:52.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.2886546;-24.256254;50.108231;89.992664;50.08601;90.12017;18.3084;2460997.04713847;15.13130444;1.3;_21.2636131844478 -24.3628934931095
2025-11-17T15:07:52.764 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.2636131844478     dec_j2k = -24.3628934931095
2025-11-17T15:07:52.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:07:52.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:07:52.764 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162357330327;_
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:52.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:07:52.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:07:52.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:52.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:07:52.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59381)
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:07:52.770 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:07:52.777 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:07:52.777 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04713844, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992664, telescope_ra=21.2886546, telescope_dec=-24.256254, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.3084, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:07:05.715595', telescope_ra_j2k=21.2636131844478, telescope_dec_j2k=-24.3628934931095, observability=1)
2025-11-17T15:08:05.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:05.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:05.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:05.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:05.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:05.857 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:05.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:05.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:05.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:05.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:05.858 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:08:05.858 [INFO] [ThreadPoolExecutor-2945_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:08:05.858 [INFO] [ThreadPoolExecutor-2945_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Status age = 16.549723148345947s
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:09.327 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:09.328 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:09.329 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 17;21.2932594;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31301;2460997.0473302;15.13589667;1.3;_
2025-11-17T15:08:09.329 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response 17;21.2932594;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31301;2460997.0473302;15.13589667;1.3;_
2025-11-17T15:08:09.329 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:09.329 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:09.329 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:09.330 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:09.330 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:09.330 [INFO] [Thread-68372 (handle)] [driver.py] [get_status()] Telra = 21.2932594, teldec = -24.256253
2025-11-17T15:08:09.330 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2932594 -24.256253
2025-11-17T15:08:09.330 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2932594 -24.256253
2025-11-17T15:08:09.331 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2932594 -24.256253
2025-11-17T15:08:09.331 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 17;21.2932594;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31301;2460997.04733022;15.13589667;1.3;_21.268221403548 -24.3630084591105
2025-11-17T15:08:09.331 [INFO] [Thread-68372 (handle)] [driver.py] [get_status()] ra_j2k = 21.268221403548     dec_j2k = -24.3630084591105
2025-11-17T15:08:09.331 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:09.332 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:09.332 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 140;0.10468495057266;171.162362694745;_
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response 140;0.10468495057266;171.162362694745;_
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:09.333 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:09.334 [DEBUG] [Thread-68372 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48611)
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:09.341 [DEBUG] [Thread-68372 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:09.348 [DEBUG] [Thread-68372 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:09.349 [INFO] [Thread-68372 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0473302, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468495057266, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992663, telescope_ra=21.2932594, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.31301, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.268221403548, telescope_dec_j2k=-24.3630084591105, observability=1)
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 5.697729825973511s
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.2948398;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31459;2460997.04739639;15.13747278;1.3;_
2025-11-17T15:08:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.2948398;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31459;2460997.04739639;15.13747278;1.3;_
2025-11-17T15:08:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:15.049 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.2948398, teldec = -24.256253
2025-11-17T15:08:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2948398 -24.256253
2025-11-17T15:08:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2948398 -24.256253
2025-11-17T15:08:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2948398 -24.256253
2025-11-17T15:08:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.294868;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31462;2460997.04739641;15.13750083;1.3;_21.2698029779224 -24.3630482240524
2025-11-17T15:08:15.050 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.2698029779224     dec_j2k = -24.3630482240524
2025-11-17T15:08:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162351965909;_
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162351965909;_
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:15.055 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56755)
2025-11-17T15:08:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:15.055 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:15.056 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:15.063 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04739639, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992663, telescope_ra=21.2948398, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.31459, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2698029779224, telescope_dec_j2k=-24.3630482240524, observability=1)
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Status age = 2.6590065956115723s
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:17.722 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:17.723 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:17.723 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:17.723 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:17.723 [DEBUG] [Thread-68373 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 17;21.2955966;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31535;2460997.04742736;15.1382275;1.3;_
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response 17;21.2955966;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31535;2460997.04742736;15.1382275;1.3;_
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:17.724 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:17.725 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:17.725 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:17.725 [INFO] [Thread-68373 (handle)] [driver.py] [get_status()] Telra = 21.2955966, teldec = -24.256253
2025-11-17T15:08:17.725 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2955966 -24.256253
2025-11-17T15:08:17.725 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2955966 -24.256253
2025-11-17T15:08:17.725 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2955966 -24.256253
2025-11-17T15:08:17.726 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 17;21.2955966;-24.256253;50.108231;89.992663;50.08601;90.12017;18.31535;2460997.04742738;15.1382275;1.3;_21.2705603404644 -24.3630672597303
2025-11-17T15:08:17.726 [INFO] [Thread-68373 (handle)] [driver.py] [get_status()] ra_j2k = 21.2705603404644     dec_j2k = -24.3630672597303
2025-11-17T15:08:17.726 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:17.726 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:17.726 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 140;0.104684549453232;171.162351965909;_
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response 140;0.104684549453232;171.162351965909;_
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:17.727 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:17.728 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:17.729 [DEBUG] [Thread-68373 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:17.729 [DEBUG] [Thread-68373 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:17.729 [DEBUG] [Thread-68373 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:17.735 [DEBUG] [Thread-68373 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50469)
2025-11-17T15:08:17.735 [DEBUG] [Thread-68373 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:17.735 [DEBUG] [Thread-68373 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:17.735 [DEBUG] [Thread-68373 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:17.735 [DEBUG] [Thread-68373 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:17.736 [DEBUG] [Thread-68373 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:17.743 [DEBUG] [Thread-68373 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:17.743 [INFO] [Thread-68373 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04742736, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684549453232, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992663, telescope_ra=21.2955966, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.31535, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2705603404644, telescope_dec_j2k=-24.3630672597303, observability=1)
2025-11-17T15:08:26.735 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.735 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.735 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:26.735 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:26.735 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:08:26.736 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:26.737 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:26.738 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:08:26.739 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:26.740 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:26.741 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:26.741 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:26.741 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:26.741 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Park
2025-11-17T15:08:26.741 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:08:26.742 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:08:26.742 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 29;21.2981074;-24.256253;50.108231;89.992662;50.08601;90.12017;18.31786;2460997.04753174;15.14073139;1.3;_Park Command Successful
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Status age = 9.661788702011108s
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:27.405 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:27.406 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:27.407 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 17;21.2982945;-24.256253;50.108231;89.992662;50.08601;90.12017;18.31804;2460997.04753943;15.14091806;1.3;_
2025-11-17T15:08:27.407 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response 17;21.2982945;-24.256253;50.108231;89.992662;50.08601;90.12017;18.31804;2460997.04753943;15.14091806;1.3;_
2025-11-17T15:08:27.407 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:27.407 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:27.407 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:27.408 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:27.408 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:27.408 [INFO] [Thread-68374 (handle)] [driver.py] [get_status()] Telra = 21.2982945, teldec = -24.256253
2025-11-17T15:08:27.408 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] UnCookCoordinates 21.2982945 -24.256253
2025-11-17T15:08:27.408 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.2982945 -24.256253
2025-11-17T15:08:27.408 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.2982945 -24.256253
2025-11-17T15:08:27.409 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 17;21.2982945;-24.256253;50.108231;89.992662;50.08601;90.12017;18.31804;2460997.04753946;15.14091806;1.3;_21.2732602467736 -24.3631350858438
2025-11-17T15:08:27.409 [INFO] [Thread-68374 (handle)] [driver.py] [get_status()] ra_j2k = 21.2732602467736     dec_j2k = -24.3631350858438
2025-11-17T15:08:27.409 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:27.409 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:27.409 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:27.410 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 140;0.104684549453232;171.162357330327;_
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response 140;0.104684549453232;171.162357330327;_
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:27.411 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:27.412 [DEBUG] [Thread-68374 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:27.412 [DEBUG] [Thread-68374 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:27.412 [DEBUG] [Thread-68374 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:27.413 [DEBUG] [Thread-68374 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43733)
2025-11-17T15:08:27.413 [DEBUG] [Thread-68374 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:27.413 [DEBUG] [Thread-68374 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:27.413 [DEBUG] [Thread-68374 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:27.414 [DEBUG] [Thread-68374 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:27.414 [DEBUG] [Thread-68374 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:27.421 [DEBUG] [Thread-68374 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:27.421 [INFO] [Thread-68374 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04753943, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684549453232, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992662, telescope_ra=21.2982945, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.31804, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2732602467736, telescope_dec_j2k=-24.3631350858438, observability=1)
2025-11-17T15:08:27.743 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:08:27.743 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:08:27.743 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:08:27.744 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:08:27.744 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:08:28.744 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:08:28.744 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:08:28.744 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:08:28.745 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:08:28.745 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:08:29.745 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:08:29.745 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:08:29.745 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:08:29.746 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:08:29.746 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:08:30.746 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:08:30.747 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:08:30.747 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:08:30.747 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:08:30.747 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:08:30.748 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:30.748 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:30.748 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:30.748 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:30.748 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:08:30.749 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:08:30.750 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:31.750 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:31.750 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:31.750 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:31.750 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:31.750 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:08:31.751 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:08:31.752 [DEBUG] [ThreadPoolExecutor-2944_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:31.752 [INFO] [ThreadPoolExecutor-2944_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 10.285702228546143s
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:37.707 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:37.708 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:37.709 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3011704;-24.256259;50.108231;89.992673;50.08601;90.12018;18.32092;2460997.04765867;15.14378583;1.3;_
2025-11-17T15:08:37.709 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.3011704;-24.256259;50.108231;89.992673;50.08601;90.12018;18.32092;2460997.04765867;15.14378583;1.3;_
2025-11-17T15:08:37.709 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:37.709 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:37.709 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:37.710 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:37.710 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:37.710 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.3011704, teldec = -24.256259
2025-11-17T15:08:37.710 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.3011704 -24.256259
2025-11-17T15:08:37.710 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.3011704 -24.256259
2025-11-17T15:08:37.710 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3011704 -24.256259
2025-11-17T15:08:37.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3011704;-24.256259;50.108231;89.992673;50.08601;90.12018;18.32092;2460997.04765869;15.14378583;1.3;_21.2761382862212 -24.3632133282432
2025-11-17T15:08:37.711 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2761382862212     dec_j2k = -24.3632133282432
2025-11-17T15:08:37.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:37.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:37.711 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104684669789061;171.162357330327;_
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104684669789061;171.162357330327;_
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:37.712 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:37.713 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:37.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:37.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:37.714 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58953)
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:37.718 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:37.726 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:08:37.726 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04765867, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684669789061, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992673, telescope_ra=21.3011704, telescope_dec=-24.256259, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.32092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2761382862212, telescope_dec_j2k=-24.3632133282432, observability=1)
2025-11-17T15:08:37.726 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96764326095581 seconds ago
2025-11-17T15:08:45.515 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:45.515 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Status age = 7.789005279541016s
2025-11-17T15:08:45.515 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:45.515 [DEBUG] [Thread-68375 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:45.516 [DEBUG] [Thread-68375 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:45.516 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:45.516 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:45.516 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:45.517 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:45.518 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 17;21.3033453;-24.256253;50.108231;89.992662;50.08601;90.12017;18.3231;2460997.04774905;15.145955;1.3;_
2025-11-17T15:08:45.518 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response 17;21.3033453;-24.256253;50.108231;89.992662;50.08601;90.12017;18.3231;2460997.04774905;15.145955;1.3;_
2025-11-17T15:08:45.518 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:45.518 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:45.518 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:45.519 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:45.519 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:45.519 [INFO] [Thread-68375 (handle)] [driver.py] [get_status()] Telra = 21.3033453, teldec = -24.256253
2025-11-17T15:08:45.519 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3033453 -24.256253
2025-11-17T15:08:45.519 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3033453 -24.256253
2025-11-17T15:08:45.519 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3033453 -24.256253
2025-11-17T15:08:45.520 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 17;21.3033453;-24.256253;50.108231;89.992662;50.08601;90.12017;18.3231;2460997.04774907;15.145955;1.3;_21.2783148066727 -24.3632619227801
2025-11-17T15:08:45.520 [INFO] [Thread-68375 (handle)] [driver.py] [get_status()] ra_j2k = 21.2783148066727     dec_j2k = -24.3632619227801
2025-11-17T15:08:45.520 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:45.520 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:45.520 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 140;0.104684268669632;171.162351965909;_
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response 140;0.104684268669632;171.162351965909;_
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:45.521 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:45.522 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:45.523 [DEBUG] [Thread-68375 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:08:45.523 [DEBUG] [Thread-68375 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:08:45.523 [DEBUG] [Thread-68375 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:08:45.529 [DEBUG] [Thread-68375 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60597)
2025-11-17T15:08:45.529 [DEBUG] [Thread-68375 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:45.529 [DEBUG] [Thread-68375 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:45.529 [DEBUG] [Thread-68375 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:45.530 [DEBUG] [Thread-68375 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:45.530 [DEBUG] [Thread-68375 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:45.537 [DEBUG] [Thread-68375 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:45.537 [INFO] [Thread-68375 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04774905, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684268669632, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992662, telescope_ra=21.3033453, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.3231, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2783148066727, telescope_dec_j2k=-24.3632619227801, observability=1)
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.482612371444702s
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:50.020 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3045967;-24.256253;50.108231;89.992662;50.08601;90.12017;18.32435;2460997.04780117;15.14720306;1.3;_
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.3045967;-24.256253;50.108231;89.992662;50.08601;90.12017;18.32435;2460997.04780117;15.14720306;1.3;_
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:50.021 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:50.022 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:50.022 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:50.023 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.3045967, teldec = -24.256253
2025-11-17T15:08:50.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3045967 -24.256253
2025-11-17T15:08:50.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3045967 -24.256253
2025-11-17T15:08:50.023 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3045967 -24.256253
2025-11-17T15:08:50.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3045967;-24.256253;50.108231;89.992662;50.08601;90.12017;18.32435;2460997.04780119;15.14720306;1.3;_21.2795671390092 -24.363293319636
2025-11-17T15:08:50.024 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.2795671390092     dec_j2k = -24.363293319636
2025-11-17T15:08:50.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:50.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:50.024 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104684910460717;171.162346601491;_
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104684910460717;171.162346601491;_
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:50.025 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:50.026 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:50.027 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:50.027 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:50.027 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34201)
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:50.033 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:50.040 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:50.040 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:50.040 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:50.041 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:50.041 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04780117, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684910460717, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992662, telescope_ra=21.3045967, telescope_dec=-24.256253, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.32435, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2795671390092, telescope_dec_j2k=-24.363293319636, observability=1)
2025-11-17T15:08:52.838 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:08:52
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 2.797255754470825s
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:08:52.838 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:08:52.839 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:08:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:08:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3053708;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32512;2460997.0478338;15.147975;1.3;_
2025-11-17T15:08:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.3053708;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32512;2460997.0478338;15.147975;1.3;_
2025-11-17T15:08:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:08:52.840 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:08:52.841 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:08:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:08:52.842 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.3053708, teldec = -24.256252
2025-11-17T15:08:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3053708 -24.256252
2025-11-17T15:08:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3053708 -24.256252
2025-11-17T15:08:52.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3053708 -24.256252
2025-11-17T15:08:52.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3053708;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32512;2460997.04783383;15.147975;1.3;_21.2803418160284 -24.3633117357368
2025-11-17T15:08:52.843 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.2803418160284     dec_j2k = -24.3633117357368
2025-11-17T15:08:52.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:08:52.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:08:52.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104684830236832;171.162362694745;_
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104684830236832;171.162362694745;_
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:52.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:08:52.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:08:52.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:52.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:08:52.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48011)
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:08:52.849 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:08:52.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:08:52.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:52.856 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:08:52.856 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:08:52.856 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:08:52.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:08:52.857 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:08:52.857 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:08:52.857 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:08:52.857 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0478338, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684830236832, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992661, telescope_ra=21.3053708, telescope_dec=-24.256252, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.32512, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2803418160284, telescope_dec_j2k=-24.3633117357368, observability=1)
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Status age = 10.729094743728638s
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:03.586 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:03.587 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:03.588 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:03.589 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 17;21.308381;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32813;2460997.04795819;15.15097694;1.3;_
2025-11-17T15:09:03.589 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response 17;21.308381;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32813;2460997.04795819;15.15097694;1.3;_
2025-11-17T15:09:03.589 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:03.589 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:03.589 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:03.590 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:03.590 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:03.590 [INFO] [Thread-68376 (handle)] [driver.py] [get_status()] Telra = 21.308381, teldec = -24.256252
2025-11-17T15:09:03.590 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] UnCookCoordinates 21.308381 -24.256252
2025-11-17T15:09:03.590 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.308381 -24.256252
2025-11-17T15:09:03.590 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.308381 -24.256252
2025-11-17T15:09:03.591 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 17;21.308381;-24.256252;50.108231;89.992661;50.08601;90.12017;18.32813;2460997.04795823;15.15097694;1.3;_21.2833542604457 -24.3633871963077
2025-11-17T15:09:03.591 [INFO] [Thread-68376 (handle)] [driver.py] [get_status()] ra_j2k = 21.2833542604457     dec_j2k = -24.3633871963077
2025-11-17T15:09:03.591 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:03.591 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:03.591 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 140;0.104684188445747;171.162351965909;_
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response 140;0.104684188445747;171.162351965909;_
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:03.592 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:03.593 [DEBUG] [Thread-68376 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43987)
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:03.595 [DEBUG] [Thread-68376 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:03.602 [DEBUG] [Thread-68376 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:03.603 [DEBUG] [Thread-68376 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:03.603 [DEBUG] [Thread-68376 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:03.603 [DEBUG] [Thread-68376 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:03.603 [INFO] [Thread-68376 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04795819, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684188445747, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992661, telescope_ra=21.308381, telescope_dec=-24.256252, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.32813, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:08:05.855570', telescope_ra_j2k=21.2833542604457, telescope_dec_j2k=-24.3633871963077, observability=1)
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:05.998 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:09:05.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:05.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:06.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:06.000 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:06.000 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:09:06.001 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:09:06.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:09:07.002 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:07.003 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:07.004 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:07.004 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:07.004 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:07.005 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:07.005 [DEBUG] [ThreadPoolExecutor-2946_0] [payload.py] [to_registers()] [0]
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46459)
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:07.009 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:07.010 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:07.011 [DEBUG] [ThreadPoolExecutor-2946_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 11.447047710418701s
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3115605;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33131;2460997.04809088;15.15414778;1.3;_
2025-11-17T15:09:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3115605;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33131;2460997.04809088;15.15414778;1.3;_
2025-11-17T15:09:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:15.052 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:15.053 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3115605, teldec = -24.256252
2025-11-17T15:09:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3115605 -24.256252
2025-11-17T15:09:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3115605 -24.256252
2025-11-17T15:09:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3115605 -24.256252
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3115605;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33131;2460997.0480909;15.15414778;1.3;_21.2865361330209 -24.3634668294398
2025-11-17T15:09:15.055 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.2865361330209     dec_j2k = -24.3634668294398
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104684389005461;171.162357330327;_
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104684389005461;171.162357330327;_
2025-11-17T15:09:15.055 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41717)
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:15.071 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:15.072 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04809088, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684389005461, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992661, telescope_ra=21.3115605, telescope_dec=-24.256252, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.33131, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2865361330209, telescope_dec_j2k=-24.3634668294398, observability=1)
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Status age = 2.7115161418914795s
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:17.783 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:17.784 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:17.785 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 17;21.3123167;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33207;2460997.0481225;15.15490194;1.3;_
2025-11-17T15:09:17.785 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response 17;21.3123167;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33207;2460997.0481225;15.15490194;1.3;_
2025-11-17T15:09:17.785 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:17.785 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:17.785 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:17.786 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:17.786 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:17.786 [INFO] [Thread-68377 (handle)] [driver.py] [get_status()] Telra = 21.3123167, teldec = -24.256252
2025-11-17T15:09:17.786 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3123167 -24.256252
2025-11-17T15:09:17.786 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3123167 -24.256252
2025-11-17T15:09:17.786 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3123167 -24.256252
2025-11-17T15:09:17.787 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 17;21.3123167;-24.256252;50.108231;89.992661;50.08601;90.12017;18.33207;2460997.04812253;15.15490194;1.3;_21.2872928975963 -24.3634857582577
2025-11-17T15:09:17.787 [INFO] [Thread-68377 (handle)] [driver.py] [get_status()] ra_j2k = 21.2872928975963     dec_j2k = -24.3634857582577
2025-11-17T15:09:17.787 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:17.787 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:17.787 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 140;0.104684268669632;171.162351965909;_
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response 140;0.104684268669632;171.162351965909;_
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:17.788 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:17.789 [DEBUG] [Thread-68377 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54557)
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:17.795 [DEBUG] [Thread-68377 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:17.802 [DEBUG] [Thread-68377 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:17.803 [INFO] [Thread-68377 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0481225, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684268669632, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992661, telescope_ra=21.3123167, telescope_dec=-24.256252, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.33207, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2872928975963, telescope_dec_j2k=-24.3634857582577, observability=1)
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Status age = 3.83550763130188s
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:21.638 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:21.639 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:21.640 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 17;21.3133999;-24.256252;50.108231;89.99266;50.08601;90.12017;18.33315;2460997.04816713;15.15598222;1.3;_
2025-11-17T15:09:21.640 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response 17;21.3133999;-24.256252;50.108231;89.99266;50.08601;90.12017;18.33315;2460997.04816713;15.15598222;1.3;_
2025-11-17T15:09:21.640 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:21.640 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:21.640 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:21.641 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:21.641 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:21.641 [INFO] [Thread-68378 (handle)] [driver.py] [get_status()] Telra = 21.3133999, teldec = -24.256252
2025-11-17T15:09:21.641 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3133999 -24.256252
2025-11-17T15:09:21.641 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3133999 -24.256252
2025-11-17T15:09:21.641 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3133999 -24.256252
2025-11-17T15:09:21.642 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 17;21.3133999;-24.256252;50.108231;89.99266;50.08601;90.12017;18.33315;2460997.04816715;15.15598222;1.3;_21.2883769065033 -24.3635128651293
2025-11-17T15:09:21.642 [INFO] [Thread-68378 (handle)] [driver.py] [get_status()] ra_j2k = 21.2883769065033     dec_j2k = -24.3635128651293
2025-11-17T15:09:21.642 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:21.642 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:21.642 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 140;0.104683787326319;171.162362694745;_
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response 140;0.104683787326319;171.162362694745;_
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:21.643 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:21.644 [DEBUG] [Thread-68378 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:21.651 [DEBUG] [Thread-68378 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36437)
2025-11-17T15:09:21.651 [DEBUG] [Thread-68378 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:21.651 [DEBUG] [Thread-68378 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:21.651 [DEBUG] [Thread-68378 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:21.651 [DEBUG] [Thread-68378 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:21.652 [DEBUG] [Thread-68378 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:21.658 [DEBUG] [Thread-68378 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:21.658 [DEBUG] [Thread-68378 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:21.659 [DEBUG] [Thread-68378 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:21.659 [INFO] [Thread-68378 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04816713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683787326319, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.99266, telescope_ra=21.3133999, telescope_dec=-24.256252, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.33315, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2883769065033, telescope_dec_j2k=-24.3635128651293, observability=1)
2025-11-17T15:09:32.011 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:32.011 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:32.011 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:32.011 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:32.011 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:32.012 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:09:32.013 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:09:32.014 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 16.126846313476562s
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:37.786 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:37.787 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:37.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3178911;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33764;2460997.04835403;15.16046111;1.3;_
2025-11-17T15:09:37.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.3178911;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33764;2460997.04835403;15.16046111;1.3;_
2025-11-17T15:09:37.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:37.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:37.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:37.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:37.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:37.789 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.3178911, teldec = -24.256251
2025-11-17T15:09:37.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.3178911 -24.256251
2025-11-17T15:09:37.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.3178911 -24.256251
2025-11-17T15:09:37.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3178911 -24.256251
2025-11-17T15:09:37.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3178911;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33764;2460997.04835405;15.16046111;1.3;_21.2928714630018 -24.3636241655552
2025-11-17T15:09:37.791 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.2928714630018     dec_j2k = -24.3636241655552
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10468422855769;171.162351965909;_
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10468422855769;171.162351965909;_
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:37.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:37.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:37.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:37.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:37.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45989)
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:37.800 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:37.808 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:09:37.808 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04835403, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468422855769, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.99266, telescope_ra=21.3178911, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.33764, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2928714630018, telescope_dec_j2k=-24.3636241655552, observability=1)
2025-11-17T15:09:37.808 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.97041058540344 seconds ago
2025-11-17T15:09:39.779 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:39.779 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Status age = 1.9713208675384521s
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:39.780 [DEBUG] [Thread-68379 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:39.781 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:39.781 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:39.781 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:39.781 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:39.781 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 17;21.3184434;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33819;2460997.04837709;15.16101194;1.3;_
2025-11-17T15:09:39.782 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response 17;21.3184434;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33819;2460997.04837709;15.16101194;1.3;_
2025-11-17T15:09:39.782 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:39.782 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:39.782 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:39.783 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:39.783 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:39.783 [INFO] [Thread-68379 (handle)] [driver.py] [get_status()] Telra = 21.3184434, teldec = -24.256251
2025-11-17T15:09:39.783 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3184434 -24.256251
2025-11-17T15:09:39.783 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3184434 -24.256251
2025-11-17T15:09:39.783 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3184434 -24.256251
2025-11-17T15:09:39.784 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 17;21.3184434;-24.256251;50.108231;89.99266;50.08601;90.12017;18.33819;2460997.04837713;15.16101194;1.3;_21.2934241760189 -24.3636379654151
2025-11-17T15:09:39.784 [INFO] [Thread-68379 (handle)] [driver.py] [get_status()] ra_j2k = 21.2934241760189     dec_j2k = -24.3636379654151
2025-11-17T15:09:39.784 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:39.784 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:39.784 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 140;0.104683907662147;171.162357330327;_
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response 140;0.104683907662147;171.162357330327;_
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:39.785 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:39.786 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:39.787 [DEBUG] [Thread-68379 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:39.787 [DEBUG] [Thread-68379 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:39.787 [DEBUG] [Thread-68379 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:39.792 [DEBUG] [Thread-68379 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54023)
2025-11-17T15:09:39.792 [DEBUG] [Thread-68379 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:39.792 [DEBUG] [Thread-68379 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:39.793 [DEBUG] [Thread-68379 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:39.793 [DEBUG] [Thread-68379 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:39.793 [DEBUG] [Thread-68379 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:39.800 [DEBUG] [Thread-68379 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:39.800 [INFO] [Thread-68379 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04837709, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683907662147, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.99266, telescope_ra=21.3184434, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.33819, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2934241760189, telescope_dec_j2k=-24.3636379654151, observability=1)
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.330305814743042s
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:49.130 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:49.131 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:49.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.321062;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34081;2460997.04848532;15.16362333;1.3;_
2025-11-17T15:09:49.132 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.321062;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34081;2460997.04848532;15.16362333;1.3;_
2025-11-17T15:09:49.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:49.132 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:49.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:49.133 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:49.133 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:49.134 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.321062, teldec = -24.256251
2025-11-17T15:09:49.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.321062 -24.256251
2025-11-17T15:09:49.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.321062 -24.256251
2025-11-17T15:09:49.134 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.321062 -24.256251
2025-11-17T15:09:49.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.321062;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34081;2460997.04848536;15.16362333;1.3;_21.296044735053 -24.3637033639484
2025-11-17T15:09:49.135 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.296044735053     dec_j2k = -24.3637033639484
2025-11-17T15:09:49.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:49.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:49.135 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104684348893518;171.162362694745;_
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104684348893518;171.162362694745;_
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:49.136 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:49.137 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:49.138 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:49.138 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:49.138 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49113)
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:49.139 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:49.146 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:49.147 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:49.147 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04848532, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684348893518, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992659, telescope_ra=21.321062, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.34081, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.296044735053, telescope_dec_j2k=-24.3637033639484, observability=1)
2025-11-17T15:09:52.918 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:09:52
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 3.77124285697937s
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:52.918 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3221185;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34187;2460997.04852916;15.16467694;1.3;_
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.3221185;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34187;2460997.04852916;15.16467694;1.3;_
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:52.919 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:52.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:52.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:52.920 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.3221185, teldec = -24.256251
2025-11-17T15:09:52.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3221185 -24.256251
2025-11-17T15:09:52.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3221185 -24.256251
2025-11-17T15:09:52.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3221185 -24.256251
2025-11-17T15:09:52.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3221185;-24.256251;50.108231;89.992659;50.08601;90.12017;18.34187;2460997.04852918;15.16467694;1.3;_21.2971020258237 -24.3637297354848
2025-11-17T15:09:52.921 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.2971020258237     dec_j2k = -24.3637297354848
2025-11-17T15:09:52.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:52.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:52.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104684709901003;171.162357330327;_
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104684709901003;171.162357330327;_
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:52.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:52.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:52.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:52.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:52.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49085)
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:52.931 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:52.939 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:52.939 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04852916, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684709901003, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108231, telescope_az=89.992659, telescope_ra=21.3221185, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.34187, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2971020258237, telescope_dec_j2k=-24.3637297354848, observability=1)
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Status age = 4.8999128341674805s
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:09:57.839 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:09:57.840 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:09:57.840 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:09:57.841 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:09:57.842 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 17;21.3234841;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34323;2460997.04858613;15.16603889;1.3;_
2025-11-17T15:09:57.842 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response 17;21.3234841;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34323;2460997.04858613;15.16603889;1.3;_
2025-11-17T15:09:57.842 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:09:57.842 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:09:57.842 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:09:57.843 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:57.843 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:09:57.843 [INFO] [Thread-68380 (handle)] [driver.py] [get_status()] Telra = 21.3234841, teldec = -24.256251
2025-11-17T15:09:57.843 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3234841 -24.256251
2025-11-17T15:09:57.843 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3234841 -24.256251
2025-11-17T15:09:57.843 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3234841 -24.256251
2025-11-17T15:09:57.844 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 17;21.3234841;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34323;2460997.04858616;15.16603889;1.3;_21.2984686482727 -24.3637638104804
2025-11-17T15:09:57.844 [INFO] [Thread-68380 (handle)] [driver.py] [get_status()] ra_j2k = 21.2984686482727     dec_j2k = -24.3637638104804
2025-11-17T15:09:57.844 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:09:57.844 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:09:57.844 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 140;0.104684188445747;171.162351965909;_
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response 140;0.104684188445747;171.162351965909;_
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:09:57.845 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:09:57.846 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:09:57.846 [DEBUG] [Thread-68380 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:57.846 [DEBUG] [Thread-68380 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:09:57.846 [DEBUG] [Thread-68380 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41997)
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:09:57.852 [DEBUG] [Thread-68380 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:09:57.859 [DEBUG] [Thread-68380 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:09:57.859 [DEBUG] [Thread-68380 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:57.859 [DEBUG] [Thread-68380 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:09:57.860 [DEBUG] [Thread-68380 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:09:57.860 [INFO] [Thread-68380 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04858613, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104684188445747, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992659, telescope_ra=21.3234841, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.34323, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:09:05.997906', telescope_ra_j2k=21.2984686482727, telescope_dec_j2k=-24.3637638104804, observability=1)
2025-11-17T15:10:06.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:06.139 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:06.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:06.139 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:06.140 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:06.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:06.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:06.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:06.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:06.141 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:10:06.141 [INFO] [ThreadPoolExecutor-2947_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:10:06.141 [INFO] [ThreadPoolExecutor-2947_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 17.209354877471924s
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3282839;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34803;2460997.04878554;15.17082556;1.3;_
2025-11-17T15:10:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3282839;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34803;2460997.04878554;15.17082556;1.3;_
2025-11-17T15:10:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:15.072 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3282839, teldec = -24.256251
2025-11-17T15:10:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3282839 -24.256251
2025-11-17T15:10:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3282839 -24.256251
2025-11-17T15:10:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3282839 -24.256251
2025-11-17T15:10:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3282839;-24.256251;50.10823;89.992659;50.08601;90.12017;18.34803;2460997.04878557;15.17082556;1.3;_21.3032720448538 -24.3638834690778
2025-11-17T15:10:15.073 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3032720448538     dec_j2k = -24.3638834690778
2025-11-17T15:10:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.10468394777409;171.162362694745;_
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.10468394777409;171.162362694745;_
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:10:15.076 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51923)
2025-11-17T15:10:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:15.077 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:15.084 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:10:15.084 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04878554, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468394777409, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992659, telescope_ra=21.3282839, telescope_dec=-24.256251, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.34803, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3032720448538, telescope_dec_j2k=-24.3638834690778, observability=1)
2025-11-17T15:10:15.905 [DEBUG] [Thread-68381 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:15.905 [DEBUG] [Thread-68381 (handle)] [server.py] [get_status()] Status age = 0.820582389831543s
2025-11-17T15:10:15.905 [DEBUG] [Thread-68381 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.820582389831543
2025-11-17T15:10:17.835 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:17.835 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Status age = 2.7512502670288086s
2025-11-17T15:10:17.835 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:17.835 [DEBUG] [Thread-68382 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:17.836 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:17.837 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 17;21.3290602;-24.25625;50.10823;89.992658;50.08601;90.12017;18.34881;2460997.04881756;15.17159972;1.3;_
2025-11-17T15:10:17.837 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response 17;21.3290602;-24.25625;50.10823;89.992658;50.08601;90.12017;18.34881;2460997.04881756;15.17159972;1.3;_
2025-11-17T15:10:17.837 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:17.837 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:17.837 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:17.838 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:17.838 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:17.838 [INFO] [Thread-68382 (handle)] [driver.py] [get_status()] Telra = 21.3290602, teldec = -24.25625
2025-11-17T15:10:17.838 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3290602 -24.25625
2025-11-17T15:10:17.838 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3290602 -24.25625
2025-11-17T15:10:17.838 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3290602 -24.25625
2025-11-17T15:10:17.839 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 17;21.3290602;-24.25625;50.10823;89.992658;50.08601;90.12017;18.34881;2460997.04881758;15.17159972;1.3;_21.3040489271052 -24.3639018064731
2025-11-17T15:10:17.839 [INFO] [Thread-68382 (handle)] [driver.py] [get_status()] ra_j2k = 21.3040489271052     dec_j2k = -24.3639018064731
2025-11-17T15:10:17.839 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:17.839 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 140;0.104683747214376;171.162346601491;_
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response 140;0.104683747214376;171.162346601491;_
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:17.840 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:17.841 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:17.842 [DEBUG] [Thread-68382 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:17.842 [DEBUG] [Thread-68382 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:17.842 [DEBUG] [Thread-68382 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58935)
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:17.847 [DEBUG] [Thread-68382 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:17.854 [DEBUG] [Thread-68382 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:10:17.854 [INFO] [Thread-68382 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04881756, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683747214376, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992658, telescope_ra=21.3290602, telescope_dec=-24.25625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.34881, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3040489271052, telescope_dec_j2k=-24.3639018064731, observability=1)
2025-11-17T15:10:27.014 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.014 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.014 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:27.014 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:27.014 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:10:27.015 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:27.016 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:27.017 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:27.017 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.017 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:27.017 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:27.018 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:10:27.019 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:27.020 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Park
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:10:27.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 29;21.3316233;-24.25625;50.10823;89.992658;50.08601;90.12017;18.35137;2460997.04892385;15.17415583;1.3;_Park Command Successful
2025-11-17T15:10:28.021 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:10:28.022 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:10:28.022 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:10:28.023 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:10:28.023 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:10:29.023 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:10:29.023 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:10:29.023 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:10:29.024 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:10:29.024 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:10:30.024 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:10:30.025 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:10:30.025 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:10:30.026 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:10:30.026 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:10:31.026 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:10:31.026 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:10:31.026 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:31.030 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:10:31.031 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:10:31.032 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:32.032 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:32.032 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:32.032 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:32.032 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:32.032 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:10:32.033 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:10:32.034 [DEBUG] [ThreadPoolExecutor-2946_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:32.034 [INFO] [ThreadPoolExecutor-2946_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Status age = 16.154462099075317s
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:34.009 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:34.010 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:34.010 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:34.010 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:34.010 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 17;21.3335497;-24.25625;50.10823;89.992658;50.08601;90.12017;18.3533;2460997.04900475;15.17607694;1.3;_
2025-11-17T15:10:34.010 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response 17;21.3335497;-24.25625;50.10823;89.992658;50.08601;90.12017;18.3533;2460997.04900475;15.17607694;1.3;_
2025-11-17T15:10:34.011 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:34.011 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:34.011 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:34.012 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:34.012 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:34.012 [INFO] [Thread-68383 (handle)] [driver.py] [get_status()] Telra = 21.3335497, teldec = -24.25625
2025-11-17T15:10:34.012 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3335497 -24.25625
2025-11-17T15:10:34.012 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3335497 -24.25625
2025-11-17T15:10:34.012 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3335497 -24.25625
2025-11-17T15:10:34.013 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 17;21.3335497;-24.25625;50.10823;89.992658;50.08601;90.12017;18.3533;2460997.04900478;15.17607694;1.3;_21.3085417959137 -24.3640135516356
2025-11-17T15:10:34.013 [INFO] [Thread-68383 (handle)] [driver.py] [get_status()] ra_j2k = 21.3085417959137     dec_j2k = -24.3640135516356
2025-11-17T15:10:34.013 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:34.013 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:34.013 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 140;0.104683265871062;171.162357330327;_
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response 140;0.104683265871062;171.162357330327;_
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:34.014 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:34.015 [DEBUG] [Thread-68383 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:34.018 [DEBUG] [Thread-68383 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55075)
2025-11-17T15:10:34.019 [DEBUG] [Thread-68383 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:34.019 [DEBUG] [Thread-68383 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:34.019 [DEBUG] [Thread-68383 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:34.019 [DEBUG] [Thread-68383 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:34.019 [DEBUG] [Thread-68383 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:34.026 [DEBUG] [Thread-68383 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:34.026 [DEBUG] [Thread-68383 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:34.027 [DEBUG] [Thread-68383 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:10:34.027 [INFO] [Thread-68383 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04900475, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683265871062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992658, telescope_ra=21.3335497, telescope_dec=-24.25625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.3533, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3085417959137, telescope_dec_j2k=-24.3640135516356, observability=1)
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.841348171234131s
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:37.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:37.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:37.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:37.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:37.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:37.869 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:37.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:37.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:37.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:37.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3346351;-24.25625;50.10823;89.992658;50.08601;90.12017;18.35439;2460997.04904942;15.17715944;1.3;_
2025-11-17T15:10:37.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.3346351;-24.25625;50.10823;89.992658;50.08601;90.12017;18.35439;2460997.04904942;15.17715944;1.3;_
2025-11-17T15:10:37.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:37.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:37.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:37.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:37.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:37.872 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.3346351, teldec = -24.25625
2025-11-17T15:10:37.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.3346351 -24.25625
2025-11-17T15:10:37.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.3346351 -24.25625
2025-11-17T15:10:37.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3346351 -24.25625
2025-11-17T15:10:37.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3346351;-24.25625;50.10823;89.992658;50.08601;90.12017;18.35439;2460997.04904946;15.17715944;1.3;_21.3096280109596 -24.3640405454976
2025-11-17T15:10:37.873 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3096280109596     dec_j2k = -24.3640405454976
2025-11-17T15:10:37.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:37.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:37.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:37.873 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104683626878548;171.162362694745;_
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104683626878548;171.162362694745;_
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:37.874 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:37.875 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51749)
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:37.878 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:37.885 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:10:37.885 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04904942, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683626878548, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992658, telescope_ra=21.3346351, telescope_dec=-24.25625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.35439, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3096280109596, telescope_dec_j2k=-24.3640405454976, observability=1)
2025-11-17T15:10:37.885 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96780037879944 seconds ago
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 10.353513956069946s
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:48.239 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:48.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:48.240 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:48.240 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:48.240 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:48.240 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:48.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:48.241 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:48.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.337535;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35729;2460997.04916946;15.18005139;1.3;_
2025-11-17T15:10:48.242 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.337535;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35729;2460997.04916946;15.18005139;1.3;_
2025-11-17T15:10:48.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:48.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:48.242 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:48.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:48.243 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:48.243 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.337535, teldec = -24.25625
2025-11-17T15:10:48.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.337535 -24.25625
2025-11-17T15:10:48.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.337535 -24.25625
2025-11-17T15:10:48.243 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.337535 -24.25625
2025-11-17T15:10:48.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.337535;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35729;2460997.04916949;15.18005139;1.3;_21.3125300896689 -24.3641126236607
2025-11-17T15:10:48.244 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.3125300896689     dec_j2k = -24.3641126236607
2025-11-17T15:10:48.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:48.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:48.244 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104683506542719;171.162351965909;_
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104683506542719;171.162351965909;_
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:48.245 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:48.246 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34845)
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:48.249 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:48.257 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:10:48.257 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04916946, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683506542719, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992657, telescope_ra=21.337535, telescope_dec=-24.25625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.35729, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3125300896689, telescope_dec_j2k=-24.3641126236607, observability=1)
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Status age = 3.817523956298828s
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:10:52.075 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:10:52.076 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:10:52.077 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 17;21.3385918;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35834;2460997.04921385;15.18110528;1.3;_
2025-11-17T15:10:52.077 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response 17;21.3385918;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35834;2460997.04921385;15.18110528;1.3;_
2025-11-17T15:10:52.077 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:10:52.077 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:10:52.077 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:10:52.078 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:52.078 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:10:52.078 [INFO] [Thread-68384 (handle)] [driver.py] [get_status()] Telra = 21.3385918, teldec = -24.25625
2025-11-17T15:10:52.078 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3385918 -24.25625
2025-11-17T15:10:52.078 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3385918 -24.25625
2025-11-17T15:10:52.078 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3385918 -24.25625
2025-11-17T15:10:52.079 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 17;21.3385918;-24.25625;50.10823;89.992657;50.08601;90.12017;18.35834;2460997.04921388;15.18110528;1.3;_21.3135876840544 -24.3641388755495
2025-11-17T15:10:52.079 [INFO] [Thread-68384 (handle)] [driver.py] [get_status()] ra_j2k = 21.3135876840544     dec_j2k = -24.3641388755495
2025-11-17T15:10:52.079 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:10:52.079 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:10:52.080 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 140;0.104683787326319;171.162341237072;_
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response 140;0.104683787326319;171.162341237072;_
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:52.081 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:10:52.082 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:10:52.083 [DEBUG] [Thread-68384 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:52.083 [DEBUG] [Thread-68384 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:10:52.083 [DEBUG] [Thread-68384 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:10:52.089 [DEBUG] [Thread-68384 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60235)
2025-11-17T15:10:52.089 [DEBUG] [Thread-68384 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:10:52.089 [DEBUG] [Thread-68384 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:10:52.089 [DEBUG] [Thread-68384 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:10:52.089 [DEBUG] [Thread-68384 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:10:52.090 [DEBUG] [Thread-68384 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:10:52.097 [DEBUG] [Thread-68384 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:10:52.097 [INFO] [Thread-68384 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.04921385, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683787326319, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992657, telescope_ra=21.3385918, telescope_dec=-24.25625, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.35834, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:10:06.139206', telescope_ra_j2k=21.3135876840544, telescope_dec_j2k=-24.3641388755495, observability=1)
2025-11-17T15:10:53.000 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:10:53
2025-11-17T15:10:53.000 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:10:53.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.9033796787261963s
2025-11-17T15:10:53.001 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9033796787261963
2025-11-17T15:11:06.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:06.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:06.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:06.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:06.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:06.281 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:06.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:06.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:06.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:06.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:06.282 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:11:06.282 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:06.282 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:11:06.283 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:11:06.284 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:07.284 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:07.284 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:07.284 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:07.284 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:07.285 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:07.285 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:07.285 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:07.286 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:07.287 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:07.287 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:07.287 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:07.287 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:07.288 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:07.288 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:07.288 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:07.288 [DEBUG] [ThreadPoolExecutor-2948_0] [payload.py] [to_registers()] [0]
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35265)
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:07.291 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:07.298 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:07.298 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:11:07.299 [DEBUG] [ThreadPoolExecutor-2948_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:11:07.299 [DEBUG] [ThreadPoolExecutor-2948_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:11:07.299 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:07.299 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:07.299 [DEBUG] [ThreadPoolExecutor-2948_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:10.137 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:10.137 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Status age = 18.04017686843872s
2025-11-17T15:11:10.137 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:10.137 [DEBUG] [Thread-68385 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:10.138 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 17;21.3436333;-24.256249;50.10823;89.992657;50.08601;90.12017;18.36338;2460997.04942291;15.18613306;1.3;_
2025-11-17T15:11:10.139 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response 17;21.3436333;-24.256249;50.10823;89.992657;50.08601;90.12017;18.36338;2460997.04942291;15.18613306;1.3;_
2025-11-17T15:11:10.140 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:10.140 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:10.140 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:10.141 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:10.141 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:10.141 [INFO] [Thread-68385 (handle)] [driver.py] [get_status()] Telra = 21.3436333, teldec = -24.256249
2025-11-17T15:11:10.141 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3436333 -24.256249
2025-11-17T15:11:10.141 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3436333 -24.256249
2025-11-17T15:11:10.141 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3436333 -24.256249
2025-11-17T15:11:10.142 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 17;21.3436333;-24.256249;50.10823;89.992657;50.08601;90.12017;18.36338;2460997.04942294;15.18613306;1.3;_21.3186329768158 -24.36426299864
2025-11-17T15:11:10.142 [INFO] [Thread-68385 (handle)] [driver.py] [get_status()] ra_j2k = 21.3186329768158     dec_j2k = -24.36426299864
2025-11-17T15:11:10.142 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:10.142 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:10.142 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 140;0.104683586766605;171.162357330327;_
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response 140;0.104683586766605;171.162357330327;_
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:10.143 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:10.144 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:10.145 [DEBUG] [Thread-68385 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:10.145 [DEBUG] [Thread-68385 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:10.145 [DEBUG] [Thread-68385 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56747)
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:10.152 [DEBUG] [Thread-68385 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:10.160 [DEBUG] [Thread-68385 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:10.160 [INFO] [Thread-68385 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04942291, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683586766605, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992657, telescope_ra=21.3436333, telescope_dec=-24.256249, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.36338, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3186329768158, telescope_dec_j2k=-24.36426299864, observability=1)
2025-11-17T15:11:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.878106594085693s
2025-11-17T15:11:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3449959;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36475;2460997.04947964;15.18749194;1.3;_
2025-11-17T15:11:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3449959;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36475;2460997.04947964;15.18749194;1.3;_
2025-11-17T15:11:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:15.042 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3449959, teldec = -24.256249
2025-11-17T15:11:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3449959 -24.256249
2025-11-17T15:11:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3449959 -24.256249
2025-11-17T15:11:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3449959 -24.256249
2025-11-17T15:11:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3449959;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36475;2460997.04947966;15.18749194;1.3;_21.3199966027218 -24.3642967845121
2025-11-17T15:11:15.043 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3199966027218     dec_j2k = -24.3642967845121
2025-11-17T15:11:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104683426318834;171.162351965909;_
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104683426318834;171.162351965909;_
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36307)
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:15.048 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:15.055 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:15.055 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:15.055 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:15.056 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:15.056 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:15.056 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:15.056 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:15.056 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04947964, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683426318834, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992656, telescope_ra=21.3449959, telescope_dec=-24.256249, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.36475, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3199966027218, telescope_dec_j2k=-24.3642967845121, observability=1)
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Status age = 2.8431997299194336s
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:17.899 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:17.900 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:17.901 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 17;21.345782;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36553;2460997.04951274;15.18827583;1.3;_
2025-11-17T15:11:17.901 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response 17;21.345782;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36553;2460997.04951274;15.18827583;1.3;_
2025-11-17T15:11:17.901 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:17.901 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:17.901 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:17.902 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:17.902 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:17.902 [INFO] [Thread-68386 (handle)] [driver.py] [get_status()] Telra = 21.345782, teldec = -24.256249
2025-11-17T15:11:17.902 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] UnCookCoordinates 21.345782 -24.256249
2025-11-17T15:11:17.902 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.345782 -24.256249
2025-11-17T15:11:17.902 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.345782 -24.256249
2025-11-17T15:11:17.903 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 17;21.345782;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36553;2460997.04951277;15.18827583;1.3;_21.3207832947429 -24.3643162697907
2025-11-17T15:11:17.903 [INFO] [Thread-68386 (handle)] [driver.py] [get_status()] ra_j2k = 21.3207832947429     dec_j2k = -24.3643162697907
2025-11-17T15:11:17.903 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:17.903 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:17.903 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 140;0.104683506542719;171.162357330327;_
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response 140;0.104683506542719;171.162357330327;_
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:17.904 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:17.905 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:17.906 [DEBUG] [Thread-68386 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:17.906 [DEBUG] [Thread-68386 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:17.906 [DEBUG] [Thread-68386 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36677)
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:17.913 [DEBUG] [Thread-68386 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:17.920 [DEBUG] [Thread-68386 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:17.920 [DEBUG] [Thread-68386 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:17.921 [DEBUG] [Thread-68386 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:17.921 [INFO] [Thread-68386 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04951274, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683506542719, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992656, telescope_ra=21.345782, telescope_dec=-24.256249, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.36553, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3207832947429, telescope_dec_j2k=-24.3643162697907, observability=1)
2025-11-17T15:11:28.258 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:28.258 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Status age = 10.337502479553223s
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:28.259 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 17;21.3486818;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36843;2460997.04963264;15.19116778;1.3;_
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response 17;21.3486818;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36843;2460997.04963264;15.19116778;1.3;_
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:28.260 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:28.261 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:28.261 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:28.261 [INFO] [Thread-68387 (handle)] [driver.py] [get_status()] Telra = 21.3486818, teldec = -24.256249
2025-11-17T15:11:28.261 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3486818 -24.256249
2025-11-17T15:11:28.261 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3486818 -24.256249
2025-11-17T15:11:28.261 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3486818 -24.256249
2025-11-17T15:11:28.262 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 17;21.3486818;-24.256249;50.10823;89.992656;50.08601;90.12017;18.36843;2460997.04963266;15.19116778;1.3;_21.3236852796523 -24.3643881087565
2025-11-17T15:11:28.262 [INFO] [Thread-68387 (handle)] [driver.py] [get_status()] ra_j2k = 21.3236852796523     dec_j2k = -24.3643881087565
2025-11-17T15:11:28.262 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:28.262 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:28.262 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 140;0.104683265871062;171.162362694745;_
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response 140;0.104683265871062;171.162362694745;_
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:28.263 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:28.264 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:28.265 [DEBUG] [Thread-68387 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:28.265 [DEBUG] [Thread-68387 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:28.266 [DEBUG] [Thread-68387 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:28.270 [DEBUG] [Thread-68387 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52873)
2025-11-17T15:11:28.271 [DEBUG] [Thread-68387 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:28.271 [DEBUG] [Thread-68387 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:28.271 [DEBUG] [Thread-68387 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:28.271 [DEBUG] [Thread-68387 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:28.271 [DEBUG] [Thread-68387 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:28.278 [DEBUG] [Thread-68387 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:28.278 [INFO] [Thread-68387 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04963264, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104683265871062, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992656, telescope_ra=21.3486818, telescope_dec=-24.256249, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.36843, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3236852796523, telescope_dec_j2k=-24.3643881087565, observability=1)
2025-11-17T15:11:32.299 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:32.299 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:32.299 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:32.299 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:32.299 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:32.300 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:32.301 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:32.301 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:32.301 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:32.301 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:32.301 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:32.302 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:32.302 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:11:32.302 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:11:32.302 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:11:32.302 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:37.945 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:11:37.945 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.66730546951294s
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:37.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:37.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.35138;-24.256249;50.10823;89.992656;50.08601;90.12017;18.37113;2460997.04974476;15.19385861;1.3;_
2025-11-17T15:11:37.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.35138;-24.256249;50.10823;89.992656;50.08601;90.12017;18.37113;2460997.04974476;15.19385861;1.3;_
2025-11-17T15:11:37.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:37.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:37.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:37.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:37.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:37.949 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.35138, teldec = -24.256249
2025-11-17T15:11:37.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.35138 -24.256249
2025-11-17T15:11:37.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.35138 -24.256249
2025-11-17T15:11:37.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.35138 -24.256249
2025-11-17T15:11:37.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.35138;-24.256249;50.10823;89.992656;50.08601;90.12017;18.37113;2460997.04974479;15.19385861;1.3;_21.3263855141258 -24.3644548979351
2025-11-17T15:11:37.950 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3263855141258     dec_j2k = -24.3644548979351
2025-11-17T15:11:37.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:37.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:37.950 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104682543856092;171.162357330327;_
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104682543856092;171.162357330327;_
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:37.951 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:37.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:37.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:37.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:37.952 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36133)
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:37.956 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:37.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:37.963 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:37.963 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:37.964 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:11:37.964 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04974476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682543856092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992656, telescope_ra=21.35138, telescope_dec=-24.256249, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.37113, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3263855141258, telescope_dec_j2k=-24.3644548979351, observability=1)
2025-11-17T15:11:37.964 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96363162994385 seconds ago
2025-11-17T15:11:46.335 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Status age = 8.371602773666382s
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:46.336 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:46.337 [DEBUG] [Thread-68388 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:46.337 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:46.337 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:46.337 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:46.337 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:46.338 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 17;21.3536958;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37345;2460997.04984186;15.19616806;1.3;_
2025-11-17T15:11:46.338 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response 17;21.3536958;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37345;2460997.04984186;15.19616806;1.3;_
2025-11-17T15:11:46.338 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:46.338 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:46.338 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:46.339 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:46.339 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:46.339 [INFO] [Thread-68388 (handle)] [driver.py] [get_status()] Telra = 21.3536958, teldec = -24.256248
2025-11-17T15:11:46.339 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3536958 -24.256248
2025-11-17T15:11:46.339 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3536958 -24.256248
2025-11-17T15:11:46.339 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3536958 -24.256248
2025-11-17T15:11:46.340 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 17;21.3536958;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37345;2460997.0498419;15.19616806;1.3;_21.3287030615219 -24.3645111789649
2025-11-17T15:11:46.340 [INFO] [Thread-68388 (handle)] [driver.py] [get_status()] ra_j2k = 21.3287030615219     dec_j2k = -24.3645111789649
2025-11-17T15:11:46.340 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:46.340 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:46.340 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 140;0.104682784527749;171.162362694745;_
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response 140;0.104682784527749;171.162362694745;_
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:46.341 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:46.342 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:46.343 [DEBUG] [Thread-68388 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:46.343 [DEBUG] [Thread-68388 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:46.343 [DEBUG] [Thread-68388 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:46.349 [DEBUG] [Thread-68388 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39283)
2025-11-17T15:11:46.350 [DEBUG] [Thread-68388 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:46.350 [DEBUG] [Thread-68388 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:46.350 [DEBUG] [Thread-68388 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:46.350 [DEBUG] [Thread-68388 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:46.350 [DEBUG] [Thread-68388 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:46.357 [DEBUG] [Thread-68388 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:46.358 [INFO] [Thread-68388 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04984186, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682784527749, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992655, telescope_ra=21.3536958, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.37345, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3287030615219, telescope_dec_j2k=-24.3645111789649, observability=1)
2025-11-17T15:11:47.345 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:47.345 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.9877777099609375s
2025-11-17T15:11:47.345 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9877777099609375
2025-11-17T15:11:53.061 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:11:53
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.703630208969116s
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:11:53.061 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:11:53.062 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:11:53.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3555907;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37534;2460997.04991971;15.19805778;1.3;_
2025-11-17T15:11:53.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.3555907;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37534;2460997.04991971;15.19805778;1.3;_
2025-11-17T15:11:53.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:11:53.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:11:53.063 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:11:53.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:53.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:11:53.064 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.3555907, teldec = -24.256248
2025-11-17T15:11:53.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3555907 -24.256248
2025-11-17T15:11:53.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3555907 -24.256248
2025-11-17T15:11:53.064 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3555907 -24.256248
2025-11-17T15:11:53.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3555907;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37534;2460997.04991973;15.19805778;1.3;_21.33059939199 -24.3645580197073
2025-11-17T15:11:53.065 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.33059939199     dec_j2k = -24.3645580197073
2025-11-17T15:11:53.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:11:53.065 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:11:53.066 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104682303184435;171.162351965909;_
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104682303184435;171.162351965909;_
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:11:53.067 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:11:53.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:53.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:11:53.068 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37023)
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:11:53.072 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:11:53.079 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:11:53.080 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:11:53.080 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.04991971, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682303184435, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992655, telescope_ra=21.3555907, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.37534, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.33059939199, telescope_dec_j2k=-24.3645580197073, observability=1)
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Status age = 11.357715845108032s
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:04.438 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:04.439 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:04.439 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:04.439 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 17;21.3587373;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37849;2460997.05005138;15.20119583;1.3;_
2025-11-17T15:12:04.439 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response 17;21.3587373;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37849;2460997.05005138;15.20119583;1.3;_
2025-11-17T15:12:04.439 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:04.440 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:04.440 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:04.440 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:04.441 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:04.441 [INFO] [Thread-68389 (handle)] [driver.py] [get_status()] Telra = 21.3587373, teldec = -24.256248
2025-11-17T15:12:04.441 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3587373 -24.256248
2025-11-17T15:12:04.441 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3587373 -24.256248
2025-11-17T15:12:04.441 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3587373 -24.256248
2025-11-17T15:12:04.442 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 17;21.3587373;-24.256248;50.10823;89.992655;50.08601;90.12017;18.37849;2460997.05005141;15.20119583;1.3;_21.3337483689056 -24.3646357434109
2025-11-17T15:12:04.442 [INFO] [Thread-68389 (handle)] [driver.py] [get_status()] ra_j2k = 21.3337483689056     dec_j2k = -24.3646357434109
2025-11-17T15:12:04.442 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:04.442 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:04.442 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 140;0.104682062512778;171.162351965909;_
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response 140;0.104682062512778;171.162351965909;_
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:04.443 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:04.444 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:04.445 [DEBUG] [Thread-68389 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:04.445 [DEBUG] [Thread-68389 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:04.445 [DEBUG] [Thread-68389 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55623)
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:04.451 [DEBUG] [Thread-68389 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:04.458 [DEBUG] [Thread-68389 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:04.459 [DEBUG] [Thread-68389 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:04.459 [DEBUG] [Thread-68389 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:04.459 [INFO] [Thread-68389 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05005138, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682062512778, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992655, telescope_ra=21.3587373, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.37849, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:11:06.279676', telescope_ra_j2k=21.3337483689056, telescope_dec_j2k=-24.3646357434109, observability=1)
2025-11-17T15:12:06.422 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:06.422 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:06.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:06.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:06.423 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:06.424 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:06.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:06.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:06.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:06.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:06.425 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:12:06.425 [INFO] [ThreadPoolExecutor-2949_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:12:06.425 [INFO] [ThreadPoolExecutor-2949_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 10.585319757461548s
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3616879;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38144;2460997.05017414;15.20413833;1.3;_
2025-11-17T15:12:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3616879;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38144;2460997.05017414;15.20413833;1.3;_
2025-11-17T15:12:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:15.047 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3616879, teldec = -24.256248
2025-11-17T15:12:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3616879 -24.256248
2025-11-17T15:12:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3616879 -24.256248
2025-11-17T15:12:15.047 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3616879 -24.256248
2025-11-17T15:12:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3616879;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38144;2460997.05017417;15.20413833;1.3;_21.3367011995029 -24.3647085596135
2025-11-17T15:12:15.048 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3367011995029     dec_j2k = -24.3647085596135
2025-11-17T15:12:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:15.048 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104682543856092;171.162351965909;_
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104682543856092;171.162351965909;_
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:15.049 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:15.050 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:15.051 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44003)
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:15.057 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:15.064 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:15.064 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:15.065 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:15.065 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05017414, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682543856092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992654, telescope_ra=21.3616879, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.38144, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3367011995029, telescope_dec_j2k=-24.3647085596135, observability=1)
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Status age = 2.890094757080078s
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:17.955 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:17.956 [DEBUG] [Thread-68390 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:17.956 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:17.956 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:17.956 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:17.956 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:17.957 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 17;21.3625007;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38228;2460997.05020784;15.20497667;1.3;_
2025-11-17T15:12:17.957 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response 17;21.3625007;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38228;2460997.05020784;15.20497667;1.3;_
2025-11-17T15:12:17.957 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:17.957 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:17.957 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:17.958 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:17.958 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:17.958 [INFO] [Thread-68390 (handle)] [driver.py] [get_status()] Telra = 21.3625007, teldec = -24.256248
2025-11-17T15:12:17.958 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3625007 -24.256248
2025-11-17T15:12:17.958 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3625007 -24.256248
2025-11-17T15:12:17.958 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3625007 -24.256248
2025-11-17T15:12:17.959 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 17;21.3625285;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38228;2460997.05020786;15.20497667;1.3;_21.3375146142596 -24.3647286069983
2025-11-17T15:12:17.959 [INFO] [Thread-68390 (handle)] [driver.py] [get_status()] ra_j2k = 21.3375146142596     dec_j2k = -24.3647286069983
2025-11-17T15:12:17.959 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:17.959 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:17.959 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 140;0.104682543856092;171.162357330327;_
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response 140;0.104682543856092;171.162357330327;_
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:17.960 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:17.961 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:17.962 [DEBUG] [Thread-68390 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:17.962 [DEBUG] [Thread-68390 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:17.962 [DEBUG] [Thread-68390 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33925)
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:17.968 [DEBUG] [Thread-68390 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:17.976 [DEBUG] [Thread-68390 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:17.976 [INFO] [Thread-68390 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05020784, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104682543856092, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992654, telescope_ra=21.3625007, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.38228, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3375146142596, telescope_dec_j2k=-24.3647286069983, observability=1)
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Status age = 4.531120538711548s
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:22.507 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:22.508 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:22.509 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 17;21.3637791;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38353;2460997.05026052;15.20622389;1.3;_
2025-11-17T15:12:22.509 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response 17;21.3637791;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38353;2460997.05026052;15.20622389;1.3;_
2025-11-17T15:12:22.509 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:22.509 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:22.509 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:22.510 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:22.510 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:22.510 [INFO] [Thread-68391 (handle)] [driver.py] [get_status()] Telra = 21.3637791, teldec = -24.256248
2025-11-17T15:12:22.510 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3637791 -24.256248
2025-11-17T15:12:22.510 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3637791 -24.256248
2025-11-17T15:12:22.510 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3637791 -24.256248
2025-11-17T15:12:22.511 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 17;21.3637791;-24.256248;50.10823;89.992654;50.08601;90.12017;18.38353;2460997.05026054;15.20622389;1.3;_21.3387939814282 -24.364760128383
2025-11-17T15:12:22.511 [INFO] [Thread-68391 (handle)] [driver.py] [get_status()] ra_j2k = 21.3387939814282     dec_j2k = -24.364760128383
2025-11-17T15:12:22.511 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:22.511 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:22.511 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 140;0.104681741617236;171.162362694745;_
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response 140;0.104681741617236;171.162362694745;_
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:22.512 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:22.513 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:22.514 [DEBUG] [Thread-68391 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:22.514 [DEBUG] [Thread-68391 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:22.514 [DEBUG] [Thread-68391 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47745)
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:22.515 [DEBUG] [Thread-68391 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:22.522 [DEBUG] [Thread-68391 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:22.523 [INFO] [Thread-68391 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05026052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681741617236, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.10823, telescope_az=89.992654, telescope_ra=21.3637791, telescope_dec=-24.256248, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.38353, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3387939814282, telescope_dec_j2k=-24.364760128383, observability=1)
2025-11-17T15:12:27.303 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.303 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.303 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:27.303 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:27.303 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:12:27.304 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:27.305 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:27.306 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:12:27.307 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:27.308 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:27.309 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:27.309 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:27.309 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:27.309 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Park
2025-11-17T15:12:27.309 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:12:27.310 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:12:27.310 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 29;21.3651139;-24.256247;50.108229;89.992654;50.08601;90.12017;18.38486;2460997.05031609;15.207555;1.3;_Park Command Successful
2025-11-17T15:12:28.310 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:12:28.311 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:12:28.311 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:12:28.311 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:12:28.311 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:12:29.311 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:12:29.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:12:29.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:12:29.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:12:29.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:12:30.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:12:30.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:12:30.312 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:12:30.313 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:12:30.313 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:12:31.313 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:12:31.314 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:12:31.314 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:12:31.314 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:31.315 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:12:31.316 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:12:31.317 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:32.317 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:32.317 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:32.317 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:32.317 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:32.317 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:12:32.318 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:12:32.319 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:12:32.319 [DEBUG] [ThreadPoolExecutor-2948_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:32.319 [INFO] [ThreadPoolExecutor-2948_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 15.501721858978271s
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:38.024 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:38.025 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:38.026 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:38.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3681015;-24.256247;50.108229;89.992654;50.08601;90.12017;18.38785;2460997.05044013;15.21053444;1.3;_
2025-11-17T15:12:38.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.3681015;-24.256247;50.108229;89.992654;50.08601;90.12017;18.38785;2460997.05044013;15.21053444;1.3;_
2025-11-17T15:12:38.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:38.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:38.027 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:38.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:38.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:38.028 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.3681015, teldec = -24.256247
2025-11-17T15:12:38.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.3681015 -24.256247
2025-11-17T15:12:38.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.3681015 -24.256247
2025-11-17T15:12:38.028 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3681015 -24.256247
2025-11-17T15:12:38.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3681015;-24.256247;50.108229;89.992654;50.08601;90.12017;18.38785;2460997.05044015;15.21053444;1.3;_21.3431196539907 -24.3648656163606
2025-11-17T15:12:38.029 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3431196539907     dec_j2k = -24.3648656163606
2025-11-17T15:12:38.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:38.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:38.029 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10468166139335;171.162357330327;_
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10468166139335;171.162357330327;_
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:38.030 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:38.031 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:38.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:38.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:38.032 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54613)
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:38.034 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:38.041 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:38.042 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:38.042 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:12:38.042 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05044013, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10468166139335, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992654, telescope_ra=21.3681015, telescope_dec=-24.256247, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.38785, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3431196539907, telescope_dec_j2k=-24.3648656163606, observability=1)
2025-11-17T15:12:38.042 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.98088455200195 seconds ago
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Status age = 2.5234334468841553s
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:40.565 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:40.566 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:40.566 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:40.567 [DEBUG] [Thread-68392 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:40.567 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:40.567 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:40.567 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:40.567 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:40.568 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 17;21.3688201;-24.256247;50.108229;89.992653;50.08601;90.12017;18.38857;2460997.05046953;15.21125111;1.3;_
2025-11-17T15:12:40.568 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response 17;21.3688201;-24.256247;50.108229;89.992653;50.08601;90.12017;18.38857;2460997.05046953;15.21125111;1.3;_
2025-11-17T15:12:40.568 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:40.568 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:40.568 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:40.569 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:40.569 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:40.569 [INFO] [Thread-68392 (handle)] [driver.py] [get_status()] Telra = 21.3688201, teldec = -24.256247
2025-11-17T15:12:40.569 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3688201 -24.256247
2025-11-17T15:12:40.569 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3688201 -24.256247
2025-11-17T15:12:40.569 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3688201 -24.256247
2025-11-17T15:12:40.570 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 17;21.3688201;-24.256247;50.108229;89.992653;50.08601;90.12017;18.38857;2460997.05046956;15.21125111;1.3;_21.3438387983822 -24.3648833066533
2025-11-17T15:12:40.570 [INFO] [Thread-68392 (handle)] [driver.py] [get_status()] ra_j2k = 21.3438387983822     dec_j2k = -24.3648833066533
2025-11-17T15:12:40.570 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:40.570 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:40.570 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 140;0.104681982288893;171.162362694745;_
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response 140;0.104681982288893;171.162362694745;_
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:40.571 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:40.572 [DEBUG] [Thread-68392 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:40.575 [DEBUG] [Thread-68392 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42813)
2025-11-17T15:12:40.575 [DEBUG] [Thread-68392 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:40.576 [DEBUG] [Thread-68392 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:40.576 [DEBUG] [Thread-68392 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:40.576 [DEBUG] [Thread-68392 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:40.576 [DEBUG] [Thread-68392 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:40.584 [DEBUG] [Thread-68392 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:40.584 [INFO] [Thread-68392 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05046953, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681982288893, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992653, telescope_ra=21.3688201, telescope_dec=-24.256247, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.38857, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3438387983822, telescope_dec_j2k=-24.3648833066533, observability=1)
2025-11-17T15:12:46.427 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 5.84345269203186s
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:46.428 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:46.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3704395;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39019;2460997.05053737;15.21286611;1.3;_
2025-11-17T15:12:46.429 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.3704395;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39019;2460997.05053737;15.21286611;1.3;_
2025-11-17T15:12:46.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:46.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:46.429 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:46.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:46.430 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:46.430 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.3704395, teldec = -24.256247
2025-11-17T15:12:46.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3704395 -24.256247
2025-11-17T15:12:46.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3704395 -24.256247
2025-11-17T15:12:46.430 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3704395 -24.256247
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3704395;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39019;2460997.0505374;15.21286611;1.3;_21.3454594255599 -24.3649231586355
2025-11-17T15:12:46.431 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.3454594255599     dec_j2k = -24.3649231586355
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104681821841121;171.162351965909;_
2025-11-17T15:12:46.431 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104681821841121;171.162351965909;_
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:46.432 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:46.433 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46267)
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:46.438 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:46.445 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:46.445 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05053737, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681821841121, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992653, telescope_ra=21.3704395, telescope_dec=-24.256247, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39019, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3454594255599, telescope_dec_j2k=-24.3649231586355, observability=1)
2025-11-17T15:12:53.141 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:12:53
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.695855140686035s
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:53.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:53.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3723088;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39206;2460997.05061508;15.21473028;1.3;_
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.3723088;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39206;2460997.05061508;15.21473028;1.3;_
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:53.143 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:53.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:53.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:53.144 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.3723088, teldec = -24.256247
2025-11-17T15:12:53.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3723088 -24.256247
2025-11-17T15:12:53.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3723088 -24.256247
2025-11-17T15:12:53.144 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3723088 -24.256247
2025-11-17T15:12:53.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.3723088;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39206;2460997.0506151;15.21473028;1.3;_21.3473301427395 -24.3649691363942
2025-11-17T15:12:53.145 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.3473301427395     dec_j2k = -24.3649691363942
2025-11-17T15:12:53.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:53.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:53.145 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104681541057522;171.162362694745;_
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104681541057522;171.162362694745;_
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:53.146 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:53.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:53.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:53.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:53.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:53.147 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:53.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:53.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:12:53.148 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:12:53.153 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39007)
2025-11-17T15:12:53.153 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:53.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:53.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:53.154 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:53.154 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:53.161 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:53.162 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:53.162 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05061508, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681541057522, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992653, telescope_ra=21.3723088, telescope_dec=-24.256247, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39206, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3473301427395, telescope_dec_j2k=-24.3649691363942, observability=1)
2025-11-17T15:12:58.700 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:12:58.700 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Status age = 5.5388031005859375s
2025-11-17T15:12:58.700 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:12:58.701 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:12:58.702 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 17;21.3738686;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39362;2460997.05067942;15.21628583;1.3;_
2025-11-17T15:12:58.702 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response 17;21.3738686;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39362;2460997.05067942;15.21628583;1.3;_
2025-11-17T15:12:58.702 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:12:58.702 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:12:58.702 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:12:58.703 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:58.703 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:12:58.703 [INFO] [Thread-68393 (handle)] [driver.py] [get_status()] Telra = 21.3738686, teldec = -24.256247
2025-11-17T15:12:58.703 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3738686 -24.256247
2025-11-17T15:12:58.703 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3738686 -24.256247
2025-11-17T15:12:58.703 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3738686 -24.256247
2025-11-17T15:12:58.704 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 17;21.3738686;-24.256247;50.108229;89.992653;50.08601;90.12017;18.39362;2460997.05067944;15.21628583;1.3;_21.3488911257915 -24.3650074818919
2025-11-17T15:12:58.704 [INFO] [Thread-68393 (handle)] [driver.py] [get_status()] ra_j2k = 21.3488911257915     dec_j2k = -24.3650074818919
2025-11-17T15:12:58.704 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:12:58.704 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:12:58.704 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 140;0.104681180050036;171.162351965909;_
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response 140;0.104681180050036;171.162351965909;_
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:58.705 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:12:58.706 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:12:58.707 [DEBUG] [Thread-68393 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:58.707 [DEBUG] [Thread-68393 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:12:58.707 [DEBUG] [Thread-68393 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40443)
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:12:58.712 [DEBUG] [Thread-68393 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:12:58.719 [DEBUG] [Thread-68393 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:12:58.720 [DEBUG] [Thread-68393 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:12:58.720 [DEBUG] [Thread-68393 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:12:58.720 [INFO] [Thread-68393 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05067942, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681180050036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992653, telescope_ra=21.3738686, telescope_dec=-24.256247, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39362, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:12:06.422277', telescope_ra_j2k=21.3488911257915, telescope_dec_j2k=-24.3650074818919, observability=1)
2025-11-17T15:13:06.566 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:06.567 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:06.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:06.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:06.567 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:06.568 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:06.568 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:06.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:06.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:06.569 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:06.569 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:13:06.569 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:06.569 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:06.569 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:06.569 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:13:06.570 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:13:06.571 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:07.571 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:07.571 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:07.571 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:07.571 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:07.571 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:13:07.572 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:07.573 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:07.574 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:07.574 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:07.575 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:07.575 [DEBUG] [ThreadPoolExecutor-2950_0] [payload.py] [to_registers()] [0]
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37875)
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:07.579 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:07.586 [DEBUG] [ThreadPoolExecutor-2950_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 16.343361854553223s
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3784341;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39818;2460997.05086881;15.22083889;1.3;_
2025-11-17T15:13:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3784341;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39818;2460997.05086881;15.22083889;1.3;_
2025-11-17T15:13:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:15.066 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3784341, teldec = -24.256246
2025-11-17T15:13:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3784341 -24.256246
2025-11-17T15:13:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3784341 -24.256246
2025-11-17T15:13:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3784341 -24.256246
2025-11-17T15:13:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3784341;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39818;2460997.05086883;15.22083889;1.3;_21.3534600913804 -24.3651186152278
2025-11-17T15:13:15.067 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3534600913804     dec_j2k = -24.3651186152278
2025-11-17T15:13:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104681420721693;171.162368059163;_
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104681420721693;171.162368059163;_
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:13:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:13:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41411)
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:15.080 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:15.081 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:15.081 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05086881, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681420721693, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992652, telescope_ra=21.3784341, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39818, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3534600913804, telescope_dec_j2k=-24.3651186152278, observability=1)
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Status age = 1.6791012287139893s
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:16.760 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:16.761 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:16.762 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 17;21.3788854;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39864;2460997.05088845;15.22128889;1.3;_
2025-11-17T15:13:16.762 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response 17;21.3788854;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39864;2460997.05088845;15.22128889;1.3;_
2025-11-17T15:13:16.762 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:16.762 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:16.762 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:16.763 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:16.763 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:16.763 [INFO] [Thread-68394 (handle)] [driver.py] [get_status()] Telra = 21.3788854, teldec = -24.256246
2025-11-17T15:13:16.763 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3788854 -24.256246
2025-11-17T15:13:16.763 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3788854 -24.256246
2025-11-17T15:13:16.763 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3788854 -24.256246
2025-11-17T15:13:16.764 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 17;21.3788854;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39864;2460997.05088847;15.22128889;1.3;_21.3539117341588 -24.3651296912481
2025-11-17T15:13:16.764 [INFO] [Thread-68394 (handle)] [driver.py] [get_status()] ra_j2k = 21.3539117341588     dec_j2k = -24.3651296912481
2025-11-17T15:13:16.764 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:16.764 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:16.764 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 140;0.104681340497808;171.162351965909;_
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response 140;0.104681340497808;171.162351965909;_
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:16.765 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:16.766 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:16.767 [DEBUG] [Thread-68394 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:16.767 [DEBUG] [Thread-68394 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:16.767 [DEBUG] [Thread-68394 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33543)
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:16.771 [DEBUG] [Thread-68394 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:16.778 [DEBUG] [Thread-68394 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:16.778 [INFO] [Thread-68394 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05088845, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681340497808, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992652, telescope_ra=21.3788854, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39864, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3539117341588, telescope_dec_j2k=-24.3651296912481, observability=1)
2025-11-17T15:13:18.009 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:18.009 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Status age = 1.2310686111450195s
2025-11-17T15:13:18.009 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:18.009 [DEBUG] [Thread-68395 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:18.009 [DEBUG] [Thread-68395 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:18.010 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:18.010 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:18.010 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:18.011 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:18.012 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 17;21.3792422;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39899;2460997.05090292;15.22164472;1.3;_
2025-11-17T15:13:18.012 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response 17;21.3792422;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39899;2460997.05090292;15.22164472;1.3;_
2025-11-17T15:13:18.012 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:18.012 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:18.012 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:18.013 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:18.013 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:18.013 [INFO] [Thread-68395 (handle)] [driver.py] [get_status()] Telra = 21.3792422, teldec = -24.256246
2025-11-17T15:13:18.013 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3792422 -24.256246
2025-11-17T15:13:18.013 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3792422 -24.256246
2025-11-17T15:13:18.013 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3792422 -24.256246
2025-11-17T15:13:18.014 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 17;21.3792422;-24.256246;50.108229;89.992652;50.08601;90.12017;18.39899;2460997.05090294;15.22164472;1.3;_21.3542688051888 -24.3651384469394
2025-11-17T15:13:18.014 [INFO] [Thread-68395 (handle)] [driver.py] [get_status()] ra_j2k = 21.3542688051888     dec_j2k = -24.3651384469394
2025-11-17T15:13:18.014 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:18.014 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:18.014 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 140;0.104681180050036;171.162357330327;_
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response 140;0.104681180050036;171.162357330327;_
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:18.015 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:18.016 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:18.017 [DEBUG] [Thread-68395 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:18.017 [DEBUG] [Thread-68395 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:18.017 [DEBUG] [Thread-68395 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56581)
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:18.024 [DEBUG] [Thread-68395 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:18.031 [DEBUG] [Thread-68395 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:18.032 [INFO] [Thread-68395 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05090292, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681180050036, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992652, telescope_ra=21.3792422, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.39899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3542688051888, telescope_dec_j2k=-24.3651384469394, observability=1)
2025-11-17T15:13:32.587 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:32.587 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:32.587 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:32.587 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:32.587 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:32.588 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:13:32.589 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:13:32.590 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Status age = 16.78514575958252s
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:34.817 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:34.818 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 17;21.3839219;-24.256246;50.108229;89.992652;50.08601;90.12017;18.40367;2460997.05109743;15.22631167;1.3;_
2025-11-17T15:13:34.819 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response 17;21.3839219;-24.256246;50.108229;89.992652;50.08601;90.12017;18.40367;2460997.05109743;15.22631167;1.3;_
2025-11-17T15:13:34.819 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:34.819 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:34.819 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:34.820 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:34.820 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:34.820 [INFO] [Thread-68396 (handle)] [driver.py] [get_status()] Telra = 21.3839219, teldec = -24.256246
2025-11-17T15:13:34.820 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3839219 -24.256246
2025-11-17T15:13:34.820 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3839219 -24.256246
2025-11-17T15:13:34.820 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3839219 -24.256246
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 17;21.3839219;-24.256246;50.108229;89.992652;50.08601;90.12017;18.40367;2460997.05109747;15.22631167;1.3;_21.3589520622148 -24.3652531973265
2025-11-17T15:13:34.821 [INFO] [Thread-68396 (handle)] [driver.py] [get_status()] ra_j2k = 21.3589520622148     dec_j2k = -24.3652531973265
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 140;0.104680979490322;171.162368059163;_
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response 140;0.104680979490322;171.162368059163;_
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:34.821 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:34.822 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:34.823 [DEBUG] [Thread-68396 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:34.823 [DEBUG] [Thread-68396 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:34.823 [DEBUG] [Thread-68396 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:34.824 [DEBUG] [Thread-68396 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47253)
2025-11-17T15:13:34.824 [DEBUG] [Thread-68396 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:34.824 [DEBUG] [Thread-68396 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:34.824 [DEBUG] [Thread-68396 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:34.824 [DEBUG] [Thread-68396 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:34.825 [DEBUG] [Thread-68396 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:34.831 [DEBUG] [Thread-68396 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:34.831 [DEBUG] [Thread-68396 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:34.832 [DEBUG] [Thread-68396 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:34.832 [INFO] [Thread-68396 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05109743, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680979490322, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992652, telescope_ra=21.3839219, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.40367, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3589520622148, telescope_dec_j2k=-24.3652531973265, observability=1)
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.270094156265259s
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:38.102 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:38.103 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:38.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3848469;-24.256246;50.108229;89.992651;50.08601;90.12017;18.4046;2460997.05113547;15.22723417;1.3;_
2025-11-17T15:13:38.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.3848469;-24.256246;50.108229;89.992651;50.08601;90.12017;18.4046;2460997.05113547;15.22723417;1.3;_
2025-11-17T15:13:38.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:38.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:38.105 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:38.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:38.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:38.106 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.3848469, teldec = -24.256246
2025-11-17T15:13:38.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.3848469 -24.256246
2025-11-17T15:13:38.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.3848469 -24.256246
2025-11-17T15:13:38.106 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3848469 -24.256246
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.3848469;-24.256246;50.108229;89.992651;50.08601;90.12017;18.4046;2460997.0511355;15.22723417;1.3;_21.3598777658022 -24.3652758599823
2025-11-17T15:13:38.107 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3598777658022     dec_j2k = -24.3652758599823
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104680979490322;171.162362694745;_
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104680979490322;171.162362694745;_
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:38.107 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:38.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:38.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:38.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:38.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:38.108 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:38.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:38.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:38.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:38.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:38.109 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53955)
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:38.112 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:38.119 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:38.120 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:38.120 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:38.120 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:13:38.120 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05113547, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680979490322, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992651, telescope_ra=21.3848469, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.4046, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3598777658022, telescope_dec_j2k=-24.3652758599823, observability=1)
2025-11-17T15:13:38.120 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.97889494895935 seconds ago
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 7.418014287948608s
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:45.538 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:45.539 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:45.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3869098;-24.256246;50.108229;89.992651;50.08601;90.12017;18.40666;2460997.05122153;15.22929139;1.3;_
2025-11-17T15:13:45.540 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.3869098;-24.256246;50.108229;89.992651;50.08601;90.12017;18.40666;2460997.05122153;15.22929139;1.3;_
2025-11-17T15:13:45.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:45.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:45.540 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:45.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:45.541 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:45.541 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.3869098, teldec = -24.256246
2025-11-17T15:13:45.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3869098 -24.256246
2025-11-17T15:13:45.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3869098 -24.256246
2025-11-17T15:13:45.541 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3869098 -24.256246
2025-11-17T15:13:45.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.3869098;-24.256246;50.108229;89.992651;50.08601;90.12017;18.40666;2460997.05122155;15.22929139;1.3;_21.3619422355077 -24.3653263785832
2025-11-17T15:13:45.542 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.3619422355077     dec_j2k = -24.3653263785832
2025-11-17T15:13:45.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:45.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:45.542 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104681139938094;171.162362694745;_
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104681139938094;171.162362694745;_
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:45.543 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:45.544 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:45.545 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:45.545 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:45.545 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33919)
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:45.552 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:45.559 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:45.560 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05122153, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104681139938094, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992651, telescope_ra=21.3869098, telescope_dec=-24.256246, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.40666, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3619422355077, telescope_dec_j2k=-24.3653263785832, observability=1)
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Status age = 7.374775171279907s
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:13:52.934 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:13:52.935 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 17;21.3889724;-24.256245;50.108229;89.992651;50.08601;90.12017;18.40872;2460997.05130713;15.23134833;1.3;_
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response 17;21.3889724;-24.256245;50.108229;89.992651;50.08601;90.12017;18.40872;2460997.05130713;15.23134833;1.3;_
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:13:52.936 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:13:52.937 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:52.937 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:13:52.937 [INFO] [Thread-68397 (handle)] [driver.py] [get_status()] Telra = 21.3889724, teldec = -24.256245
2025-11-17T15:13:52.938 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3889724 -24.256245
2025-11-17T15:13:52.938 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3889724 -24.256245
2025-11-17T15:13:52.938 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3889724 -24.256245
2025-11-17T15:13:52.939 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 17;21.3889724;-24.256245;50.108229;89.992651;50.08601;90.12017;18.40872;2460997.05130715;15.23134833;1.3;_21.3640064059317 -24.3653758584532
2025-11-17T15:13:52.939 [INFO] [Thread-68397 (handle)] [driver.py] [get_status()] ra_j2k = 21.3640064059317     dec_j2k = -24.3653758584532
2025-11-17T15:13:52.939 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:13:52.939 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:13:52.939 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:13:52.939 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 140;0.104680979490322;171.162357330327;_
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response 140;0.104680979490322;171.162357330327;_
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:52.940 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:52.941 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:52.941 [DEBUG] [Thread-68397 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:52.941 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:13:52.941 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:13:52.941 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:13:52.942 [DEBUG] [Thread-68397 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:52.942 [DEBUG] [Thread-68397 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:13:52.942 [DEBUG] [Thread-68397 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35297)
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:13:52.946 [DEBUG] [Thread-68397 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:13:52.954 [DEBUG] [Thread-68397 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:13:52.954 [INFO] [Thread-68397 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05130713, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680979490322, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992651, telescope_ra=21.3889724, telescope_dec=-24.256245, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.40872, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:13:06.566468', telescope_ra_j2k=21.3640064059317, telescope_dec_j2k=-24.3653758584532, observability=1)
2025-11-17T15:13:53.222 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:13:53
2025-11-17T15:13:53.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:13:53.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 0.2679257392883301s
2025-11-17T15:13:53.222 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.2679257392883301
2025-11-17T15:14:06.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:06.709 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:06.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:06.709 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:06.710 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:06.710 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:06.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:06.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:06.711 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:06.711 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:14:06.711 [INFO] [ThreadPoolExecutor-2951_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:14:06.712 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Status age = 18.037561893463135s
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:10.992 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:10.993 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:10.994 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 17;21.3939872;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41374;2460997.05151613;15.23634944;1.3;_
2025-11-17T15:14:10.994 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response 17;21.3939872;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41374;2460997.05151613;15.23634944;1.3;_
2025-11-17T15:14:10.994 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:10.994 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:10.994 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:10.995 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:10.995 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:10.995 [INFO] [Thread-68398 (handle)] [driver.py] [get_status()] Telra = 21.3939872, teldec = -24.256245
2025-11-17T15:14:10.995 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3939872 -24.256245
2025-11-17T15:14:10.996 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3939872 -24.256245
2025-11-17T15:14:10.996 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3939872 -24.256245
2025-11-17T15:14:10.996 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 17;21.3939872;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41374;2460997.05151616;15.23634944;1.3;_21.3690250271862 -24.3654984585276
2025-11-17T15:14:10.997 [INFO] [Thread-68398 (handle)] [driver.py] [get_status()] ra_j2k = 21.3690250271862     dec_j2k = -24.3654984585276
2025-11-17T15:14:10.997 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:10.997 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:10.997 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:10.997 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 140;0.104680698706723;171.162357330327;_
2025-11-17T15:14:10.997 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response 140;0.104680698706723;171.162357330327;_
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:10.998 [DEBUG] [Thread-68398 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:10.999 [DEBUG] [Thread-68398 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57643)
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:11.004 [DEBUG] [Thread-68398 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:11.011 [DEBUG] [Thread-68398 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:11.012 [DEBUG] [Thread-68398 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:11.012 [INFO] [Thread-68398 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05151613, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680698706723, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.99265, telescope_ra=21.3939872, telescope_dec=-24.256245, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.41374, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3690250271862, telescope_dec_j2k=-24.3654984585276, observability=1)
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 4.055179834365845s
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3951286;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41488;2460997.05156329;15.23748778;1.3;_
2025-11-17T15:14:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.3951286;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41488;2460997.05156329;15.23748778;1.3;_
2025-11-17T15:14:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:15.070 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.3951286, teldec = -24.256245
2025-11-17T15:14:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3951286 -24.256245
2025-11-17T15:14:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3951286 -24.256245
2025-11-17T15:14:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3951286 -24.256245
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.3951286;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41488;2460997.05156332;15.23748778;1.3;_21.3701672976005 -24.3655263370428
2025-11-17T15:14:15.071 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3701672976005     dec_j2k = -24.3655263370428
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104680337699238;171.162351965909;_
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104680337699238;171.162351965909;_
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44443)
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:15.083 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05156329, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680337699238, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.99265, telescope_ra=21.3951286, telescope_dec=-24.256245, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.41488, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3701672976005, telescope_dec_j2k=-24.3655263370428, observability=1)
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Status age = 2.9814064502716064s
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:18.065 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:18.066 [DEBUG] [Thread-68399 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:18.066 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:18.066 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:18.066 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:18.066 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:18.067 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 17;21.3959589;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41571;2460997.051598;15.23831583;1.3;_
2025-11-17T15:14:18.067 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response 17;21.3959589;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41571;2460997.051598;15.23831583;1.3;_
2025-11-17T15:14:18.067 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:18.067 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:18.067 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:18.068 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:18.068 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:18.068 [INFO] [Thread-68399 (handle)] [driver.py] [get_status()] Telra = 21.3959589, teldec = -24.256245
2025-11-17T15:14:18.068 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] UnCookCoordinates 21.3959589 -24.256245
2025-11-17T15:14:18.068 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.3959589 -24.256245
2025-11-17T15:14:18.068 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.3959589 -24.256245
2025-11-17T15:14:18.069 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 17;21.3959589;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41571;2460997.05159802;15.23831583;1.3;_21.3709982309313 -24.3655466109212
2025-11-17T15:14:18.069 [INFO] [Thread-68399 (handle)] [driver.py] [get_status()] ra_j2k = 21.3709982309313     dec_j2k = -24.3655466109212
2025-11-17T15:14:18.069 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:18.069 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:18.069 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 140;0.104680899266437;171.162357330327;_
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response 140;0.104680899266437;171.162357330327;_
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:18.070 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:18.071 [DEBUG] [Thread-68399 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60721)
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:18.076 [DEBUG] [Thread-68399 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:18.084 [DEBUG] [Thread-68399 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:18.084 [DEBUG] [Thread-68399 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:18.084 [DEBUG] [Thread-68399 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:18.084 [DEBUG] [Thread-68399 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:18.084 [DEBUG] [Thread-68399 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:18.085 [DEBUG] [Thread-68399 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:18.085 [DEBUG] [Thread-68399 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:18.085 [DEBUG] [Thread-68399 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:18.085 [DEBUG] [Thread-68399 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:18.085 [INFO] [Thread-68399 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.051598, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680899266437, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.99265, telescope_ra=21.3959589, telescope_dec=-24.256245, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.41571, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3709982309313, telescope_dec_j2k=-24.3655466109212, observability=1)
2025-11-17T15:14:27.590 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.590 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.590 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:27.590 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:27.590 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:14:27.592 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:27.593 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:27.594 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:14:27.595 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:27.596 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Park
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:14:27.597 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:14:27.598 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 29;21.398634;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41838;2460997.05170831;15.24098361;1.3;_Park Command Successful
2025-11-17T15:14:28.598 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:14:28.598 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:14:28.598 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:14:28.599 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:14:28.599 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Status age = 10.974406957626343s
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:29.059 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:29.060 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:29.061 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 17;21.399027;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41878;2460997.05172524;15.24137556;1.3;_
2025-11-17T15:14:29.061 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response 17;21.399027;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41878;2460997.05172524;15.24137556;1.3;_
2025-11-17T15:14:29.061 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:29.061 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:29.061 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:29.062 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:29.062 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:29.062 [INFO] [Thread-68400 (handle)] [driver.py] [get_status()] Telra = 21.399027, teldec = -24.256245
2025-11-17T15:14:29.062 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] UnCookCoordinates 21.399027 -24.256245
2025-11-17T15:14:29.062 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.399027 -24.256245
2025-11-17T15:14:29.062 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.399027 -24.256245
2025-11-17T15:14:29.063 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 17;21.399027;-24.256245;50.108229;89.99265;50.08601;90.12017;18.41878;2460997.05172527;15.24137556;1.3;_21.3740686723404 -24.3656214820052
2025-11-17T15:14:29.063 [INFO] [Thread-68400 (handle)] [driver.py] [get_status()] ra_j2k = 21.3740686723404     dec_j2k = -24.3656214820052
2025-11-17T15:14:29.063 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:29.063 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:29.063 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:29.064 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 140;0.104680337699238;171.162351965909;_
2025-11-17T15:14:29.064 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response 140;0.104680337699238;171.162351965909;_
2025-11-17T15:14:29.064 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:29.064 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:29.064 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:29.065 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:29.066 [DEBUG] [Thread-68400 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:29.066 [DEBUG] [Thread-68400 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:29.066 [DEBUG] [Thread-68400 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:29.067 [DEBUG] [Thread-68400 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43809)
2025-11-17T15:14:29.067 [DEBUG] [Thread-68400 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:29.067 [DEBUG] [Thread-68400 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:29.068 [DEBUG] [Thread-68400 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:29.068 [DEBUG] [Thread-68400 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:29.068 [DEBUG] [Thread-68400 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:29.075 [DEBUG] [Thread-68400 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:29.075 [INFO] [Thread-68400 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05172524, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680337699238, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.99265, telescope_ra=21.399027, telescope_dec=-24.256245, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.41878, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3740686723404, telescope_dec_j2k=-24.3656214820052, observability=1)
2025-11-17T15:14:29.599 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:14:29.599 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:14:29.599 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:14:29.600 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:14:29.600 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:14:30.600 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:14:30.600 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:14:30.601 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:14:30.601 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:14:30.601 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:14:31.601 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:14:31.601 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:31.602 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:14:31.603 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:14:31.604 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:32.604 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:32.604 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:32.604 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:32.604 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:14:32.605 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:14:32.606 [DEBUG] [ThreadPoolExecutor-2950_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:32.606 [INFO] [ThreadPoolExecutor-2950_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 9.104605436325073s
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:38.180 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4015614;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42131;2460997.0518308;15.24390306;1.3;_
2025-11-17T15:14:38.181 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4015614;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42131;2460997.0518308;15.24390306;1.3;_
2025-11-17T15:14:38.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:38.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:38.182 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:38.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:38.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:38.183 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4015614, teldec = -24.256244
2025-11-17T15:14:38.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4015614 -24.256244
2025-11-17T15:14:38.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4015614 -24.256244
2025-11-17T15:14:38.183 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4015614 -24.256244
2025-11-17T15:14:38.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4015614;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42131;2460997.05183083;15.24390306;1.3;_21.3766050079458 -24.3656822765885
2025-11-17T15:14:38.184 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3766050079458     dec_j2k = -24.3656822765885
2025-11-17T15:14:38.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:38.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:38.184 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104680217363409;171.162351965909;_
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104680217363409;171.162351965909;_
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:38.185 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:38.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:38.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:38.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:38.186 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:38.189 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57783)
2025-11-17T15:14:38.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:38.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:38.189 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:38.189 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:38.190 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:38.196 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:38.197 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:14:38.197 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0518308, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680217363409, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992649, telescope_ra=21.4015614, telescope_dec=-24.256244, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.42131, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3766050079458, telescope_dec_j2k=-24.3656822765885, observability=1)
2025-11-17T15:14:38.197 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.97530245780945 seconds ago
2025-11-17T15:14:44.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:44.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 6.4564337730407715s
2025-11-17T15:14:44.653 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:44.654 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:44.654 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:44.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:44.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:44.654 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:44.655 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:44.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4033761;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42313;2460997.05190574;15.24571278;1.3;_
2025-11-17T15:14:44.656 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4033761;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42313;2460997.05190574;15.24571278;1.3;_
2025-11-17T15:14:44.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:44.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:44.656 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:44.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:44.657 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:44.657 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4033761, teldec = -24.256244
2025-11-17T15:14:44.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4033761 -24.256244
2025-11-17T15:14:44.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4033761 -24.256244
2025-11-17T15:14:44.657 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4033761 -24.256244
2025-11-17T15:14:44.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4033761;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42313;2460997.05190576;15.24571278;1.3;_21.3784210945529 -24.3657264938397
2025-11-17T15:14:44.658 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.3784210945529     dec_j2k = -24.3657264938397
2025-11-17T15:14:44.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:44.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:44.658 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104680458035066;171.162351965909;_
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104680458035066;171.162351965909;_
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:44.659 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:44.660 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:44.660 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:44.660 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:44.665 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58423)
2025-11-17T15:14:44.665 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:44.665 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:44.665 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:44.665 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:44.666 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:44.672 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:44.673 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:44.673 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05190574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680458035066, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992649, telescope_ra=21.4033761, telescope_dec=-24.256244, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.42313, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3784210945529, telescope_dec_j2k=-24.3657264938397, observability=1)
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Status age = 2.520547389984131s
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:47.194 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:47.195 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 17;21.404068;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42382;2460997.05193513;15.24640278;1.3;_
2025-11-17T15:14:47.195 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response 17;21.404068;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42382;2460997.05193513;15.24640278;1.3;_
2025-11-17T15:14:47.195 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:47.195 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:47.195 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:47.196 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:47.196 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:47.196 [INFO] [Thread-68401 (handle)] [driver.py] [get_status()] Telra = 21.404068, teldec = -24.256244
2025-11-17T15:14:47.196 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] UnCookCoordinates 21.404068 -24.256244
2025-11-17T15:14:47.196 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.404068 -24.256244
2025-11-17T15:14:47.196 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.404068 -24.256244
2025-11-17T15:14:47.197 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 17;21.4040961;-24.256244;50.108229;89.992649;50.08601;90.12017;18.42385;2460997.05193515;15.24643083;1.3;_21.3791135233973 -24.3657433463382
2025-11-17T15:14:47.197 [INFO] [Thread-68401 (handle)] [driver.py] [get_status()] ra_j2k = 21.3791135233973     dec_j2k = -24.3657433463382
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 140;0.104680016803695;171.162351965909;_
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response 140;0.104680016803695;171.162351965909;_
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:47.198 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:47.199 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:47.199 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:47.199 [DEBUG] [Thread-68401 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:47.199 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:47.200 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:47.200 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:47.200 [DEBUG] [Thread-68401 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:47.200 [DEBUG] [Thread-68401 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:47.200 [DEBUG] [Thread-68401 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50963)
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:47.206 [DEBUG] [Thread-68401 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:47.214 [DEBUG] [Thread-68401 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:47.214 [DEBUG] [Thread-68401 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:47.214 [DEBUG] [Thread-68401 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:47.214 [DEBUG] [Thread-68401 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:47.215 [DEBUG] [Thread-68401 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:47.215 [DEBUG] [Thread-68401 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:47.215 [DEBUG] [Thread-68401 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:47.215 [DEBUG] [Thread-68401 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:47.215 [DEBUG] [Thread-68401 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:47.215 [INFO] [Thread-68401 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05193513, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104680016803695, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108229, telescope_az=89.992649, telescope_ra=21.404068, telescope_dec=-24.256244, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.42382, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3791135233973, telescope_dec_j2k=-24.3657433463382, observability=1)
2025-11-17T15:14:53.283 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:14:53
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 6.068248987197876s
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:14:53.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:14:53.284 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:14:53.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4057699;-24.256244;50.108228;89.992649;50.08601;90.12017;18.42552;2460997.05200561;15.2481;1.3;_
2025-11-17T15:14:53.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.4057699;-24.256244;50.108228;89.992649;50.08601;90.12017;18.42552;2460997.05200561;15.2481;1.3;_
2025-11-17T15:14:53.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:14:53.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:14:53.285 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:14:53.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:53.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:14:53.286 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.4057699, teldec = -24.256244
2025-11-17T15:14:53.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4057699 -24.256244
2025-11-17T15:14:53.286 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4057699 -24.256244
2025-11-17T15:14:53.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4057699 -24.256244
2025-11-17T15:14:53.287 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4057699;-24.256244;50.108228;89.992649;50.08601;90.12017;18.42552;2460997.05200564;15.2481;1.3;_21.3808167246102 -24.3657847841131
2025-11-17T15:14:53.288 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.3808167246102     dec_j2k = -24.3657847841131
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104679736020095;171.162357330327;_
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104679736020095;171.162357330327;_
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:53.288 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:53.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:53.289 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:14:53.290 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33167)
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:14:53.295 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:14:53.302 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:14:53.302 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05200561, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679736020095, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992649, telescope_ra=21.4057699, telescope_dec=-24.256244, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.42552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3808167246102, telescope_dec_j2k=-24.3657847841131, observability=1)
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Status age = 11.943564891815186s
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:05.246 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:05.247 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 17;21.4091157;-24.256244;50.108228;89.992648;50.08601;90.12017;18.42887;2460997.05214406;15.25143667;1.3;_
2025-11-17T15:15:05.248 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response 17;21.4091157;-24.256244;50.108228;89.992648;50.08601;90.12017;18.42887;2460997.05214406;15.25143667;1.3;_
2025-11-17T15:15:05.248 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:05.248 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:05.248 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:05.249 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:05.249 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:05.249 [INFO] [Thread-68402 (handle)] [driver.py] [get_status()] Telra = 21.4091157, teldec = -24.256244
2025-11-17T15:15:05.249 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4091157 -24.256244
2025-11-17T15:15:05.249 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4091157 -24.256244
2025-11-17T15:15:05.249 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4091157 -24.256244
2025-11-17T15:15:05.250 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 17;21.4091157;-24.256244;50.108228;89.992648;50.08601;90.12017;18.42887;2460997.0521441;15.25143667;1.3;_21.3841650843023 -24.3658661847206
2025-11-17T15:15:05.250 [INFO] [Thread-68402 (handle)] [driver.py] [get_status()] ra_j2k = 21.3841650843023     dec_j2k = -24.3658661847206
2025-11-17T15:15:05.250 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:05.250 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:05.250 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 140;0.104678853557354;171.162362694745;_
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response 140;0.104678853557354;171.162362694745;_
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:05.251 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:15:05.252 [DEBUG] [Thread-68402 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:15:05.253 [DEBUG] [Thread-68402 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58335)
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:05.257 [DEBUG] [Thread-68402 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:05.264 [DEBUG] [Thread-68402 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:05.265 [DEBUG] [Thread-68402 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:05.265 [DEBUG] [Thread-68402 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:05.265 [DEBUG] [Thread-68402 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:05.265 [INFO] [Thread-68402 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05214406, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678853557354, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992648, telescope_ra=21.4091157, telescope_dec=-24.256244, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.42887, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:14:06.709333', telescope_ra_j2k=21.3841650843023, telescope_dec_j2k=-24.3658661847206, observability=1)
2025-11-17T15:15:06.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:06.853 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:06.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:06.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:06.853 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:06.854 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:06.854 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:06.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:06.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:06.855 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:06.855 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:15:06.855 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:06.855 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:06.855 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:06.855 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:06.855 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:15:06.856 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:15:06.857 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:07.857 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:07.857 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:07.857 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:07.857 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:07.857 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:15:07.858 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:07.859 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:07.860 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:07.860 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:07.860 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:07.860 [DEBUG] [ThreadPoolExecutor-2952_0] [payload.py] [to_registers()] [0]
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38925)
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:07.865 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:07.872 [DEBUG] [ThreadPoolExecutor-2952_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 9.772520542144775s
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:15.037 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:15.038 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4118412;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43159;2460997.0522574;15.25415472;1.3;_
2025-11-17T15:15:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.4118412;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43159;2460997.0522574;15.25415472;1.3;_
2025-11-17T15:15:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:15.040 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.4118412, teldec = -24.256243
2025-11-17T15:15:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4118412 -24.256243
2025-11-17T15:15:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4118412 -24.256243
2025-11-17T15:15:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4118412 -24.256243
2025-11-17T15:15:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4118412;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43159;2460997.05225742;15.25415472;1.3;_21.3868926711433 -24.3659314325014
2025-11-17T15:15:15.041 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.3868926711433     dec_j2k = -24.3659314325014
2025-11-17T15:15:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104679736020095;171.162351965909;_
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104679736020095;171.162351965909;_
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58593)
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:15.051 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:15.058 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0522574, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679736020095, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992648, telescope_ra=21.4118412, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43159, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3868926711433, telescope_dec_j2k=-24.3659314325014, observability=1)
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Status age = 3.059921979904175s
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:18.118 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:18.119 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:18.119 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:18.119 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 17;21.4126824;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43243;2460997.05229306;15.25499361;1.3;_
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response 17;21.4126824;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43243;2460997.05229306;15.25499361;1.3;_
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:18.120 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:18.121 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:18.121 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:18.121 [INFO] [Thread-68403 (handle)] [driver.py] [get_status()] Telra = 21.4126824, teldec = -24.256243
2025-11-17T15:15:18.121 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4126824 -24.256243
2025-11-17T15:15:18.121 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4126824 -24.256243
2025-11-17T15:15:18.121 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4126824 -24.256243
2025-11-17T15:15:18.122 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 17;21.4126824;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43243;2460997.05229308;15.25499361;1.3;_21.3877345154728 -24.3659518680647
2025-11-17T15:15:18.122 [INFO] [Thread-68403 (handle)] [driver.py] [get_status()] ra_j2k = 21.3877345154728     dec_j2k = -24.3659518680647
2025-11-17T15:15:18.122 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:18.122 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:18.122 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 140;0.104679936579809;171.162351965909;_
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response 140;0.104679936579809;171.162351965909;_
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:18.123 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:18.124 [DEBUG] [Thread-68403 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:18.124 [DEBUG] [Thread-68403 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:18.124 [DEBUG] [Thread-68403 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:18.126 [DEBUG] [Thread-68403 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48979)
2025-11-17T15:15:18.127 [DEBUG] [Thread-68403 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:18.127 [DEBUG] [Thread-68403 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:18.127 [DEBUG] [Thread-68403 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:18.127 [DEBUG] [Thread-68403 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:18.127 [DEBUG] [Thread-68403 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:18.134 [DEBUG] [Thread-68403 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:18.134 [INFO] [Thread-68403 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05229306, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679936579809, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992648, telescope_ra=21.4126824, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43243, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3877345154728, telescope_dec_j2k=-24.3659518680647, observability=1)
2025-11-17T15:15:23.312 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Status age = 5.1784117221832275s
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:23.313 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 17;21.4141294;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43388;2460997.05235317;15.25643667;1.3;_
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response 17;21.4141294;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43388;2460997.05235317;15.25643667;1.3;_
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:23.314 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:23.315 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:23.315 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:23.316 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:23.316 [INFO] [Thread-68404 (handle)] [driver.py] [get_status()] Telra = 21.4141294, teldec = -24.256243
2025-11-17T15:15:23.316 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4141294 -24.256243
2025-11-17T15:15:23.316 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4141294 -24.256243
2025-11-17T15:15:23.316 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4141294 -24.256243
2025-11-17T15:15:23.317 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 17;21.4141294;-24.256243;50.108228;89.992648;50.08601;90.12017;18.43388;2460997.05235321;15.25643667;1.3;_21.389182624139 -24.3659870082148
2025-11-17T15:15:23.317 [INFO] [Thread-68404 (handle)] [driver.py] [get_status()] ra_j2k = 21.389182624139     dec_j2k = -24.3659870082148
2025-11-17T15:15:23.317 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:23.317 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:23.317 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 140;0.104679334900667;171.162351965909;_
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response 140;0.104679334900667;171.162351965909;_
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:23.318 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:23.319 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:23.320 [DEBUG] [Thread-68404 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:23.320 [DEBUG] [Thread-68404 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:23.320 [DEBUG] [Thread-68404 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34819)
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:23.326 [DEBUG] [Thread-68404 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:23.334 [DEBUG] [Thread-68404 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:23.334 [INFO] [Thread-68404 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05235317, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679334900667, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992648, telescope_ra=21.4141294, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43388, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.389182624139, telescope_dec_j2k=-24.3659870082148, observability=1)
2025-11-17T15:15:32.872 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:32.872 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:32.873 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:32.874 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:32.875 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:15:32.875 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:15:32.875 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:15:32.875 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.923171758651733s
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:38.257 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:38.258 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:38.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4183122;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43806;2460997.05252615;15.26060806;1.3;_
2025-11-17T15:15:38.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4183122;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43806;2460997.05252615;15.26060806;1.3;_
2025-11-17T15:15:38.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:38.259 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:38.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:38.260 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:38.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:38.261 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4183122, teldec = -24.256243
2025-11-17T15:15:38.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4183122 -24.256243
2025-11-17T15:15:38.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4183122 -24.256243
2025-11-17T15:15:38.261 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4183122 -24.256243
2025-11-17T15:15:38.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4183122;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43806;2460997.05252618;15.26060806;1.3;_21.3933686311683 -24.3660884991234
2025-11-17T15:15:38.262 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.3933686311683     dec_j2k = -24.3660884991234
2025-11-17T15:15:38.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:38.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:38.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:38.262 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104679495348439;171.162351965909;_
2025-11-17T15:15:38.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104679495348439;171.162351965909;_
2025-11-17T15:15:38.263 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:38.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:38.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:38.263 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:38.264 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:38.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:38.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:38.265 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46801)
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:38.270 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:38.277 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:15:38.278 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05252615, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679495348439, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992647, telescope_ra=21.4183122, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43806, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3933686311683, telescope_dec_j2k=-24.3660884991234, observability=1)
2025-11-17T15:15:38.278 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9948844909668 seconds ago
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Status age = 3.1640782356262207s
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:41.442 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:41.443 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:41.444 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 17;21.4191988;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43895;2460997.05256301;15.26149222;1.3;_
2025-11-17T15:15:41.444 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response 17;21.4191988;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43895;2460997.05256301;15.26149222;1.3;_
2025-11-17T15:15:41.444 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:41.444 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:41.444 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:41.445 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:41.445 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:41.445 [INFO] [Thread-68405 (handle)] [driver.py] [get_status()] Telra = 21.4191988, teldec = -24.256243
2025-11-17T15:15:41.445 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4191988 -24.256243
2025-11-17T15:15:41.445 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4191988 -24.256243
2025-11-17T15:15:41.445 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4191988 -24.256243
2025-11-17T15:15:41.446 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 17;21.4191988;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43895;2460997.05256303;15.26149222;1.3;_21.3942559113681 -24.3661099947257
2025-11-17T15:15:41.446 [INFO] [Thread-68405 (handle)] [driver.py] [get_status()] ra_j2k = 21.3942559113681     dec_j2k = -24.3661099947257
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 140;0.10467937501261;171.162357330327;_
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response 140;0.10467937501261;171.162357330327;_
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:41.447 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:41.448 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:41.448 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:41.448 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:41.448 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:41.448 [DEBUG] [Thread-68405 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:41.449 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:41.449 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:41.449 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:41.450 [DEBUG] [Thread-68405 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:41.450 [DEBUG] [Thread-68405 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:41.450 [DEBUG] [Thread-68405 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42757)
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:41.456 [DEBUG] [Thread-68405 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:41.463 [DEBUG] [Thread-68405 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:41.463 [DEBUG] [Thread-68405 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:41.463 [DEBUG] [Thread-68405 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:41.463 [DEBUG] [Thread-68405 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:41.464 [DEBUG] [Thread-68405 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:41.464 [DEBUG] [Thread-68405 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:41.464 [DEBUG] [Thread-68405 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:41.464 [DEBUG] [Thread-68405 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:41.464 [DEBUG] [Thread-68405 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:41.464 [INFO] [Thread-68405 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05256301, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467937501261, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992647, telescope_ra=21.4191988, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43895, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3942559113681, telescope_dec_j2k=-24.3661099947257, observability=1)
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.3031256198883057s
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:43.767 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:43.768 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:43.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4198436;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43959;2460997.05258992;15.26213528;1.3;_
2025-11-17T15:15:43.769 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4198436;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43959;2460997.05258992;15.26213528;1.3;_
2025-11-17T15:15:43.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:43.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:43.769 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:43.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:43.770 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:43.770 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4198436, teldec = -24.256243
2025-11-17T15:15:43.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4198436 -24.256243
2025-11-17T15:15:43.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4198436 -24.256243
2025-11-17T15:15:43.770 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4198436 -24.256243
2025-11-17T15:15:43.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4198436;-24.256243;50.108228;89.992647;50.08601;90.12017;18.43959;2460997.05258994;15.26213528;1.3;_21.3949012061528 -24.3661256242109
2025-11-17T15:15:43.771 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.3949012061528     dec_j2k = -24.3661256242109
2025-11-17T15:15:43.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:43.771 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678332102097;171.162357330327;_
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162357330327;_
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:43.772 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:43.773 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:43.774 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55719)
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:43.780 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:43.787 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:43.787 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05258992, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992647, telescope_ra=21.4198436, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.43959, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3949012061528, telescope_dec_j2k=-24.3661256242109, observability=1)
2025-11-17T15:15:53.363 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:15:53
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 9.575897216796875s
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:53.363 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:53.364 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:53.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4225128;-24.256243;50.108228;89.992647;50.08601;90.12017;18.44226;2460997.05270098;15.26479722;1.3;_
2025-11-17T15:15:53.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.4225128;-24.256243;50.108228;89.992647;50.08601;90.12017;18.44226;2460997.05270098;15.26479722;1.3;_
2025-11-17T15:15:53.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:53.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:53.365 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:53.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:53.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:53.366 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.4225128, teldec = -24.256243
2025-11-17T15:15:53.366 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4225128 -24.256243
2025-11-17T15:15:53.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4225128 -24.256243
2025-11-17T15:15:53.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4225128 -24.256243
2025-11-17T15:15:53.367 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4225128;-24.256243;50.108228;89.992647;50.08601;90.12017;18.44226;2460997.05270101;15.26479722;1.3;_21.3975724551929 -24.3661902907094
2025-11-17T15:15:53.368 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.3975724551929     dec_j2k = -24.3661902907094
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104679415124553;171.162351965909;_
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104679415124553;171.162351965909;_
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:53.368 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:53.369 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:53.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:53.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:53.370 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55017)
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:53.371 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:53.378 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:53.378 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:53.378 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:53.378 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:53.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:53.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:53.379 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:53.379 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:53.379 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:53.379 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05270098, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679415124553, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992647, telescope_ra=21.4225128, telescope_dec=-24.256243, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.44226, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3975724551929, telescope_dec_j2k=-24.3661902907094, observability=1)
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Status age = 6.131447076797485s
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:15:59.510 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:15:59.511 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:15:59.511 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:15:59.511 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 17;21.4242127;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44396;2460997.05277213;15.2664925;1.3;_
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response 17;21.4242127;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44396;2460997.05277213;15.2664925;1.3;_
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:15:59.512 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:15:59.513 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:15:59.513 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:59.514 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:15:59.514 [INFO] [Thread-68406 (handle)] [driver.py] [get_status()] Telra = 21.4242127, teldec = -24.256242
2025-11-17T15:15:59.514 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4242127 -24.256242
2025-11-17T15:15:59.514 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4242127 -24.256242
2025-11-17T15:15:59.514 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4242127 -24.256242
2025-11-17T15:15:59.515 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 17;21.4242127;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44396;2460997.05277216;15.2664925;1.3;_21.3992736609743 -24.3662304464538
2025-11-17T15:15:59.515 [INFO] [Thread-68406 (handle)] [driver.py] [get_status()] ra_j2k = 21.3992736609743     dec_j2k = -24.3662304464538
2025-11-17T15:15:59.515 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:15:59.515 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:15:59.515 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 140;0.104678773333468;171.162351965909;_
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response 140;0.104678773333468;171.162351965909;_
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:59.516 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:15:59.517 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:15:59.518 [DEBUG] [Thread-68406 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:59.518 [DEBUG] [Thread-68406 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:15:59.518 [DEBUG] [Thread-68406 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:15:59.519 [DEBUG] [Thread-68406 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53811)
2025-11-17T15:15:59.520 [DEBUG] [Thread-68406 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:15:59.520 [DEBUG] [Thread-68406 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:15:59.520 [DEBUG] [Thread-68406 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:15:59.520 [DEBUG] [Thread-68406 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:15:59.520 [DEBUG] [Thread-68406 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:15:59.527 [DEBUG] [Thread-68406 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:15:59.527 [INFO] [Thread-68406 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05277213, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678773333468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992646, telescope_ra=21.4242127, telescope_dec=-24.256242, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.44396, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:15:06.852929', telescope_ra_j2k=21.3992736609743, telescope_dec_j2k=-24.3662304464538, observability=1)
2025-11-17T15:16:06.993 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:06.993 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:06.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:06.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:06.993 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:06.994 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:06.994 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:06.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:06.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:06.995 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:06.995 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:16:06.995 [INFO] [ThreadPoolExecutor-2953_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:16:06.995 [INFO] [ThreadPoolExecutor-2953_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 15.529991149902344s
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4285646;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44832;2460997.05295207;15.2708325;1.3;_
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.4285646;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44832;2460997.05295207;15.2708325;1.3;_
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:15.060 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.4285646, teldec = -24.256242
2025-11-17T15:16:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4285646 -24.256242
2025-11-17T15:16:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4285646 -24.256242
2025-11-17T15:16:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4285646 -24.256242
2025-11-17T15:16:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4285646;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44832;2460997.0529521;15.2708325;1.3;_21.4036289060618 -24.3663357103969
2025-11-17T15:16:15.061 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.4036289060618     dec_j2k = -24.3663357103969
2025-11-17T15:16:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104679174452896;171.162351965909;_
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104679174452896;171.162351965909;_
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44631)
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:15.077 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:16:15.077 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05295207, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679174452896, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992646, telescope_ra=21.4285646, telescope_dec=-24.256242, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.44832, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4036289060618, telescope_dec_j2k=-24.3663357103969, observability=1)
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Status age = 2.4977288246154785s
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:17.575 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:17.576 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:17.577 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 17;21.4292657;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44902;2460997.05298122;15.27153167;1.3;_
2025-11-17T15:16:17.577 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response 17;21.4292657;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44902;2460997.05298122;15.27153167;1.3;_
2025-11-17T15:16:17.577 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:17.577 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:17.577 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:17.578 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:17.578 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:17.578 [INFO] [Thread-68407 (handle)] [driver.py] [get_status()] Telra = 21.4292657, teldec = -24.256242
2025-11-17T15:16:17.578 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4292657 -24.256242
2025-11-17T15:16:17.579 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4292657 -24.256242
2025-11-17T15:16:17.579 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4292657 -24.256242
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 17;21.4292657;-24.256242;50.108228;89.992646;50.08601;90.12017;18.44902;2460997.05298124;15.27153167;1.3;_21.4043305452981 -24.3663526554064
2025-11-17T15:16:17.580 [INFO] [Thread-68407 (handle)] [driver.py] [get_status()] ra_j2k = 21.4043305452981     dec_j2k = -24.3663526554064
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 140;0.104678773333468;171.162357330327;_
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response 140;0.104678773333468;171.162357330327;_
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:17.580 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:17.581 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:17.582 [DEBUG] [Thread-68407 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:17.582 [DEBUG] [Thread-68407 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:17.582 [DEBUG] [Thread-68407 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:17.586 [DEBUG] [Thread-68407 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55205)
2025-11-17T15:16:17.586 [DEBUG] [Thread-68407 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:17.586 [DEBUG] [Thread-68407 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:17.587 [DEBUG] [Thread-68407 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:17.587 [DEBUG] [Thread-68407 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:17.587 [DEBUG] [Thread-68407 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:17.594 [DEBUG] [Thread-68407 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:16:17.594 [INFO] [Thread-68407 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05298122, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678773333468, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992646, telescope_ra=21.4292657, telescope_dec=-24.256242, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.44902, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4043305452981, telescope_dec_j2k=-24.3663526554064, observability=1)
2025-11-17T15:16:18.171 [DEBUG] [Thread-68408 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:18.171 [DEBUG] [Thread-68408 (handle)] [server.py] [get_status()] Status age = 0.576831579208374s
2025-11-17T15:16:18.171 [DEBUG] [Thread-68408 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.576831579208374
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.876 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:16:27.877 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:27.878 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:27.879 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:16:27.880 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:27.881 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Park
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:16:27.882 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:16:27.883 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 29;21.4321332;-24.256242;50.108228;89.992645;50.08601;90.12017;18.45188;2460997.0531005;15.27439139;1.3;_Park Command Successful
2025-11-17T15:16:28.883 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:16:28.883 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:16:28.883 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:16:28.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:16:28.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:16:29.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:16:29.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:16:29.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:16:29.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:16:29.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:16:30.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:16:30.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:16:30.884 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:16:30.885 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:16:30.885 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:31.886 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:31.887 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:31.887 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:31.887 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:16:31.888 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:32.889 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:32.889 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:32.889 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:32.889 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:32.889 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:16:32.890 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:16:32.891 [DEBUG] [ThreadPoolExecutor-2952_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:32.891 [INFO] [ThreadPoolExecutor-2952_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Status age = 18.12005066871643s
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:35.714 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:35.715 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:35.716 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 17;21.4343076;-24.256235;50.108228;89.992634;50.08601;90.12016;18.45406;2460997.05319116;15.27656;1.3;_
2025-11-17T15:16:35.716 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response 17;21.4343076;-24.256235;50.108228;89.992634;50.08601;90.12016;18.45406;2460997.05319116;15.27656;1.3;_
2025-11-17T15:16:35.716 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:35.716 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:35.716 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:35.717 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:35.717 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:35.717 [INFO] [Thread-68409 (handle)] [driver.py] [get_status()] Telra = 21.4343076, teldec = -24.256235
2025-11-17T15:16:35.717 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4343076 -24.256235
2025-11-17T15:16:35.717 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4343076 -24.256235
2025-11-17T15:16:35.717 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4343076 -24.256235
2025-11-17T15:16:35.718 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 17;21.4343076;-24.256235;50.108228;89.992634;50.08601;90.12016;18.45406;2460997.05319118;15.27656;1.3;_21.4093763268171 -24.3664674064793
2025-11-17T15:16:35.718 [INFO] [Thread-68409 (handle)] [driver.py] [get_status()] ra_j2k = 21.4093763268171     dec_j2k = -24.3664674064793
2025-11-17T15:16:35.718 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:35.718 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:35.718 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162351965909;_
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162351965909;_
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:35.719 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:35.720 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:35.721 [DEBUG] [Thread-68409 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:35.721 [DEBUG] [Thread-68409 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:35.721 [DEBUG] [Thread-68409 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42439)
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:35.727 [DEBUG] [Thread-68409 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:35.735 [DEBUG] [Thread-68409 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:16:35.735 [INFO] [Thread-68409 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05319116, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992634, telescope_ra=21.4343076, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.45406, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4093763268171, telescope_dec_j2k=-24.3664674064793, observability=1)
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.602475643157959s
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:38.338 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:38.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:38.339 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:38.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:38.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:38.339 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:38.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4350267;-24.256242;50.108228;89.992645;50.08601;90.12017;18.45478;2460997.05322153;15.27727694;1.3;_
2025-11-17T15:16:38.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4350267;-24.256242;50.108228;89.992645;50.08601;90.12017;18.45478;2460997.05322153;15.27727694;1.3;_
2025-11-17T15:16:38.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:38.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:38.340 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:38.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:38.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:38.341 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4350267, teldec = -24.256242
2025-11-17T15:16:38.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4350267 -24.256242
2025-11-17T15:16:38.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4350267 -24.256242
2025-11-17T15:16:38.341 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4350267 -24.256242
2025-11-17T15:16:38.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4350267;-24.256242;50.108228;89.992645;50.08601;90.12017;18.45478;2460997.05322155;15.27727694;1.3;_21.4100959797774 -24.3664917549199
2025-11-17T15:16:38.342 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.4100959797774     dec_j2k = -24.3664917549199
2025-11-17T15:16:38.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:38.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:38.342 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678412325983;171.162357330327;_
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678412325983;171.162357330327;_
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:38.343 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:38.344 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:38.344 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:38.344 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42639)
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:38.345 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:38.353 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:16:38.353 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05322153, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678412325983, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992645, telescope_ra=21.4350267, telescope_dec=-24.256242, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.45478, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4100959797774, telescope_dec_j2k=-24.3664917549199, observability=1)
2025-11-17T15:16:38.353 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99019193649292 seconds ago
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.522718906402588s
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:42.876 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:42.877 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:42.877 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:42.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:42.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:42.877 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:42.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4363146;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45607;2460997.05327405;15.27856139;1.3;_
2025-11-17T15:16:42.878 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4363146;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45607;2460997.05327405;15.27856139;1.3;_
2025-11-17T15:16:42.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:42.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:42.878 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:42.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:42.879 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:42.879 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4363146, teldec = -24.256241
2025-11-17T15:16:42.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4363146 -24.256241
2025-11-17T15:16:42.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4363146 -24.256241
2025-11-17T15:16:42.879 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4363146 -24.256241
2025-11-17T15:16:42.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4363146;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45607;2460997.05327407;15.27856139;1.3;_21.4113848721156 -24.3665218174601
2025-11-17T15:16:42.880 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.4113848721156     dec_j2k = -24.3665218174601
2025-11-17T15:16:42.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:42.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:42.880 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10467809143044;171.162346601491;_
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162346601491;_
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:42.881 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:42.882 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:42.883 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:42.883 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:42.883 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:42.889 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52149)
2025-11-17T15:16:42.890 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:42.890 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:42.890 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:42.890 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:42.890 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:42.897 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:16:42.897 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05327405, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992645, telescope_ra=21.4363146, telescope_dec=-24.256241, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.45607, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4113848721156, telescope_dec_j2k=-24.3665218174601, observability=1)
2025-11-17T15:16:53.440 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:16:53
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.542290449142456s
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:16:53.440 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:16:53.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4392371;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45899;2460997.05339631;15.28147583;1.3;_
2025-11-17T15:16:53.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.4392371;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45899;2460997.05339631;15.28147583;1.3;_
2025-11-17T15:16:53.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:16:53.441 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:16:53.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:16:53.442 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:53.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:16:53.443 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.4392371, teldec = -24.256241
2025-11-17T15:16:53.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4392371 -24.256241
2025-11-17T15:16:53.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4392371 -24.256241
2025-11-17T15:16:53.443 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4392371 -24.256241
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4392371;-24.256241;50.108228;89.992645;50.08601;90.12017;18.45899;2460997.05339634;15.28147583;1.3;_21.4143096247981 -24.3665922582461
2025-11-17T15:16:53.444 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.4143096247981     dec_j2k = -24.3665922582461
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162341237072;_
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162341237072;_
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:53.444 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:53.445 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:16:53.446 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:16:53.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:53.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:16:53.447 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56061)
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:16:53.454 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:16:53.462 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:16:53.462 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05339631, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992645, telescope_ra=21.4392371, telescope_dec=-24.256241, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.45899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:16:06.993002', telescope_ra_j2k=21.4143096247981, telescope_dec_j2k=-24.3665922582461, observability=1)
2025-11-17T15:16:53.777 [DEBUG] [Thread-68410 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:16:53.777 [DEBUG] [Thread-68410 (handle)] [server.py] [get_status()] Status age = 0.3150498867034912s
2025-11-17T15:16:53.777 [DEBUG] [Thread-68410 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.3150498867034912
2025-11-17T15:17:07.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:07.135 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:07.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:07.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:07.135 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:07.136 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:07.136 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:07.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:07.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:07.137 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:07.137 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:17:07.137 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:07.137 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:07.137 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:17:07.138 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:17:07.139 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:08.139 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:08.139 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:08.139 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:17:08.140 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:08.141 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:08.142 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:08.142 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:08.142 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:08.142 [DEBUG] [ThreadPoolExecutor-2954_0] [payload.py] [to_registers()] [0]
2025-11-17T15:17:08.148 [DEBUG] [ThreadPoolExecutor-2954_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39899)
2025-11-17T15:17:08.148 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:08.148 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:08.148 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:17:08.149 [DEBUG] [ThreadPoolExecutor-2954_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:08.149 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:08.156 [DEBUG] [ThreadPoolExecutor-2954_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Status age = 18.44509196281433s
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:11.907 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:11.908 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:11.909 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 17;21.4443923;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46414;2460997.05361006;15.28661694;1.3;_
2025-11-17T15:17:11.909 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response 17;21.4443923;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46414;2460997.05361006;15.28661694;1.3;_
2025-11-17T15:17:11.909 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:11.909 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:11.909 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:11.910 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:11.910 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:11.910 [INFO] [Thread-68411 (handle)] [driver.py] [get_status()] Telra = 21.4443923, teldec = -24.256241
2025-11-17T15:17:11.910 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4443923 -24.256241
2025-11-17T15:17:11.910 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4443923 -24.256241
2025-11-17T15:17:11.910 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4443923 -24.256241
2025-11-17T15:17:11.911 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 17;21.4443923;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46414;2460997.05361008;15.28661694;1.3;_21.4194688023957 -24.3667163577069
2025-11-17T15:17:11.911 [INFO] [Thread-68411 (handle)] [driver.py] [get_status()] ra_j2k = 21.4194688023957     dec_j2k = -24.3667163577069
2025-11-17T15:17:11.911 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:11.911 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:11.911 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162357330327;_
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162357330327;_
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:11.912 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:11.913 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:11.913 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:11.913 [DEBUG] [Thread-68411 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:11.913 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:11.913 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:11.914 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:11.914 [DEBUG] [Thread-68411 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:11.914 [DEBUG] [Thread-68411 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:11.914 [DEBUG] [Thread-68411 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 43053)
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:11.916 [DEBUG] [Thread-68411 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:11.923 [DEBUG] [Thread-68411 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:11.923 [DEBUG] [Thread-68411 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:11.923 [DEBUG] [Thread-68411 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:11.924 [DEBUG] [Thread-68411 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:11.924 [INFO] [Thread-68411 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05361006, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992644, telescope_ra=21.4443923, telescope_dec=-24.256241, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.46414, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4194688023957, telescope_dec_j2k=-24.3667163577069, observability=1)
2025-11-17T15:17:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 3.1365580558776855s
2025-11-17T15:17:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.44528;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46503;2460997.05364655;15.28750222;1.3;_
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.44528;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46503;2460997.05364655;15.28750222;1.3;_
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:15.064 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.44528, teldec = -24.256241
2025-11-17T15:17:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.44528 -24.256241
2025-11-17T15:17:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.44528 -24.256241
2025-11-17T15:17:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.44528 -24.256241
2025-11-17T15:17:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.44528;-24.256241;50.108228;89.992644;50.08601;90.12017;18.46503;2460997.05364659;15.28750222;1.3;_21.4203571878248 -24.3667377069235
2025-11-17T15:17:15.065 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.4203571878248     dec_j2k = -24.3667377069235
2025-11-17T15:17:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678051318498;171.162351965909;_
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162351965909;_
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51909)
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:15.076 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:15.076 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05364655, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992644, telescope_ra=21.44528, telescope_dec=-24.256241, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.46503, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4203571878248, telescope_dec_j2k=-24.3667377069235, observability=1)
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Status age = 3.135817766189575s
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:18.212 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:18.213 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:18.214 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 17;21.4461485;-24.256234;50.108228;89.992633;50.08601;90.12016;18.4659;2460997.05368303;15.28836861;1.3;_
2025-11-17T15:17:18.214 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response 17;21.4461485;-24.256234;50.108228;89.992633;50.08601;90.12016;18.4659;2460997.05368303;15.28836861;1.3;_
2025-11-17T15:17:18.214 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:18.214 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:18.214 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:18.215 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:18.215 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:18.215 [INFO] [Thread-68412 (handle)] [driver.py] [get_status()] Telra = 21.4461485, teldec = -24.256234
2025-11-17T15:17:18.215 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4461485 -24.256234
2025-11-17T15:17:18.215 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4461485 -24.256234
2025-11-17T15:17:18.215 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4461485 -24.256234
2025-11-17T15:17:18.216 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 17;21.4461485;-24.256234;50.108228;89.992633;50.08601;90.12016;18.4659;2460997.05368306;15.28836861;1.3;_21.4212263594733 -24.3667515893583
2025-11-17T15:17:18.216 [INFO] [Thread-68412 (handle)] [driver.py] [get_status()] ra_j2k = 21.4212263594733     dec_j2k = -24.3667515893583
2025-11-17T15:17:18.216 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:18.216 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 140;0.104677610087127;171.162357330327;_
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response 140;0.104677610087127;171.162357330327;_
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:18.217 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:18.218 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:17:18.219 [DEBUG] [Thread-68412 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47639)
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:18.222 [DEBUG] [Thread-68412 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:18.229 [DEBUG] [Thread-68412 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:18.230 [DEBUG] [Thread-68412 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:18.230 [DEBUG] [Thread-68412 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:18.230 [DEBUG] [Thread-68412 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:18.230 [INFO] [Thread-68412 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05368303, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677610087127, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108228, telescope_az=89.992633, telescope_ra=21.4461485, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.4659, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4212263594733, telescope_dec_j2k=-24.3667515893583, observability=1)
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Status age = 11.752971649169922s
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:29.983 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:29.984 [DEBUG] [Thread-68413 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:29.984 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:29.984 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:29.984 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:29.984 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:29.985 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 17;21.4494107;-24.25624;50.108227;89.992643;50.08601;90.12017;18.46916;2460997.05381927;15.29162167;1.3;_
2025-11-17T15:17:29.985 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response 17;21.4494107;-24.25624;50.108227;89.992643;50.08601;90.12017;18.46916;2460997.05381927;15.29162167;1.3;_
2025-11-17T15:17:29.985 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:29.985 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:29.985 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:29.986 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:29.986 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:29.986 [INFO] [Thread-68413 (handle)] [driver.py] [get_status()] Telra = 21.4494107, teldec = -24.25624
2025-11-17T15:17:29.986 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4494107 -24.25624
2025-11-17T15:17:29.986 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4494107 -24.25624
2025-11-17T15:17:29.986 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4494107 -24.25624
2025-11-17T15:17:29.987 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 17;21.4494388;-24.25624;50.108227;89.992643;50.08601;90.12017;18.46919;2460997.05381929;15.29164972;1.3;_21.4244910793895 -24.3668359727803
2025-11-17T15:17:29.987 [INFO] [Thread-68413 (handle)] [driver.py] [get_status()] ra_j2k = 21.4244910793895     dec_j2k = -24.3668359727803
2025-11-17T15:17:29.987 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:29.987 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:29.987 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 140;0.104677449639356;171.162357330327;_
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response 140;0.104677449639356;171.162357330327;_
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:29.988 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:29.989 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:29.990 [DEBUG] [Thread-68413 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:29.990 [DEBUG] [Thread-68413 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:29.990 [DEBUG] [Thread-68413 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:29.995 [DEBUG] [Thread-68413 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34659)
2025-11-17T15:17:29.995 [DEBUG] [Thread-68413 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:29.996 [DEBUG] [Thread-68413 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:29.996 [DEBUG] [Thread-68413 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:29.996 [DEBUG] [Thread-68413 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:29.996 [DEBUG] [Thread-68413 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:30.003 [DEBUG] [Thread-68413 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:30.003 [INFO] [Thread-68413 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05381927, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677449639356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992643, telescope_ra=21.4494107, telescope_dec=-24.25624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.46916, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4244910793895, telescope_dec_j2k=-24.3668359727803, observability=1)
2025-11-17T15:17:33.156 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:33.156 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:33.156 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:33.156 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:33.156 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:33.157 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:17:33.158 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:17:33.159 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 8.409644842147827s
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:38.413 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:38.414 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:38.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4517771;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47153;2460997.05391684;15.29398167;1.3;_
2025-11-17T15:17:38.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4517771;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47153;2460997.05391684;15.29398167;1.3;_
2025-11-17T15:17:38.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:38.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:38.415 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:38.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:38.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:38.416 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4517771, teldec = -24.25624
2025-11-17T15:17:38.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4517771 -24.25624
2025-11-17T15:17:38.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4517771 -24.25624
2025-11-17T15:17:38.416 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4517771 -24.25624
2025-11-17T15:17:38.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4517771;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47153;2460997.05391686;15.29398167;1.3;_21.4268593091521 -24.3668927825791
2025-11-17T15:17:38.417 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.4268593091521     dec_j2k = -24.3668927825791
2025-11-17T15:17:38.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:38.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:38.417 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677810646841;171.162346601491;_
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162346601491;_
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:38.418 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:38.419 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:38.420 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:38.420 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:38.420 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:38.426 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40303)
2025-11-17T15:17:38.427 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:38.427 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:38.427 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:38.427 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:38.427 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:38.434 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:17:38.434 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05391684, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992643, telescope_ra=21.4517771, telescope_dec=-24.25624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.47153, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4268593091521, telescope_dec_j2k=-24.3668927825791, observability=1)
2025-11-17T15:17:38.434 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9949049949646 seconds ago
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 3.5514166355133057s
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:41.986 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:41.987 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:41.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4527779;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47253;2460997.05395819;15.29497972;1.3;_
2025-11-17T15:17:41.988 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4527779;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47253;2460997.05395819;15.29497972;1.3;_
2025-11-17T15:17:41.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:41.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:41.988 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:41.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:41.989 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:41.989 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4527779, teldec = -24.25624
2025-11-17T15:17:41.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4527779 -24.25624
2025-11-17T15:17:41.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4527779 -24.25624
2025-11-17T15:17:41.989 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4527779 -24.25624
2025-11-17T15:17:41.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4527779;-24.25624;50.108227;89.992643;50.08601;90.12017;18.47253;2460997.05395822;15.29497972;1.3;_21.4278608833143 -24.3669167959808
2025-11-17T15:17:41.990 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.4278608833143     dec_j2k = -24.3669167959808
2025-11-17T15:17:41.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:41.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:41.990 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10467865299764;171.162362694745;_
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10467865299764;171.162362694745;_
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:41.991 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:41.992 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:41.993 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:41.993 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:41.993 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45241)
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:41.995 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:42.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:42.002 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:42.002 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:42.003 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:42.003 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05395819, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467865299764, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992643, telescope_ra=21.4527779, telescope_dec=-24.25624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.47253, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4278608833143, telescope_dec_j2k=-24.3669167959808, observability=1)
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Status age = 6.030249118804932s
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:48.033 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:48.034 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:48.035 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 17;21.4544522;-24.25624;50.108227;89.992643;50.08601;90.12017;18.4742;2460997.05402818;15.29664944;1.3;_
2025-11-17T15:17:48.035 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response 17;21.4544522;-24.25624;50.108227;89.992643;50.08601;90.12017;18.4742;2460997.05402818;15.29664944;1.3;_
2025-11-17T15:17:48.035 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:48.035 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:48.035 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:48.036 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:48.036 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:48.036 [INFO] [Thread-68414 (handle)] [driver.py] [get_status()] Telra = 21.4544522, teldec = -24.25624
2025-11-17T15:17:48.036 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4544522 -24.25624
2025-11-17T15:17:48.036 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4544522 -24.25624
2025-11-17T15:17:48.036 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4544522 -24.25624
2025-11-17T15:17:48.037 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 17;21.4544522;-24.25624;50.108227;89.992643;50.08601;90.12017;18.4742;2460997.05402821;15.29664944;1.3;_21.4295364788797 -24.3669569526625
2025-11-17T15:17:48.037 [INFO] [Thread-68414 (handle)] [driver.py] [get_status()] ra_j2k = 21.4295364788797     dec_j2k = -24.3669569526625
2025-11-17T15:17:48.037 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162351965909;_
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162351965909;_
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:48.038 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:48.039 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:48.040 [DEBUG] [Thread-68414 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58439)
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:48.045 [DEBUG] [Thread-68414 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:48.052 [DEBUG] [Thread-68414 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:48.052 [DEBUG] [Thread-68414 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:48.052 [DEBUG] [Thread-68414 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:48.053 [DEBUG] [Thread-68414 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:48.053 [INFO] [Thread-68414 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05402818, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992643, telescope_ra=21.4544522, telescope_dec=-24.25624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.4742, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4295364788797, telescope_dec_j2k=-24.3669569526625, observability=1)
2025-11-17T15:17:53.523 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:17:53
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 5.4702677726745605s
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:17:53.523 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:17:53.524 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:17:53.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.455985;-24.25624;50.108227;89.992642;50.08601;90.12017;18.47574;2460997.05409172;15.29817806;1.3;_
2025-11-17T15:17:53.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.455985;-24.25624;50.108227;89.992642;50.08601;90.12017;18.47574;2460997.05409172;15.29817806;1.3;_
2025-11-17T15:17:53.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:17:53.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:17:53.525 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:17:53.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:53.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:17:53.526 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.455985, teldec = -24.25624
2025-11-17T15:17:53.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.455985 -24.25624
2025-11-17T15:17:53.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.455985 -24.25624
2025-11-17T15:17:53.526 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.455985 -24.25624
2025-11-17T15:17:53.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.455985;-24.25624;50.108227;89.992642;50.08601;90.12017;18.47574;2460997.05409175;15.29817806;1.3;_21.4310704654157 -24.3669936971208
2025-11-17T15:17:53.527 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.4310704654157     dec_j2k = -24.3669936971208
2025-11-17T15:17:53.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:17:53.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:17:53.527 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:53.528 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:17:53.529 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36349)
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:17:53.533 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:17:53.540 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:17:53.541 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:17:53.541 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:17:53.541 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:17:53.541 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05409172, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677770534898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992642, telescope_ra=21.455985, telescope_dec=-24.25624, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.47574, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4310704654157, telescope_dec_j2k=-24.3669936971208, observability=1)
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Status age = 12.61730408668518s
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:06.158 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:06.160 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:06.161 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 17;21.4594904;-24.256239;50.108227;89.992642;50.08601;90.12017;18.47924;2460997.05423797;15.30167389;1.3;_
2025-11-17T15:18:06.161 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response 17;21.4594904;-24.256239;50.108227;89.992642;50.08601;90.12017;18.47924;2460997.05423797;15.30167389;1.3;_
2025-11-17T15:18:06.161 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:06.161 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:06.161 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:06.162 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:06.162 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:06.162 [INFO] [Thread-68415 (handle)] [driver.py] [get_status()] Telra = 21.4594904, teldec = -24.256239
2025-11-17T15:18:06.162 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4594904 -24.256239
2025-11-17T15:18:06.162 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4594904 -24.256239
2025-11-17T15:18:06.162 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4594904 -24.256239
2025-11-17T15:18:06.163 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 17;21.4594904;-24.256239;50.108227;89.992642;50.08601;90.12017;18.47924;2460997.054238;15.30167389;1.3;_21.4345785807248 -24.3670766627046
2025-11-17T15:18:06.163 [INFO] [Thread-68415 (handle)] [driver.py] [get_status()] ra_j2k = 21.4345785807248     dec_j2k = -24.3670766627046
2025-11-17T15:18:06.163 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:06.163 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:06.163 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 140;0.104677289191584;171.162351965909;_
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response 140;0.104677289191584;171.162351965909;_
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:06.164 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:06.165 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:06.166 [DEBUG] [Thread-68415 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:06.166 [DEBUG] [Thread-68415 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:06.166 [DEBUG] [Thread-68415 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53373)
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:06.168 [DEBUG] [Thread-68415 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:06.175 [DEBUG] [Thread-68415 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:06.176 [DEBUG] [Thread-68415 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:06.176 [DEBUG] [Thread-68415 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:06.176 [INFO] [Thread-68415 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05423797, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677289191584, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992642, telescope_ra=21.4594904, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.47924, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:17:07.134639', telescope_ra_j2k=21.4345785807248, telescope_dec_j2k=-24.3670766627046, observability=1)
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:07.276 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:07.277 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:07.277 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:07.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:07.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:07.278 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:07.278 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:18:07.278 [INFO] [ThreadPoolExecutor-2955_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:18:07.278 [INFO] [ThreadPoolExecutor-2955_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.893231868743896s
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4619744;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48172;2460997.0543411;15.30415111;1.3;_
2025-11-17T15:18:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.4619744;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48172;2460997.0543411;15.30415111;1.3;_
2025-11-17T15:18:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:15.071 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:15.072 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.4619744, teldec = -24.256239
2025-11-17T15:18:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4619744 -24.256239
2025-11-17T15:18:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4619744 -24.256239
2025-11-17T15:18:15.072 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4619744 -24.256239
2025-11-17T15:18:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.4619744;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48172;2460997.05434112;15.30415111;1.3;_21.4370645061572 -24.3671361064685
2025-11-17T15:18:15.073 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.4370645061572     dec_j2k = -24.3671361064685
2025-11-17T15:18:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:15.073 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677409527413;171.162357330327;_
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677409527413;171.162357330327;_
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:15.074 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:15.075 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:15.076 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:15.076 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:15.076 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53827)
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:15.078 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:15.085 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:15.085 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0543411, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677409527413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992642, telescope_ra=21.4619744, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.48172, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4370645061572, telescope_dec_j2k=-24.3671361064685, observability=1)
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Status age = 3.1808559894561768s
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:18.266 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:18.267 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:18.268 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 17;21.4628643;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48261;2460997.0543781;15.30503861;1.3;_
2025-11-17T15:18:18.268 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response 17;21.4628643;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48261;2460997.0543781;15.30503861;1.3;_
2025-11-17T15:18:18.268 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:18.268 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:18.268 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:18.269 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:18.269 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:18.269 [INFO] [Thread-68416 (handle)] [driver.py] [get_status()] Telra = 21.4628643, teldec = -24.256239
2025-11-17T15:18:18.269 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4628643 -24.256239
2025-11-17T15:18:18.269 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4628643 -24.256239
2025-11-17T15:18:18.269 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4628643 -24.256239
2025-11-17T15:18:18.270 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 17;21.4628643;-24.256239;50.108227;89.992642;50.08601;90.12017;18.48261;2460997.05437812;15.30503861;1.3;_21.4379550962307 -24.3671573910696
2025-11-17T15:18:18.270 [INFO] [Thread-68416 (handle)] [driver.py] [get_status()] ra_j2k = 21.4379550962307     dec_j2k = -24.3671573910696
2025-11-17T15:18:18.270 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:18.270 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:18.270 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 140;0.104677289191584;171.162357330327;_
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response 140;0.104677289191584;171.162357330327;_
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:18.271 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:18.272 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:18:18.272 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:18:18.272 [DEBUG] [Thread-68416 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:18:18.272 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:18.272 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:18.273 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:18.273 [DEBUG] [Thread-68416 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:18.273 [DEBUG] [Thread-68416 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:18.273 [DEBUG] [Thread-68416 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:18.279 [DEBUG] [Thread-68416 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42155)
2025-11-17T15:18:18.279 [DEBUG] [Thread-68416 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:18.280 [DEBUG] [Thread-68416 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:18.280 [DEBUG] [Thread-68416 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:18.280 [DEBUG] [Thread-68416 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:18.280 [DEBUG] [Thread-68416 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:18.287 [DEBUG] [Thread-68416 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:18.287 [INFO] [Thread-68416 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0543781, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677289191584, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992642, telescope_ra=21.4628643, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.48261, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4379550962307, telescope_dec_j2k=-24.3671573910696, observability=1)
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Status age = 5.944660186767578s
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:24.232 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:24.233 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:24.234 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 17;21.4645389;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48429;2460997.05444715;15.30670861;1.3;_
2025-11-17T15:18:24.234 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response 17;21.4645389;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48429;2460997.05444715;15.30670861;1.3;_
2025-11-17T15:18:24.234 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:24.234 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:24.234 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:24.235 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:24.235 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:24.235 [INFO] [Thread-68417 (handle)] [driver.py] [get_status()] Telra = 21.4645389, teldec = -24.256239
2025-11-17T15:18:24.235 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4645389 -24.256239
2025-11-17T15:18:24.235 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4645389 -24.256239
2025-11-17T15:18:24.235 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4645389 -24.256239
2025-11-17T15:18:24.236 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 17;21.4645389;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48429;2460997.05444718;15.30670861;1.3;_21.4396309952036 -24.36719742794
2025-11-17T15:18:24.236 [INFO] [Thread-68417 (handle)] [driver.py] [get_status()] ra_j2k = 21.4396309952036     dec_j2k = -24.36719742794
2025-11-17T15:18:24.236 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:24.236 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 140;0.104677690311012;171.162362694745;_
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162362694745;_
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:24.237 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:24.238 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:24.239 [DEBUG] [Thread-68417 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:24.239 [DEBUG] [Thread-68417 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:24.239 [DEBUG] [Thread-68417 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:24.243 [DEBUG] [Thread-68417 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51399)
2025-11-17T15:18:24.244 [DEBUG] [Thread-68417 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:24.244 [DEBUG] [Thread-68417 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:24.244 [DEBUG] [Thread-68417 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:24.244 [DEBUG] [Thread-68417 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:24.244 [DEBUG] [Thread-68417 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:24.251 [DEBUG] [Thread-68417 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:24.251 [DEBUG] [Thread-68417 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:24.252 [DEBUG] [Thread-68417 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:24.252 [INFO] [Thread-68417 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05444715, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992641, telescope_ra=21.4645389, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.48429, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4396309952036, telescope_dec_j2k=-24.36719742794, observability=1)
2025-11-17T15:18:28.159 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.160 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.160 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:28.160 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:28.160 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:18:28.161 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:28.162 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:28.163 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:18:28.164 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:28.165 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Park
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:18:28.166 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 29;21.4656238;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48537;2460997.05449266;15.30779056;1.3;_Park Command Successful
2025-11-17T15:18:29.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:18:29.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:18:29.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:18:29.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:18:29.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:18:30.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:18:30.167 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:18:30.168 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:18:30.169 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:18:30.169 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:18:31.169 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:18:31.169 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:18:31.169 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:18:31.170 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:18:31.170 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:18:32.170 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:18:32.170 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:18:32.170 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:32.171 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:18:32.172 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:18:32.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:33.173 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:18:33.174 [DEBUG] [ThreadPoolExecutor-2954_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:33.175 [INFO] [ThreadPoolExecutor-2954_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 14.242723941802979s
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:38.495 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:38.496 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:38.497 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4684953;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48825;2460997.05461223;15.31065417;1.3;_
2025-11-17T15:18:38.497 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4684953;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48825;2460997.05461223;15.31065417;1.3;_
2025-11-17T15:18:38.497 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:38.497 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:38.497 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:38.498 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:38.498 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:38.498 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4684953, teldec = -24.256239
2025-11-17T15:18:38.498 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4684953 -24.256239
2025-11-17T15:18:38.498 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4684953 -24.256239
2025-11-17T15:18:38.498 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4684953 -24.256239
2025-11-17T15:18:38.499 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4684953;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48825;2460997.05461226;15.31065417;1.3;_21.4435904662394 -24.3672919349318
2025-11-17T15:18:38.499 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.4435904662394     dec_j2k = -24.3672919349318
2025-11-17T15:18:38.499 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:38.499 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:38.499 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677329303527;171.162362694745;_
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677329303527;171.162362694745;_
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:38.500 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:38.501 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44821)
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:38.504 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:38.511 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:18:38.512 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05461223, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677329303527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992641, telescope_ra=21.4684953, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.48825, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4435904662394, telescope_dec_j2k=-24.3672919349318, observability=1)
2025-11-17T15:18:38.512 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.98867225646973 seconds ago
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 2.5845870971679688s
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:41.096 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:41.097 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:41.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4692434;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48899;2460997.05464234;15.31140028;1.3;_
2025-11-17T15:18:41.098 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4692434;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48899;2460997.05464234;15.31140028;1.3;_
2025-11-17T15:18:41.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:41.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:41.098 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:41.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:41.099 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:41.099 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4692434, teldec = -24.256239
2025-11-17T15:18:41.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4692434 -24.256239
2025-11-17T15:18:41.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4692434 -24.256239
2025-11-17T15:18:41.099 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4692434 -24.256239
2025-11-17T15:18:41.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4692434;-24.256239;50.108227;89.992641;50.08601;90.12017;18.48899;2460997.05464236;15.31140028;1.3;_21.4443391472594 -24.3673097916274
2025-11-17T15:18:41.100 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.4443391472594     dec_j2k = -24.3673097916274
2025-11-17T15:18:41.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:41.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:41.100 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104676767736328;171.162351965909;_
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104676767736328;171.162351965909;_
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:41.101 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:41.102 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:41.102 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:41.102 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:41.103 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49147)
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:41.105 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:41.112 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:41.112 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05464234, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676767736328, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992641, telescope_ra=21.4692434, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.48899, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4443391472594, telescope_dec_j2k=-24.3673097916274, observability=1)
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Status age = 1.185516357421875s
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:42.298 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 17;21.469552;-24.256239;50.108227;89.992641;50.08601;90.12017;18.4893;2460997.05465624;15.31170806;1.3;_
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response 17;21.469552;-24.256239;50.108227;89.992641;50.08601;90.12017;18.4893;2460997.05465624;15.31170806;1.3;_
2025-11-17T15:18:42.299 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:42.300 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:42.300 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:42.300 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:42.300 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:42.301 [INFO] [Thread-68418 (handle)] [driver.py] [get_status()] Telra = 21.469552, teldec = -24.256239
2025-11-17T15:18:42.301 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] UnCookCoordinates 21.469552 -24.256239
2025-11-17T15:18:42.301 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.469552 -24.256239
2025-11-17T15:18:42.301 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.469552 -24.256239
2025-11-17T15:18:42.302 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 17;21.469552;-24.256239;50.108227;89.992641;50.08601;90.12017;18.4893;2460997.05465627;15.31170806;1.3;_21.4446479869675 -24.3673171564944
2025-11-17T15:18:42.302 [INFO] [Thread-68418 (handle)] [driver.py] [get_status()] ra_j2k = 21.4446479869675     dec_j2k = -24.3673171564944
2025-11-17T15:18:42.302 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:42.302 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:42.302 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162368059163;_
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162368059163;_
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:42.303 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:42.304 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:42.305 [DEBUG] [Thread-68418 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:42.305 [DEBUG] [Thread-68418 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:42.305 [DEBUG] [Thread-68418 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57207)
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:42.311 [DEBUG] [Thread-68418 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:42.318 [DEBUG] [Thread-68418 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:42.319 [DEBUG] [Thread-68418 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:42.319 [DEBUG] [Thread-68418 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:42.319 [INFO] [Thread-68418 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05465624, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992641, telescope_ra=21.469552, telescope_dec=-24.256239, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.4893, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4446479869675, telescope_dec_j2k=-24.3673171564944, observability=1)
2025-11-17T15:18:53.601 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:18:53
2025-11-17T15:18:53.601 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:18:53.601 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 11.282743692398071s
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:18:53.602 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:18:53.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.472704;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49245;2460997.05478707;15.31485139;1.3;_
2025-11-17T15:18:53.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.472704;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49245;2460997.05478707;15.31485139;1.3;_
2025-11-17T15:18:53.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:18:53.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:18:53.603 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:18:53.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:53.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:18:53.604 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.472704, teldec = -24.256238
2025-11-17T15:18:53.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.472704 -24.256238
2025-11-17T15:18:53.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.472704 -24.256238
2025-11-17T15:18:53.604 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.472704 -24.256238
2025-11-17T15:18:53.605 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.472704;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49245;2460997.05478709;15.31485139;1.3;_21.4478024364641 -24.3673913392661
2025-11-17T15:18:53.605 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.4478024364641     dec_j2k = -24.3673913392661
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162362694745;_
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162362694745;_
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:53.606 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:18:53.607 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:18:53.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:53.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:18:53.608 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:18:53.611 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42113)
2025-11-17T15:18:53.612 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:18:53.612 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:18:53.612 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:18:53.612 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:18:53.612 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:18:53.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:18:53.619 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:53.619 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:18:53.620 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:18:53.620 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05478707, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.99264, telescope_ra=21.472704, telescope_dec=-24.256238, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.49245, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4478024364641, telescope_dec_j2k=-24.3673913392661, observability=1)
2025-11-17T15:19:00.461 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:00.461 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Status age = 6.8415162563323975s
2025-11-17T15:19:00.461 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:00.461 [DEBUG] [Thread-68419 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:00.461 [DEBUG] [Thread-68419 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:00.462 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:00.462 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:00.462 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:00.462 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:00.463 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:00.464 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 17;21.4746203;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49437;2460997.05486648;15.3167625;1.3;_
2025-11-17T15:19:00.464 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response 17;21.4746203;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49437;2460997.05486648;15.3167625;1.3;_
2025-11-17T15:19:00.464 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:00.464 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:00.464 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:00.465 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:00.465 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:00.465 [INFO] [Thread-68419 (handle)] [driver.py] [get_status()] Telra = 21.4746203, teldec = -24.256238
2025-11-17T15:19:00.465 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4746203 -24.256238
2025-11-17T15:19:00.465 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4746203 -24.256238
2025-11-17T15:19:00.465 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4746203 -24.256238
2025-11-17T15:19:00.466 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 17;21.4746203;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49437;2460997.0548665;15.3167625;1.3;_21.4497202264996 -24.3674370109405
2025-11-17T15:19:00.466 [INFO] [Thread-68419 (handle)] [driver.py] [get_status()] ra_j2k = 21.4497202264996     dec_j2k = -24.3674370109405
2025-11-17T15:19:00.466 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:00.466 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:00.466 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162362694745;_
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162362694745;_
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:00.467 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:00.468 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:00.469 [DEBUG] [Thread-68419 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:00.469 [DEBUG] [Thread-68419 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:00.469 [DEBUG] [Thread-68419 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58833)
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:00.471 [DEBUG] [Thread-68419 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:00.478 [DEBUG] [Thread-68419 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:00.479 [DEBUG] [Thread-68419 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:00.479 [DEBUG] [Thread-68419 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:00.479 [DEBUG] [Thread-68419 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:00.479 [INFO] [Thread-68419 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05486648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.99264, telescope_ra=21.4746203, telescope_dec=-24.256238, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.49437, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:18:07.276053', telescope_ra_j2k=21.4497202264996, telescope_dec_j2k=-24.3674370109405, observability=1)
2025-11-17T15:19:07.418 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:07.418 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:07.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:07.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:07.418 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:07.419 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:07.419 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:07.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:07.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:07.420 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:07.420 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:19:07.420 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:07.420 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:07.420 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:07.420 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:07.420 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:19:07.421 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:19:07.422 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:08.422 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:08.422 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:08.422 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:08.422 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:08.422 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:08.423 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:08.423 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:08.423 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:08.423 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:08.423 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:08.424 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:08.425 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:08.425 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:08.425 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:08.425 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:08.425 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:08.426 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:08.426 [DEBUG] [ThreadPoolExecutor-2956_0] [payload.py] [to_registers()] [0]
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 32989)
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:08.427 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:08.434 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:08.434 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:19:08.434 [DEBUG] [ThreadPoolExecutor-2956_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:19:08.434 [DEBUG] [ThreadPoolExecutor-2956_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:19:08.435 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:08.435 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:08.435 [DEBUG] [ThreadPoolExecutor-2956_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 14.560380458831787s
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:15.039 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:15.040 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.478692;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49844;2460997.0550352;15.32082306;1.3;_
2025-11-17T15:19:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.478692;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49844;2460997.0550352;15.32082306;1.3;_
2025-11-17T15:19:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:15.041 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:15.042 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.478692, teldec = -24.256238
2025-11-17T15:19:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.478692 -24.256238
2025-11-17T15:19:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.478692 -24.256238
2025-11-17T15:19:15.042 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.478692 -24.256238
2025-11-17T15:19:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.478692;-24.256238;50.108227;89.99264;50.08601;90.12017;18.49844;2460997.05503522;15.32082306;1.3;_21.4537950947659 -24.3675339608235
2025-11-17T15:19:15.043 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.4537950947659     dec_j2k = -24.3675339608235
2025-11-17T15:19:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:15.043 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677329303527;171.162362694745;_
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677329303527;171.162362694745;_
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:15.044 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:15.045 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:15.046 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:15.052 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38447)
2025-11-17T15:19:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:15.053 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:15.053 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:15.060 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0550352, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677329303527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.99264, telescope_ra=21.478692, telescope_dec=-24.256238, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.49844, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4537950947659, telescope_dec_j2k=-24.3675339608235, observability=1)
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Status age = 3.2671422958374023s
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:18.327 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:18.328 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:18.329 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 17;21.4796067;-24.256238;50.108227;89.992639;50.08601;90.12017;18.49936;2460997.05507325;15.32173528;1.3;_
2025-11-17T15:19:18.329 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response 17;21.4796067;-24.256238;50.108227;89.992639;50.08601;90.12017;18.49936;2460997.05507325;15.32173528;1.3;_
2025-11-17T15:19:18.329 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:18.329 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:18.329 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:18.330 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:18.330 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:18.330 [INFO] [Thread-68420 (handle)] [driver.py] [get_status()] Telra = 21.4796067, teldec = -24.256238
2025-11-17T15:19:18.330 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4796067 -24.256238
2025-11-17T15:19:18.330 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4796067 -24.256238
2025-11-17T15:19:18.330 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4796067 -24.256238
2025-11-17T15:19:18.331 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 17;21.4796067;-24.256238;50.108227;89.992639;50.08601;90.12017;18.49936;2460997.05507328;15.32173528;1.3;_21.4547105069375 -24.3675557232195
2025-11-17T15:19:18.331 [INFO] [Thread-68420 (handle)] [driver.py] [get_status()] ra_j2k = 21.4547105069375     dec_j2k = -24.3675557232195
2025-11-17T15:19:18.331 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:18.331 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 140;0.104677168855756;171.162357330327;_
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response 140;0.104677168855756;171.162357330327;_
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:18.332 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:18.333 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:18.333 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:18.333 [DEBUG] [Thread-68420 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:19:18.333 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:18.334 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:18.334 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:18.334 [DEBUG] [Thread-68420 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:18.334 [DEBUG] [Thread-68420 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:18.334 [DEBUG] [Thread-68420 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50161)
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:18.338 [DEBUG] [Thread-68420 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:18.339 [DEBUG] [Thread-68420 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:18.339 [INFO] [Thread-68420 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05507325, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677168855756, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992639, telescope_ra=21.4796067, telescope_dec=-24.256238, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.49936, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4547105069375, telescope_dec_j2k=-24.3675557232195, observability=1)
2025-11-17T15:19:18.528 [DEBUG] [Thread-68421 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:18.528 [DEBUG] [Thread-68421 (handle)] [server.py] [get_status()] Status age = 0.18906211853027344s
2025-11-17T15:19:18.529 [DEBUG] [Thread-68421 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.18906211853027344
2025-11-17T15:19:33.435 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:33.435 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:33.435 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:33.435 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:33.435 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:33.436 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:19:33.437 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:19:33.438 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Status age = 18.261698007583618s
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:36.601 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:36.602 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:36.603 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 17;21.4847059;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50446;2460997.05528476;15.32682056;1.3;_
2025-11-17T15:19:36.603 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response 17;21.4847059;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50446;2460997.05528476;15.32682056;1.3;_
2025-11-17T15:19:36.603 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:36.603 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:36.603 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:36.604 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:36.604 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:36.604 [INFO] [Thread-68422 (handle)] [driver.py] [get_status()] Telra = 21.4847059, teldec = -24.256237
2025-11-17T15:19:36.604 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4847059 -24.256237
2025-11-17T15:19:36.604 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4847059 -24.256237
2025-11-17T15:19:36.604 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4847059 -24.256237
2025-11-17T15:19:36.605 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 17;21.4847059;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50446;2460997.05528478;15.32682056;1.3;_21.4598136800893 -24.3676759268157
2025-11-17T15:19:36.605 [INFO] [Thread-68422 (handle)] [driver.py] [get_status()] ra_j2k = 21.4598136800893     dec_j2k = -24.3676759268157
2025-11-17T15:19:36.605 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:36.605 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:36.605 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 140;0.104677409527413;171.162351965909;_
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response 140;0.104677409527413;171.162351965909;_
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:36.606 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:36.607 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:36.608 [DEBUG] [Thread-68422 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:36.608 [DEBUG] [Thread-68422 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:36.608 [DEBUG] [Thread-68422 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51947)
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:36.615 [DEBUG] [Thread-68422 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:36.622 [DEBUG] [Thread-68422 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:36.622 [INFO] [Thread-68422 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05528476, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677409527413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992639, telescope_ra=21.4847059, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.50446, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4598136800893, telescope_dec_j2k=-24.3676759268157, observability=1)
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.9492623805999756s
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:38.572 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:38.573 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:38.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4852385;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50499;2460997.05530757;15.32735167;1.3;_
2025-11-17T15:19:38.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.4852385;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50499;2460997.05530757;15.32735167;1.3;_
2025-11-17T15:19:38.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:38.574 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:38.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:38.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:38.575 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:38.576 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.4852385, teldec = -24.256237
2025-11-17T15:19:38.576 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.4852385 -24.256237
2025-11-17T15:19:38.576 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.4852385 -24.256237
2025-11-17T15:19:38.576 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4852385 -24.256237
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.4852385;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50499;2460997.0553076;15.32735167;1.3;_21.4603466953427 -24.3676885749118
2025-11-17T15:19:38.577 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.4603466953427     dec_j2k = -24.3676885749118
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10467736941547;171.162346601491;_
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10467736941547;171.162346601491;_
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:38.577 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:38.578 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48731)
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:38.584 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:38.591 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:19:38.591 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05530757, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467736941547, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992639, telescope_ra=21.4852385, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.50499, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4603466953427, telescope_dec_j2k=-24.3676885749118, observability=1)
2025-11-17T15:19:38.592 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.99018859863281 seconds ago
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 1.6142759323120117s
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:40.206 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:40.207 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:40.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4856866;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50544;2460997.05532648;15.32779861;1.3;_
2025-11-17T15:19:40.208 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.4856866;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50544;2460997.05532648;15.32779861;1.3;_
2025-11-17T15:19:40.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:40.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:40.208 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:40.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:40.209 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:40.209 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.4856866, teldec = -24.256237
2025-11-17T15:19:40.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4856866 -24.256237
2025-11-17T15:19:40.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4856866 -24.256237
2025-11-17T15:19:40.209 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4856866 -24.256237
2025-11-17T15:19:40.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.4856866;-24.256237;50.108227;89.992639;50.08601;90.12017;18.50544;2460997.0553265;15.32779861;1.3;_21.4607951447549 -24.3676992146542
2025-11-17T15:19:40.210 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.4607951447549     dec_j2k = -24.3676992146542
2025-11-17T15:19:40.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:40.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:40.210 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162346601491;_
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162346601491;_
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:40.211 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:40.212 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:40.212 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:40.213 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40357)
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:40.217 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:40.224 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:40.224 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:40.224 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:40.225 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:40.225 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05532648, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992639, telescope_ra=21.4856866, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.50544, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4607951447549, telescope_dec_j2k=-24.3676992146542, observability=1)
2025-11-17T15:19:53.681 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:19:53
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 13.455803632736206s
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:53.681 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4894466;-24.256237;50.108227;89.992638;50.08601;90.12017;18.5092;2460997.05548243;15.33154833;1.3;_
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.4894466;-24.256237;50.108227;89.992638;50.08601;90.12017;18.5092;2460997.05548243;15.33154833;1.3;_
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:53.682 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:53.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:53.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:53.683 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.4894466, teldec = -24.256237
2025-11-17T15:19:53.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4894466 -24.256237
2025-11-17T15:19:53.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4894466 -24.256237
2025-11-17T15:19:53.683 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4894466 -24.256237
2025-11-17T15:19:53.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.4894466;-24.256237;50.108227;89.992638;50.08601;90.12017;18.5092;2460997.05548245;15.33154833;1.3;_21.4645580781421 -24.3677884327136
2025-11-17T15:19:53.684 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.4645580781421     dec_j2k = -24.3677884327136
2025-11-17T15:19:53.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:53.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:53.684 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.10467765019907;171.162357330327;_
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.10467765019907;171.162357330327;_
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:53.685 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:53.686 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:53.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:53.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:19:53.687 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 39437)
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:53.693 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:53.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:53.700 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:53.700 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:53.700 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:53.701 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:53.701 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:53.701 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:53.701 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:53.701 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:53.701 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05548243, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467765019907, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992638, telescope_ra=21.4894466, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5092, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4645580781421, telescope_dec_j2k=-24.3677884327136, observability=1)
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Status age = 1.0008342266082764s
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:19:54.702 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:19:54.703 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 17;21.4897274;-24.256237;50.108227;89.992638;50.08601;90.12017;18.50948;2460997.05549425;15.33182833;1.3;_
2025-11-17T15:19:54.704 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response 17;21.4897274;-24.256237;50.108227;89.992638;50.08601;90.12017;18.50948;2460997.05549425;15.33182833;1.3;_
2025-11-17T15:19:54.704 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:19:54.704 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:19:54.704 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:19:54.705 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:54.705 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:19:54.705 [INFO] [Thread-68423 (handle)] [driver.py] [get_status()] Telra = 21.4897274, teldec = -24.256237
2025-11-17T15:19:54.705 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4897274 -24.256237
2025-11-17T15:19:54.705 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4897274 -24.256237
2025-11-17T15:19:54.705 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4897274 -24.256237
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 17;21.4897274;-24.256237;50.108227;89.992638;50.08601;90.12017;18.50948;2460997.05549428;15.33182833;1.3;_21.4648390973157 -24.3677950913008
2025-11-17T15:19:54.706 [INFO] [Thread-68423 (handle)] [driver.py] [get_status()] ra_j2k = 21.4648390973157     dec_j2k = -24.3677950913008
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 140;0.104677489751298;171.162341237072;_
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response 140;0.104677489751298;171.162341237072;_
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:54.706 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:19:54.707 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:19:54.708 [DEBUG] [Thread-68423 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:54.708 [DEBUG] [Thread-68423 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:19:54.708 [DEBUG] [Thread-68423 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:19:54.713 [DEBUG] [Thread-68423 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 54621)
2025-11-17T15:19:54.713 [DEBUG] [Thread-68423 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:19:54.713 [DEBUG] [Thread-68423 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:19:54.713 [DEBUG] [Thread-68423 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:19:54.713 [DEBUG] [Thread-68423 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:19:54.714 [DEBUG] [Thread-68423 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:19:54.720 [DEBUG] [Thread-68423 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:19:54.721 [DEBUG] [Thread-68423 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:19:54.721 [INFO] [Thread-68423 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05549425, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677489751298, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162341237072, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108227, telescope_az=89.992638, telescope_ra=21.4897274, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.50948, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:19:07.418014', telescope_ra_j2k=21.4648390973157, telescope_dec_j2k=-24.3677950913008, observability=1)
2025-11-17T15:20:07.560 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:07.560 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:07.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:07.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:07.560 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:07.561 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:07.561 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:07.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:07.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:07.562 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:07.562 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:20:07.562 [INFO] [ThreadPoolExecutor-2957_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:20:07.563 [INFO] [ThreadPoolExecutor-2957_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Status age = 18.049963235855103s
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:12.771 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:12.772 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:12.773 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 17;21.4947706;-24.256237;50.108226;89.992638;50.08601;90.12017;18.51452;2460997.05570339;15.33685778;1.3;_
2025-11-17T15:20:12.773 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response 17;21.4947706;-24.256237;50.108226;89.992638;50.08601;90.12017;18.51452;2460997.05570339;15.33685778;1.3;_
2025-11-17T15:20:12.773 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:12.773 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:12.773 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:12.774 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:12.774 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:12.774 [INFO] [Thread-68424 (handle)] [driver.py] [get_status()] Telra = 21.4947706, teldec = -24.256237
2025-11-17T15:20:12.774 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4947706 -24.256237
2025-11-17T15:20:12.774 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4947706 -24.256237
2025-11-17T15:20:12.774 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4947706 -24.256237
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 17;21.4947706;-24.256237;50.108226;89.992638;50.08601;90.12017;18.51452;2460997.05570341;15.33685778;1.3;_21.469886236199 -24.3679145786228
2025-11-17T15:20:12.776 [INFO] [Thread-68424 (handle)] [driver.py] [get_status()] ra_j2k = 21.469886236199     dec_j2k = -24.3679145786228
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162362694745;_
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162362694745;_
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:12.776 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:12.777 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:12.778 [DEBUG] [Thread-68424 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:12.779 [DEBUG] [Thread-68424 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:12.779 [DEBUG] [Thread-68424 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37133)
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:12.781 [DEBUG] [Thread-68424 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:12.788 [DEBUG] [Thread-68424 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:12.788 [INFO] [Thread-68424 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05570339, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992638, telescope_ra=21.4947706, telescope_dec=-24.256237, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.51452, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.469886236199, telescope_dec_j2k=-24.3679145786228, observability=1)
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 2.271655559539795s
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.495406;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51516;2460997.05572988;15.33749139;1.3;_
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.495406;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51516;2460997.05572988;15.33749139;1.3;_
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:15.062 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.495406, teldec = -24.256236
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.495406 -24.256236
2025-11-17T15:20:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.495406 -24.256236
2025-11-17T15:20:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.495406 -24.256236
2025-11-17T15:20:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.495406;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51516;2460997.0557299;15.33749139;1.3;_21.4705221329271 -24.3679286194337
2025-11-17T15:20:15.063 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.4705221329271     dec_j2k = -24.3679286194337
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677690311012;171.162346601491;_
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677690311012;171.162346601491;_
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:15.068 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 44093)
2025-11-17T15:20:15.068 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:15.068 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:15.068 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:15.069 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:15.075 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:15.076 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:15.076 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:15.076 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:15.076 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05572988, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677690311012, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992637, telescope_ra=21.495406, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.51516, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.4705221329271, telescope_dec_j2k=-24.3679286194337, observability=1)
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Status age = 3.2923731803894043s
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:18.368 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:18.369 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 17;21.4963315;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51608;2460997.05576817;15.33841444;1.3;_
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response 17;21.4963315;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51608;2460997.05576817;15.33841444;1.3;_
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:18.370 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:18.371 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:18.371 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:18.371 [INFO] [Thread-68425 (handle)] [driver.py] [get_status()] Telra = 21.4963315, teldec = -24.256236
2025-11-17T15:20:18.372 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4963315 -24.256236
2025-11-17T15:20:18.372 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4963315 -24.256236
2025-11-17T15:20:18.372 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4963315 -24.256236
2025-11-17T15:20:18.372 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 17;21.4963315;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51608;2460997.05576819;15.33841444;1.3;_21.4714483563925 -24.3679505216997
2025-11-17T15:20:18.373 [INFO] [Thread-68425 (handle)] [driver.py] [get_status()] ra_j2k = 21.4714483563925     dec_j2k = -24.3679505216997
2025-11-17T15:20:18.373 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:18.373 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:18.373 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162346601491;_
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162346601491;_
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:18.374 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:18.375 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:18.376 [DEBUG] [Thread-68425 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:18.376 [DEBUG] [Thread-68425 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:18.376 [DEBUG] [Thread-68425 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 33797)
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:18.380 [DEBUG] [Thread-68425 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:18.387 [DEBUG] [Thread-68425 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:18.387 [DEBUG] [Thread-68425 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:18.388 [DEBUG] [Thread-68425 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:18.388 [INFO] [Thread-68425 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05576817, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992637, telescope_ra=21.4963315, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.51608, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.4714483563925, telescope_dec_j2k=-24.3679505216997, observability=1)
2025-11-17T15:20:28.438 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.438 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.439 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:28.439 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:28.439 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:20:28.440 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:28.441 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:28.442 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:20:28.443 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:28.444 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Park
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:20:28.445 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:20:28.446 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 29;21.4991378;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51889;2460997.05588479;15.34121306;1.3;_Park Command Successful
2025-11-17T15:20:29.446 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:20:29.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:20:29.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:20:29.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:20:29.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:20:30.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:20:30.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:20:30.447 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:20:30.448 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:20:30.449 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_ParkRotatorAccepted
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Status age = 12.454420804977417s
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:30.842 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:30.843 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:30.843 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 17;21.4998119;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51956;2460997.05591255;15.34188528;1.3;_
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response 17;21.4998119;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51956;2460997.05591255;15.34188528;1.3;_
2025-11-17T15:20:30.844 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:30.845 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:30.845 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:30.846 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:30.846 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:30.846 [INFO] [Thread-68426 (handle)] [driver.py] [get_status()] Telra = 21.4998119, teldec = -24.256236
2025-11-17T15:20:30.846 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] UnCookCoordinates 21.4998119 -24.256236
2025-11-17T15:20:30.846 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.4998119 -24.256236
2025-11-17T15:20:30.846 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.4998119 -24.256236
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 17;21.4998119;-24.256236;50.108226;89.992637;50.08601;90.12017;18.51956;2460997.05591258;15.34188528;1.3;_21.4749314784545 -24.3680328283916
2025-11-17T15:20:30.847 [INFO] [Thread-68426 (handle)] [driver.py] [get_status()] ra_j2k = 21.4749314784545     dec_j2k = -24.3680328283916
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:20:30.847 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:30.848 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:30.848 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:30.848 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:30.849 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:30.850 [DEBUG] [Thread-68426 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:30.850 [DEBUG] [Thread-68426 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:30.850 [DEBUG] [Thread-68426 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46209)
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:30.856 [DEBUG] [Thread-68426 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:30.863 [DEBUG] [Thread-68426 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:30.863 [DEBUG] [Thread-68426 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:30.864 [DEBUG] [Thread-68426 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:30.864 [INFO] [Thread-68426 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05591255, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677770534898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992637, telescope_ra=21.4998119, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.51956, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.4749314784545, telescope_dec_j2k=-24.3680328283916, observability=1)
2025-11-17T15:20:31.449 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:20:31.449 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:20:31.449 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:20:31.450 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:20:31.450 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:20:32.450 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:20:32.450 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:20:32.450 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:32.451 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:20:32.452 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:20:32.453 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:33.453 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:33.453 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:33.453 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:33.453 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:20:33.454 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:20:33.455 [DEBUG] [ThreadPoolExecutor-2956_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:33.455 [INFO] [ThreadPoolExecutor-2956_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 7.787804365158081s
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:38.652 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:38.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5019811;-24.256236;50.108226;89.992637;50.08601;90.12017;18.52173;2460997.05600293;15.34404861;1.3;_
2025-11-17T15:20:38.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.5019811;-24.256236;50.108226;89.992637;50.08601;90.12017;18.52173;2460997.05600293;15.34404861;1.3;_
2025-11-17T15:20:38.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:38.653 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:38.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:38.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:38.654 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:38.654 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.5019811, teldec = -24.256236
2025-11-17T15:20:38.655 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.5019811 -24.256236
2025-11-17T15:20:38.655 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.5019811 -24.256236
2025-11-17T15:20:38.655 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5019811 -24.256236
2025-11-17T15:20:38.656 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5019811;-24.256236;50.108226;89.992637;50.08601;90.12017;18.52173;2460997.05600296;15.34404861;1.3;_21.47710237615 -24.3680840805175
2025-11-17T15:20:38.656 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.47710237615     dec_j2k = -24.3680840805175
2025-11-17T15:20:38.656 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:38.656 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:38.656 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677008407985;171.162362694745;_
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677008407985;171.162362694745;_
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:38.657 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:38.658 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:20:38.658 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:20:38.658 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53043)
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:38.660 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:38.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:38.667 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:38.668 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:20:38.668 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05600293, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677008407985, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992637, telescope_ra=21.5019811, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.52173, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.47710237615, telescope_dec_j2k=-24.3680840805175, observability=1)
2025-11-17T15:20:38.668 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.987480878829956 seconds ago
2025-11-17T15:20:39.317 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:39.317 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.6495931148529053s
2025-11-17T15:20:39.317 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.6495931148529053
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Status age = 10.297106266021729s
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:48.965 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:48.966 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:48.966 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:48.967 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 17;21.5048517;-24.256236;50.108226;89.992636;50.08601;90.12017;18.5246;2460997.0561223;15.34691139;1.3;_
2025-11-17T15:20:48.968 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response 17;21.5048517;-24.256236;50.108226;89.992636;50.08601;90.12017;18.5246;2460997.0561223;15.34691139;1.3;_
2025-11-17T15:20:48.968 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:48.968 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:48.968 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:48.969 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:48.969 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:48.969 [INFO] [Thread-68427 (handle)] [driver.py] [get_status()] Telra = 21.5048517, teldec = -24.256236
2025-11-17T15:20:48.969 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5048517 -24.256236
2025-11-17T15:20:48.969 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5048517 -24.256236
2025-11-17T15:20:48.969 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5048517 -24.256236
2025-11-17T15:20:48.970 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 17;21.5048517;-24.256236;50.108226;89.992636;50.08601;90.12017;18.5246;2460997.05612234;15.34691139;1.3;_21.4799752241299 -24.3681518498566
2025-11-17T15:20:48.970 [INFO] [Thread-68427 (handle)] [driver.py] [get_status()] ra_j2k = 21.4799752241299     dec_j2k = -24.3681518498566
2025-11-17T15:20:48.970 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:48.970 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:48.970 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 140;0.104677289191584;171.162357330327;_
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response 140;0.104677289191584;171.162357330327;_
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:48.971 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:48.972 [DEBUG] [Thread-68427 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49763)
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:48.976 [DEBUG] [Thread-68427 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:48.984 [DEBUG] [Thread-68427 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:48.984 [DEBUG] [Thread-68427 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:48.984 [DEBUG] [Thread-68427 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:48.984 [DEBUG] [Thread-68427 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:48.985 [DEBUG] [Thread-68427 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:48.985 [DEBUG] [Thread-68427 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:48.985 [DEBUG] [Thread-68427 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:48.985 [DEBUG] [Thread-68427 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:48.985 [DEBUG] [Thread-68427 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:48.985 [INFO] [Thread-68427 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0561223, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677289191584, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992636, telescope_ra=21.5048517, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5246, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.4799752241299, telescope_dec_j2k=-24.3681518498566, observability=1)
2025-11-17T15:20:53.762 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:20:53
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.777234077453613s
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:20:53.762 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:20:53.765 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:20:53.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.506196;-24.256236;50.108226;89.992636;50.08601;90.12017;18.52595;2460997.05617785;15.34825194;1.3;_
2025-11-17T15:20:53.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.506196;-24.256236;50.108226;89.992636;50.08601;90.12017;18.52595;2460997.05617785;15.34825194;1.3;_
2025-11-17T15:20:53.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:20:53.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:20:53.766 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:20:53.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:53.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:20:53.767 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.506196, teldec = -24.256236
2025-11-17T15:20:53.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.506196 -24.256236
2025-11-17T15:20:53.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.506196 -24.256236
2025-11-17T15:20:53.767 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.506196 -24.256236
2025-11-17T15:20:53.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.506196;-24.256236;50.108226;89.992636;50.08601;90.12017;18.52595;2460997.05617787;15.34825194;1.3;_21.481320577383 -24.3681835646776
2025-11-17T15:20:53.768 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.481320577383     dec_j2k = -24.3681835646776
2025-11-17T15:20:53.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:20:53.768 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:20:53.769 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104676968296042;171.162357330327;_
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104676968296042;171.162357330327;_
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:20:53.770 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:20:53.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:53.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:20:53.771 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38283)
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:20:53.774 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:20:53.781 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:20:53.782 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:20:53.782 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:20:53.782 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:20:53.782 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05617785, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104676968296042, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992636, telescope_ra=21.506196, telescope_dec=-24.256236, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.52595, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.481320577383, telescope_dec_j2k=-24.3681835646776, observability=1)
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Status age = 13.251572608947754s
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:07.033 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:07.034 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:07.034 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:07.034 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:07.034 [DEBUG] [Thread-68428 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 17;21.5098665;-24.256235;50.108226;89.992636;50.08601;90.12017;18.52962;2460997.05633142;15.3519125;1.3;_
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response 17;21.5098665;-24.256235;50.108226;89.992636;50.08601;90.12017;18.52962;2460997.05633142;15.3519125;1.3;_
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:07.035 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:07.036 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:07.036 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:07.036 [INFO] [Thread-68428 (handle)] [driver.py] [get_status()] Telra = 21.5098665, teldec = -24.256235
2025-11-17T15:21:07.036 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5098665 -24.256235
2025-11-17T15:21:07.036 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5098665 -24.256235
2025-11-17T15:21:07.036 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5098665 -24.256235
2025-11-17T15:21:07.037 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 17;21.5098665;-24.256235;50.108226;89.992636;50.08601;90.12017;18.52962;2460997.05633145;15.3519125;1.3;_21.484993955036 -24.3682690895453
2025-11-17T15:21:07.037 [INFO] [Thread-68428 (handle)] [driver.py] [get_status()] ra_j2k = 21.484993955036     dec_j2k = -24.3682690895453
2025-11-17T15:21:07.038 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:07.038 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:07.038 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 140;0.104677329303527;171.162357330327;_
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response 140;0.104677329303527;171.162357330327;_
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:07.039 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:07.040 [DEBUG] [Thread-68428 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:07.040 [DEBUG] [Thread-68428 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:07.040 [DEBUG] [Thread-68428 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:07.045 [DEBUG] [Thread-68428 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 53015)
2025-11-17T15:21:07.045 [DEBUG] [Thread-68428 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:07.045 [DEBUG] [Thread-68428 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:07.046 [DEBUG] [Thread-68428 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:07.046 [DEBUG] [Thread-68428 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:07.046 [DEBUG] [Thread-68428 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:07.053 [DEBUG] [Thread-68428 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:07.053 [INFO] [Thread-68428 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05633142, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677329303527, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992636, telescope_ra=21.5098665, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.52962, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:20:07.559890', telescope_ra_j2k=21.484993955036, telescope_dec_j2k=-24.3682690895453, observability=1)
2025-11-17T15:21:07.703 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:07.703 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:07.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:07.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:07.703 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:07.704 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:07.704 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:07.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:07.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:07.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:07.705 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:07.705 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:07.706 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:21:07.707 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:08.708 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:08.708 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:08.708 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:08.708 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:08.708 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:21:08.709 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:08.710 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:08.711 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:08.711 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:08.711 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:08.711 [DEBUG] [ThreadPoolExecutor-2958_0] [payload.py] [to_registers()] [0]
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40321)
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:08.714 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:08.721 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:08.721 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:21:08.721 [DEBUG] [ThreadPoolExecutor-2958_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:21:08.721 [DEBUG] [ThreadPoolExecutor-2958_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:21:08.721 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:08.722 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:08.722 [DEBUG] [ThreadPoolExecutor-2958_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 8.009549856185913s
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5121269;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53188;2460997.05642435;15.35416667;1.3;_
2025-11-17T15:21:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.5121269;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53188;2460997.05642435;15.35416667;1.3;_
2025-11-17T15:21:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:15.066 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.5121269, teldec = -24.256235
2025-11-17T15:21:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5121269 -24.256235
2025-11-17T15:21:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5121269 -24.256235
2025-11-17T15:21:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5121269 -24.256235
2025-11-17T15:21:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5121269;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53188;2460997.05642439;15.35416667;1.3;_21.487256128342 -24.3683223230413
2025-11-17T15:21:15.067 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.487256128342     dec_j2k = -24.3683223230413
2025-11-17T15:21:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162351965909;_
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162351965909;_
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:15.068 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:15.069 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:15.070 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 52787)
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:15.073 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:15.080 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:15.080 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05642435, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992635, telescope_ra=21.5121269, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.53188, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.487256128342, telescope_dec_j2k=-24.3683223230413, observability=1)
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Status age = 3.341921091079712s
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:18.422 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:18.423 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:18.424 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 17;21.5130424;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53279;2460997.05646324;15.35507972;1.3;_
2025-11-17T15:21:18.424 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response 17;21.5130424;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53279;2460997.05646324;15.35507972;1.3;_
2025-11-17T15:21:18.424 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:18.424 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:18.424 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:18.425 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:18.425 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:18.425 [INFO] [Thread-68429 (handle)] [driver.py] [get_status()] Telra = 21.5130424, teldec = -24.256235
2025-11-17T15:21:18.425 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5130424 -24.256235
2025-11-17T15:21:18.425 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5130424 -24.256235
2025-11-17T15:21:18.425 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5130424 -24.256235
2025-11-17T15:21:18.426 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 17;21.5130424;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53279;2460997.05646326;15.35507972;1.3;_21.4881723468299 -24.3683438724451
2025-11-17T15:21:18.426 [INFO] [Thread-68429 (handle)] [driver.py] [get_status()] ra_j2k = 21.4881723468299     dec_j2k = -24.3683438724451
2025-11-17T15:21:18.426 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:18.426 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:18.426 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 140;0.104677409527413;171.162368059163;_
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response 140;0.104677409527413;171.162368059163;_
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:18.427 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:18.428 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:18.429 [DEBUG] [Thread-68429 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:18.429 [DEBUG] [Thread-68429 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:18.429 [DEBUG] [Thread-68429 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55217)
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:18.434 [DEBUG] [Thread-68429 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:18.442 [DEBUG] [Thread-68429 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:18.442 [INFO] [Thread-68429 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05646324, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677409527413, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992635, telescope_ra=21.5130424, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.53279, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.4881723468299, telescope_dec_j2k=-24.3683438724451, observability=1)
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Status age = 6.657609701156616s
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:25.100 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:25.101 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 17;21.5149097;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53466;2460997.05654052;15.35694194;1.3;_
2025-11-17T15:21:25.101 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response 17;21.5149097;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53466;2460997.05654052;15.35694194;1.3;_
2025-11-17T15:21:25.101 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:25.101 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:25.101 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:25.102 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:25.102 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:25.102 [INFO] [Thread-68430 (handle)] [driver.py] [get_status()] Telra = 21.5149097, teldec = -24.256235
2025-11-17T15:21:25.102 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5149097 -24.256235
2025-11-17T15:21:25.102 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5149097 -24.256235
2025-11-17T15:21:25.102 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5149097 -24.256235
2025-11-17T15:21:25.103 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 17;21.5149097;-24.256235;50.108226;89.992635;50.08601;90.12017;18.53466;2460997.05654054;15.35694194;1.3;_21.4900411127749 -24.3683878059287
2025-11-17T15:21:25.103 [INFO] [Thread-68430 (handle)] [driver.py] [get_status()] ra_j2k = 21.4900411127749     dec_j2k = -24.3683878059287
2025-11-17T15:21:25.103 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:25.103 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 140;0.10467765019907;171.162362694745;_
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response 140;0.10467765019907;171.162362694745;_
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:25.104 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:25.105 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:25.105 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:25.106 [DEBUG] [Thread-68430 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:21:25.109 [DEBUG] [Thread-68430 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34723)
2025-11-17T15:21:25.110 [DEBUG] [Thread-68430 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:25.110 [DEBUG] [Thread-68430 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:25.110 [DEBUG] [Thread-68430 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:25.110 [DEBUG] [Thread-68430 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:25.110 [DEBUG] [Thread-68430 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:25.117 [DEBUG] [Thread-68430 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:25.117 [INFO] [Thread-68430 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05654052, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467765019907, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992635, telescope_ra=21.5149097, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.53466, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.4900411127749, telescope_dec_j2k=-24.3683878059287, observability=1)
2025-11-17T15:21:33.722 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:33.722 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:33.722 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:33.722 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:33.722 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:33.723 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:21:33.724 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:21:33.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 13.292580604553223s
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:38.410 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:38.411 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:38.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5186215;-24.256235;50.108226;89.992634;50.08601;90.12017;18.53837;2460997.05669458;15.36064361;1.3;_
2025-11-17T15:21:38.412 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.5186215;-24.256235;50.108226;89.992634;50.08601;90.12017;18.53837;2460997.05669458;15.36064361;1.3;_
2025-11-17T15:21:38.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:38.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:38.412 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:38.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:38.413 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:38.413 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.5186215, teldec = -24.256235
2025-11-17T15:21:38.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5186215 -24.256235
2025-11-17T15:21:38.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5186215 -24.256235
2025-11-17T15:21:38.413 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5186215 -24.256235
2025-11-17T15:21:38.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5186215;-24.256235;50.108226;89.992634;50.08601;90.12017;18.53837;2460997.05669461;15.36064361;1.3;_21.4937558286805 -24.3684750576457
2025-11-17T15:21:38.414 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.4937558286805     dec_j2k = -24.3684750576457
2025-11-17T15:21:38.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:38.414 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677850758784;171.162351965909;_
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677850758784;171.162351965909;_
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:38.415 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:38.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:38.416 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:38.416 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:38.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:38.416 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:38.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:38.417 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:38.417 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:21:38.418 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55831)
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:38.420 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:38.427 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:38.428 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:38.428 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:38.428 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:38.428 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05669458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677850758784, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992634, telescope_ra=21.5186215, telescope_dec=-24.256235, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.53837, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.4937558286805, telescope_dec_j2k=-24.3684750576457, observability=1)
2025-11-17T15:21:38.728 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:21:38.728 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.2999696731567383s
2025-11-17T15:21:38.728 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.2999696731567383
2025-11-17T15:21:38.728 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.965986251831055 seconds ago
2025-11-17T15:21:43.216 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:43.216 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Status age = 4.78870964050293s
2025-11-17T15:21:43.216 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:43.217 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:43.218 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 17;21.5199588;-24.256234;50.108226;89.992634;50.08601;90.12017;18.53971;2460997.05675021;15.36197722;1.3;_
2025-11-17T15:21:43.218 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response 17;21.5199588;-24.256234;50.108226;89.992634;50.08601;90.12017;18.53971;2460997.05675021;15.36197722;1.3;_
2025-11-17T15:21:43.218 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:43.218 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:43.218 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:43.219 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:43.219 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:43.219 [INFO] [Thread-68431 (handle)] [driver.py] [get_status()] Telra = 21.5199588, teldec = -24.256234
2025-11-17T15:21:43.219 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5199588 -24.256234
2025-11-17T15:21:43.219 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5199588 -24.256234
2025-11-17T15:21:43.219 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5199588 -24.256234
2025-11-17T15:21:43.220 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 17;21.5199588;-24.256234;50.108226;89.992634;50.08601;90.12017;18.53971;2460997.05675023;15.36197722;1.3;_21.4950941799825 -24.3685054673811
2025-11-17T15:21:43.220 [INFO] [Thread-68431 (handle)] [driver.py] [get_status()] ra_j2k = 21.4950941799825     dec_j2k = -24.3685054673811
2025-11-17T15:21:43.220 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:43.220 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 140;0.104677128743813;171.162362694745;_
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response 140;0.104677128743813;171.162362694745;_
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:43.221 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:43.222 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:43.222 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:43.222 [DEBUG] [Thread-68431 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:43.222 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:43.222 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:43.223 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:43.223 [DEBUG] [Thread-68431 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:43.223 [DEBUG] [Thread-68431 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:43.223 [DEBUG] [Thread-68431 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58049)
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:43.227 [DEBUG] [Thread-68431 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:43.235 [DEBUG] [Thread-68431 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:43.235 [INFO] [Thread-68431 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05675021, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677128743813, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992634, telescope_ra=21.5199588, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.53971, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.4950941799825, telescope_dec_j2k=-24.3685054673811, observability=1)
2025-11-17T15:21:53.842 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:21:53
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.606689453125s
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:21:53.842 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:21:53.843 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:21:53.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:21:53.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5229328;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54268;2460997.05687319;15.36494306;1.3;_
2025-11-17T15:21:53.844 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.5229328;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54268;2460997.05687319;15.36494306;1.3;_
2025-11-17T15:21:53.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:21:53.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:21:53.845 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:21:53.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:53.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:21:53.846 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.5229328, teldec = -24.256234
2025-11-17T15:21:53.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5229328 -24.256234
2025-11-17T15:21:53.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5229328 -24.256234
2025-11-17T15:21:53.846 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5229328 -24.256234
2025-11-17T15:21:53.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5229328;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54268;2460997.05687323;15.36494306;1.3;_21.4980705188606 -24.3685752699151
2025-11-17T15:21:53.847 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.4980705188606     dec_j2k = -24.3685752699151
2025-11-17T15:21:53.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:21:53.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:21:53.847 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677529863241;171.162351965909;_
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677529863241;171.162351965909;_
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:53.848 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:21:53.849 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:21:53.850 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:53.850 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:21:53.850 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45673)
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:21:53.851 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:21:53.859 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:21:53.859 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05687319, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677529863241, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992634, telescope_ra=21.5229328, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.54268, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.4980705188606, telescope_dec_j2k=-24.3685752699151, observability=1)
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Status age = 7.41804051399231s
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:01.277 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:01.278 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:01.279 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 17;21.5250029;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54475;2460997.05695926;15.3670075;1.3;_
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response 17;21.5250029;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54475;2460997.05695926;15.3670075;1.3;_
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:01.280 [INFO] [Thread-68432 (handle)] [driver.py] [get_status()] Telra = 21.5250029, teldec = -24.256234
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5250029 -24.256234
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5250029 -24.256234
2025-11-17T15:22:01.280 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5250029 -24.256234
2025-11-17T15:22:01.281 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 17;21.5250029;-24.256234;50.108226;89.992634;50.08601;90.12017;18.54475;2460997.05695927;15.3670075;1.3;_21.5001422478375 -24.3686238172779
2025-11-17T15:22:01.281 [INFO] [Thread-68432 (handle)] [driver.py] [get_status()] ra_j2k = 21.5001422478375     dec_j2k = -24.3686238172779
2025-11-17T15:22:01.281 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:01.281 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:01.281 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 140;0.104677810646841;171.162351965909;_
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162351965909;_
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:01.282 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:01.283 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:01.284 [DEBUG] [Thread-68432 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:01.284 [DEBUG] [Thread-68432 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:01.284 [DEBUG] [Thread-68432 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47043)
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:01.288 [DEBUG] [Thread-68432 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:01.296 [DEBUG] [Thread-68432 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:01.296 [INFO] [Thread-68432 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05695926, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992634, telescope_ra=21.5250029, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.54475, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:21:07.703214', telescope_ra_j2k=21.5001422478375, telescope_dec_j2k=-24.3686238172779, observability=1)
2025-11-17T15:22:07.855 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:07.856 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:07.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:07.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:07.856 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:07.857 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:07.857 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:07.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:07.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:07.858 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:07.858 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:22:07.858 [INFO] [ThreadPoolExecutor-2959_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:22:07.858 [INFO] [Thread-23179 (handle)] [server.py] [done()] Shutdown complete...
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 13.786971807479858s
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:15.083 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:15.084 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:15.085 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5288458;-24.256234;50.108226;89.992633;50.08601;90.12017;18.5486;2460997.05711904;15.37084;1.3;_
2025-11-17T15:22:15.085 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.5288458;-24.256234;50.108226;89.992633;50.08601;90.12017;18.5486;2460997.05711904;15.37084;1.3;_
2025-11-17T15:22:15.085 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:15.085 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:15.085 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:15.086 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:15.086 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:15.086 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.5288458, teldec = -24.256234
2025-11-17T15:22:15.086 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5288458 -24.256234
2025-11-17T15:22:15.086 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5288458 -24.256234
2025-11-17T15:22:15.086 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5288458 -24.256234
2025-11-17T15:22:15.087 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5288458;-24.256234;50.108226;89.992633;50.08601;90.12017;18.5486;2460997.05711906;15.37084;1.3;_21.5039881739386 -24.3687138531454
2025-11-17T15:22:15.087 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.5039881739386     dec_j2k = -24.3687138531454
2025-11-17T15:22:15.087 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:15.087 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:15.087 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677249079642;171.162362694745;_
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677249079642;171.162362694745;_
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:15.088 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:15.089 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:15.090 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:15.090 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:15.090 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:15.091 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55089)
2025-11-17T15:22:15.091 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:15.092 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:15.092 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:15.092 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:15.092 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:15.099 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:15.099 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05711904, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677249079642, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992633, telescope_ra=21.5288458, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5486, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.5039881739386, telescope_dec_j2k=-24.3687138531454, observability=1)
2025-11-17T15:22:18.476 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:18.476 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Status age = 3.3772778511047363s
2025-11-17T15:22:18.476 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:18.476 [DEBUG] [Thread-68433 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:18.476 [DEBUG] [Thread-68433 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:18.477 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:18.478 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 17;21.5297884;-24.256234;50.108226;89.992633;50.08601;90.12017;18.54954;2460997.05715831;15.37178;1.3;_
2025-11-17T15:22:18.478 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response 17;21.5297884;-24.256234;50.108226;89.992633;50.08601;90.12017;18.54954;2460997.05715831;15.37178;1.3;_
2025-11-17T15:22:18.478 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:18.478 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:18.478 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:18.479 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:18.479 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:18.479 [INFO] [Thread-68433 (handle)] [driver.py] [get_status()] Telra = 21.5297884, teldec = -24.256234
2025-11-17T15:22:18.479 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5297884 -24.256234
2025-11-17T15:22:18.479 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5297884 -24.256234
2025-11-17T15:22:18.479 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5297884 -24.256234
2025-11-17T15:22:18.480 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 17;21.5297884;-24.256234;50.108226;89.992633;50.08601;90.12017;18.54954;2460997.05715833;15.37178;1.3;_21.504931516607 -24.368735920246
2025-11-17T15:22:18.480 [INFO] [Thread-68433 (handle)] [driver.py] [get_status()] ra_j2k = 21.504931516607     dec_j2k = -24.368735920246
2025-11-17T15:22:18.481 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:18.481 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:18.481 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162362694745;_
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162362694745;_
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:18.482 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:18.483 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:18.484 [DEBUG] [Thread-68433 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:18.484 [DEBUG] [Thread-68433 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:18.484 [DEBUG] [Thread-68433 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 36923)
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:18.487 [DEBUG] [Thread-68433 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:18.494 [DEBUG] [Thread-68433 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:18.495 [DEBUG] [Thread-68433 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:18.495 [DEBUG] [Thread-68433 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:18.495 [INFO] [Thread-68433 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05715831, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992633, telescope_ra=21.5297884, telescope_dec=-24.256234, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.54954, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.504931516607, telescope_dec_j2k=-24.368735920246, observability=1)
2025-11-17T15:22:19.403 [DEBUG] [Thread-68434 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:19.403 [DEBUG] [Thread-68434 (handle)] [server.py] [get_status()] Status age = 0.9079973697662354s
2025-11-17T15:22:19.403 [DEBUG] [Thread-68434 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.9079973697662354
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.725 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:22:28.726 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:28.727 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:28.728 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:22:28.729 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:28.730 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Park
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:22:28.731 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:22:28.732 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 29;21.5326362;-24.256233;50.108226;89.992633;50.08601;90.12017;18.55239;2460997.05727699;15.37462;1.3;_Park Command Successful
2025-11-17T15:22:29.732 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:22:29.732 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:22:29.732 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:22:29.733 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:22:29.733 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:22:30.733 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:22:30.734 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:22:30.734 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:22:30.734 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:22:30.734 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:22:31.734 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:22:31.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:22:31.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:22:31.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:22:31.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:22:32.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:22:32.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:22:32.735 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:32.736 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:22:32.737 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:22:32.738 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:22:32.738 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:33.738 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:22:33.739 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:22:33.740 [DEBUG] [ThreadPoolExecutor-2958_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:33.740 [INFO] [ThreadPoolExecutor-2958_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Status age = 18.974694967269897s
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:37.469 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:37.470 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:37.470 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:37.470 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:37.470 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 17;21.5350815;-24.256233;50.108226;89.992632;50.08601;90.12017;18.55483;2460997.05737814;15.37705861;1.3;_
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response 17;21.5350815;-24.256233;50.108226;89.992632;50.08601;90.12017;18.55483;2460997.05737814;15.37705861;1.3;_
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:37.471 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:37.472 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:37.472 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:37.472 [INFO] [Thread-68435 (handle)] [driver.py] [get_status()] Telra = 21.5350815, teldec = -24.256233
2025-11-17T15:22:37.472 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5350815 -24.256233
2025-11-17T15:22:37.472 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5350815 -24.256233
2025-11-17T15:22:37.472 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5350815 -24.256233
2025-11-17T15:22:37.473 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 17;21.5350815;-24.256233;50.108226;89.992632;50.08601;90.12017;18.55483;2460997.05737816;15.37705861;1.3;_21.5102287901687 -24.3688587104645
2025-11-17T15:22:37.473 [INFO] [Thread-68435 (handle)] [driver.py] [get_status()] ra_j2k = 21.5102287901687     dec_j2k = -24.3688587104645
2025-11-17T15:22:37.473 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:37.473 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:37.473 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 140;0.104677569975184;171.162357330327;_
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response 140;0.104677569975184;171.162357330327;_
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:37.474 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:37.475 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:37.476 [DEBUG] [Thread-68435 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:37.476 [DEBUG] [Thread-68435 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:37.476 [DEBUG] [Thread-68435 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 37777)
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:37.479 [DEBUG] [Thread-68435 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:37.486 [DEBUG] [Thread-68435 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:37.486 [INFO] [Thread-68435 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05737814, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677569975184, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992632, telescope_ra=21.5350815, telescope_dec=-24.256233, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.55483, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.5102287901687, telescope_dec_j2k=-24.3688587104645, observability=1)
2025-11-17T15:22:37.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:37.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 0.035967111587524414s
2025-11-17T15:22:37.522 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Returning cached status because status age = 0.035967111587524414
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 1.3012959957122803s
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:38.788 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:38.789 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:38.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5354458;-24.256233;50.108226;89.992632;50.08601;90.12017;18.5552;2460997.0573934;15.37742194;1.3;_
2025-11-17T15:22:38.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.5354458;-24.256233;50.108226;89.992632;50.08601;90.12017;18.5552;2460997.0573934;15.37742194;1.3;_
2025-11-17T15:22:38.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:38.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:38.790 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:38.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:38.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:38.791 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.5354458, teldec = -24.256233
2025-11-17T15:22:38.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.5354458 -24.256233
2025-11-17T15:22:38.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.5354458 -24.256233
2025-11-17T15:22:38.791 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5354458 -24.256233
2025-11-17T15:22:38.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5354458;-24.256233;50.108226;89.992632;50.08601;90.12017;18.5552;2460997.05739343;15.37742194;1.3;_21.5105933775969 -24.3688672225016
2025-11-17T15:22:38.792 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.5105933775969     dec_j2k = -24.3688672225016
2025-11-17T15:22:38.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:38.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:38.792 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104677810646841;171.162346601491;_
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104677810646841;171.162346601491;_
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:38.793 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:38.794 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:38.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:22:38.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:22:38.795 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 40399)
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:38.796 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:38.804 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:22:38.805 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.0573934, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677810646841, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162346601491, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108226, telescope_az=89.992632, telescope_ra=21.5354458, telescope_dec=-24.256233, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5552, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.5105933775969, telescope_dec_j2k=-24.3688672225016, observability=1)
2025-11-17T15:22:38.805 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9627845287323 seconds ago
2025-11-17T15:22:53.920 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:22:53
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.115750551223755s
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:53.920 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:53.921 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:53.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5396576;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55941;2460997.05756854;15.38162222;1.3;_
2025-11-17T15:22:53.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.5396576;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55941;2460997.05756854;15.38162222;1.3;_
2025-11-17T15:22:53.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:53.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:53.922 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:53.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:53.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:53.923 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.5396576, teldec = -24.256233
2025-11-17T15:22:53.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5396576 -24.256233
2025-11-17T15:22:53.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5396576 -24.256233
2025-11-17T15:22:53.923 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5396576 -24.256233
2025-11-17T15:22:53.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5396576;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55941;2460997.05756856;15.38162222;1.3;_21.5148085024266 -24.3689655594618
2025-11-17T15:22:53.924 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.5148085024266     dec_j2k = -24.3689655594618
2025-11-17T15:22:53.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:53.924 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677770534898;171.162357330327;_
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:53.925 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:53.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:53.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:53.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:53.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:53.926 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:53.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:53.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:53.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:53.927 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46775)
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:53.929 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:53.936 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:53.937 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05756854, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677770534898, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992632, telescope_ra=21.5396576, telescope_dec=-24.256233, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.55941, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.5148085024266, telescope_dec_j2k=-24.3689655594618, observability=1)
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Status age = 1.5992183685302734s
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:22:55.536 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:22:55.537 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:22:55.538 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 17;21.5401063;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55986;2460997.05758725;15.38206972;1.3;_
2025-11-17T15:22:55.538 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response 17;21.5401063;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55986;2460997.05758725;15.38206972;1.3;_
2025-11-17T15:22:55.538 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:22:55.538 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:22:55.538 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:22:55.539 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:55.539 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:22:55.539 [INFO] [Thread-68436 (handle)] [driver.py] [get_status()] Telra = 21.5401063, teldec = -24.256233
2025-11-17T15:22:55.539 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5401063 -24.256233
2025-11-17T15:22:55.539 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5401063 -24.256233
2025-11-17T15:22:55.539 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5401063 -24.256233
2025-11-17T15:22:55.540 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 17;21.5401063;-24.256233;50.108225;89.992632;50.08601;90.12017;18.55986;2460997.05758727;15.38206972;1.3;_21.5152575568261 -24.3689760276964
2025-11-17T15:22:55.540 [INFO] [Thread-68436 (handle)] [driver.py] [get_status()] ra_j2k = 21.5152575568261     dec_j2k = -24.3689760276964
2025-11-17T15:22:55.540 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:22:55.540 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:22:55.540 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 140;0.104677449639356;171.162351965909;_
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response 140;0.104677449639356;171.162351965909;_
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:22:55.541 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:22:55.542 [DEBUG] [Thread-68436 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:55.542 [DEBUG] [Thread-68436 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:22:55.542 [DEBUG] [Thread-68436 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46093)
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:22:55.545 [DEBUG] [Thread-68436 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:22:55.552 [DEBUG] [Thread-68436 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:22:55.552 [DEBUG] [Thread-68436 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:55.552 [DEBUG] [Thread-68436 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:22:55.552 [DEBUG] [Thread-68436 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:22:55.553 [DEBUG] [Thread-68436 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:22:55.553 [DEBUG] [Thread-68436 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:22:55.553 [DEBUG] [Thread-68436 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:22:55.553 [DEBUG] [Thread-68436 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:22:55.553 [DEBUG] [Thread-68436 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:22:55.553 [INFO] [Thread-68436 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05758725, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677449639356, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992632, telescope_ra=21.5401063, telescope_dec=-24.256233, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.55986, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:22:07.855440', telescope_ra_j2k=21.5152575568261, telescope_dec_j2k=-24.3689760276964, observability=1)
2025-11-17T15:23:07.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:07.998 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:07.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:07.999 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:23:07.999 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:08.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:08.001 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:08.001 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:23:08.002 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:23:08.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:09.003 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:23:09.004 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:09.005 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:09.005 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:09.005 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:09.005 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:09.005 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:09.006 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:09.006 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:09.006 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:09.006 [DEBUG] [ThreadPoolExecutor-2960_0] [payload.py] [to_registers()] [0]
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60545)
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:09.008 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:09.016 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:09.016 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:23:09.016 [DEBUG] [ThreadPoolExecutor-2960_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:23:09.016 [DEBUG] [ThreadPoolExecutor-2960_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:23:09.016 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:09.017 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:09.017 [DEBUG] [ThreadPoolExecutor-2960_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Status age = 18.111947774887085s
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:13.665 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:13.666 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:13.667 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 17;21.545147;-24.256232;50.108225;89.992631;50.08601;90.12017;18.5649;2460997.05779707;15.38709667;1.3;_
2025-11-17T15:23:13.667 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response 17;21.545147;-24.256232;50.108225;89.992631;50.08601;90.12017;18.5649;2460997.05779707;15.38709667;1.3;_
2025-11-17T15:23:13.667 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:13.667 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:13.667 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:13.668 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:13.668 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:13.668 [INFO] [Thread-68437 (handle)] [driver.py] [get_status()] Telra = 21.545147, teldec = -24.256232
2025-11-17T15:23:13.668 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] UnCookCoordinates 21.545147 -24.256232
2025-11-17T15:23:13.668 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.545147 -24.256232
2025-11-17T15:23:13.668 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.545147 -24.256232
2025-11-17T15:23:13.669 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 17;21.545147;-24.256232;50.108225;89.992631;50.08601;90.12017;18.5649;2460997.05779709;15.38709667;1.3;_21.5203022408179 -24.369092522147
2025-11-17T15:23:13.669 [INFO] [Thread-68437 (handle)] [driver.py] [get_status()] ra_j2k = 21.5203022408179     dec_j2k = -24.369092522147
2025-11-17T15:23:13.669 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:13.669 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:13.669 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 140;0.104678332102097;171.162351965909;_
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162351965909;_
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:13.670 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:13.671 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:13.672 [DEBUG] [Thread-68437 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:13.672 [DEBUG] [Thread-68437 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:13.672 [DEBUG] [Thread-68437 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35699)
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:13.675 [DEBUG] [Thread-68437 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:13.682 [DEBUG] [Thread-68437 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:13.682 [INFO] [Thread-68437 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05779707, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992631, telescope_ra=21.545147, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5649, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5203022408179, telescope_dec_j2k=-24.369092522147, observability=1)
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 1.3710415363311768s
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:15.053 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:15.054 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5455392;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56529;2460997.05781314;15.38748778;1.3;_
2025-11-17T15:23:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.5455392;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56529;2460997.05781314;15.38748778;1.3;_
2025-11-17T15:23:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:15.055 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:15.056 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.5455392, teldec = -24.256232
2025-11-17T15:23:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5455392 -24.256232
2025-11-17T15:23:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5455392 -24.256232
2025-11-17T15:23:15.056 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5455392 -24.256232
2025-11-17T15:23:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5455392;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56529;2460997.05781316;15.38748778;1.3;_21.5206947509846 -24.3691016558315
2025-11-17T15:23:15.057 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.5206947509846     dec_j2k = -24.3691016558315
2025-11-17T15:23:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:15.057 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104677930982669;171.162351965909;_
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104677930982669;171.162351965909;_
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 47531)
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:15.062 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:15.069 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:15.070 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05781314, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677930982669, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992631, telescope_ra=21.5455392, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.56529, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5206947509846, telescope_dec_j2k=-24.3691016558315, observability=1)
2025-11-17T15:23:18.528 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Status age = 3.4591355323791504s
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:18.529 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 17;21.5465121;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56626;2460997.05785336;15.38845806;1.3;_
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response 17;21.5465121;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56626;2460997.05785336;15.38845806;1.3;_
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:18.530 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:18.531 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:18.531 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:18.532 [INFO] [Thread-68438 (handle)] [driver.py] [get_status()] Telra = 21.5465121, teldec = -24.256232
2025-11-17T15:23:18.532 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5465121 -24.256232
2025-11-17T15:23:18.532 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5465121 -24.256232
2025-11-17T15:23:18.532 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5465121 -24.256232
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 17;21.5465121;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56626;2460997.05785338;15.38845806;1.3;_21.5216684205129 -24.3691243079643
2025-11-17T15:23:18.533 [INFO] [Thread-68438 (handle)] [driver.py] [get_status()] ra_j2k = 21.5216684205129     dec_j2k = -24.3691243079643
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 140;0.104678131542383;171.162357330327;_
2025-11-17T15:23:18.533 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response 140;0.104678131542383;171.162357330327;_
2025-11-17T15:23:18.534 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:18.534 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:18.534 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:18.534 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:18.534 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:18.535 [DEBUG] [Thread-68438 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 59807)
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:18.540 [DEBUG] [Thread-68438 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:18.547 [DEBUG] [Thread-68438 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:18.547 [DEBUG] [Thread-68438 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:18.548 [DEBUG] [Thread-68438 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:18.548 [INFO] [Thread-68438 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05785336, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678131542383, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992631, telescope_ra=21.5465121, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.56626, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5216684205129, telescope_dec_j2k=-24.3691243079643, observability=1)
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Status age = 13.185207605361938s
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:31.733 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 17;21.5501924;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56994;2460997.05800618;15.39212833;1.3;_
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response 17;21.5501924;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56994;2460997.05800618;15.39212833;1.3;_
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:31.734 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:31.735 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:31.735 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:31.735 [INFO] [Thread-68439 (handle)] [driver.py] [get_status()] Telra = 21.5501924, teldec = -24.256232
2025-11-17T15:23:31.735 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5501924 -24.256232
2025-11-17T15:23:31.735 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5501924 -24.256232
2025-11-17T15:23:31.735 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5501924 -24.256232
2025-11-17T15:23:31.736 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 17;21.5501924;-24.256232;50.108225;89.992631;50.08601;90.12017;18.56994;2460997.0580062;15.39212833;1.3;_21.5253516330641 -24.3692099311587
2025-11-17T15:23:31.736 [INFO] [Thread-68439 (handle)] [driver.py] [get_status()] ra_j2k = 21.5253516330641     dec_j2k = -24.3692099311587
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162362694745;_
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162362694745;_
2025-11-17T15:23:31.737 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:31.738 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:31.739 [DEBUG] [Thread-68439 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:31.739 [DEBUG] [Thread-68439 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:31.739 [DEBUG] [Thread-68439 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 48949)
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:31.742 [DEBUG] [Thread-68439 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:31.749 [DEBUG] [Thread-68439 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:31.749 [INFO] [Thread-68439 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05800618, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992631, telescope_ra=21.5501924, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.56994, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5253516330641, telescope_dec_j2k=-24.3692099311587, observability=1)
2025-11-17T15:23:34.017 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:34.017 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:34.017 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:34.017 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:34.017 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:34.018 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:23:34.019 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:23:34.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 4.867010831832886s
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:36.616 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:36.617 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5515562;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57131;2460997.05806271;15.39348833;1.3;_
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.5515562;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57131;2460997.05806271;15.39348833;1.3;_
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:36.618 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:36.619 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:36.619 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:36.619 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.5515562, teldec = -24.256232
2025-11-17T15:23:36.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5515562 -24.256232
2025-11-17T15:23:36.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5515562 -24.256232
2025-11-17T15:23:36.620 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5515562 -24.256232
2025-11-17T15:23:36.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5515562;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57131;2460997.05806273;15.39348833;1.3;_21.5267165129911 -24.3692416339725
2025-11-17T15:23:36.621 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.5267165129911     dec_j2k = -24.3692416339725
2025-11-17T15:23:36.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:36.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:36.621 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104678211766269;171.162368059163;_
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104678211766269;171.162368059163;_
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:36.622 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:36.623 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:36.624 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:36.624 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:36.624 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:36.627 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 35863)
2025-11-17T15:23:36.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:36.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:36.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:36.628 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:36.628 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:36.635 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:36.636 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:36.636 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05806271, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678211766269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162368059163, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.99263, telescope_ra=21.5515562, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.57131, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5267165129911, telescope_dec_j2k=-24.3692416339725, observability=1)
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 2.2291948795318604s
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:38.865 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:38.866 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:38.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5521628;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57191;2460997.05808874;15.39409333;1.3;_
2025-11-17T15:23:38.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.5521628;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57191;2460997.05808874;15.39409333;1.3;_
2025-11-17T15:23:38.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:38.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:38.867 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:38.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:38.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:38.868 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.5521628, teldec = -24.256232
2025-11-17T15:23:38.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.5521628 -24.256232
2025-11-17T15:23:38.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.5521628 -24.256232
2025-11-17T15:23:38.868 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5521628 -24.256232
2025-11-17T15:23:38.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5521628;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57191;2460997.05808876;15.39409333;1.3;_21.5273235934375 -24.3692557303767
2025-11-17T15:23:38.869 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.5273235934375     dec_j2k = -24.3692557303767
2025-11-17T15:23:38.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:38.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:38.869 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.10467809143044;171.162362694745;_
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162362694745;_
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:38.870 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:38.871 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:38.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:38.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_GetRotatorData
2025-11-17T15:23:38.872 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 42247)
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:38.874 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:38.881 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:38.881 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:38.881 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:38.881 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:38.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:38.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:38.882 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:38.882 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:38.882 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:23:38.882 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05808874, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00328, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.99263, telescope_ra=21.5521628, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.57191, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5273235934375, telescope_dec_j2k=-24.3692557303767, observability=1)
2025-11-17T15:23:38.882 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.96179461479187 seconds ago
2025-11-17T15:23:49.792 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:49.792 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Status age = 10.91072392463684s
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:49.793 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:49.794 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 17;21.555207;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57496;2460997.05821521;15.39712917;1.3;_
2025-11-17T15:23:49.794 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response 17;21.555207;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57496;2460997.05821521;15.39712917;1.3;_
2025-11-17T15:23:49.794 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:49.794 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:49.794 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:49.795 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:49.795 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:49.795 [INFO] [Thread-68440 (handle)] [driver.py] [get_status()] Telra = 21.555207, teldec = -24.256232
2025-11-17T15:23:49.795 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] UnCookCoordinates 21.555207 -24.256232
2025-11-17T15:23:49.796 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.555207 -24.256232
2025-11-17T15:23:49.796 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.555207 -24.256232
2025-11-17T15:23:49.796 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 17;21.555207;-24.256232;50.108225;89.99263;50.08601;90.12017;18.57496;2460997.05821523;15.39712917;1.3;_21.5303702055568 -24.3693264300345
2025-11-17T15:23:49.796 [INFO] [Thread-68440 (handle)] [driver.py] [get_status()] ra_j2k = 21.5303702055568     dec_j2k = -24.3693264300345
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 140;0.104678291990154;171.162357330327;_
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response 140;0.104678291990154;171.162357330327;_
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:49.797 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:49.798 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:49.799 [DEBUG] [Thread-68440 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:49.799 [DEBUG] [Thread-68440 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:49.799 [DEBUG] [Thread-68440 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 55031)
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:49.803 [DEBUG] [Thread-68440 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:49.811 [DEBUG] [Thread-68440 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:49.811 [INFO] [Thread-68440 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05821521, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678291990154, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.99263, telescope_ra=21.555207, telescope_dec=-24.256232, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.57496, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5303702055568, telescope_dec_j2k=-24.3693264300345, observability=1)
2025-11-17T15:23:53.997 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:23:53
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 4.1861491203308105s
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:23:53.997 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:23:53.998 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:23:53.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5563738;-24.256231;50.108225;89.99263;50.08601;90.12017;18.57612;2460997.05826388;15.39832083;1.3;_
2025-11-17T15:23:53.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.5563738;-24.256231;50.108225;89.99263;50.08601;90.12017;18.57612;2460997.05826388;15.39832083;1.3;_
2025-11-17T15:23:53.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:23:53.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:23:53.999 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:23:54.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:54.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:23:54.000 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.5563738, teldec = -24.256231
2025-11-17T15:23:54.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5563738 -24.256231
2025-11-17T15:23:54.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5563738 -24.256231
2025-11-17T15:23:54.000 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5563738 -24.256231
2025-11-17T15:23:54.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5564019;-24.256231;50.108225;89.99263;50.08601;90.12017;18.57615;2460997.0582639;15.39832083;1.3;_21.5315379306623 -24.3693525094864
2025-11-17T15:23:54.001 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.5315379306623     dec_j2k = -24.3693525094864
2025-11-17T15:23:54.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:23:54.001 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104677610087127;171.162351965909;_
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104677610087127;171.162351965909;_
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:54.002 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:54.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:54.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:54.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:54.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:23:54.003 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:23:54.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:23:54.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:54.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:23:54.004 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46687)
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:23:54.008 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:23:54.015 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:23:54.016 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:23:54.016 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05826388, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677610087127, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.99263, telescope_ra=21.5563738, telescope_dec=-24.256231, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.57612, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5315379306623, telescope_dec_j2k=-24.3693525094864, observability=1)
2025-11-17T15:24:07.915 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Status age = 13.899930715560913s
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:07.916 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:07.917 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:07.918 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 17;21.5602524;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58;2460997.05842497;15.40216083;1.3;_
2025-11-17T15:24:07.918 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response 17;21.5602524;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58;2460997.05842497;15.40216083;1.3;_
2025-11-17T15:24:07.918 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:07.918 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:07.918 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:07.919 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:07.919 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:07.919 [INFO] [Thread-68441 (handle)] [driver.py] [get_status()] Telra = 21.5602524, teldec = -24.256231
2025-11-17T15:24:07.919 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5602524 -24.256231
2025-11-17T15:24:07.919 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5602524 -24.256231
2025-11-17T15:24:07.919 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5602524 -24.256231
2025-11-17T15:24:07.920 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 17;21.5602524;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58;2460997.058425;15.40216083;1.3;_21.5354196072116 -24.3694424497573
2025-11-17T15:24:07.920 [INFO] [Thread-68441 (handle)] [driver.py] [get_status()] ra_j2k = 21.5354196072116     dec_j2k = -24.3694424497573
2025-11-17T15:24:07.920 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:07.920 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:07.920 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 140;0.10467809143044;171.162351965909;_
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response 140;0.10467809143044;171.162351965909;_
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:07.921 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:07.922 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:07.923 [DEBUG] [Thread-68441 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:07.923 [DEBUG] [Thread-68441 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:07.923 [DEBUG] [Thread-68441 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57483)
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:07.929 [DEBUG] [Thread-68441 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:07.936 [DEBUG] [Thread-68441 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:07.936 [INFO] [Thread-68441 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05842497, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467809143044, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992629, telescope_ra=21.5602524, telescope_dec=-24.256231, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.58, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:23:07.998496', telescope_ra_j2k=21.5354196072116, telescope_dec_j2k=-24.3694424497573, observability=1)
2025-11-17T15:24:08.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:08.140 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:08.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:08.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:08.140 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:08.141 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:08.141 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:08.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:08.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:08.142 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:08.142 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:24:08.142 [INFO] [ThreadPoolExecutor-2961_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:24:08.142 [INFO] [ThreadPoolExecutor-2961_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 7.121217966079712s
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:15.058 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:15.059 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5622509;-24.256231;50.108225;89.992629;50.08601;90.12017;18.582;2460997.05850763;15.40415389;1.3;_
2025-11-17T15:24:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.5622509;-24.256231;50.108225;89.992629;50.08601;90.12017;18.582;2460997.05850763;15.40415389;1.3;_
2025-11-17T15:24:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:15.060 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:15.061 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.5622509, teldec = -24.256231
2025-11-17T15:24:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5622509 -24.256231
2025-11-17T15:24:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5622509 -24.256231
2025-11-17T15:24:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5622509 -24.256231
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5622509;-24.256231;50.108225;89.992629;50.08601;90.12017;18.582;2460997.05850766;15.40415389;1.3;_21.5374196935164 -24.3694887475544
2025-11-17T15:24:15.062 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.5374196935164     dec_j2k = -24.3694887475544
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678211766269;171.162357330327;_
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678211766269;171.162357330327;_
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:15.071 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38763)
2025-11-17T15:24:15.072 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:15.072 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:15.072 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:15.072 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:15.072 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:15.079 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:15.079 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:15.080 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:15.080 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05850763, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678211766269, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992629, telescope_ra=21.5622509, telescope_dec=-24.256231, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.582, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5374196935164, telescope_dec_j2k=-24.3694887475544, observability=1)
2025-11-17T15:24:18.584 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:18.584 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Status age = 3.504573345184326s
2025-11-17T15:24:18.584 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:18.585 [DEBUG] [Thread-68442 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:18.585 [DEBUG] [Thread-68442 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:18.585 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:18.585 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:18.585 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:18.586 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 17;21.5632333;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58298;2460997.05854845;15.40513361;1.3;_
2025-11-17T15:24:18.587 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response 17;21.5632333;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58298;2460997.05854845;15.40513361;1.3;_
2025-11-17T15:24:18.587 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:18.587 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:18.587 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:18.588 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:18.588 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:18.588 [INFO] [Thread-68442 (handle)] [driver.py] [get_status()] Telra = 21.5632333, teldec = -24.256231
2025-11-17T15:24:18.588 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5632333 -24.256231
2025-11-17T15:24:18.588 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5632333 -24.256231
2025-11-17T15:24:18.588 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5632333 -24.256231
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 17;21.5632333;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58298;2460997.05854848;15.40513361;1.3;_21.5384028735613 -24.3695114948468
2025-11-17T15:24:18.589 [INFO] [Thread-68442 (handle)] [driver.py] [get_status()] ra_j2k = 21.5384028735613     dec_j2k = -24.3695114948468
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 140;0.104678332102097;171.162357330327;_
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response 140;0.104678332102097;171.162357330327;_
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:18.589 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:18.590 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:18.591 [DEBUG] [Thread-68442 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:18.591 [DEBUG] [Thread-68442 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:18.591 [DEBUG] [Thread-68442 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58833)
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:18.594 [DEBUG] [Thread-68442 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:18.602 [DEBUG] [Thread-68442 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:18.602 [INFO] [Thread-68442 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05854845, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678332102097, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992629, telescope_ra=21.5632333, telescope_dec=-24.256231, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.58298, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5384028735613, telescope_dec_j2k=-24.3695114948468, observability=1)
2025-11-17T15:24:25.986 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:25.986 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Status age = 7.383995056152344s
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:25.987 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:25.988 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 17;21.5652914;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58504;2460997.05863412;15.40718611;1.3;_
2025-11-17T15:24:25.988 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response 17;21.5652914;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58504;2460997.05863412;15.40718611;1.3;_
2025-11-17T15:24:25.988 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:25.988 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:25.989 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:25.989 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:25.990 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:25.990 [INFO] [Thread-68443 (handle)] [driver.py] [get_status()] Telra = 21.5652914, teldec = -24.256231
2025-11-17T15:24:25.990 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5652914 -24.256231
2025-11-17T15:24:25.990 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5652914 -24.256231
2025-11-17T15:24:25.990 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5652914 -24.256231
2025-11-17T15:24:25.991 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 17;21.5652914;-24.256231;50.108225;89.992629;50.08601;90.12017;18.58504;2460997.05863416;15.40718611;1.3;_21.5404626083035 -24.3695591257184
2025-11-17T15:24:25.991 [INFO] [Thread-68443 (handle)] [driver.py] [get_status()] ra_j2k = 21.5404626083035     dec_j2k = -24.3695591257184
2025-11-17T15:24:25.991 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:25.991 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:25.991 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 140;0.104678011206555;171.162362694745;_
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response 140;0.104678011206555;171.162362694745;_
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:25.992 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:25.993 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:25.994 [DEBUG] [Thread-68443 (handle)] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:25.994 [DEBUG] [Thread-68443 (handle)] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:25.994 [DEBUG] [Thread-68443 (handle)] [driver.py] [__init__()] Status = <Status: 13> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:25.997 [DEBUG] [Thread-68443 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50307)
2025-11-17T15:24:25.997 [DEBUG] [Thread-68443 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:25.997 [DEBUG] [Thread-68443 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:25.997 [DEBUG] [Thread-68443 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:25.998 [DEBUG] [Thread-68443 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:25.998 [DEBUG] [Thread-68443 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:26.004 [DEBUG] [Thread-68443 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:26.005 [DEBUG] [Thread-68443 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:26.005 [INFO] [Thread-68443 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05863412, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=True, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678011206555, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992629, telescope_ra=21.5652914, telescope_dec=-24.256231, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.58504, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5404626083035, telescope_dec_j2k=-24.3695591257184, observability=1)
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:29.020 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] FollowTelescopeStop
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command FollowTelescopeStop
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to FollowTelescopeStop
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.021 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.022 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.022 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:29.022 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:29.022 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:29.022 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:29.023 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GoParkAndClose
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GoParkAndClose
2025-11-17T15:24:29.024 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GoParkAndClose
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:29.025 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Park
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command Park
2025-11-17T15:24:29.026 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to Park
2025-11-17T15:24:29.027 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 29;21.566131;-24.256231;50.108225;89.992628;50.08601;90.12017;18.58588;2460997.05866929;15.40802333;1.3;_Park Command Successful
2025-11-17T15:24:30.027 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:24:30.027 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:24:30.027 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:24:30.028 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:24:30.028 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_TrackingOffAccepted
2025-11-17T15:24:31.028 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:24:31.029 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:24:31.029 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:24:31.029 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:24:31.029 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:24:32.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] RotatorTrackingOff
2025-11-17T15:24:32.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command RotatorTrackingOff
2025-11-17T15:24:32.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to RotatorTrackingOff
2025-11-17T15:24:32.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:24:32.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00328;_TrackingOffAccepted
2025-11-17T15:24:33.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] ParkRotator
2025-11-17T15:24:33.030 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command ParkRotator
2025-11-17T15:24:33.031 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to ParkRotator
2025-11-17T15:24:33.031 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:24:33.031 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 13;227;112.037;-0.00329;_ParkRotatorAccepted
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:33.032 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] SlewLightsOff
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command SlewLightsOff
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to SlewLightsOff
2025-11-17T15:24:33.033 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:34.034 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:34.034 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:34.034 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:34.034 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:34.034 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:24:34.035 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:24:34.036 [DEBUG] [ThreadPoolExecutor-2960_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:34.036 [INFO] [ThreadPoolExecutor-2960_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:24:35.729 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 9.724587678909302s
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:35.730 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:35.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5679983;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58775;2460997.05874689;15.40988556;1.3;_
2025-11-17T15:24:35.731 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.5679983;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58775;2460997.05874689;15.40988556;1.3;_
2025-11-17T15:24:35.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:35.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:35.731 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:35.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:35.732 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:35.732 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.5679983, teldec = -24.25623
2025-11-17T15:24:35.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5679983 -24.25623
2025-11-17T15:24:35.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5679983 -24.25623
2025-11-17T15:24:35.732 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5679983 -24.25623
2025-11-17T15:24:35.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5679983;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58775;2460997.05874691;15.40988556;1.3;_21.5431716596843 -24.3696207223433
2025-11-17T15:24:35.733 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.5431716596843     dec_j2k = -24.3696207223433
2025-11-17T15:24:35.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:35.733 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:35.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:35.734 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162351965909;_
2025-11-17T15:24:35.734 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162351965909;_
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:35.735 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:35.736 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:35.736 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:35.736 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 57429)
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:35.739 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:35.746 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:35.747 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05874689, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992628, telescope_ra=21.5679983, telescope_dec=-24.25623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.58775, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5431716596843, telescope_dec_j2k=-24.3696207223433, observability=1)
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 3.1952524185180664s
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:38.942 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:38.943 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:38.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5689138;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58866;2460997.05878407;15.41079861;1.3;_
2025-11-17T15:24:38.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 17;21.5689138;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58866;2460997.05878407;15.41079861;1.3;_
2025-11-17T15:24:38.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:38.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:38.944 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:38.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:38.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:38.945 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] Telra = 21.5689138, teldec = -24.25623
2025-11-17T15:24:38.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] UnCookCoordinates 21.5689138 -24.25623
2025-11-17T15:24:38.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command UnCookCoordinates 21.5689138 -24.25623
2025-11-17T15:24:38.945 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5689138 -24.25623
2025-11-17T15:24:38.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 17;21.5689138;-24.25623;50.108225;89.992628;50.08601;90.12017;18.58866;2460997.0587841;15.41079861;1.3;_21.5440878875624 -24.3696418803395
2025-11-17T15:24:38.946 [INFO] [lcu_check_connected_worker] [driver.py] [get_status()] ra_j2k = 21.5440878875624     dec_j2k = -24.3696418803395
2025-11-17T15:24:38.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:38.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:38.946 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 140;0.104678051318498;171.162351965909;_
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 140;0.104678051318498;171.162351965909;_
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:38.947 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:38.948 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:38.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:38.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:38.949 [DEBUG] [lcu_check_connected_worker] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 41009)
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:38.950 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:38.957 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:38.958 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Received all status components
2025-11-17T15:24:38.958 [INFO] [lcu_check_connected_worker] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05878407, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678051318498, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992628, telescope_ra=21.5689138, telescope_dec=-24.25623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.58866, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5440878875624, telescope_dec_j2k=-24.3696418803395, observability=1)
2025-11-17T15:24:38.958 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.9611542224884 seconds ago
2025-11-17T15:24:44.053 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:44.053 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Status age = 5.0953028202056885s
2025-11-17T15:24:44.053 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:44.053 [DEBUG] [Thread-68444 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:44.053 [DEBUG] [Thread-68444 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:44.054 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:44.055 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 17;21.5703338;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59008;2460997.05884323;15.41221472;1.3;_
2025-11-17T15:24:44.055 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response 17;21.5703338;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59008;2460997.05884323;15.41221472;1.3;_
2025-11-17T15:24:44.055 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:44.055 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:44.055 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:44.056 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:44.056 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:44.056 [INFO] [Thread-68444 (handle)] [driver.py] [get_status()] Telra = 21.5703338, teldec = -24.25623
2025-11-17T15:24:44.056 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5703338 -24.25623
2025-11-17T15:24:44.056 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5703338 -24.25623
2025-11-17T15:24:44.056 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5703338 -24.25623
2025-11-17T15:24:44.057 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 17;21.5703338;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59008;2460997.05884325;15.41221472;1.3;_21.5455090168505 -24.3696746850023
2025-11-17T15:24:44.057 [INFO] [Thread-68444 (handle)] [driver.py] [get_status()] ra_j2k = 21.5455090168505     dec_j2k = -24.3696746850023
2025-11-17T15:24:44.057 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 140;0.104677971094612;171.162362694745;_
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response 140;0.104677971094612;171.162362694745;_
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:44.058 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:44.059 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:44.059 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:44.059 [DEBUG] [Thread-68444 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:44.060 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:44.060 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:44.060 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:44.061 [DEBUG] [Thread-68444 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:44.061 [DEBUG] [Thread-68444 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:44.061 [DEBUG] [Thread-68444 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 34519)
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:44.063 [DEBUG] [Thread-68444 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:44.070 [DEBUG] [Thread-68444 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:44.070 [INFO] [Thread-68444 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05884323, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104677971094612, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992628, telescope_ra=21.5703338, telescope_dec=-24.25623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.59008, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5455090168505, telescope_dec_j2k=-24.3696746850023, observability=1)
2025-11-17T15:24:54.076 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:24:54
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 10.005717515945435s
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:24:54.076 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:24:54.077 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:24:54.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5731245;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59288;2460997.05895924;15.41499778;1.3;_
2025-11-17T15:24:54.078 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.5731245;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59288;2460997.05895924;15.41499778;1.3;_
2025-11-17T15:24:54.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:24:54.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:24:54.079 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:24:54.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:54.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:24:54.080 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.5731245, teldec = -24.25623
2025-11-17T15:24:54.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5731245 -24.25623
2025-11-17T15:24:54.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5731245 -24.25623
2025-11-17T15:24:54.080 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5731245 -24.25623
2025-11-17T15:24:54.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5731245;-24.25623;50.108225;89.992628;50.08601;90.12017;18.59288;2460997.05895927;15.41499778;1.3;_21.5483019372886 -24.369739110162
2025-11-17T15:24:54.081 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.5483019372886     dec_j2k = -24.369739110162
2025-11-17T15:24:54.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:24:54.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:24:54.081 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678492549868;171.162362694745;_
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678492549868;171.162362694745;_
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:54.082 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:24:54.083 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:24:54.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:54.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:24:54.084 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50685)
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:24:54.086 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:24:54.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:24:54.093 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:54.093 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:24:54.094 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:24:54.094 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05895924, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678492549868, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992628, telescope_ra=21.5731245, telescope_dec=-24.25623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.59288, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5483019372886, telescope_dec_j2k=-24.369739110162, observability=1)
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Status age = 8.093383073806763s
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:02.187 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:02.188 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:02.188 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:02.189 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 17;21.5753752;-24.256223;50.108225;89.992617;50.08601;90.12016;18.59513;2460997.05905311;15.4172425;1.3;_
2025-11-17T15:25:02.190 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response 17;21.5753752;-24.256223;50.108225;89.992617;50.08601;90.12016;18.59513;2460997.05905311;15.4172425;1.3;_
2025-11-17T15:25:02.190 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:02.190 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:02.190 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:02.191 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:02.191 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:02.191 [INFO] [Thread-68445 (handle)] [driver.py] [get_status()] Telra = 21.5753752, teldec = -24.256223
2025-11-17T15:25:02.191 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5753752 -24.256223
2025-11-17T15:25:02.191 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5753752 -24.256223
2025-11-17T15:25:02.191 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5753752 -24.256223
2025-11-17T15:25:02.192 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 17;21.5753752;-24.256223;50.108225;89.992617;50.08601;90.12016;18.59513;2460997.05905315;15.4172425;1.3;_21.5505544299676 -24.3697840260545
2025-11-17T15:25:02.192 [INFO] [Thread-68445 (handle)] [driver.py] [get_status()] ra_j2k = 21.5505544299676     dec_j2k = -24.3697840260545
2025-11-17T15:25:02.192 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:02.192 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:02.192 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 140;0.104678412325983;171.162362694745;_
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response 140;0.104678412325983;171.162362694745;_
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:02.193 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:02.194 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:02.194 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:02.194 [DEBUG] [Thread-68445 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:02.194 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:02.194 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:02.195 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:02.195 [DEBUG] [Thread-68445 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:02.195 [DEBUG] [Thread-68445 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:02.195 [DEBUG] [Thread-68445 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 45783)
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:02.199 [DEBUG] [Thread-68445 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:02.206 [DEBUG] [Thread-68445 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:02.206 [INFO] [Thread-68445 (handle)] [server.py] [get_status()] Telescope status = Status(state=0, stopped=False, julian_date=2460997.05905311, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678412325983, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992617, telescope_ra=21.5753752, telescope_dec=-24.256223, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.59513, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:24:08.140316', telescope_ra_j2k=21.5505544299676, telescope_dec_j2k=-24.3697840260545, observability=1)
2025-11-17T15:25:08.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:08.280 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:08.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:08.280 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:08.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:08.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:08.281 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:08.282 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:08.282 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:08.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:08.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:08.283 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:08.283 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:25:08.283 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:08.283 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:08.283 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:08.283 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:08.283 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] ToRemoteControl
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command ToRemoteControl
2025-11-17T15:25:08.284 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to ToRemoteControl
2025-11-17T15:25:08.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:09.285 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] DomeLightsOff
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command DomeLightsOff
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to DomeLightsOff
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:09.286 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:09.287 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:09.287 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:09.287 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:09.288 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:09.288 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:09.288 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:09.288 [DEBUG] [ThreadPoolExecutor-2962_0] [payload.py] [to_registers()] [0]
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 46263)
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x9 0x0 0x10 0x0 0x6e 0x0 0x1 0x2 0x0 0x0
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:09.289 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:09.296 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:09.296 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:25:09.296 [DEBUG] [ThreadPoolExecutor-2962_0] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x10 0x0 0x6e 0x0 0x1
2025-11-17T15:25:09.296 [DEBUG] [ThreadPoolExecutor-2962_0] [factory.py] [_helper()] Factory Response[WriteMultipleRegistersResponse: 16]
2025-11-17T15:25:09.297 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:09.297 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:09.297 [DEBUG] [ThreadPoolExecutor-2962_0] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Status age = 12.853951930999756s
2025-11-17T15:25:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:15.060 [DEBUG] [Thread-3 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:15.061 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5789702;-24.25623;50.108225;89.992627;50.08601;90.12017;18.59872;2460997.05920211;15.4208275;1.3;_
2025-11-17T15:25:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 17;21.5789702;-24.25623;50.108225;89.992627;50.08601;90.12017;18.59872;2460997.05920211;15.4208275;1.3;_
2025-11-17T15:25:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:15.062 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:15.063 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] Telra = 21.5789702, teldec = -24.25623
2025-11-17T15:25:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5789702 -24.25623
2025-11-17T15:25:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5789702 -24.25623
2025-11-17T15:25:15.063 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5789702 -24.25623
2025-11-17T15:25:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 17;21.5789702;-24.25623;50.108225;89.992627;50.08601;90.12017;18.59872;2460997.05920213;15.4208275;1.3;_21.5541522930448 -24.3698738675061
2025-11-17T15:25:15.064 [INFO] [Thread-3 (handle)] [driver.py] [get_status()] ra_j2k = 21.5541522930448     dec_j2k = -24.3698738675061
2025-11-17T15:25:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:15.064 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 140;0.104678933781239;171.162357330327;_
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 140;0.104678933781239;171.162357330327;_
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:15.065 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:15.066 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:15.067 [DEBUG] [Thread-3 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:15.069 [DEBUG] [Thread-3 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 56263)
2025-11-17T15:25:15.069 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:15.070 [DEBUG] [Thread-3 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:15.070 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:15.077 [DEBUG] [Thread-3 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:15.078 [INFO] [Thread-3 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05920211, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678933781239, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992627, telescope_ra=21.5789702, telescope_dec=-24.25623, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.59872, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5541522930448, telescope_dec_j2k=-24.3698738675061, observability=1)
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Status age = 3.5607175827026367s
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:18.638 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 17;21.5799503;-24.256229;50.108225;89.992627;50.08601;90.12017;18.5997;2460997.05924351;15.421805;1.3;_
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response 17;21.5799503;-24.256229;50.108225;89.992627;50.08601;90.12017;18.5997;2460997.05924351;15.421805;1.3;_
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:18.639 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:18.640 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:18.640 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:18.641 [INFO] [Thread-68446 (handle)] [driver.py] [get_status()] Telra = 21.5799503, teldec = -24.256229
2025-11-17T15:25:18.641 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5799503 -24.256229
2025-11-17T15:25:18.641 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5799503 -24.256229
2025-11-17T15:25:18.641 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5799503 -24.256229
2025-11-17T15:25:18.642 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 17;21.5799503;-24.256229;50.108225;89.992627;50.08601;90.12017;18.5997;2460997.05924354;15.421805;1.3;_21.5551331743674 -24.3698954354584
2025-11-17T15:25:18.642 [INFO] [Thread-68446 (handle)] [driver.py] [get_status()] ra_j2k = 21.5551331743674     dec_j2k = -24.3698954354584
2025-11-17T15:25:18.642 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:18.642 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:18.642 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 140;0.104678813445411;171.162362694745;_
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response 140;0.104678813445411;171.162362694745;_
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:18.643 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:18.644 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:18.645 [DEBUG] [Thread-68446 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:18.645 [DEBUG] [Thread-68446 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:18.645 [DEBUG] [Thread-68446 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 51781)
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:18.647 [DEBUG] [Thread-68446 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:18.654 [DEBUG] [Thread-68446 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:18.655 [DEBUG] [Thread-68446 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:18.655 [DEBUG] [Thread-68446 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:18.655 [INFO] [Thread-68446 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05924351, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678813445411, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162362694745, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992627, telescope_ra=21.5799503, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.5997, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5551331743674, telescope_dec_j2k=-24.3698954354584, observability=1)
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Status age = 1.5982465744018555s
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:20.253 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 17;21.5804174;-24.256229;50.108225;89.992627;50.08601;90.12017;18.60017;2460997.0592622;15.42227083;1.3;_
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response 17;21.5804174;-24.256229;50.108225;89.992627;50.08601;90.12017;18.60017;2460997.0592622;15.42227083;1.3;_
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:20.254 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:20.255 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:20.255 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:20.255 [INFO] [Thread-68447 (handle)] [driver.py] [get_status()] Telra = 21.5804174, teldec = -24.256229
2025-11-17T15:25:20.255 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5804174 -24.256229
2025-11-17T15:25:20.255 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5804174 -24.256229
2025-11-17T15:25:20.255 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5804174 -24.256229
2025-11-17T15:25:20.256 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 17;21.5804174;-24.256229;50.108225;89.992627;50.08601;90.12017;18.60017;2460997.05926222;15.42227083;1.3;_21.5556006467358 -24.3699061883289
2025-11-17T15:25:20.256 [INFO] [Thread-68447 (handle)] [driver.py] [get_status()] ra_j2k = 21.5556006467358     dec_j2k = -24.3699061883289
2025-11-17T15:25:20.257 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:20.257 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:20.257 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 140;0.104678412325983;171.162357330327;_
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response 140;0.104678412325983;171.162357330327;_
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:20.258 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:20.259 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:20.260 [DEBUG] [Thread-68447 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:20.260 [DEBUG] [Thread-68447 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:20.260 [DEBUG] [Thread-68447 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 49577)
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:20.261 [DEBUG] [Thread-68447 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:20.268 [DEBUG] [Thread-68447 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:20.268 [DEBUG] [Thread-68447 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:20.269 [DEBUG] [Thread-68447 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:20.269 [INFO] [Thread-68447 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.0592622, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678412325983, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992627, telescope_ra=21.5804174, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.60017, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5556006467358, telescope_dec_j2k=-24.3699061883289, observability=1)
2025-11-17T15:25:34.297 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:34.297 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:34.297 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:34.297 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:34.297 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:34.298 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:34.299 [DEBUG] [ThreadPoolExecutor-2962_0] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:34.300 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] CloseShutters
2025-11-17T15:25:34.300 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Writing command CloseShutters
2025-11-17T15:25:34.300 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Reading response to CloseShutters
2025-11-17T15:25:34.300 [DEBUG] [ThreadPoolExecutor-2962_0] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Status age = 14.566275596618652s
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:34.835 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:34.836 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:34.836 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:34.836 [DEBUG] [Thread-65 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:34.836 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:34.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:34.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:34.837 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:34.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5844615;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60421;2460997.059431;15.42630389;1.3;_
2025-11-17T15:25:34.838 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 17;21.5844615;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60421;2460997.059431;15.42630389;1.3;_
2025-11-17T15:25:34.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:34.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:34.838 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:34.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:34.839 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:34.839 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] Telra = 21.5844615, teldec = -24.256229
2025-11-17T15:25:34.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5844615 -24.256229
2025-11-17T15:25:34.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5844615 -24.256229
2025-11-17T15:25:34.839 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5844615 -24.256229
2025-11-17T15:25:34.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 17;21.5844894;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60424;2460997.05943102;15.42633167;1.3;_21.5596479723146 -24.3699992150902
2025-11-17T15:25:34.840 [INFO] [Thread-65 (handle)] [driver.py] [get_status()] ra_j2k = 21.5596479723146     dec_j2k = -24.3699992150902
2025-11-17T15:25:34.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:34.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:34.840 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 140;0.10467937501261;171.162357330327;_
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 140;0.10467937501261;171.162357330327;_
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:34.841 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:34.842 [DEBUG] [Thread-65 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:34.842 [DEBUG] [Thread-65 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:34.842 [DEBUG] [Thread-65 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 50889)
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:34.846 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:34.853 [DEBUG] [Thread-65 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:34.854 [INFO] [Thread-65 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.059431, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.10467937501261, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992626, telescope_ra=21.5844615, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.60421, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5596479723146, telescope_dec_j2k=-24.3699992150902, observability=1)
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Status age = 3.466323137283325s
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:38.320 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 17;21.5854339;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60518;2460997.05947131;15.42727361;1.3;_
2025-11-17T15:25:38.321 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response 17;21.5854339;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60518;2460997.05947131;15.42727361;1.3;_
2025-11-17T15:25:38.322 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:38.322 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:38.322 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:38.322 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:38.323 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:38.323 [INFO] [Thread-68448 (handle)] [driver.py] [get_status()] Telra = 21.5854339, teldec = -24.256229
2025-11-17T15:25:38.323 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5854339 -24.256229
2025-11-17T15:25:38.323 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5854339 -24.256229
2025-11-17T15:25:38.323 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5854339 -24.256229
2025-11-17T15:25:38.324 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 17;21.5854339;-24.256229;50.108225;89.992626;50.08601;90.12017;18.60518;2460997.05947134;15.42727361;1.3;_21.560621148344 -24.370021564456
2025-11-17T15:25:38.324 [INFO] [Thread-68448 (handle)] [driver.py] [get_status()] ra_j2k = 21.560621148344     dec_j2k = -24.370021564456
2025-11-17T15:25:38.324 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:38.324 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:38.324 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 140;0.104679214564839;171.162357330327;_
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response 140;0.104679214564839;171.162357330327;_
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:38.325 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:38.326 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:38.327 [DEBUG] [Thread-68448 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:38.327 [DEBUG] [Thread-68448 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:38.327 [DEBUG] [Thread-68448 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 38477)
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:38.330 [DEBUG] [Thread-68448 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:38.337 [DEBUG] [Thread-68448 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:38.338 [DEBUG] [Thread-68448 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:38.338 [INFO] [Thread-68448 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05947131, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679214564839, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108225, telescope_az=89.992626, telescope_ra=21.5854339, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.60518, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.560621148344, telescope_dec_j2k=-24.370021564456, observability=1)
2025-11-17T15:25:39.018 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Getting status
2025-11-17T15:25:39.018 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Status age = 0.6807682514190674s
2025-11-17T15:25:39.018 [DEBUG] [lcu_check_connected_worker] [server.py] [get_status()] Returning cached status because status age = 0.6807682514190674
2025-11-17T15:25:39.018 [INFO] [lcu_check_connected_worker] [server.py] [lcu_check_connected()] LCU last connected 44.94258379936218 seconds ago
2025-11-17T15:25:54.155 [INFO] [Thread-23179 (handle)] [server.py] [get_status_for_LCU()] LCU status updated at time = 2025-11-17T15:25:54
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Status age = 15.817199468612671s
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:54.155 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5898426;-24.256229;50.108224;89.992625;50.08601;90.12017;18.60959;2460997.05965458;15.43167028;1.3;_
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 17;21.5898426;-24.256229;50.108224;89.992625;50.08601;90.12017;18.60959;2460997.05965458;15.43167028;1.3;_
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:54.156 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:54.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:54.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:54.157 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:54.158 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] Telra = 21.5898426, teldec = -24.256229
2025-11-17T15:25:54.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5898426 -24.256229
2025-11-17T15:25:54.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5898426 -24.256229
2025-11-17T15:25:54.158 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5898426 -24.256229
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 17;21.5898705;-24.256229;50.108224;89.992625;50.08601;90.12017;18.60962;2460997.05965462;15.43169806;1.3;_21.5650333688801 -24.3701228011286
2025-11-17T15:25:54.159 [INFO] [Thread-23179 (handle)] [driver.py] [get_status()] ra_j2k = 21.5650333688801     dec_j2k = -24.3701228011286
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 140;0.104678733221525;171.162357330327;_
2025-11-17T15:25:54.159 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 140;0.104678733221525;171.162357330327;_
2025-11-17T15:25:54.160 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:54.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:54.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:54.160 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:54.161 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:54.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:54.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:54.162 [DEBUG] [Thread-23179 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:54.165 [DEBUG] [Thread-23179 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 58799)
2025-11-17T15:25:54.165 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:54.165 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:54.166 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:54.166 [DEBUG] [Thread-23179 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:54.166 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:54.173 [DEBUG] [Thread-23179 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:54.173 [INFO] [Thread-23179 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05965458, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104678733221525, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162357330327, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108224, telescope_az=89.992625, telescope_ra=21.5898426, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.60959, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5650333688801, telescope_dec_j2k=-24.3701228011286, observability=1)
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Status age = 2.2789433002471924s
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:25:56.452 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:25:56.453 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:25:56.453 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:25:56.453 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:25:56.454 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 17;21.5905055;-24.256229;50.108224;89.992625;50.08601;90.12017;18.61026;2460997.05968118;15.43233139;1.3;_
2025-11-17T15:25:56.455 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response 17;21.5905055;-24.256229;50.108224;89.992625;50.08601;90.12017;18.61026;2460997.05968118;15.43233139;1.3;_
2025-11-17T15:25:56.455 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:25:56.455 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:25:56.455 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:25:56.456 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:56.456 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:25:56.456 [INFO] [Thread-68449 (handle)] [driver.py] [get_status()] Telra = 21.5905055, teldec = -24.256229
2025-11-17T15:25:56.456 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5905055 -24.256229
2025-11-17T15:25:56.456 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5905055 -24.256229
2025-11-17T15:25:56.456 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5905055 -24.256229
2025-11-17T15:25:56.457 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 17;21.5905055;-24.256229;50.108224;89.992625;50.08601;90.12017;18.61026;2460997.05968122;15.43233139;1.3;_21.5656967985383 -24.3701380102637
2025-11-17T15:25:56.457 [INFO] [Thread-68449 (handle)] [driver.py] [get_status()] ra_j2k = 21.5656967985383     dec_j2k = -24.3701380102637
2025-11-17T15:25:56.457 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:25:56.457 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:25:56.457 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 140;0.104679014005125;171.162351965909;_
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response 140;0.104679014005125;171.162351965909;_
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:56.458 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:25:56.459 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:25:56.460 [DEBUG] [Thread-68449 (handle)] [driver.py] [execute()] Got response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:56.460 [DEBUG] [Thread-68449 (handle)] [driver.py] [parse()] Parsing response 12;227;112.037;-0.00329;_GetRotatorData
2025-11-17T15:25:56.460 [DEBUG] [Thread-68449 (handle)] [driver.py] [__init__()] Status = <Status: 12> angle = 227 par_angle = 112.037 par_rate = -0.00329 sky_angle  = 0
2025-11-17T15:25:56.463 [DEBUG] [Thread-68449 (handle)] [sync.py] [connect()] Connection to Modbus server established. Socket ('10.2.2.32', 60361)
2025-11-17T15:25:56.463 [DEBUG] [Thread-68449 (handle)] [transaction.py] [execute()] Current transaction state - IDLE
2025-11-17T15:25:56.463 [DEBUG] [Thread-68449 (handle)] [transaction.py] [execute()] Running transaction 1
2025-11-17T15:25:56.464 [DEBUG] [Thread-68449 (handle)] [transaction.py] [_transact()] SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x0 0x3 0x0 0x82 0x0 0x1
2025-11-17T15:25:56.464 [DEBUG] [Thread-68449 (handle)] [sync.py] [send()] New Transaction state 'SENDING'
2025-11-17T15:25:56.464 [DEBUG] [Thread-68449 (handle)] [transaction.py] [_transact()] Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2025-11-17T15:25:56.470 [DEBUG] [Thread-68449 (handle)] [transaction.py] [_recv()] Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [transaction.py] [_transact()] RECV: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [socket_framer.py] [processIncomingPacket()] Processing: 0x0 0x1 0x0 0x0 0x0 0x5 0x0 0x3 0x2 0x0 0x15
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [factory.py] [_helper()] Factory Response[ReadHoldingRegistersResponse: 3]
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [transaction.py] [addTransaction()] Adding transaction 1
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [transaction.py] [getTransaction()] Getting transaction 1
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [transaction.py] [execute()] Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [payload.py] [fromRegisters()] [21]
2025-11-17T15:25:56.471 [DEBUG] [Thread-68449 (handle)] [server.py] [get_status()] Received all status components
2025-11-17T15:25:56.471 [INFO] [Thread-68449 (handle)] [server.py] [get_status()] Telescope status = Status(state=3, stopped=False, julian_date=2460997.05968118, airmass=1.3, zenith_distance=None, rotators={2: RotatorStatus(moving=False, tracking=False, auto=False, at_limit=True, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=19.0, limit_max=200.0, angle=2.93, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=-109.107), 1: RotatorStatus(moving=False, tracking=False, auto=True, at_limit=False, comms_fault_servocommunicator=False, comms_fault_servocontroller=False, moving_by_buttons=False, limit_min=147.0, limit_max=328.0, angle=227.0, parallactic_angle=112.037, parallactic_rate=-0.00329, time_to_limit=0.0, position_angle=114.963)}, covers_moving=0, covers_open=0, dome_angle=269.4, dome_remote=True, dome_shutter_moving=False, dome_shutter_open=False, dome_tracking=False, dome_moving=False, dome_tcs_lockout=False, focus=0.104679014005125, secondary_mirror_auto=True, secondary_mirror_moving=False, tertiary_mirror_angle=171.162351965909, tertiary_mirror_auto=True, tertiary_mirror_moving=False, instrument=1, slew_lights_on=False, dome_lights_on=False, telescope_auto=True, telescope_parked=True, telescope_alt=50.108224, telescope_az=89.992625, telescope_ra=21.5905055, telescope_dec=-24.256229, telescope_slewing=False, telescope_tracking=False, telescope_tracking_type=0, location=Location(latitude=-32.3797222222148, longitude=20.8104999999952, elevation=1811.0), lcumessage="Telescope shut down for reason: It's daytime", lcu_weather_override=False, lcu_absence_override=False, sidereal_time=18.61026, lcu_permission=False, lcu_permission_timestamp='2025-11-17T15:25:08.280262', telescope_ra_j2k=21.5656967985383, telescope_dec_j2k=-24.3701380102637, observability=1)
2025-11-17T15:26:08.423 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:26:08.424 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:26:08.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:26:08.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:26:08.424 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:26:08.425 [INFO] [Thread-23179 (handle)] [server.py] [lcu_weather_shutdown()] LCU weather shutdown triggered 
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:26:08.425 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:26:08.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:26:08.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:26:08.426 [DEBUG] [Thread-23179 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:26:08.426 [INFO] [Thread-23179 (handle)] [server.py] [shutdown()] Shutting down...
2025-11-17T15:26:08.426 [INFO] [ThreadPoolExecutor-2963_0] [server.py] [_shutdown()] Can't run shutdown because state = 3. Should be either 0 or 2
2025-11-17T15:26:08.426 [INFO] [ThreadPoolExecutor-2963_0] [server.py] [done()] Shutdown complete...
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [server.py] [get_status()] Getting status
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [server.py] [get_status()] Status age = 18.045084476470947s
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [server.py] [get_status()] Getting dome status
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [server.py] [dome()] Dome handle requested
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [server.py] [dome()] Dome handle being returned
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] GetDomeData
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command GetDomeData
2025-11-17T15:26:14.516 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to GetDomeData
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response 2694;49153;49;0;_
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [driver.py] [parse()] Parsing response 2694;49153;49;0;_
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [driver.py] [get_status()] Dome shutter status: Closed = True  opened = False
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [server.py] [get_status()] Getting telescope status
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] ReadScopeStatus
2025-11-17T15:26:14.517 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command ReadScopeStatus
2025-11-17T15:26:14.518 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to ReadScopeStatus
2025-11-17T15:26:14.518 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response 17;21.5955189;-24.256228;50.108224;89.992625;50.08601;90.12017;18.61527;2460997.05989025;15.43733111;1.3;_
2025-11-17T15:26:14.518 [DEBUG] [Thread-68450 (handle)] [driver.py] [parse()] Parsing response 17;21.5955189;-24.256228;50.108224;89.992625;50.08601;90.12017;18.61527;2460997.05989025;15.43733111;1.3;_
2025-11-17T15:26:14.518 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] SiteLocations
2025-11-17T15:26:14.518 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command SiteLocations
2025-11-17T15:26:14.519 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to SiteLocations
2025-11-17T15:26:14.519 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:26:14.520 [DEBUG] [Thread-68450 (handle)] [driver.py] [parse()] Parsing response -32.3797222222148;20.8104999999952;1811;_SiteLocations
2025-11-17T15:26:14.520 [INFO] [Thread-68450 (handle)] [driver.py] [get_status()] Telra = 21.5955189, teldec = -24.256228
2025-11-17T15:26:14.520 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] UnCookCoordinates 21.5955189 -24.256228
2025-11-17T15:26:14.520 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command UnCookCoordinates 21.5955189 -24.256228
2025-11-17T15:26:14.520 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to UnCookCoordinates 21.5955189 -24.256228
2025-11-17T15:26:14.521 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response 17;21.5955189;-24.256228;50.108224;89.992625;50.08601;90.12017;18.61527;2460997.05989029;15.43733111;1.3;_21.5707142069486 -24.3702519244218
2025-11-17T15:26:14.521 [INFO] [Thread-68450 (handle)] [driver.py] [get_status()] ra_j2k = 21.5707142069486     dec_j2k = -24.3702519244218
2025-11-17T15:26:14.521 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] GetFocuserTertiaryData
2025-11-17T15:26:14.521 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command GetFocuserTertiaryData
2025-11-17T15:26:14.521 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to GetFocuserTertiaryData
2025-11-17T15:26:14.521 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response 140;0.104679736020095;171.162351965909;_
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [parse()] Parsing response 140;0.104679736020095;171.162351965909;_
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [server.py] [get_status()] Getting rotator statuses
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] GetRotatorData
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Writing command GetRotatorData
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Reading response to GetRotatorData
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()] Got response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [parse()] Parsing response 16;2.93;112.037;-0.00328;_GetRotatorData
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [__init__()] Status = <Status: 16> angle = 2.93 par_angle = 112.037 par_rate = -0.00328 sky_angle  = 0
2025-11-17T15:26:14.522 [DEBUG] [Thread-68450 (handle)] [driver.py] [execute()]